? PNG %k25u25%fgd5n!PKj l\N\hh theme.jsonnu[{ "version": 2, "settings": { "appearanceTools": false, "border": { "color": false, "radius": false, "style": false, "width": false }, "color": { "background": true, "custom": true, "customDuotone": true, "customGradient": true, "defaultGradients": true, "defaultPalette": true, "duotone": [ { "name": "Dark grayscale" , "colors": [ "#000000", "#7f7f7f" ], "slug": "dark-grayscale" }, { "name": "Grayscale" , "colors": [ "#000000", "#ffffff" ], "slug": "grayscale" }, { "name": "Purple and yellow" , "colors": [ "#8c00b7", "#fcff41" ], "slug": "purple-yellow" }, { "name": "Blue and red" , "colors": [ "#000097", "#ff4747" ], "slug": "blue-red" }, { "name": "Midnight" , "colors": [ "#000000", "#00a5ff" ], "slug": "midnight" }, { "name": "Magenta and yellow" , "colors": [ "#c7005a", "#fff278" ], "slug": "magenta-yellow" }, { "name": "Purple and green" , "colors": [ "#a60072", "#67ff66" ], "slug": "purple-green" }, { "name": "Blue and orange" , "colors": [ "#1900d8", "#ffa96b" ], "slug": "blue-orange" } ], "gradients": [ { "name": "Vivid cyan blue to vivid purple", "gradient": "linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%)", "slug": "vivid-cyan-blue-to-vivid-purple" }, { "name": "Light green cyan to vivid green cyan", "gradient": "linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%)", "slug": "light-green-cyan-to-vivid-green-cyan" }, { "name": "Luminous vivid amber to luminous vivid orange", "gradient": "linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%)", "slug": "luminous-vivid-amber-to-luminous-vivid-orange" }, { "name": "Luminous vivid orange to vivid red", "gradient": "linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%)", "slug": "luminous-vivid-orange-to-vivid-red" }, { "name": "Very light gray to cyan bluish gray", "gradient": "linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%)", "slug": "very-light-gray-to-cyan-bluish-gray" }, { "name": "Cool to warm spectrum", "gradient": "linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%)", "slug": "cool-to-warm-spectrum" }, { "name": "Blush light purple", "gradient": "linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%)", "slug": "blush-light-purple" }, { "name": "Blush bordeaux", "gradient": "linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%)", "slug": "blush-bordeaux" }, { "name": "Luminous dusk", "gradient": "linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%)", "slug": "luminous-dusk" }, { "name": "Pale ocean", "gradient": "linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%)", "slug": "pale-ocean" }, { "name": "Electric grass", "gradient": "linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%)", "slug": "electric-grass" }, { "name": "Midnight", "gradient": "linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%)", "slug": "midnight" } ], "link": false, "palette": [ { "name": "Black", "slug": "black", "color": "#000000" }, { "name": "Cyan bluish gray", "slug": "cyan-bluish-gray", "color": "#abb8c3" }, { "name": "White", "slug": "white", "color": "#ffffff" }, { "name": "Pale pink", "slug": "pale-pink", "color": "#f78da7" }, { "name": "Vivid red", "slug": "vivid-red", "color": "#cf2e2e" }, { "name": "Luminous vivid orange", "slug": "luminous-vivid-orange", "color": "#ff6900" }, { "name": "Luminous vivid amber", "slug": "luminous-vivid-amber", "color": "#fcb900" }, { "name": "Light green cyan", "slug": "light-green-cyan", "color": "#7bdcb5" }, { "name": "Vivid green cyan", "slug": "vivid-green-cyan", "color": "#00d084" }, { "name": "Pale cyan blue", "slug": "pale-cyan-blue", "color": "#8ed1fc" }, { "name": "Vivid cyan blue", "slug": "vivid-cyan-blue", "color": "#0693e3" }, { "name": "Vivid purple", "slug": "vivid-purple", "color": "#9b51e0" } ], "text": true }, "spacing": { "blockGap": null, "margin": false, "padding": false, "units": [ "px", "em", "rem", "vh", "vw", "%" ] }, "typography": { "customFontSize": true, "dropCap": true, "fontSizes": [ { "name": "Small", "slug": "small", "size": "13px" }, { "name": "Medium", "slug": "medium", "size": "20px" }, { "name": "Large", "slug": "large", "size": "36px" }, { "name": "Extra Large", "slug": "x-large", "size": "42px" } ], "fontStyle": true, "fontWeight": true, "letterSpacing": true, "lineHeight": false, "textDecoration": true, "textTransform": true }, "blocks": { "core/button": { "border": { "radius": true } }, "core/pullquote": { "border": { "color": true, "radius": true, "style": true, "width": true } } } }, "styles": { "spacing": { "blockGap": "24px" } } } PKj l\-2זdate.phpnu[ * * @version $Id: streams.php 1157 2015-11-20 04:30:11Z dd32 $ * @package pomo * @subpackage streams */ if ( ! class_exists( 'POMO_Reader', false ) ) : class POMO_Reader { public $endian = 'little'; public $_post = ''; /** * PHP5 constructor. */ public function __construct() { if ( function_exists( 'mb_substr' ) && ( (int) ini_get( 'mbstring.func_overload' ) & 2 ) // phpcs:ignore PHPCompatibility.IniDirectives.RemovedIniDirectives.mbstring_func_overloadDeprecated ) { $this->is_overloaded = true; } else { $this->is_overloaded = false; } $this->_pos = 0; } /** * PHP4 constructor. * * @deprecated 5.4.0 Use __construct() instead. * * @see POMO_Reader::__construct() */ public function POMO_Reader() { _deprecated_constructor( self::class, '5.4.0', static::class ); self::__construct(); } /** * Sets the endianness of the file. * * @param string $endian Set the endianness of the file. Accepts 'big', or 'little'. */ public function setEndian( $endian ) { // phpcs:ignore WordPress.NamingConventions.ValidFunctionName.MethodNameInvalid $this->endian = $endian; } /** * Reads a 32bit Integer from the Stream * * @return mixed The integer, corresponding to the next 32 bits from * the stream of false if there are not enough bytes or on error */ public function readint32() { $bytes = $this->read( 4 ); if ( 4 != $this->strlen( $bytes ) ) { return false; } $endian_letter = ( 'big' === $this->endian ) ? 'N' : 'V'; $int = unpack( $endian_letter, $bytes ); return reset( $int ); } /** * Reads an array of 32-bit Integers from the Stream * * @param int $count How many elements should be read * @return mixed Array of integers or false if there isn't * enough data or on error */ public function readint32array( $count ) { $bytes = $this->read( 4 * $count ); if ( 4 * $count != $this->strlen( $bytes ) ) { return false; } $endian_letter = ( 'big' === $this->endian ) ? 'N' : 'V'; return unpack( $endian_letter . $count, $bytes ); } /** * @param string $string * @param int $start * @param int $length * @return string */ public function substr( $string, $start, $length ) { if ( $this->is_overloaded ) { return mb_substr( $string, $start, $length, 'ascii' ); } else { return substr( $string, $start, $length ); } } /** * @param string $string * @return int */ public function strlen( $string ) { if ( $this->is_overloaded ) { return mb_strlen( $string, 'ascii' ); } else { return strlen( $string ); } } /** * @param string $string * @param int $chunk_size * @return array */ public function str_split( $string, $chunk_size ) { if ( ! function_exists( 'str_split' ) ) { $length = $this->strlen( $string ); $out = array(); for ( $i = 0; $i < $length; $i += $chunk_size ) { $out[] = $this->substr( $string, $i, $chunk_size ); } return $out; } else { return str_split( $string, $chunk_size ); } } /** * @return int */ public function pos() { return $this->_pos; } /** * @return true */ public function is_resource() { return true; } /** * @return true */ public function close() { return true; } } endif; if ( ! class_exists( 'POMO_FileReader', false ) ) : class POMO_FileReader extends POMO_Reader { /** * @param string $filename */ public function __construct( $filename ) { parent::__construct(); $this->_f = fopen( $filename, 'rb' ); } /** * PHP4 constructor. * * @deprecated 5.4.0 Use __construct() instead. * * @see POMO_FileReader::__construct() */ public function POMO_FileReader( $filename ) { _deprecated_constructor( self::class, '5.4.0', static::class ); self::__construct( $filename ); } /** * @param int $bytes * @return string|false Returns read string, otherwise false. */ public function read( $bytes ) { return fread( $this->_f, $bytes ); } /** * @param int $pos * @return bool */ public function seekto( $pos ) { if ( -1 == fseek( $this->_f, $pos, SEEK_SET ) ) { return false; } $this->_pos = $pos; return true; } /** * @return bool */ public function is_resource() { return is_resource( $this->_f ); } /** * @return bool */ public function feof() { return feof( $this->_f ); } /** * @return bool */ public function close() { return fclose( $this->_f ); } /** * @return string */ public function read_all() { $all = ''; while ( ! $this->feof() ) { $all .= $this->read( 4096 ); } return $all; } } endif; if ( ! class_exists( 'POMO_StringReader', false ) ) : /** * Provides file-like methods for manipulating a string instead * of a physical file. */ class POMO_StringReader extends POMO_Reader { public $_str = ''; /** * PHP5 constructor. */ public function __construct( $str = '' ) { parent::__construct(); $this->_str = $str; $this->_pos = 0; } /** * PHP4 constructor. * * @deprecated 5.4.0 Use __construct() instead. * * @see POMO_StringReader::__construct() */ public function POMO_StringReader( $str = '' ) { _deprecated_constructor( self::class, '5.4.0', static::class ); self::__construct( $str ); } /** * @param string $bytes * @return string */ public function read( $bytes ) { $data = $this->substr( $this->_str, $this->_pos, $bytes ); $this->_pos += $bytes; if ( $this->strlen( $this->_str ) < $this->_pos ) { $this->_pos = $this->strlen( $this->_str ); } return $data; } /** * @param int $pos * @return int */ public function seekto( $pos ) { $this->_pos = $pos; if ( $this->strlen( $this->_str ) < $this->_pos ) { $this->_pos = $this->strlen( $this->_str ); } return $this->_pos; } /** * @return int */ public function length() { return $this->strlen( $this->_str ); } /** * @return string */ public function read_all() { return $this->substr( $this->_str, $this->_pos, $this->strlen( $this->_str ) ); } } endif; if ( ! class_exists( 'POMO_CachedFileReader', false ) ) : /** * Reads the contents of the file in the beginning. */ class POMO_CachedFileReader extends POMO_StringReader { /** * PHP5 constructor. */ public function __construct( $filename ) { parent::__construct(); $this->_str = file_get_contents( $filename ); if ( false === $this->_str ) { return false; } $this->_pos = 0; } /** * PHP4 constructor. * * @deprecated 5.4.0 Use __construct() instead. * * @see POMO_CachedFileReader::__construct() */ public function POMO_CachedFileReader( $filename ) { _deprecated_constructor( self::class, '5.4.0', static::class ); self::__construct( $filename ); } } endif; if ( ! class_exists( 'POMO_CachedIntFileReader', false ) ) : /** * Reads the contents of the file in the beginning. */ class POMO_CachedIntFileReader extends POMO_CachedFileReader { /** * PHP5 constructor. */ public function __construct( $filename ) { parent::__construct( $filename ); } /** * PHP4 constructor. * * @deprecated 5.4.0 Use __construct() instead. * * @see POMO_CachedIntFileReader::__construct() */ public function POMO_CachedIntFileReader( $filename ) { _deprecated_constructor( self::class, '5.4.0', static::class ); self::__construct( $filename ); } } endif; PKj l\h^^pomo/entry.phpnu[ $value ) { $this->$varname = $value; } if ( isset( $args['plural'] ) && $args['plural'] ) { $this->is_plural = true; } if ( ! is_array( $this->translations ) ) { $this->translations = array(); } if ( ! is_array( $this->references ) ) { $this->references = array(); } if ( ! is_array( $this->flags ) ) { $this->flags = array(); } } /** * PHP4 constructor. * * @deprecated 5.4.0 Use __construct() instead. * * @see Translation_Entry::__construct() */ public function Translation_Entry( $args = array() ) { _deprecated_constructor( self::class, '5.4.0', static::class ); self::__construct( $args ); } /** * Generates a unique key for this entry * * @return string|bool the key or false if the entry is empty */ public function key() { if ( null === $this->singular || '' === $this->singular ) { return false; } // Prepend context and EOT, like in MO files. $key = ! $this->context ? $this->singular : $this->context . "\4" . $this->singular; // Standardize on \n line endings. $key = str_replace( array( "\r\n", "\r" ), "\n", $key ); return $key; } /** * @param object $other */ public function merge_with( &$other ) { $this->flags = array_unique( array_merge( $this->flags, $other->flags ) ); $this->references = array_unique( array_merge( $this->references, $other->references ) ); if ( $this->extracted_comments != $other->extracted_comments ) { $this->extracted_comments .= $other->extracted_comments; } } } endif; PKj l\`D&D&pomo/translations.phpnu[key(); if ( false === $key ) { return false; } $this->entries[ $key ] = &$entry; return true; } /** * @param array|Translation_Entry $entry * @return bool */ public function add_entry_or_merge( $entry ) { if ( is_array( $entry ) ) { $entry = new Translation_Entry( $entry ); } $key = $entry->key(); if ( false === $key ) { return false; } if ( isset( $this->entries[ $key ] ) ) { $this->entries[ $key ]->merge_with( $entry ); } else { $this->entries[ $key ] = &$entry; } return true; } /** * Sets $header PO header to $value * * If the header already exists, it will be overwritten * * TODO: this should be out of this class, it is gettext specific * * @param string $header header name, without trailing : * @param string $value header value, without trailing \n */ public function set_header( $header, $value ) { $this->headers[ $header ] = $value; } /** * @param array $headers */ public function set_headers( $headers ) { foreach ( $headers as $header => $value ) { $this->set_header( $header, $value ); } } /** * @param string $header */ public function get_header( $header ) { return isset( $this->headers[ $header ] ) ? $this->headers[ $header ] : false; } /** * @param Translation_Entry $entry */ public function translate_entry( &$entry ) { $key = $entry->key(); return isset( $this->entries[ $key ] ) ? $this->entries[ $key ] : false; } /** * @param string $singular * @param string $context * @return string */ public function translate( $singular, $context = null ) { $entry = new Translation_Entry( array( 'singular' => $singular, 'context' => $context, ) ); $translated = $this->translate_entry( $entry ); return ( $translated && ! empty( $translated->translations ) ) ? $translated->translations[0] : $singular; } /** * Given the number of items, returns the 0-based index of the plural form to use * * Here, in the base Translations class, the common logic for English is implemented: * 0 if there is one element, 1 otherwise * * This function should be overridden by the subclasses. For example MO/PO can derive the logic * from their headers. * * @param int $count number of items */ public function select_plural_form( $count ) { return 1 == $count ? 0 : 1; } /** * @return int */ public function get_plural_forms_count() { return 2; } /** * @param string $singular * @param string $plural * @param int $count * @param string $context */ public function translate_plural( $singular, $plural, $count, $context = null ) { $entry = new Translation_Entry( array( 'singular' => $singular, 'plural' => $plural, 'context' => $context, ) ); $translated = $this->translate_entry( $entry ); $index = $this->select_plural_form( $count ); $total_plural_forms = $this->get_plural_forms_count(); if ( $translated && 0 <= $index && $index < $total_plural_forms && is_array( $translated->translations ) && isset( $translated->translations[ $index ] ) ) { return $translated->translations[ $index ]; } else { return 1 == $count ? $singular : $plural; } } /** * Merge $other in the current object. * * @param Object $other Another Translation object, whose translations will be merged in this one (passed by reference). * @return void */ public function merge_with( &$other ) { foreach ( $other->entries as $entry ) { $this->entries[ $entry->key() ] = $entry; } } /** * @param object $other */ public function merge_originals_with( &$other ) { foreach ( $other->entries as $entry ) { if ( ! isset( $this->entries[ $entry->key() ] ) ) { $this->entries[ $entry->key() ] = $entry; } else { $this->entries[ $entry->key() ]->merge_with( $entry ); } } } } class Gettext_Translations extends Translations { /** * The gettext implementation of select_plural_form. * * It lives in this class, because there are more than one descendand, which will use it and * they can't share it effectively. * * @param int $count */ public function gettext_select_plural_form( $count ) { if ( ! isset( $this->_gettext_select_plural_form ) || is_null( $this->_gettext_select_plural_form ) ) { list( $nplurals, $expression ) = $this->nplurals_and_expression_from_header( $this->get_header( 'Plural-Forms' ) ); $this->_nplurals = $nplurals; $this->_gettext_select_plural_form = $this->make_plural_form_function( $nplurals, $expression ); } return call_user_func( $this->_gettext_select_plural_form, $count ); } /** * @param string $header * @return array */ public function nplurals_and_expression_from_header( $header ) { if ( preg_match( '/^\s*nplurals\s*=\s*(\d+)\s*;\s+plural\s*=\s*(.+)$/', $header, $matches ) ) { $nplurals = (int) $matches[1]; $expression = trim( $matches[2] ); return array( $nplurals, $expression ); } else { return array( 2, 'n != 1' ); } } /** * Makes a function, which will return the right translation index, according to the * plural forms header * * @param int $nplurals * @param string $expression */ public function make_plural_form_function( $nplurals, $expression ) { try { $handler = new Plural_Forms( rtrim( $expression, ';' ) ); return array( $handler, 'get' ); } catch ( Exception $e ) { // Fall back to default plural-form function. return $this->make_plural_form_function( 2, 'n != 1' ); } } /** * Adds parentheses to the inner parts of ternary operators in * plural expressions, because PHP evaluates ternary oerators from left to right * * @param string $expression the expression without parentheses * @return string the expression with parentheses added */ public function parenthesize_plural_exression( $expression ) { $expression .= ';'; $res = ''; $depth = 0; for ( $i = 0; $i < strlen( $expression ); ++$i ) { $char = $expression[ $i ]; switch ( $char ) { case '?': $res .= ' ? ('; $depth++; break; case ':': $res .= ') : ('; break; case ';': $res .= str_repeat( ')', $depth ) . ';'; $depth = 0; break; default: $res .= $char; } } return rtrim( $res, ';' ); } /** * @param string $translation * @return array */ public function make_headers( $translation ) { $headers = array(); // Sometimes \n's are used instead of real new lines. $translation = str_replace( '\n', "\n", $translation ); $lines = explode( "\n", $translation ); foreach ( $lines as $line ) { $parts = explode( ':', $line, 2 ); if ( ! isset( $parts[1] ) ) { continue; } $headers[ trim( $parts[0] ) ] = trim( $parts[1] ); } return $headers; } /** * @param string $header * @param string $value */ public function set_header( $header, $value ) { parent::set_header( $header, $value ); if ( 'Plural-Forms' === $header ) { list( $nplurals, $expression ) = $this->nplurals_and_expression_from_header( $this->get_header( 'Plural-Forms' ) ); $this->_nplurals = $nplurals; $this->_gettext_select_plural_form = $this->make_plural_form_function( $nplurals, $expression ); } } } endif; if ( ! class_exists( 'NOOP_Translations', false ) ) : /** * Provides the same interface as Translations, but doesn't do anything */ class NOOP_Translations { public $entries = array(); public $headers = array(); public function add_entry( $entry ) { return true; } /** * @param string $header * @param string $value */ public function set_header( $header, $value ) { } /** * @param array $headers */ public function set_headers( $headers ) { } /** * @param string $header * @return false */ public function get_header( $header ) { return false; } /** * @param Translation_Entry $entry * @return false */ public function translate_entry( &$entry ) { return false; } /** * @param string $singular * @param string $context */ public function translate( $singular, $context = null ) { return $singular; } /** * @param int $count * @return bool */ public function select_plural_form( $count ) { return 1 == $count ? 0 : 1; } /** * @return int */ public function get_plural_forms_count() { return 2; } /** * @param string $singular * @param string $plural * @param int $count * @param string $context */ public function translate_plural( $singular, $plural, $count, $context = null ) { return 1 == $count ? $singular : $plural; } /** * @param object $other */ public function merge_with( &$other ) { } } endif; PKj l\ f$$ pomo/mo.phpnu[filename; } /** * Fills up with the entries from MO file $filename * * @param string $filename MO file to load * @return bool True if the import from file was successful, otherwise false. */ public function import_from_file( $filename ) { $reader = new POMO_FileReader( $filename ); if ( ! $reader->is_resource() ) { return false; } $this->filename = (string) $filename; return $this->import_from_reader( $reader ); } /** * @param string $filename * @return bool */ public function export_to_file( $filename ) { $fh = fopen( $filename, 'wb' ); if ( ! $fh ) { return false; } $res = $this->export_to_file_handle( $fh ); fclose( $fh ); return $res; } /** * @return string|false */ public function export() { $tmp_fh = fopen( 'php://temp', 'r+' ); if ( ! $tmp_fh ) { return false; } $this->export_to_file_handle( $tmp_fh ); rewind( $tmp_fh ); return stream_get_contents( $tmp_fh ); } /** * @param Translation_Entry $entry * @return bool */ public function is_entry_good_for_export( $entry ) { if ( empty( $entry->translations ) ) { return false; } if ( ! array_filter( $entry->translations ) ) { return false; } return true; } /** * @param resource $fh * @return true */ public function export_to_file_handle( $fh ) { $entries = array_filter( $this->entries, array( $this, 'is_entry_good_for_export' ) ); ksort( $entries ); $magic = 0x950412de; $revision = 0; $total = count( $entries ) + 1; // All the headers are one entry. $originals_lengths_addr = 28; $translations_lengths_addr = $originals_lengths_addr + 8 * $total; $size_of_hash = 0; $hash_addr = $translations_lengths_addr + 8 * $total; $current_addr = $hash_addr; fwrite( $fh, pack( 'V*', $magic, $revision, $total, $originals_lengths_addr, $translations_lengths_addr, $size_of_hash, $hash_addr ) ); fseek( $fh, $originals_lengths_addr ); // Headers' msgid is an empty string. fwrite( $fh, pack( 'VV', 0, $current_addr ) ); $current_addr++; $originals_table = "\0"; $reader = new POMO_Reader(); foreach ( $entries as $entry ) { $originals_table .= $this->export_original( $entry ) . "\0"; $length = $reader->strlen( $this->export_original( $entry ) ); fwrite( $fh, pack( 'VV', $length, $current_addr ) ); $current_addr += $length + 1; // Account for the NULL byte after. } $exported_headers = $this->export_headers(); fwrite( $fh, pack( 'VV', $reader->strlen( $exported_headers ), $current_addr ) ); $current_addr += strlen( $exported_headers ) + 1; $translations_table = $exported_headers . "\0"; foreach ( $entries as $entry ) { $translations_table .= $this->export_translations( $entry ) . "\0"; $length = $reader->strlen( $this->export_translations( $entry ) ); fwrite( $fh, pack( 'VV', $length, $current_addr ) ); $current_addr += $length + 1; } fwrite( $fh, $originals_table ); fwrite( $fh, $translations_table ); return true; } /** * @param Translation_Entry $entry * @return string */ public function export_original( $entry ) { // TODO: Warnings for control characters. $exported = $entry->singular; if ( $entry->is_plural ) { $exported .= "\0" . $entry->plural; } if ( $entry->context ) { $exported = $entry->context . "\4" . $exported; } return $exported; } /** * @param Translation_Entry $entry * @return string */ public function export_translations( $entry ) { // TODO: Warnings for control characters. return $entry->is_plural ? implode( "\0", $entry->translations ) : $entry->translations[0]; } /** * @return string */ public function export_headers() { $exported = ''; foreach ( $this->headers as $header => $value ) { $exported .= "$header: $value\n"; } return $exported; } /** * @param int $magic * @return string|false */ public function get_byteorder( $magic ) { // The magic is 0x950412de. // bug in PHP 5.0.2, see https://savannah.nongnu.org/bugs/?func=detailitem&item_id=10565 $magic_little = (int) - 1794895138; $magic_little_64 = (int) 2500072158; // 0xde120495 $magic_big = ( (int) - 569244523 ) & 0xFFFFFFFF; if ( $magic_little == $magic || $magic_little_64 == $magic ) { return 'little'; } elseif ( $magic_big == $magic ) { return 'big'; } else { return false; } } /** * @param POMO_FileReader $reader * @return bool True if the import was successful, otherwise false. */ public function import_from_reader( $reader ) { $endian_string = MO::get_byteorder( $reader->readint32() ); if ( false === $endian_string ) { return false; } $reader->setEndian( $endian_string ); $endian = ( 'big' === $endian_string ) ? 'N' : 'V'; $header = $reader->read( 24 ); if ( $reader->strlen( $header ) != 24 ) { return false; } // Parse header. $header = unpack( "{$endian}revision/{$endian}total/{$endian}originals_lengths_addr/{$endian}translations_lengths_addr/{$endian}hash_length/{$endian}hash_addr", $header ); if ( ! is_array( $header ) ) { return false; } // Support revision 0 of MO format specs, only. if ( 0 != $header['revision'] ) { return false; } // Seek to data blocks. $reader->seekto( $header['originals_lengths_addr'] ); // Read originals' indices. $originals_lengths_length = $header['translations_lengths_addr'] - $header['originals_lengths_addr']; if ( $originals_lengths_length != $header['total'] * 8 ) { return false; } $originals = $reader->read( $originals_lengths_length ); if ( $reader->strlen( $originals ) != $originals_lengths_length ) { return false; } // Read translations' indices. $translations_lengths_length = $header['hash_addr'] - $header['translations_lengths_addr']; if ( $translations_lengths_length != $header['total'] * 8 ) { return false; } $translations = $reader->read( $translations_lengths_length ); if ( $reader->strlen( $translations ) != $translations_lengths_length ) { return false; } // Transform raw data into set of indices. $originals = $reader->str_split( $originals, 8 ); $translations = $reader->str_split( $translations, 8 ); // Skip hash table. $strings_addr = $header['hash_addr'] + $header['hash_length'] * 4; $reader->seekto( $strings_addr ); $strings = $reader->read_all(); $reader->close(); for ( $i = 0; $i < $header['total']; $i++ ) { $o = unpack( "{$endian}length/{$endian}pos", $originals[ $i ] ); $t = unpack( "{$endian}length/{$endian}pos", $translations[ $i ] ); if ( ! $o || ! $t ) { return false; } // Adjust offset due to reading strings to separate space before. $o['pos'] -= $strings_addr; $t['pos'] -= $strings_addr; $original = $reader->substr( $strings, $o['pos'], $o['length'] ); $translation = $reader->substr( $strings, $t['pos'], $t['length'] ); if ( '' === $original ) { $this->set_headers( $this->make_headers( $translation ) ); } else { $entry = &$this->make_entry( $original, $translation ); $this->entries[ $entry->key() ] = &$entry; } } return true; } /** * Build a Translation_Entry from original string and translation strings, * found in a MO file * * @static * @param string $original original string to translate from MO file. Might contain * 0x04 as context separator or 0x00 as singular/plural separator * @param string $translation translation string from MO file. Might contain * 0x00 as a plural translations separator * @return Translation_Entry Entry instance. */ public function &make_entry( $original, $translation ) { $entry = new Translation_Entry(); // Look for context, separated by \4. $parts = explode( "\4", $original ); if ( isset( $parts[1] ) ) { $original = $parts[1]; $entry->context = $parts[0]; } // Look for plural original. $parts = explode( "\0", $original ); $entry->singular = $parts[0]; if ( isset( $parts[1] ) ) { $entry->is_plural = true; $entry->plural = $parts[1]; } // Plural translations are also separated by \0. $entry->translations = explode( "\0", $translation ); return $entry; } /** * @param int $count * @return string */ public function select_plural_form( $count ) { return $this->gettext_select_plural_form( $count ); } /** * @return int */ public function get_plural_forms_count() { return $this->_nplurals; } } endif; PKj l\pomo/plural-forms.phpnu[ 6, '<' => 5, '<=' => 5, '>' => 5, '>=' => 5, '==' => 4, '!=' => 4, '&&' => 3, '||' => 2, '?:' => 1, '?' => 1, '(' => 0, ')' => 0, ); /** * Tokens generated from the string. * * @since 4.9.0 * @var array $tokens List of tokens. */ protected $tokens = array(); /** * Cache for repeated calls to the function. * * @since 4.9.0 * @var array $cache Map of $n => $result */ protected $cache = array(); /** * Constructor. * * @since 4.9.0 * * @param string $str Plural function (just the bit after `plural=` from Plural-Forms) */ public function __construct( $str ) { $this->parse( $str ); } /** * Parse a Plural-Forms string into tokens. * * Uses the shunting-yard algorithm to convert the string to Reverse Polish * Notation tokens. * * @since 4.9.0 * * @throws Exception If there is a syntax or parsing error with the string. * * @param string $str String to parse. */ protected function parse( $str ) { $pos = 0; $len = strlen( $str ); // Convert infix operators to postfix using the shunting-yard algorithm. $output = array(); $stack = array(); while ( $pos < $len ) { $next = substr( $str, $pos, 1 ); switch ( $next ) { // Ignore whitespace. case ' ': case "\t": $pos++; break; // Variable (n). case 'n': $output[] = array( 'var' ); $pos++; break; // Parentheses. case '(': $stack[] = $next; $pos++; break; case ')': $found = false; while ( ! empty( $stack ) ) { $o2 = $stack[ count( $stack ) - 1 ]; if ( '(' !== $o2 ) { $output[] = array( 'op', array_pop( $stack ) ); continue; } // Discard open paren. array_pop( $stack ); $found = true; break; } if ( ! $found ) { throw new Exception( 'Mismatched parentheses' ); } $pos++; break; // Operators. case '|': case '&': case '>': case '<': case '!': case '=': case '%': case '?': $end_operator = strspn( $str, self::OP_CHARS, $pos ); $operator = substr( $str, $pos, $end_operator ); if ( ! array_key_exists( $operator, self::$op_precedence ) ) { throw new Exception( sprintf( 'Unknown operator "%s"', $operator ) ); } while ( ! empty( $stack ) ) { $o2 = $stack[ count( $stack ) - 1 ]; // Ternary is right-associative in C. if ( '?:' === $operator || '?' === $operator ) { if ( self::$op_precedence[ $operator ] >= self::$op_precedence[ $o2 ] ) { break; } } elseif ( self::$op_precedence[ $operator ] > self::$op_precedence[ $o2 ] ) { break; } $output[] = array( 'op', array_pop( $stack ) ); } $stack[] = $operator; $pos += $end_operator; break; // Ternary "else". case ':': $found = false; $s_pos = count( $stack ) - 1; while ( $s_pos >= 0 ) { $o2 = $stack[ $s_pos ]; if ( '?' !== $o2 ) { $output[] = array( 'op', array_pop( $stack ) ); $s_pos--; continue; } // Replace. $stack[ $s_pos ] = '?:'; $found = true; break; } if ( ! $found ) { throw new Exception( 'Missing starting "?" ternary operator' ); } $pos++; break; // Default - number or invalid. default: if ( $next >= '0' && $next <= '9' ) { $span = strspn( $str, self::NUM_CHARS, $pos ); $output[] = array( 'value', intval( substr( $str, $pos, $span ) ) ); $pos += $span; break; } throw new Exception( sprintf( 'Unknown symbol "%s"', $next ) ); } } while ( ! empty( $stack ) ) { $o2 = array_pop( $stack ); if ( '(' === $o2 || ')' === $o2 ) { throw new Exception( 'Mismatched parentheses' ); } $output[] = array( 'op', $o2 ); } $this->tokens = $output; } /** * Get the plural form for a number. * * Caches the value for repeated calls. * * @since 4.9.0 * * @param int $num Number to get plural form for. * @return int Plural form value. */ public function get( $num ) { if ( isset( $this->cache[ $num ] ) ) { return $this->cache[ $num ]; } $this->cache[ $num ] = $this->execute( $num ); return $this->cache[ $num ]; } /** * Execute the plural form function. * * @since 4.9.0 * * @throws Exception If the plural form value cannot be calculated. * * @param int $n Variable "n" to substitute. * @return int Plural form value. */ public function execute( $n ) { $stack = array(); $i = 0; $total = count( $this->tokens ); while ( $i < $total ) { $next = $this->tokens[ $i ]; $i++; if ( 'var' === $next[0] ) { $stack[] = $n; continue; } elseif ( 'value' === $next[0] ) { $stack[] = $next[1]; continue; } // Only operators left. switch ( $next[1] ) { case '%': $v2 = array_pop( $stack ); $v1 = array_pop( $stack ); $stack[] = $v1 % $v2; break; case '||': $v2 = array_pop( $stack ); $v1 = array_pop( $stack ); $stack[] = $v1 || $v2; break; case '&&': $v2 = array_pop( $stack ); $v1 = array_pop( $stack ); $stack[] = $v1 && $v2; break; case '<': $v2 = array_pop( $stack ); $v1 = array_pop( $stack ); $stack[] = $v1 < $v2; break; case '<=': $v2 = array_pop( $stack ); $v1 = array_pop( $stack ); $stack[] = $v1 <= $v2; break; case '>': $v2 = array_pop( $stack ); $v1 = array_pop( $stack ); $stack[] = $v1 > $v2; break; case '>=': $v2 = array_pop( $stack ); $v1 = array_pop( $stack ); $stack[] = $v1 >= $v2; break; case '!=': $v2 = array_pop( $stack ); $v1 = array_pop( $stack ); $stack[] = $v1 != $v2; break; case '==': $v2 = array_pop( $stack ); $v1 = array_pop( $stack ); $stack[] = $v1 == $v2; break; case '?:': $v3 = array_pop( $stack ); $v2 = array_pop( $stack ); $v1 = array_pop( $stack ); $stack[] = $v1 ? $v2 : $v3; break; default: throw new Exception( sprintf( 'Unknown operator "%s"', $next[1] ) ); } } if ( count( $stack ) !== 1 ) { throw new Exception( 'Too many values remaining on the stack' ); } return (int) $stack[0]; } } endif; PKj l\A;; pomo/po.phpnu[headers as $header => $value ) { $header_string .= "$header: $value\n"; } $poified = PO::poify( $header_string ); if ( $this->comments_before_headers ) { $before_headers = $this->prepend_each_line( rtrim( $this->comments_before_headers ) . "\n", '# ' ); } else { $before_headers = ''; } return rtrim( "{$before_headers}msgid \"\"\nmsgstr $poified" ); } /** * Exports all entries to PO format * * @return string sequence of mgsgid/msgstr PO strings, doesn't containt newline at the end */ public function export_entries() { // TODO: Sorting. return implode( "\n\n", array_map( array( 'PO', 'export_entry' ), $this->entries ) ); } /** * Exports the whole PO file as a string * * @param bool $include_headers whether to include the headers in the export * @return string ready for inclusion in PO file string for headers and all the enrtries */ public function export( $include_headers = true ) { $res = ''; if ( $include_headers ) { $res .= $this->export_headers(); $res .= "\n\n"; } $res .= $this->export_entries(); return $res; } /** * Same as {@link export}, but writes the result to a file * * @param string $filename Where to write the PO string. * @param bool $include_headers Whether to include the headers in the export. * @return bool true on success, false on error */ public function export_to_file( $filename, $include_headers = true ) { $fh = fopen( $filename, 'w' ); if ( false === $fh ) { return false; } $export = $this->export( $include_headers ); $res = fwrite( $fh, $export ); if ( false === $res ) { return false; } return fclose( $fh ); } /** * Text to include as a comment before the start of the PO contents * * Doesn't need to include # in the beginning of lines, these are added automatically * * @param string $text Text to include as a comment. */ public function set_comment_before_headers( $text ) { $this->comments_before_headers = $text; } /** * Formats a string in PO-style * * @param string $string the string to format * @return string the poified string */ public static function poify( $string ) { $quote = '"'; $slash = '\\'; $newline = "\n"; $replaces = array( "$slash" => "$slash$slash", "$quote" => "$slash$quote", "\t" => '\t', ); $string = str_replace( array_keys( $replaces ), array_values( $replaces ), $string ); $po = $quote . implode( "${slash}n$quote$newline$quote", explode( $newline, $string ) ) . $quote; // Add empty string on first line for readbility. if ( false !== strpos( $string, $newline ) && ( substr_count( $string, $newline ) > 1 || substr( $string, -strlen( $newline ) ) !== $newline ) ) { $po = "$quote$quote$newline$po"; } // Remove empty strings. $po = str_replace( "$newline$quote$quote", '', $po ); return $po; } /** * Gives back the original string from a PO-formatted string * * @param string $string PO-formatted string * @return string enascaped string */ public static function unpoify( $string ) { $escapes = array( 't' => "\t", 'n' => "\n", 'r' => "\r", '\\' => '\\', ); $lines = array_map( 'trim', explode( "\n", $string ) ); $lines = array_map( array( 'PO', 'trim_quotes' ), $lines ); $unpoified = ''; $previous_is_backslash = false; foreach ( $lines as $line ) { preg_match_all( '/./u', $line, $chars ); $chars = $chars[0]; foreach ( $chars as $char ) { if ( ! $previous_is_backslash ) { if ( '\\' === $char ) { $previous_is_backslash = true; } else { $unpoified .= $char; } } else { $previous_is_backslash = false; $unpoified .= isset( $escapes[ $char ] ) ? $escapes[ $char ] : $char; } } } // Standardise the line endings on imported content, technically PO files shouldn't contain \r. $unpoified = str_replace( array( "\r\n", "\r" ), "\n", $unpoified ); return $unpoified; } /** * Inserts $with in the beginning of every new line of $string and * returns the modified string * * @param string $string prepend lines in this string * @param string $with prepend lines with this string */ public static function prepend_each_line( $string, $with ) { $lines = explode( "\n", $string ); $append = ''; if ( "\n" === substr( $string, -1 ) && '' === end( $lines ) ) { /* * Last line might be empty because $string was terminated * with a newline, remove it from the $lines array, * we'll restore state by re-terminating the string at the end. */ array_pop( $lines ); $append = "\n"; } foreach ( $lines as &$line ) { $line = $with . $line; } unset( $line ); return implode( "\n", $lines ) . $append; } /** * Prepare a text as a comment -- wraps the lines and prepends # * and a special character to each line * * @access private * @param string $text the comment text * @param string $char character to denote a special PO comment, * like :, default is a space */ public static function comment_block( $text, $char = ' ' ) { $text = wordwrap( $text, PO_MAX_LINE_LEN - 3 ); return PO::prepend_each_line( $text, "#$char " ); } /** * Builds a string from the entry for inclusion in PO file * * @param Translation_Entry $entry the entry to convert to po string. * @return string|false PO-style formatted string for the entry or * false if the entry is empty */ public static function export_entry( $entry ) { if ( null === $entry->singular || '' === $entry->singular ) { return false; } $po = array(); if ( ! empty( $entry->translator_comments ) ) { $po[] = PO::comment_block( $entry->translator_comments ); } if ( ! empty( $entry->extracted_comments ) ) { $po[] = PO::comment_block( $entry->extracted_comments, '.' ); } if ( ! empty( $entry->references ) ) { $po[] = PO::comment_block( implode( ' ', $entry->references ), ':' ); } if ( ! empty( $entry->flags ) ) { $po[] = PO::comment_block( implode( ', ', $entry->flags ), ',' ); } if ( $entry->context ) { $po[] = 'msgctxt ' . PO::poify( $entry->context ); } $po[] = 'msgid ' . PO::poify( $entry->singular ); if ( ! $entry->is_plural ) { $translation = empty( $entry->translations ) ? '' : $entry->translations[0]; $translation = PO::match_begin_and_end_newlines( $translation, $entry->singular ); $po[] = 'msgstr ' . PO::poify( $translation ); } else { $po[] = 'msgid_plural ' . PO::poify( $entry->plural ); $translations = empty( $entry->translations ) ? array( '', '' ) : $entry->translations; foreach ( $translations as $i => $translation ) { $translation = PO::match_begin_and_end_newlines( $translation, $entry->plural ); $po[] = "msgstr[$i] " . PO::poify( $translation ); } } return implode( "\n", $po ); } public static function match_begin_and_end_newlines( $translation, $original ) { if ( '' === $translation ) { return $translation; } $original_begin = "\n" === substr( $original, 0, 1 ); $original_end = "\n" === substr( $original, -1 ); $translation_begin = "\n" === substr( $translation, 0, 1 ); $translation_end = "\n" === substr( $translation, -1 ); if ( $original_begin ) { if ( ! $translation_begin ) { $translation = "\n" . $translation; } } elseif ( $translation_begin ) { $translation = ltrim( $translation, "\n" ); } if ( $original_end ) { if ( ! $translation_end ) { $translation .= "\n"; } } elseif ( $translation_end ) { $translation = rtrim( $translation, "\n" ); } return $translation; } /** * @param string $filename * @return bool */ public function import_from_file( $filename ) { $f = fopen( $filename, 'r' ); if ( ! $f ) { return false; } $lineno = 0; while ( true ) { $res = $this->read_entry( $f, $lineno ); if ( ! $res ) { break; } if ( '' === $res['entry']->singular ) { $this->set_headers( $this->make_headers( $res['entry']->translations[0] ) ); } else { $this->add_entry( $res['entry'] ); } } PO::read_line( $f, 'clear' ); if ( false === $res ) { return false; } if ( ! $this->headers && ! $this->entries ) { return false; } return true; } /** * Helper function for read_entry * * @param string $context * @return bool */ protected static function is_final( $context ) { return ( 'msgstr' === $context ) || ( 'msgstr_plural' === $context ); } /** * @param resource $f * @param int $lineno * @return null|false|array */ public function read_entry( $f, $lineno = 0 ) { $entry = new Translation_Entry(); // Where were we in the last step. // Can be: comment, msgctxt, msgid, msgid_plural, msgstr, msgstr_plural. $context = ''; $msgstr_index = 0; while ( true ) { $lineno++; $line = PO::read_line( $f ); if ( ! $line ) { if ( feof( $f ) ) { if ( self::is_final( $context ) ) { break; } elseif ( ! $context ) { // We haven't read a line and EOF came. return null; } else { return false; } } else { return false; } } if ( "\n" === $line ) { continue; } $line = trim( $line ); if ( preg_match( '/^#/', $line, $m ) ) { // The comment is the start of a new entry. if ( self::is_final( $context ) ) { PO::read_line( $f, 'put-back' ); $lineno--; break; } // Comments have to be at the beginning. if ( $context && 'comment' !== $context ) { return false; } // Add comment. $this->add_comment_to_entry( $entry, $line ); } elseif ( preg_match( '/^msgctxt\s+(".*")/', $line, $m ) ) { if ( self::is_final( $context ) ) { PO::read_line( $f, 'put-back' ); $lineno--; break; } if ( $context && 'comment' !== $context ) { return false; } $context = 'msgctxt'; $entry->context .= PO::unpoify( $m[1] ); } elseif ( preg_match( '/^msgid\s+(".*")/', $line, $m ) ) { if ( self::is_final( $context ) ) { PO::read_line( $f, 'put-back' ); $lineno--; break; } if ( $context && 'msgctxt' !== $context && 'comment' !== $context ) { return false; } $context = 'msgid'; $entry->singular .= PO::unpoify( $m[1] ); } elseif ( preg_match( '/^msgid_plural\s+(".*")/', $line, $m ) ) { if ( 'msgid' !== $context ) { return false; } $context = 'msgid_plural'; $entry->is_plural = true; $entry->plural .= PO::unpoify( $m[1] ); } elseif ( preg_match( '/^msgstr\s+(".*")/', $line, $m ) ) { if ( 'msgid' !== $context ) { return false; } $context = 'msgstr'; $entry->translations = array( PO::unpoify( $m[1] ) ); } elseif ( preg_match( '/^msgstr\[(\d+)\]\s+(".*")/', $line, $m ) ) { if ( 'msgid_plural' !== $context && 'msgstr_plural' !== $context ) { return false; } $context = 'msgstr_plural'; $msgstr_index = $m[1]; $entry->translations[ $m[1] ] = PO::unpoify( $m[2] ); } elseif ( preg_match( '/^".*"$/', $line ) ) { $unpoified = PO::unpoify( $line ); switch ( $context ) { case 'msgid': $entry->singular .= $unpoified; break; case 'msgctxt': $entry->context .= $unpoified; break; case 'msgid_plural': $entry->plural .= $unpoified; break; case 'msgstr': $entry->translations[0] .= $unpoified; break; case 'msgstr_plural': $entry->translations[ $msgstr_index ] .= $unpoified; break; default: return false; } } else { return false; } } $have_translations = false; foreach ( $entry->translations as $t ) { if ( $t || ( '0' === $t ) ) { $have_translations = true; break; } } if ( false === $have_translations ) { $entry->translations = array(); } return array( 'entry' => $entry, 'lineno' => $lineno, ); } /** * @param resource $f * @param string $action * @return bool */ public function read_line( $f, $action = 'read' ) { static $last_line = ''; static $use_last_line = false; if ( 'clear' === $action ) { $last_line = ''; return true; } if ( 'put-back' === $action ) { $use_last_line = true; return true; } $line = $use_last_line ? $last_line : fgets( $f ); $line = ( "\r\n" === substr( $line, -2 ) ) ? rtrim( $line, "\r\n" ) . "\n" : $line; $last_line = $line; $use_last_line = false; return $line; } /** * @param Translation_Entry $entry * @param string $po_comment_line */ public function add_comment_to_entry( &$entry, $po_comment_line ) { $first_two = substr( $po_comment_line, 0, 2 ); $comment = trim( substr( $po_comment_line, 2 ) ); if ( '#:' === $first_two ) { $entry->references = array_merge( $entry->references, preg_split( '/\s+/', $comment ) ); } elseif ( '#.' === $first_two ) { $entry->extracted_comments = trim( $entry->extracted_comments . "\n" . $comment ); } elseif ( '#,' === $first_two ) { $entry->flags = array_merge( $entry->flags, preg_split( '/,\s*/', $comment ) ); } else { $entry->translator_comments = trim( $entry->translator_comments . "\n" . $comment ); } } /** * @param string $s * @return string */ public static function trim_quotes( $s ) { if ( '"' === substr( $s, 0, 1 ) ) { $s = substr( $s, 1 ); } if ( '"' === substr( $s, -1, 1 ) ) { $s = substr( $s, 0, -1 ); } return $s; } } endif; PKj l\%class-wp-rewrite.phpnu[permalink_structure ); } /** * Determines whether permalinks are being used and rewrite module is not enabled. * * Means that permalink links are enabled and index.php is in the URL. * * @since 1.5.0 * * @return bool Whether permalink links are enabled and index.php is in the URL. */ public function using_index_permalinks() { if ( empty( $this->permalink_structure ) ) { return false; } // If the index is not in the permalink, we're using mod_rewrite. return preg_match( '#^/*' . $this->index . '#', $this->permalink_structure ); } /** * Determines whether permalinks are being used and rewrite module is enabled. * * Using permalinks and index.php is not in the URL. * * @since 1.5.0 * * @return bool Whether permalink links are enabled and index.php is NOT in the URL. */ public function using_mod_rewrite_permalinks() { return $this->using_permalinks() && ! $this->using_index_permalinks(); } /** * Indexes for matches for usage in preg_*() functions. * * The format of the string is, with empty matches property value, '$NUM'. * The 'NUM' will be replaced with the value in the $number parameter. With * the matches property not empty, the value of the returned string will * contain that value of the matches property. The format then will be * '$MATCHES[NUM]', with MATCHES as the value in the property and NUM the * value of the $number parameter. * * @since 1.5.0 * * @param int $number Index number. * @return string */ public function preg_index( $number ) { $match_prefix = '$'; $match_suffix = ''; if ( ! empty( $this->matches ) ) { $match_prefix = '$' . $this->matches . '['; $match_suffix = ']'; } return "$match_prefix$number$match_suffix"; } /** * Retrieves all page and attachments for pages URIs. * * The attachments are for those that have pages as parents and will be * retrieved. * * @since 2.5.0 * * @global wpdb $wpdb WordPress database abstraction object. * * @return array Array of page URIs as first element and attachment URIs as second element. */ public function page_uri_index() { global $wpdb; // Get pages in order of hierarchy, i.e. children after parents. $pages = $wpdb->get_results( "SELECT ID, post_name, post_parent FROM $wpdb->posts WHERE post_type = 'page' AND post_status != 'auto-draft'" ); $posts = get_page_hierarchy( $pages ); // If we have no pages get out quick. if ( ! $posts ) { return array( array(), array() ); } // Now reverse it, because we need parents after children for rewrite rules to work properly. $posts = array_reverse( $posts, true ); $page_uris = array(); $page_attachment_uris = array(); foreach ( $posts as $id => $post ) { // URL => page name. $uri = get_page_uri( $id ); $attachments = $wpdb->get_results( $wpdb->prepare( "SELECT ID, post_name, post_parent FROM $wpdb->posts WHERE post_type = 'attachment' AND post_parent = %d", $id ) ); if ( ! empty( $attachments ) ) { foreach ( $attachments as $attachment ) { $attach_uri = get_page_uri( $attachment->ID ); $page_attachment_uris[ $attach_uri ] = $attachment->ID; } } $page_uris[ $uri ] = $id; } return array( $page_uris, $page_attachment_uris ); } /** * Retrieves all of the rewrite rules for pages. * * @since 1.5.0 * * @return string[] Page rewrite rules. */ public function page_rewrite_rules() { // The extra .? at the beginning prevents clashes with other regular expressions in the rules array. $this->add_rewrite_tag( '%pagename%', '(.?.+?)', 'pagename=' ); return $this->generate_rewrite_rules( $this->get_page_permastruct(), EP_PAGES, true, true, false, false ); } /** * Retrieves date permalink structure, with year, month, and day. * * The permalink structure for the date, if not set already depends on the * permalink structure. It can be one of three formats. The first is year, * month, day; the second is day, month, year; and the last format is month, * day, year. These are matched against the permalink structure for which * one is used. If none matches, then the default will be used, which is * year, month, day. * * Prevents post ID and date permalinks from overlapping. In the case of * post_id, the date permalink will be prepended with front permalink with * 'date/' before the actual permalink to form the complete date permalink * structure. * * @since 1.5.0 * * @return string|false Date permalink structure on success, false on failure. */ public function get_date_permastruct() { if ( isset( $this->date_structure ) ) { return $this->date_structure; } if ( empty( $this->permalink_structure ) ) { $this->date_structure = ''; return false; } // The date permalink must have year, month, and day separated by slashes. $endians = array( '%year%/%monthnum%/%day%', '%day%/%monthnum%/%year%', '%monthnum%/%day%/%year%' ); $this->date_structure = ''; $date_endian = ''; foreach ( $endians as $endian ) { if ( false !== strpos( $this->permalink_structure, $endian ) ) { $date_endian = $endian; break; } } if ( empty( $date_endian ) ) { $date_endian = '%year%/%monthnum%/%day%'; } /* * Do not allow the date tags and %post_id% to overlap in the permalink * structure. If they do, move the date tags to $front/date/. */ $front = $this->front; preg_match_all( '/%.+?%/', $this->permalink_structure, $tokens ); $tok_index = 1; foreach ( (array) $tokens[0] as $token ) { if ( '%post_id%' === $token && ( $tok_index <= 3 ) ) { $front = $front . 'date/'; break; } $tok_index++; } $this->date_structure = $front . $date_endian; return $this->date_structure; } /** * Retrieves the year permalink structure without month and day. * * Gets the date permalink structure and strips out the month and day * permalink structures. * * @since 1.5.0 * * @return string|false Year permalink structure on success, false on failure. */ public function get_year_permastruct() { $structure = $this->get_date_permastruct(); if ( empty( $structure ) ) { return false; } $structure = str_replace( '%monthnum%', '', $structure ); $structure = str_replace( '%day%', '', $structure ); $structure = preg_replace( '#/+#', '/', $structure ); return $structure; } /** * Retrieves the month permalink structure without day and with year. * * Gets the date permalink structure and strips out the day permalink * structures. Keeps the year permalink structure. * * @since 1.5.0 * * @return string|false Year/Month permalink structure on success, false on failure. */ public function get_month_permastruct() { $structure = $this->get_date_permastruct(); if ( empty( $structure ) ) { return false; } $structure = str_replace( '%day%', '', $structure ); $structure = preg_replace( '#/+#', '/', $structure ); return $structure; } /** * Retrieves the day permalink structure with month and year. * * Keeps date permalink structure with all year, month, and day. * * @since 1.5.0 * * @return string|false Year/Month/Day permalink structure on success, false on failure. */ public function get_day_permastruct() { return $this->get_date_permastruct(); } /** * Retrieves the permalink structure for categories. * * If the category_base property has no value, then the category structure * will have the front property value, followed by 'category', and finally * '%category%'. If it does, then the root property will be used, along with * the category_base property value. * * @since 1.5.0 * * @return string|false Category permalink structure on success, false on failure. */ public function get_category_permastruct() { return $this->get_extra_permastruct( 'category' ); } /** * Retrieve the permalink structure for tags. * * If the tag_base property has no value, then the tag structure will have * the front property value, followed by 'tag', and finally '%tag%'. If it * does, then the root property will be used, along with the tag_base * property value. * * @since 2.3.0 * * @return string|false Tag permalink structure on success, false on failure. */ public function get_tag_permastruct() { return $this->get_extra_permastruct( 'post_tag' ); } /** * Retrieves an extra permalink structure by name. * * @since 2.5.0 * * @param string $name Permalink structure name. * @return string|false Permalink structure string on success, false on failure. */ public function get_extra_permastruct( $name ) { if ( empty( $this->permalink_structure ) ) { return false; } if ( isset( $this->extra_permastructs[ $name ] ) ) { return $this->extra_permastructs[ $name ]['struct']; } return false; } /** * Retrieves the author permalink structure. * * The permalink structure is front property, author base, and finally * '/%author%'. Will set the author_structure property and then return it * without attempting to set the value again. * * @since 1.5.0 * * @return string|false Author permalink structure on success, false on failure. */ public function get_author_permastruct() { if ( isset( $this->author_structure ) ) { return $this->author_structure; } if ( empty( $this->permalink_structure ) ) { $this->author_structure = ''; return false; } $this->author_structure = $this->front . $this->author_base . '/%author%'; return $this->author_structure; } /** * Retrieves the search permalink structure. * * The permalink structure is root property, search base, and finally * '/%search%'. Will set the search_structure property and then return it * without attempting to set the value again. * * @since 1.5.0 * * @return string|false Search permalink structure on success, false on failure. */ public function get_search_permastruct() { if ( isset( $this->search_structure ) ) { return $this->search_structure; } if ( empty( $this->permalink_structure ) ) { $this->search_structure = ''; return false; } $this->search_structure = $this->root . $this->search_base . '/%search%'; return $this->search_structure; } /** * Retrieves the page permalink structure. * * The permalink structure is root property, and '%pagename%'. Will set the * page_structure property and then return it without attempting to set the * value again. * * @since 1.5.0 * * @return string|false Page permalink structure on success, false on failure. */ public function get_page_permastruct() { if ( isset( $this->page_structure ) ) { return $this->page_structure; } if ( empty( $this->permalink_structure ) ) { $this->page_structure = ''; return false; } $this->page_structure = $this->root . '%pagename%'; return $this->page_structure; } /** * Retrieves the feed permalink structure. * * The permalink structure is root property, feed base, and finally * '/%feed%'. Will set the feed_structure property and then return it * without attempting to set the value again. * * @since 1.5.0 * * @return string|false Feed permalink structure on success, false on failure. */ public function get_feed_permastruct() { if ( isset( $this->feed_structure ) ) { return $this->feed_structure; } if ( empty( $this->permalink_structure ) ) { $this->feed_structure = ''; return false; } $this->feed_structure = $this->root . $this->feed_base . '/%feed%'; return $this->feed_structure; } /** * Retrieves the comment feed permalink structure. * * The permalink structure is root property, comment base property, feed * base and finally '/%feed%'. Will set the comment_feed_structure property * and then return it without attempting to set the value again. * * @since 1.5.0 * * @return string|false Comment feed permalink structure on success, false on failure. */ public function get_comment_feed_permastruct() { if ( isset( $this->comment_feed_structure ) ) { return $this->comment_feed_structure; } if ( empty( $this->permalink_structure ) ) { $this->comment_feed_structure = ''; return false; } $this->comment_feed_structure = $this->root . $this->comments_base . '/' . $this->feed_base . '/%feed%'; return $this->comment_feed_structure; } /** * Adds or updates existing rewrite tags (e.g. %postname%). * * If the tag already exists, replace the existing pattern and query for * that tag, otherwise add the new tag. * * @since 1.5.0 * * @see WP_Rewrite::$rewritecode * @see WP_Rewrite::$rewritereplace * @see WP_Rewrite::$queryreplace * * @param string $tag Name of the rewrite tag to add or update. * @param string $regex Regular expression to substitute the tag for in rewrite rules. * @param string $query String to append to the rewritten query. Must end in '='. */ public function add_rewrite_tag( $tag, $regex, $query ) { $position = array_search( $tag, $this->rewritecode, true ); if ( false !== $position && null !== $position ) { $this->rewritereplace[ $position ] = $regex; $this->queryreplace[ $position ] = $query; } else { $this->rewritecode[] = $tag; $this->rewritereplace[] = $regex; $this->queryreplace[] = $query; } } /** * Removes an existing rewrite tag. * * @since 4.5.0 * * @see WP_Rewrite::$rewritecode * @see WP_Rewrite::$rewritereplace * @see WP_Rewrite::$queryreplace * * @param string $tag Name of the rewrite tag to remove. */ public function remove_rewrite_tag( $tag ) { $position = array_search( $tag, $this->rewritecode, true ); if ( false !== $position && null !== $position ) { unset( $this->rewritecode[ $position ] ); unset( $this->rewritereplace[ $position ] ); unset( $this->queryreplace[ $position ] ); } } /** * Generates rewrite rules from a permalink structure. * * The main WP_Rewrite function for building the rewrite rule list. The * contents of the function is a mix of black magic and regular expressions, * so best just ignore the contents and move to the parameters. * * @since 1.5.0 * * @param string $permalink_structure The permalink structure. * @param int $ep_mask Optional. Endpoint mask defining what endpoints are added to the structure. * Accepts a mask of: * - `EP_ALL` * - `EP_NONE` * - `EP_ALL_ARCHIVES` * - `EP_ATTACHMENT` * - `EP_AUTHORS` * - `EP_CATEGORIES` * - `EP_COMMENTS` * - `EP_DATE` * - `EP_DAY` * - `EP_MONTH` * - `EP_PAGES` * - `EP_PERMALINK` * - `EP_ROOT` * - `EP_SEARCH` * - `EP_TAGS` * - `EP_YEAR` * Default `EP_NONE`. * @param bool $paged Optional. Whether archive pagination rules should be added for the structure. * Default true. * @param bool $feed Optional Whether feed rewrite rules should be added for the structure. * Default true. * @param bool $forcomments Optional. Whether the feed rules should be a query for a comments feed. * Default false. * @param bool $walk_dirs Optional. Whether the 'directories' making up the structure should be walked * over and rewrite rules built for each in-turn. Default true. * @param bool $endpoints Optional. Whether endpoints should be applied to the generated rewrite rules. * Default true. * @return string[] Array of rewrite rules keyed by their regex pattern. */ public function generate_rewrite_rules( $permalink_structure, $ep_mask = EP_NONE, $paged = true, $feed = true, $forcomments = false, $walk_dirs = true, $endpoints = true ) { // Build a regex to match the feed section of URLs, something like (feed|atom|rss|rss2)/? $feedregex2 = ''; foreach ( (array) $this->feeds as $feed_name ) { $feedregex2 .= $feed_name . '|'; } $feedregex2 = '(' . trim( $feedregex2, '|' ) . ')/?$'; /* * $feedregex is identical but with /feed/ added on as well, so URLs like /feed/atom * and /atom are both possible */ $feedregex = $this->feed_base . '/' . $feedregex2; // Build a regex to match the trackback and page/xx parts of URLs. $trackbackregex = 'trackback/?$'; $pageregex = $this->pagination_base . '/?([0-9]{1,})/?$'; $commentregex = $this->comments_pagination_base . '-([0-9]{1,})/?$'; $embedregex = 'embed/?$'; // Build up an array of endpoint regexes to append => queries to append. if ( $endpoints ) { $ep_query_append = array(); foreach ( (array) $this->endpoints as $endpoint ) { // Match everything after the endpoint name, but allow for nothing to appear there. $epmatch = $endpoint[1] . '(/(.*))?/?$'; // This will be appended on to the rest of the query for each dir. $epquery = '&' . $endpoint[2] . '='; $ep_query_append[ $epmatch ] = array( $endpoint[0], $epquery ); } } // Get everything up to the first rewrite tag. $front = substr( $permalink_structure, 0, strpos( $permalink_structure, '%' ) ); // Build an array of the tags (note that said array ends up being in $tokens[0]). preg_match_all( '/%.+?%/', $permalink_structure, $tokens ); $num_tokens = count( $tokens[0] ); $index = $this->index; // Probably 'index.php'. $feedindex = $index; $trackbackindex = $index; $embedindex = $index; /* * Build a list from the rewritecode and queryreplace arrays, that will look something * like tagname=$matches[i] where i is the current $i. */ $queries = array(); for ( $i = 0; $i < $num_tokens; ++$i ) { if ( 0 < $i ) { $queries[ $i ] = $queries[ $i - 1 ] . '&'; } else { $queries[ $i ] = ''; } $query_token = str_replace( $this->rewritecode, $this->queryreplace, $tokens[0][ $i ] ) . $this->preg_index( $i + 1 ); $queries[ $i ] .= $query_token; } // Get the structure, minus any cruft (stuff that isn't tags) at the front. $structure = $permalink_structure; if ( '/' !== $front ) { $structure = str_replace( $front, '', $structure ); } /* * Create a list of dirs to walk over, making rewrite rules for each level * so for example, a $structure of /%year%/%monthnum%/%postname% would create * rewrite rules for /%year%/, /%year%/%monthnum%/ and /%year%/%monthnum%/%postname% */ $structure = trim( $structure, '/' ); $dirs = $walk_dirs ? explode( '/', $structure ) : array( $structure ); $num_dirs = count( $dirs ); // Strip slashes from the front of $front. $front = preg_replace( '|^/+|', '', $front ); // The main workhorse loop. $post_rewrite = array(); $struct = $front; for ( $j = 0; $j < $num_dirs; ++$j ) { // Get the struct for this dir, and trim slashes off the front. $struct .= $dirs[ $j ] . '/'; // Accumulate. see comment near explode('/', $structure) above. $struct = ltrim( $struct, '/' ); // Replace tags with regexes. $match = str_replace( $this->rewritecode, $this->rewritereplace, $struct ); // Make a list of tags, and store how many there are in $num_toks. $num_toks = preg_match_all( '/%.+?%/', $struct, $toks ); // Get the 'tagname=$matches[i]'. $query = ( ! empty( $num_toks ) && isset( $queries[ $num_toks - 1 ] ) ) ? $queries[ $num_toks - 1 ] : ''; // Set up $ep_mask_specific which is used to match more specific URL types. switch ( $dirs[ $j ] ) { case '%year%': $ep_mask_specific = EP_YEAR; break; case '%monthnum%': $ep_mask_specific = EP_MONTH; break; case '%day%': $ep_mask_specific = EP_DAY; break; default: $ep_mask_specific = EP_NONE; } // Create query for /page/xx. $pagematch = $match . $pageregex; $pagequery = $index . '?' . $query . '&paged=' . $this->preg_index( $num_toks + 1 ); // Create query for /comment-page-xx. $commentmatch = $match . $commentregex; $commentquery = $index . '?' . $query . '&cpage=' . $this->preg_index( $num_toks + 1 ); if ( get_option( 'page_on_front' ) ) { // Create query for Root /comment-page-xx. $rootcommentmatch = $match . $commentregex; $rootcommentquery = $index . '?' . $query . '&page_id=' . get_option( 'page_on_front' ) . '&cpage=' . $this->preg_index( $num_toks + 1 ); } // Create query for /feed/(feed|atom|rss|rss2|rdf). $feedmatch = $match . $feedregex; $feedquery = $feedindex . '?' . $query . '&feed=' . $this->preg_index( $num_toks + 1 ); // Create query for /(feed|atom|rss|rss2|rdf) (see comment near creation of $feedregex). $feedmatch2 = $match . $feedregex2; $feedquery2 = $feedindex . '?' . $query . '&feed=' . $this->preg_index( $num_toks + 1 ); // Create query and regex for embeds. $embedmatch = $match . $embedregex; $embedquery = $embedindex . '?' . $query . '&embed=true'; // If asked to, turn the feed queries into comment feed ones. if ( $forcomments ) { $feedquery .= '&withcomments=1'; $feedquery2 .= '&withcomments=1'; } // Start creating the array of rewrites for this dir. $rewrite = array(); // ...adding on /feed/ regexes => queries. if ( $feed ) { $rewrite = array( $feedmatch => $feedquery, $feedmatch2 => $feedquery2, $embedmatch => $embedquery, ); } // ...and /page/xx ones. if ( $paged ) { $rewrite = array_merge( $rewrite, array( $pagematch => $pagequery ) ); } // Only on pages with comments add ../comment-page-xx/. if ( EP_PAGES & $ep_mask || EP_PERMALINK & $ep_mask ) { $rewrite = array_merge( $rewrite, array( $commentmatch => $commentquery ) ); } elseif ( EP_ROOT & $ep_mask && get_option( 'page_on_front' ) ) { $rewrite = array_merge( $rewrite, array( $rootcommentmatch => $rootcommentquery ) ); } // Do endpoints. if ( $endpoints ) { foreach ( (array) $ep_query_append as $regex => $ep ) { // Add the endpoints on if the mask fits. if ( $ep[0] & $ep_mask || $ep[0] & $ep_mask_specific ) { $rewrite[ $match . $regex ] = $index . '?' . $query . $ep[1] . $this->preg_index( $num_toks + 2 ); } } } // If we've got some tags in this dir. if ( $num_toks ) { $post = false; $page = false; /* * Check to see if this dir is permalink-level: i.e. the structure specifies an * individual post. Do this by checking it contains at least one of 1) post name, * 2) post ID, 3) page name, 4) timestamp (year, month, day, hour, second and * minute all present). Set these flags now as we need them for the endpoints. */ if ( strpos( $struct, '%postname%' ) !== false || strpos( $struct, '%post_id%' ) !== false || strpos( $struct, '%pagename%' ) !== false || ( strpos( $struct, '%year%' ) !== false && strpos( $struct, '%monthnum%' ) !== false && strpos( $struct, '%day%' ) !== false && strpos( $struct, '%hour%' ) !== false && strpos( $struct, '%minute%' ) !== false && strpos( $struct, '%second%' ) !== false ) ) { $post = true; if ( strpos( $struct, '%pagename%' ) !== false ) { $page = true; } } if ( ! $post ) { // For custom post types, we need to add on endpoints as well. foreach ( get_post_types( array( '_builtin' => false ) ) as $ptype ) { if ( strpos( $struct, "%$ptype%" ) !== false ) { $post = true; // This is for page style attachment URLs. $page = is_post_type_hierarchical( $ptype ); break; } } } // If creating rules for a permalink, do all the endpoints like attachments etc. if ( $post ) { // Create query and regex for trackback. $trackbackmatch = $match . $trackbackregex; $trackbackquery = $trackbackindex . '?' . $query . '&tb=1'; // Create query and regex for embeds. $embedmatch = $match . $embedregex; $embedquery = $embedindex . '?' . $query . '&embed=true'; // Trim slashes from the end of the regex for this dir. $match = rtrim( $match, '/' ); // Get rid of brackets. $submatchbase = str_replace( array( '(', ')' ), '', $match ); // Add a rule for at attachments, which take the form of /some-text. $sub1 = $submatchbase . '/([^/]+)/'; // Add trackback regex /trackback/... $sub1tb = $sub1 . $trackbackregex; // And /feed/(atom|...) $sub1feed = $sub1 . $feedregex; // And /(feed|atom...) $sub1feed2 = $sub1 . $feedregex2; // And /comment-page-xx $sub1comment = $sub1 . $commentregex; // And /embed/... $sub1embed = $sub1 . $embedregex; /* * Add another rule to match attachments in the explicit form: * /attachment/some-text */ $sub2 = $submatchbase . '/attachment/([^/]+)/'; // And add trackbacks /attachment/trackback. $sub2tb = $sub2 . $trackbackregex; // Feeds, /attachment/feed/(atom|...) $sub2feed = $sub2 . $feedregex; // And feeds again on to this /attachment/(feed|atom...) $sub2feed2 = $sub2 . $feedregex2; // And /comment-page-xx $sub2comment = $sub2 . $commentregex; // And /embed/... $sub2embed = $sub2 . $embedregex; // Create queries for these extra tag-ons we've just dealt with. $subquery = $index . '?attachment=' . $this->preg_index( 1 ); $subtbquery = $subquery . '&tb=1'; $subfeedquery = $subquery . '&feed=' . $this->preg_index( 2 ); $subcommentquery = $subquery . '&cpage=' . $this->preg_index( 2 ); $subembedquery = $subquery . '&embed=true'; // Do endpoints for attachments. if ( ! empty( $endpoints ) ) { foreach ( (array) $ep_query_append as $regex => $ep ) { if ( $ep[0] & EP_ATTACHMENT ) { $rewrite[ $sub1 . $regex ] = $subquery . $ep[1] . $this->preg_index( 3 ); $rewrite[ $sub2 . $regex ] = $subquery . $ep[1] . $this->preg_index( 3 ); } } } /* * Now we've finished with endpoints, finish off the $sub1 and $sub2 matches * add a ? as we don't have to match that last slash, and finally a $ so we * match to the end of the URL */ $sub1 .= '?$'; $sub2 .= '?$'; /* * Post pagination, e.g. /2/ * Previously: '(/[0-9]+)?/?$', which produced '/2' for page. * When cast to int, returned 0. */ $match = $match . '(?:/([0-9]+))?/?$'; $query = $index . '?' . $query . '&page=' . $this->preg_index( $num_toks + 1 ); // Not matching a permalink so this is a lot simpler. } else { // Close the match and finalise the query. $match .= '?$'; $query = $index . '?' . $query; } /* * Create the final array for this dir by joining the $rewrite array (which currently * only contains rules/queries for trackback, pages etc) to the main regex/query for * this dir */ $rewrite = array_merge( $rewrite, array( $match => $query ) ); // If we're matching a permalink, add those extras (attachments etc) on. if ( $post ) { // Add trackback. $rewrite = array_merge( array( $trackbackmatch => $trackbackquery ), $rewrite ); // Add embed. $rewrite = array_merge( array( $embedmatch => $embedquery ), $rewrite ); // Add regexes/queries for attachments, attachment trackbacks and so on. if ( ! $page ) { // Require /attachment/stuff form for pages because of confusion with subpages. $rewrite = array_merge( $rewrite, array( $sub1 => $subquery, $sub1tb => $subtbquery, $sub1feed => $subfeedquery, $sub1feed2 => $subfeedquery, $sub1comment => $subcommentquery, $sub1embed => $subembedquery, ) ); } $rewrite = array_merge( array( $sub2 => $subquery, $sub2tb => $subtbquery, $sub2feed => $subfeedquery, $sub2feed2 => $subfeedquery, $sub2comment => $subcommentquery, $sub2embed => $subembedquery, ), $rewrite ); } } // Add the rules for this dir to the accumulating $post_rewrite. $post_rewrite = array_merge( $rewrite, $post_rewrite ); } // The finished rules. phew! return $post_rewrite; } /** * Generates rewrite rules with permalink structure and walking directory only. * * Shorten version of WP_Rewrite::generate_rewrite_rules() that allows for shorter * list of parameters. See the method for longer description of what generating * rewrite rules does. * * @since 1.5.0 * * @see WP_Rewrite::generate_rewrite_rules() See for long description and rest of parameters. * * @param string $permalink_structure The permalink structure to generate rules. * @param bool $walk_dirs Optional. Whether to create list of directories to walk over. * Default false. * @return array */ public function generate_rewrite_rule( $permalink_structure, $walk_dirs = false ) { return $this->generate_rewrite_rules( $permalink_structure, EP_NONE, false, false, false, $walk_dirs ); } /** * Constructs rewrite matches and queries from permalink structure. * * Runs the action {@see 'generate_rewrite_rules'} with the parameter that is an * reference to the current WP_Rewrite instance to further manipulate the * permalink structures and rewrite rules. Runs the {@see 'rewrite_rules_array'} * filter on the full rewrite rule array. * * There are two ways to manipulate the rewrite rules, one by hooking into * the {@see 'generate_rewrite_rules'} action and gaining full control of the * object or just manipulating the rewrite rule array before it is passed * from the function. * * @since 1.5.0 * * @return string[] An associative array of matches and queries. */ public function rewrite_rules() { $rewrite = array(); if ( empty( $this->permalink_structure ) ) { return $rewrite; } // robots.txt -- only if installed at the root. $home_path = parse_url( home_url() ); $robots_rewrite = ( empty( $home_path['path'] ) || '/' === $home_path['path'] ) ? array( 'robots\.txt$' => $this->index . '?robots=1' ) : array(); // favicon.ico -- only if installed at the root. $favicon_rewrite = ( empty( $home_path['path'] ) || '/' === $home_path['path'] ) ? array( 'favicon\.ico$' => $this->index . '?favicon=1' ) : array(); // Old feed and service files. $deprecated_files = array( '.*wp-(atom|rdf|rss|rss2|feed|commentsrss2)\.php$' => $this->index . '?feed=old', '.*wp-app\.php(/.*)?$' => $this->index . '?error=403', ); // Registration rules. $registration_pages = array(); if ( is_multisite() && is_main_site() ) { $registration_pages['.*wp-signup.php$'] = $this->index . '?signup=true'; $registration_pages['.*wp-activate.php$'] = $this->index . '?activate=true'; } // Deprecated. $registration_pages['.*wp-register.php$'] = $this->index . '?register=true'; // Post rewrite rules. $post_rewrite = $this->generate_rewrite_rules( $this->permalink_structure, EP_PERMALINK ); /** * Filters rewrite rules used for "post" archives. * * @since 1.5.0 * * @param string[] $post_rewrite Array of rewrite rules for posts, keyed by their regex pattern. */ $post_rewrite = apply_filters( 'post_rewrite_rules', $post_rewrite ); // Date rewrite rules. $date_rewrite = $this->generate_rewrite_rules( $this->get_date_permastruct(), EP_DATE ); /** * Filters rewrite rules used for date archives. * * Likely date archives would include `/yyyy/`, `/yyyy/mm/`, and `/yyyy/mm/dd/`. * * @since 1.5.0 * * @param string[] $date_rewrite Array of rewrite rules for date archives, keyed by their regex pattern. */ $date_rewrite = apply_filters( 'date_rewrite_rules', $date_rewrite ); // Root-level rewrite rules. $root_rewrite = $this->generate_rewrite_rules( $this->root . '/', EP_ROOT ); /** * Filters rewrite rules used for root-level archives. * * Likely root-level archives would include pagination rules for the homepage * as well as site-wide post feeds (e.g. `/feed/`, and `/feed/atom/`). * * @since 1.5.0 * * @param string[] $root_rewrite Array of root-level rewrite rules, keyed by their regex pattern. */ $root_rewrite = apply_filters( 'root_rewrite_rules', $root_rewrite ); // Comments rewrite rules. $comments_rewrite = $this->generate_rewrite_rules( $this->root . $this->comments_base, EP_COMMENTS, false, true, true, false ); /** * Filters rewrite rules used for comment feed archives. * * Likely comments feed archives include `/comments/feed/` and `/comments/feed/atom/`. * * @since 1.5.0 * * @param string[] $comments_rewrite Array of rewrite rules for the site-wide comments feeds, keyed by their regex pattern. */ $comments_rewrite = apply_filters( 'comments_rewrite_rules', $comments_rewrite ); // Search rewrite rules. $search_structure = $this->get_search_permastruct(); $search_rewrite = $this->generate_rewrite_rules( $search_structure, EP_SEARCH ); /** * Filters rewrite rules used for search archives. * * Likely search-related archives include `/search/search+query/` as well as * pagination and feed paths for a search. * * @since 1.5.0 * * @param string[] $search_rewrite Array of rewrite rules for search queries, keyed by their regex pattern. */ $search_rewrite = apply_filters( 'search_rewrite_rules', $search_rewrite ); // Author rewrite rules. $author_rewrite = $this->generate_rewrite_rules( $this->get_author_permastruct(), EP_AUTHORS ); /** * Filters rewrite rules used for author archives. * * Likely author archives would include `/author/author-name/`, as well as * pagination and feed paths for author archives. * * @since 1.5.0 * * @param string[] $author_rewrite Array of rewrite rules for author archives, keyed by their regex pattern. */ $author_rewrite = apply_filters( 'author_rewrite_rules', $author_rewrite ); // Pages rewrite rules. $page_rewrite = $this->page_rewrite_rules(); /** * Filters rewrite rules used for "page" post type archives. * * @since 1.5.0 * * @param string[] $page_rewrite Array of rewrite rules for the "page" post type, keyed by their regex pattern. */ $page_rewrite = apply_filters( 'page_rewrite_rules', $page_rewrite ); // Extra permastructs. foreach ( $this->extra_permastructs as $permastructname => $struct ) { if ( is_array( $struct ) ) { if ( count( $struct ) == 2 ) { $rules = $this->generate_rewrite_rules( $struct[0], $struct[1] ); } else { $rules = $this->generate_rewrite_rules( $struct['struct'], $struct['ep_mask'], $struct['paged'], $struct['feed'], $struct['forcomments'], $struct['walk_dirs'], $struct['endpoints'] ); } } else { $rules = $this->generate_rewrite_rules( $struct ); } /** * Filters rewrite rules used for individual permastructs. * * The dynamic portion of the hook name, `$permastructname`, refers * to the name of the registered permastruct. * * Possible hook names include: * * - `category_rewrite_rules` * - `post_format_rewrite_rules` * - `post_tag_rewrite_rules` * * @since 3.1.0 * * @param string[] $rules Array of rewrite rules generated for the current permastruct, keyed by their regex pattern. */ $rules = apply_filters( "{$permastructname}_rewrite_rules", $rules ); if ( 'post_tag' === $permastructname ) { /** * Filters rewrite rules used specifically for Tags. * * @since 2.3.0 * @deprecated 3.1.0 Use {@see 'post_tag_rewrite_rules'} instead. * * @param string[] $rules Array of rewrite rules generated for tags, keyed by their regex pattern. */ $rules = apply_filters_deprecated( 'tag_rewrite_rules', array( $rules ), '3.1.0', 'post_tag_rewrite_rules' ); } $this->extra_rules_top = array_merge( $this->extra_rules_top, $rules ); } // Put them together. if ( $this->use_verbose_page_rules ) { $this->rules = array_merge( $this->extra_rules_top, $robots_rewrite, $favicon_rewrite, $deprecated_files, $registration_pages, $root_rewrite, $comments_rewrite, $search_rewrite, $author_rewrite, $date_rewrite, $page_rewrite, $post_rewrite, $this->extra_rules ); } else { $this->rules = array_merge( $this->extra_rules_top, $robots_rewrite, $favicon_rewrite, $deprecated_files, $registration_pages, $root_rewrite, $comments_rewrite, $search_rewrite, $author_rewrite, $date_rewrite, $post_rewrite, $page_rewrite, $this->extra_rules ); } /** * Fires after the rewrite rules are generated. * * @since 1.5.0 * * @param WP_Rewrite $wp_rewrite Current WP_Rewrite instance (passed by reference). */ do_action_ref_array( 'generate_rewrite_rules', array( &$this ) ); /** * Filters the full set of generated rewrite rules. * * @since 1.5.0 * * @param string[] $rules The compiled array of rewrite rules, keyed by their regex pattern. */ $this->rules = apply_filters( 'rewrite_rules_array', $this->rules ); return $this->rules; } /** * Retrieves the rewrite rules. * * The difference between this method and WP_Rewrite::rewrite_rules() is that * this method stores the rewrite rules in the 'rewrite_rules' option and retrieves * it. This prevents having to process all of the permalinks to get the rewrite rules * in the form of caching. * * @since 1.5.0 * * @return string[] Array of rewrite rules keyed by their regex pattern. */ public function wp_rewrite_rules() { $this->rules = get_option( 'rewrite_rules' ); if ( empty( $this->rules ) ) { $this->matches = 'matches'; $this->rewrite_rules(); if ( ! did_action( 'wp_loaded' ) ) { add_action( 'wp_loaded', array( $this, 'flush_rules' ) ); return $this->rules; } update_option( 'rewrite_rules', $this->rules ); } return $this->rules; } /** * Retrieves mod_rewrite-formatted rewrite rules to write to .htaccess. * * Does not actually write to the .htaccess file, but creates the rules for * the process that will. * * Will add the non_wp_rules property rules to the .htaccess file before * the WordPress rewrite rules one. * * @since 1.5.0 * * @return string */ public function mod_rewrite_rules() { if ( ! $this->using_permalinks() ) { return ''; } $site_root = parse_url( site_url() ); if ( isset( $site_root['path'] ) ) { $site_root = trailingslashit( $site_root['path'] ); } $home_root = parse_url( home_url() ); if ( isset( $home_root['path'] ) ) { $home_root = trailingslashit( $home_root['path'] ); } else { $home_root = '/'; } $rules = "\n"; $rules .= "RewriteEngine On\n"; $rules .= "RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]\n"; $rules .= "RewriteBase $home_root\n"; // Prevent -f checks on index.php. $rules .= "RewriteRule ^index\.php$ - [L]\n"; // Add in the rules that don't redirect to WP's index.php (and thus shouldn't be handled by WP at all). foreach ( (array) $this->non_wp_rules as $match => $query ) { // Apache 1.3 does not support the reluctant (non-greedy) modifier. $match = str_replace( '.+?', '.+', $match ); $rules .= 'RewriteRule ^' . $match . ' ' . $home_root . $query . " [QSA,L]\n"; } if ( $this->use_verbose_rules ) { $this->matches = ''; $rewrite = $this->rewrite_rules(); $num_rules = count( $rewrite ); $rules .= "RewriteCond %{REQUEST_FILENAME} -f [OR]\n" . "RewriteCond %{REQUEST_FILENAME} -d\n" . "RewriteRule ^.*$ - [S=$num_rules]\n"; foreach ( (array) $rewrite as $match => $query ) { // Apache 1.3 does not support the reluctant (non-greedy) modifier. $match = str_replace( '.+?', '.+', $match ); if ( strpos( $query, $this->index ) !== false ) { $rules .= 'RewriteRule ^' . $match . ' ' . $home_root . $query . " [QSA,L]\n"; } else { $rules .= 'RewriteRule ^' . $match . ' ' . $site_root . $query . " [QSA,L]\n"; } } } else { $rules .= "RewriteCond %{REQUEST_FILENAME} !-f\n" . "RewriteCond %{REQUEST_FILENAME} !-d\n" . "RewriteRule . {$home_root}{$this->index} [L]\n"; } $rules .= "\n"; /** * Filters the list of rewrite rules formatted for output to an .htaccess file. * * @since 1.5.0 * * @param string $rules mod_rewrite Rewrite rules formatted for .htaccess. */ $rules = apply_filters( 'mod_rewrite_rules', $rules ); /** * Filters the list of rewrite rules formatted for output to an .htaccess file. * * @since 1.5.0 * @deprecated 1.5.0 Use the {@see 'mod_rewrite_rules'} filter instead. * * @param string $rules mod_rewrite Rewrite rules formatted for .htaccess. */ return apply_filters_deprecated( 'rewrite_rules', array( $rules ), '1.5.0', 'mod_rewrite_rules' ); } /** * Retrieves IIS7 URL Rewrite formatted rewrite rules to write to web.config file. * * Does not actually write to the web.config file, but creates the rules for * the process that will. * * @since 2.8.0 * * @param bool $add_parent_tags Optional. Whether to add parent tags to the rewrite rule sets. * Default false. * @return string IIS7 URL rewrite rule sets. */ public function iis7_url_rewrite_rules( $add_parent_tags = false ) { if ( ! $this->using_permalinks() ) { return ''; } $rules = ''; if ( $add_parent_tags ) { $rules .= ' '; } $rules .= ' '; if ( $add_parent_tags ) { $rules .= ' '; } /** * Filters the list of rewrite rules formatted for output to a web.config. * * @since 2.8.0 * * @param string $rules Rewrite rules formatted for IIS web.config. */ return apply_filters( 'iis7_url_rewrite_rules', $rules ); } /** * Adds a rewrite rule that transforms a URL structure to a set of query vars. * * Any value in the $after parameter that isn't 'bottom' will result in the rule * being placed at the top of the rewrite rules. * * @since 2.1.0 * @since 4.4.0 Array support was added to the `$query` parameter. * * @param string $regex Regular expression to match request against. * @param string|array $query The corresponding query vars for this rewrite rule. * @param string $after Optional. Priority of the new rule. Accepts 'top' * or 'bottom'. Default 'bottom'. */ public function add_rule( $regex, $query, $after = 'bottom' ) { if ( is_array( $query ) ) { $external = false; $query = add_query_arg( $query, 'index.php' ); } else { $index = false === strpos( $query, '?' ) ? strlen( $query ) : strpos( $query, '?' ); $front = substr( $query, 0, $index ); $external = $front != $this->index; } // "external" = it doesn't correspond to index.php. if ( $external ) { $this->add_external_rule( $regex, $query ); } else { if ( 'bottom' === $after ) { $this->extra_rules = array_merge( $this->extra_rules, array( $regex => $query ) ); } else { $this->extra_rules_top = array_merge( $this->extra_rules_top, array( $regex => $query ) ); } } } /** * Adds a rewrite rule that doesn't correspond to index.php. * * @since 2.1.0 * * @param string $regex Regular expression to match request against. * @param string $query The corresponding query vars for this rewrite rule. */ public function add_external_rule( $regex, $query ) { $this->non_wp_rules[ $regex ] = $query; } /** * Adds an endpoint, like /trackback/. * * @since 2.1.0 * @since 3.9.0 $query_var parameter added. * @since 4.3.0 Added support for skipping query var registration by passing `false` to `$query_var`. * * @see add_rewrite_endpoint() for full documentation. * @global WP $wp Current WordPress environment instance. * * @param string $name Name of the endpoint. * @param int $places Endpoint mask describing the places the endpoint should be added. * Accepts a mask of: * - `EP_ALL` * - `EP_NONE` * - `EP_ALL_ARCHIVES` * - `EP_ATTACHMENT` * - `EP_AUTHORS` * - `EP_CATEGORIES` * - `EP_COMMENTS` * - `EP_DATE` * - `EP_DAY` * - `EP_MONTH` * - `EP_PAGES` * - `EP_PERMALINK` * - `EP_ROOT` * - `EP_SEARCH` * - `EP_TAGS` * - `EP_YEAR` * @param string|bool $query_var Optional. Name of the corresponding query variable. Pass `false` to * skip registering a query_var for this endpoint. Defaults to the * value of `$name`. */ public function add_endpoint( $name, $places, $query_var = true ) { global $wp; // For backward compatibility, if null has explicitly been passed as `$query_var`, assume `true`. if ( true === $query_var || null === $query_var ) { $query_var = $name; } $this->endpoints[] = array( $places, $name, $query_var ); if ( $query_var ) { $wp->add_query_var( $query_var ); } } /** * Adds a new permalink structure. * * A permalink structure (permastruct) is an abstract definition of a set of rewrite rules; * it is an easy way of expressing a set of regular expressions that rewrite to a set of * query strings. The new permastruct is added to the WP_Rewrite::$extra_permastructs array. * * When the rewrite rules are built by WP_Rewrite::rewrite_rules(), all of these extra * permastructs are passed to WP_Rewrite::generate_rewrite_rules() which transforms them * into the regular expressions that many love to hate. * * The `$args` parameter gives you control over how WP_Rewrite::generate_rewrite_rules() * works on the new permastruct. * * @since 2.5.0 * * @param string $name Name for permalink structure. * @param string $struct Permalink structure (e.g. category/%category%) * @param array $args { * Optional. Arguments for building rewrite rules based on the permalink structure. * Default empty array. * * @type bool $with_front Whether the structure should be prepended with `WP_Rewrite::$front`. * Default true. * @type int $ep_mask The endpoint mask defining which endpoints are added to the structure. * Accepts a mask of: * - `EP_ALL` * - `EP_NONE` * - `EP_ALL_ARCHIVES` * - `EP_ATTACHMENT` * - `EP_AUTHORS` * - `EP_CATEGORIES` * - `EP_COMMENTS` * - `EP_DATE` * - `EP_DAY` * - `EP_MONTH` * - `EP_PAGES` * - `EP_PERMALINK` * - `EP_ROOT` * - `EP_SEARCH` * - `EP_TAGS` * - `EP_YEAR` * Default `EP_NONE`. * @type bool $paged Whether archive pagination rules should be added for the structure. * Default true. * @type bool $feed Whether feed rewrite rules should be added for the structure. Default true. * @type bool $forcomments Whether the feed rules should be a query for a comments feed. Default false. * @type bool $walk_dirs Whether the 'directories' making up the structure should be walked over * and rewrite rules built for each in-turn. Default true. * @type bool $endpoints Whether endpoints should be applied to the generated rules. Default true. * } */ public function add_permastruct( $name, $struct, $args = array() ) { // Back-compat for the old parameters: $with_front and $ep_mask. if ( ! is_array( $args ) ) { $args = array( 'with_front' => $args ); } if ( func_num_args() == 4 ) { $args['ep_mask'] = func_get_arg( 3 ); } $defaults = array( 'with_front' => true, 'ep_mask' => EP_NONE, 'paged' => true, 'feed' => true, 'forcomments' => false, 'walk_dirs' => true, 'endpoints' => true, ); $args = array_intersect_key( $args, $defaults ); $args = wp_parse_args( $args, $defaults ); if ( $args['with_front'] ) { $struct = $this->front . $struct; } else { $struct = $this->root . $struct; } $args['struct'] = $struct; $this->extra_permastructs[ $name ] = $args; } /** * Removes a permalink structure. * * @since 4.5.0 * * @param string $name Name for permalink structure. */ public function remove_permastruct( $name ) { unset( $this->extra_permastructs[ $name ] ); } /** * Removes rewrite rules and then recreate rewrite rules. * * Calls WP_Rewrite::wp_rewrite_rules() after removing the 'rewrite_rules' option. * If the function named 'save_mod_rewrite_rules' exists, it will be called. * * @since 2.0.1 * * @param bool $hard Whether to update .htaccess (hard flush) or just update rewrite_rules option (soft flush). Default is true (hard). */ public function flush_rules( $hard = true ) { static $do_hard_later = null; // Prevent this action from running before everyone has registered their rewrites. if ( ! did_action( 'wp_loaded' ) ) { add_action( 'wp_loaded', array( $this, 'flush_rules' ) ); $do_hard_later = ( isset( $do_hard_later ) ) ? $do_hard_later || $hard : $hard; return; } if ( isset( $do_hard_later ) ) { $hard = $do_hard_later; unset( $do_hard_later ); } update_option( 'rewrite_rules', '' ); $this->wp_rewrite_rules(); /** * Filters whether a "hard" rewrite rule flush should be performed when requested. * * A "hard" flush updates .htaccess (Apache) or web.config (IIS). * * @since 3.7.0 * * @param bool $hard Whether to flush rewrite rules "hard". Default true. */ if ( ! $hard || ! apply_filters( 'flush_rewrite_rules_hard', true ) ) { return; } if ( function_exists( 'save_mod_rewrite_rules' ) ) { save_mod_rewrite_rules(); } if ( function_exists( 'iis7_save_url_rewrite_rules' ) ) { iis7_save_url_rewrite_rules(); } } /** * Sets up the object's properties. * * The 'use_verbose_page_rules' object property will be set to true if the * permalink structure begins with one of the following: '%postname%', '%category%', * '%tag%', or '%author%'. * * @since 1.5.0 */ public function init() { $this->extra_rules = array(); $this->non_wp_rules = array(); $this->endpoints = array(); $this->permalink_structure = get_option( 'permalink_structure' ); $this->front = substr( $this->permalink_structure, 0, strpos( $this->permalink_structure, '%' ) ); $this->root = ''; if ( $this->using_index_permalinks() ) { $this->root = $this->index . '/'; } unset( $this->author_structure ); unset( $this->date_structure ); unset( $this->page_structure ); unset( $this->search_structure ); unset( $this->feed_structure ); unset( $this->comment_feed_structure ); $this->use_trailing_slashes = ( '/' === substr( $this->permalink_structure, -1, 1 ) ); // Enable generic rules for pages if permalink structure doesn't begin with a wildcard. if ( preg_match( '/^[^%]*%(?:postname|category|tag|author)%/', $this->permalink_structure ) ) { $this->use_verbose_page_rules = true; } else { $this->use_verbose_page_rules = false; } } /** * Sets the main permalink structure for the site. * * Will update the 'permalink_structure' option, if there is a difference * between the current permalink structure and the parameter value. Calls * WP_Rewrite::init() after the option is updated. * * Fires the {@see 'permalink_structure_changed'} action once the init call has * processed passing the old and new values * * @since 1.5.0 * * @param string $permalink_structure Permalink structure. */ public function set_permalink_structure( $permalink_structure ) { if ( $permalink_structure != $this->permalink_structure ) { $old_permalink_structure = $this->permalink_structure; update_option( 'permalink_structure', $permalink_structure ); $this->init(); /** * Fires after the permalink structure is updated. * * @since 2.8.0 * * @param string $old_permalink_structure The previous permalink structure. * @param string $permalink_structure The new permalink structure. */ do_action( 'permalink_structure_changed', $old_permalink_structure, $permalink_structure ); } } /** * Sets the category base for the category permalink. * * Will update the 'category_base' option, if there is a difference between * the current category base and the parameter value. Calls WP_Rewrite::init() * after the option is updated. * * @since 1.5.0 * * @param string $category_base Category permalink structure base. */ public function set_category_base( $category_base ) { if ( get_option( 'category_base' ) !== $category_base ) { update_option( 'category_base', $category_base ); $this->init(); } } /** * Sets the tag base for the tag permalink. * * Will update the 'tag_base' option, if there is a difference between the * current tag base and the parameter value. Calls WP_Rewrite::init() after * the option is updated. * * @since 2.3.0 * * @param string $tag_base Tag permalink structure base. */ public function set_tag_base( $tag_base ) { if ( get_option( 'tag_base' ) !== $tag_base ) { update_option( 'tag_base', $tag_base ); $this->init(); } } /** * Constructor - Calls init(), which runs setup. * * @since 1.5.0 */ public function __construct() { $this->init(); } } PKj l\Q3MMms-network.phpnu[query( $args ); } /** * Removes a network from the object cache. * * @since 4.6.0 * * @global bool $_wp_suspend_cache_invalidation * * @param int|array $ids Network ID or an array of network IDs to remove from cache. */ function clean_network_cache( $ids ) { global $_wp_suspend_cache_invalidation; if ( ! empty( $_wp_suspend_cache_invalidation ) ) { return; } foreach ( (array) $ids as $id ) { wp_cache_delete( $id, 'networks' ); /** * Fires immediately after a network has been removed from the object cache. * * @since 4.6.0 * * @param int $id Network ID. */ do_action( 'clean_network_cache', $id ); } wp_cache_set( 'last_changed', microtime(), 'networks' ); } /** * Updates the network cache of given networks. * * Will add the networks in $networks to the cache. If network ID already exists * in the network cache then it will not be updated. The network is added to the * cache using the network group with the key using the ID of the networks. * * @since 4.6.0 * * @param array $networks Array of network row objects. */ function update_network_cache( $networks ) { foreach ( (array) $networks as $network ) { wp_cache_add( $network->id, $network, 'networks' ); } } /** * Adds any networks from the given IDs to the cache that do not already exist in cache. * * @since 4.6.0 * @access private * * @see update_network_cache() * @global wpdb $wpdb WordPress database abstraction object. * * @param array $network_ids Array of network IDs. */ function _prime_network_caches( $network_ids ) { global $wpdb; $non_cached_ids = _get_non_cached_ids( $network_ids, 'networks' ); if ( ! empty( $non_cached_ids ) ) { $fresh_networks = $wpdb->get_results( sprintf( "SELECT $wpdb->site.* FROM $wpdb->site WHERE id IN (%s)", implode( ',', array_map( 'intval', $non_cached_ids ) ) ) ); // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared update_network_cache( $fresh_networks ); } } PKj l\ |((class-wp-customize-panel.phpnu[$key = $args[ $key ]; } } $this->manager = $manager; $this->id = $id; if ( empty( $this->active_callback ) ) { $this->active_callback = array( $this, 'active_callback' ); } self::$instance_count += 1; $this->instance_number = self::$instance_count; $this->sections = array(); // Users cannot customize the $sections array. } /** * Check whether panel is active to current Customizer preview. * * @since 4.1.0 * * @return bool Whether the panel is active to the current preview. */ final public function active() { $panel = $this; $active = call_user_func( $this->active_callback, $this ); /** * Filters response of WP_Customize_Panel::active(). * * @since 4.1.0 * * @param bool $active Whether the Customizer panel is active. * @param WP_Customize_Panel $panel WP_Customize_Panel instance. */ $active = apply_filters( 'customize_panel_active', $active, $panel ); return $active; } /** * Default callback used when invoking WP_Customize_Panel::active(). * * Subclasses can override this with their specific logic, or they may * provide an 'active_callback' argument to the constructor. * * @since 4.1.0 * * @return bool Always true. */ public function active_callback() { return true; } /** * Gather the parameters passed to client JavaScript via JSON. * * @since 4.1.0 * * @return array The array to be exported to the client as JSON. */ public function json() { $array = wp_array_slice_assoc( (array) $this, array( 'id', 'description', 'priority', 'type' ) ); $array['title'] = html_entity_decode( $this->title, ENT_QUOTES, get_bloginfo( 'charset' ) ); $array['content'] = $this->get_content(); $array['active'] = $this->active(); $array['instanceNumber'] = $this->instance_number; $array['autoExpandSoleSection'] = $this->auto_expand_sole_section; return $array; } /** * Checks required user capabilities and whether the theme has the * feature support required by the panel. * * @since 4.0.0 * @since 5.9.0 Method was marked non-final. * * @return bool False if theme doesn't support the panel or the user doesn't have the capability. */ public function check_capabilities() { if ( $this->capability && ! current_user_can( $this->capability ) ) { return false; } if ( $this->theme_supports && ! current_theme_supports( ... (array) $this->theme_supports ) ) { return false; } return true; } /** * Get the panel's content template for insertion into the Customizer pane. * * @since 4.1.0 * * @return string Content for the panel. */ final public function get_content() { ob_start(); $this->maybe_render(); return trim( ob_get_clean() ); } /** * Check capabilities and render the panel. * * @since 4.0.0 */ final public function maybe_render() { if ( ! $this->check_capabilities() ) { return; } /** * Fires before rendering a Customizer panel. * * @since 4.0.0 * * @param WP_Customize_Panel $panel WP_Customize_Panel instance. */ do_action( 'customize_render_panel', $this ); /** * Fires before rendering a specific Customizer panel. * * The dynamic portion of the hook name, `$this->id`, refers to * the ID of the specific Customizer panel to be rendered. * * @since 4.0.0 */ do_action( "customize_render_panel_{$this->id}" ); $this->render(); } /** * Render the panel container, and then its contents (via `this->render_content()`) in a subclass. * * Panel containers are now rendered in JS by default, see WP_Customize_Panel::print_template(). * * @since 4.0.0 */ protected function render() {} /** * Render the panel UI in a subclass. * * Panel contents are now rendered in JS by default, see WP_Customize_Panel::print_template(). * * @since 4.1.0 */ protected function render_content() {} /** * Render the panel's JS templates. * * This function is only run for panel types that have been registered with * WP_Customize_Manager::register_panel_type(). * * @since 4.3.0 * * @see WP_Customize_Manager::register_panel_type() */ public function print_template() { ?>
  • {{ data.title }}

    • {{ data.title }}' ); ?> <# if ( data.description ) { #> <# } #>
      <# if ( data.description ) { #>
      {{{ data.description }}}
      <# } #>
    • _x( 'Buttons', 'Block pattern category' ) ) ); register_block_pattern_category( 'columns', array( 'label' => _x( 'Columns', 'Block pattern category' ) ) ); register_block_pattern_category( 'gallery', array( 'label' => _x( 'Gallery', 'Block pattern category' ) ) ); register_block_pattern_category( 'header', array( 'label' => _x( 'Headers', 'Block pattern category' ) ) ); register_block_pattern_category( 'text', array( 'label' => _x( 'Text', 'Block pattern category' ) ) ); register_block_pattern_category( 'query', array( 'label' => _x( 'Query', 'Block pattern category' ) ) ); } /** * Register Core's official patterns from wordpress.org/patterns. * * @since 5.8.0 * @since 5.9.0 The $current_screen argument was removed. * * @param WP_Screen $deprecated Unused. Formerly the screen that the current request was triggered from. */ function _load_remote_block_patterns( $deprecated = null ) { if ( ! empty( $deprecated ) ) { _deprecated_argument( __FUNCTION__, '5.9.0' ); $current_screen = $deprecated; if ( ! $current_screen->is_block_editor ) { return; } } $supports_core_patterns = get_theme_support( 'core-block-patterns' ); /** * Filter to disable remote block patterns. * * @since 5.8.0 * * @param bool $should_load_remote */ $should_load_remote = apply_filters( 'should_load_remote_block_patterns', true ); if ( $supports_core_patterns && $should_load_remote ) { $request = new WP_REST_Request( 'GET', '/wp/v2/pattern-directory/patterns' ); $core_keyword_id = 11; // 11 is the ID for "core". $request->set_param( 'keyword', $core_keyword_id ); $response = rest_do_request( $request ); if ( $response->is_error() ) { return; } $patterns = $response->get_data(); foreach ( $patterns as $settings ) { $pattern_name = 'core/' . sanitize_title( $settings['title'] ); register_block_pattern( $pattern_name, (array) $settings ); } } } /** * Register `Featured` (category) patterns from wordpress.org/patterns. * * @since 5.9.0 */ function _load_remote_featured_patterns() { $supports_core_patterns = get_theme_support( 'core-block-patterns' ); /** This filter is documented in wp-includes/block-patterns.php */ $should_load_remote = apply_filters( 'should_load_remote_block_patterns', true ); if ( ! $should_load_remote || ! $supports_core_patterns ) { return; } if ( ! WP_Block_Pattern_Categories_Registry::get_instance()->is_registered( 'featured' ) ) { register_block_pattern_category( 'featured', array( 'label' => __( 'Featured' ) ) ); } $request = new WP_REST_Request( 'GET', '/wp/v2/pattern-directory/patterns' ); $featured_cat_id = 26; // This is the `Featured` category id from pattern directory. $request->set_param( 'category', $featured_cat_id ); $response = rest_do_request( $request ); if ( $response->is_error() ) { return; } $patterns = $response->get_data(); foreach ( $patterns as $pattern ) { $pattern_name = sanitize_title( $pattern['title'] ); $registry = WP_Block_Patterns_Registry::get_instance(); // Some patterns might be already registerd as `core patterns with the `core` prefix. $is_registered = $registry->is_registered( $pattern_name ) || $registry->is_registered( "core/$pattern_name" ); if ( ! $is_registered ) { register_block_pattern( $pattern_name, (array) $pattern ); } } } PKj l\!hP css/wp-embed-template-ie.min.cssnu[/*! This file is auto-generated */ .dashicons-no{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAQAAAAngNWGAAAAcElEQVR4AdXRVxmEMBAGwJMQCUhAIhKQECmRsFJwMFfp7HfP/E8pk0173CuKpt/0R+WaBaaZqogLagBMuh+DdoKbyRCwqZ/SnM0R5oQuZ2UHS8Z6k23qPxZCTrV5UlHMi8bsfHVXP7K/GXZHaTO7S54CWLdHlN2YIwAAAABJRU5ErkJggg==)}.dashicons-admin-comments{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAATUlEQVR4AWMYWqCpvUcAiA8A8X9iMFStAD4DG0AKScQNVDZw1MBRAwvIMLCA5jmFlCD4AMQGlOTtBgoNwzQQ3TCKDaTcMMxYN2AYVgAAYPKsEBxN0PIAAAAASUVORK5CYII=)}.wp-embed-comments a:hover .dashicons-admin-comments{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAATElEQVR4AWMYYqB4lQAQHwDi/8RgqFoBfAY2gBSSiBuobOCogaMGFpBhYAEdcwrhIPgAxAaU5O0GCg3DNBDdMIoNpNwwzFg3YBhWAABG71qAFYcFqgAAAABJRU5ErkJggg==)}.dashicons-share{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAc0lEQVR4AWMYfqCpvccAiBcA8X8gfgDEBZQaeAFkGBoOoMR1/7HgDeQa2ECZgQiDHID4AMwAor0MCmBoQP+HBnwAskFQdgBRkQJViGk7wiAHUr21AYdhDTA1dDOQHl6mPFLokmwoT9j0z3qUFw70L77oDwAiuzCIub1XpQAAAABJRU5ErkJggg==)}.wp-embed-share-dialog-open:hover .dashicons-share{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAc0lEQVR4AWMYhqB4lQEQLwDi/0D8AIgLKDXwAsgwNBxAiev+Y8EbyDWwgTIDEQY5APEBmAFEexkUwNCA/g8N+ABkg6DsAKIiBaoQ03aEQQ6kemsDDsMaYEroZiA9vEx5pNAl2VCesOmf9SgvHOhffNEfAAAMqPR5IEZH5wAAAABJRU5ErkJggg==)}PKj l\--css/customize-preview.cssnu[.customize-partial-refreshing { opacity: 0.25; transition: opacity 0.25s; cursor: progress; } /* Override highlight when refreshing */ .customize-partial-refreshing.widget-customizer-highlighted-widget { box-shadow: none; } /* Make shortcut buttons essentially invisible */ .widget .customize-partial-edit-shortcut, .customize-partial-edit-shortcut { position: absolute; float: left; width: 1px; /* required to have a size to be focusable in Safari */ height: 1px; padding: 0; margin: -1px 0 0 -1px; border: 0; background: transparent; color: transparent; box-shadow: none; outline: none; z-index: 5; } /** * Styles for the actual shortcut * * Note that some properties are overly verbose to prevent theme interference. */ .widget .customize-partial-edit-shortcut button, .customize-partial-edit-shortcut button { position: absolute; left: -30px; top: 2px; color: #fff; width: 30px; height: 30px; min-width: 30px; min-height: 30px; line-height: 1 !important; font-size: 18px; z-index: 5; background: #3582c4 !important; border-radius: 50%; border: 2px solid #fff; box-shadow: 0 2px 1px rgba(60, 67, 74, 0.15); text-align: center; cursor: pointer; box-sizing: border-box; padding: 3px; animation-fill-mode: both; animation-duration: .4s; opacity: 0; pointer-events: none; text-shadow: 0 -1px 1px #135e96, 1px 0 1px #135e96, 0 1px 1px #135e96, -1px 0 1px #135e96; } .wp-custom-header .customize-partial-edit-shortcut button { left: 2px } .customize-partial-edit-shortcut button svg { fill: #fff; min-width: 20px; min-height: 20px; width: 20px; height: 20px; margin: auto; } .customize-partial-edit-shortcut button:hover { background: #4f94d4 !important; /* matches primary buttons */ } .customize-partial-edit-shortcut button:focus { box-shadow: 0 0 0 2px #4f94d4; } body.customize-partial-edit-shortcuts-shown .customize-partial-edit-shortcut button { animation-name: customize-partial-edit-shortcut-bounce-appear; pointer-events: auto; } body.customize-partial-edit-shortcuts-hidden .customize-partial-edit-shortcut button { animation-name: customize-partial-edit-shortcut-bounce-disappear; pointer-events: none; } .page-sidebar-collapsed .customize-partial-edit-shortcut button, .customize-partial-edit-shortcut-hidden .customize-partial-edit-shortcut button { visibility: hidden; } @keyframes customize-partial-edit-shortcut-bounce-appear { from, 20%, 40%, 60%, 80%, to { animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); } 0% { opacity: 0; transform: scale3d(.3, .3, .3); } 20% { transform: scale3d(1.1, 1.1, 1.1); } 40% { transform: scale3d(.9, .9, .9); } 60% { opacity: 1; transform: scale3d(1.03, 1.03, 1.03); } 80% { transform: scale3d(.97, .97, .97); } to { opacity: 1; transform: scale3d(1, 1, 1); } } @keyframes customize-partial-edit-shortcut-bounce-disappear { from, 20%, 40%, 60%, 80%, to { animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); } 0% { opacity: 1; transform: scale3d(1, 1, 1); } 20% { transform: scale3d(.97, .97, .97); } 40% { opacity: 1; transform: scale3d(1.03, 1.03, 1.03); } 60% { transform: scale3d(.9, .9, .9); } 80% { transform: scale3d(1.1, 1.1, 1.1); } to { opacity: 0; transform: scale3d(.3, .3, .3); } } @media screen and (max-width: 800px) { .widget .customize-partial-edit-shortcut button, .customize-partial-edit-shortcut button { left: -32px; } } @media screen and (max-width: 320px) { .widget .customize-partial-edit-shortcut button, .customize-partial-edit-shortcut button { left: -30px; } } PKj l\f0_~~css/wp-auth-check-rtl.min.cssnu[/*! This file is auto-generated */ #wp-auth-check-wrap.hidden{display:none}#wp-auth-check-wrap #wp-auth-check-bg{position:fixed;top:0;bottom:0;right:0;left:0;background:#000;opacity:.7;z-index:1000010}#wp-auth-check-wrap #wp-auth-check{position:fixed;right:50%;overflow:hidden;top:40px;bottom:20px;max-height:415px;width:380px;margin:0 -190px 0 0;padding:30px 0 0;background-color:#f0f0f1;z-index:1000011;box-shadow:0 3px 6px rgba(0,0,0,.3)}@media screen and (max-width:380px){#wp-auth-check-wrap #wp-auth-check{right:0;width:100%;margin:0}}#wp-auth-check-wrap.fallback #wp-auth-check{max-height:180px;overflow:auto}#wp-auth-check-wrap #wp-auth-check-form{height:100%;position:relative;overflow:auto;-webkit-overflow-scrolling:touch}#wp-auth-check-form.loading:before{content:"";display:block;width:20px;height:20px;position:absolute;right:50%;top:50%;margin:-10px -10px 0 0;background:url(../images/spinner.gif) no-repeat center;background-size:20px 20px;transform:translateZ(0)}@media print,(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){#wp-auth-check-form.loading:before{background-image:url(../images/spinner-2x.gif)}}#wp-auth-check-wrap #wp-auth-check-form iframe{height:98%;width:100%}#wp-auth-check-wrap .wp-auth-check-close{position:absolute;top:5px;left:5px;height:22px;width:22px;color:#787c82;text-decoration:none;text-align:center}#wp-auth-check-wrap .wp-auth-check-close:before{content:"\f158";font:normal 20px/22px dashicons;speak:never;-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale}#wp-auth-check-wrap .wp-auth-check-close:focus,#wp-auth-check-wrap .wp-auth-check-close:hover{color:#2271b1}#wp-auth-check-wrap .wp-auth-fallback-expired{outline:0}#wp-auth-check-wrap .wp-auth-fallback{font-size:14px;line-height:1.5;padding:0 25px;display:none}#wp-auth-check-wrap.fallback .wp-auth-check-close,#wp-auth-check-wrap.fallback .wp-auth-fallback{display:block}PKj l\Mcss/buttons.min.cssnu[/*! This file is auto-generated */ .wp-core-ui .button,.wp-core-ui .button-primary,.wp-core-ui .button-secondary{display:inline-block;text-decoration:none;font-size:13px;line-height:2.15384615;min-height:30px;margin:0;padding:0 10px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-sizing:border-box}.wp-core-ui button::-moz-focus-inner,.wp-core-ui input[type=button]::-moz-focus-inner,.wp-core-ui input[type=reset]::-moz-focus-inner,.wp-core-ui input[type=submit]::-moz-focus-inner{border-width:0;border-style:none;padding:0}.wp-core-ui .button-group.button-large .button,.wp-core-ui .button.button-large{min-height:32px;line-height:2.30769231;padding:0 12px}.wp-core-ui .button-group.button-small .button,.wp-core-ui .button.button-small{min-height:26px;line-height:2.18181818;padding:0 8px;font-size:11px}.wp-core-ui .button-group.button-hero .button,.wp-core-ui .button.button-hero{font-size:14px;min-height:46px;line-height:3.14285714;padding:0 36px}.wp-core-ui .button.hidden{display:none}.wp-core-ui input[type=reset],.wp-core-ui input[type=reset]:active,.wp-core-ui input[type=reset]:focus,.wp-core-ui input[type=reset]:hover{background:0 0;border:none;box-shadow:none;padding:0 2px 1px;width:auto}.wp-core-ui .button,.wp-core-ui .button-secondary{color:#2271b1;border-color:#2271b1;background:#f6f7f7;vertical-align:top}.wp-core-ui p .button{vertical-align:baseline}.wp-core-ui .button-secondary:hover,.wp-core-ui .button.hover,.wp-core-ui .button:hover{background:#f0f0f1;border-color:#0a4b78;color:#0a4b78}.wp-core-ui .button-secondary:focus,.wp-core-ui .button.focus,.wp-core-ui .button:focus{background:#f6f7f7;border-color:#3582c4;color:#0a4b78;box-shadow:0 0 0 1px #3582c4;outline:2px solid transparent;outline-offset:0}.wp-core-ui .button-secondary:active,.wp-core-ui .button:active{background:#f6f7f7;border-color:#8c8f94;box-shadow:none}.wp-core-ui .button.active,.wp-core-ui .button.active:hover{background-color:#dcdcde;color:#135e96;border-color:#0a4b78;box-shadow:inset 0 2px 5px -3px #0a4b78}.wp-core-ui .button.active:focus{border-color:#3582c4;box-shadow:inset 0 2px 5px -3px #0a4b78,0 0 0 1px #3582c4}.wp-core-ui .button-disabled,.wp-core-ui .button-secondary.disabled,.wp-core-ui .button-secondary:disabled,.wp-core-ui .button-secondary[disabled],.wp-core-ui .button.disabled,.wp-core-ui .button:disabled,.wp-core-ui .button[disabled]{color:#a7aaad!important;border-color:#dcdcde!important;background:#f6f7f7!important;box-shadow:none!important;cursor:default;transform:none!important}.wp-core-ui .button-link{margin:0;padding:0;box-shadow:none;border:0;border-radius:0;background:0 0;cursor:pointer;text-align:left;color:#2271b1;text-decoration:underline;transition-property:border,background,color;transition-duration:.05s;transition-timing-function:ease-in-out}.wp-core-ui .button-link:active,.wp-core-ui .button-link:hover{color:#135e96}.wp-core-ui .button-link:focus{color:#043959;box-shadow:0 0 0 1px #4f94d4,0 0 2px 1px rgba(79,148,212,.8);outline:1px solid transparent}.wp-core-ui .button-link-delete{color:#d63638}.wp-core-ui .button-link-delete:focus,.wp-core-ui .button-link-delete:hover{color:#d63638;background:0 0}.wp-core-ui .button-link-delete:disabled{background:0 0!important}.wp-core-ui .button-primary{background:#2271b1;border-color:#2271b1;color:#fff;text-decoration:none;text-shadow:none}.wp-core-ui .button-primary.focus,.wp-core-ui .button-primary.hover,.wp-core-ui .button-primary:focus,.wp-core-ui .button-primary:hover{background:#135e96;border-color:#135e96;color:#fff}.wp-core-ui .button-primary.focus,.wp-core-ui .button-primary:focus{box-shadow:0 0 0 1px #fff,0 0 0 3px #2271b1}.wp-core-ui .button-primary.active,.wp-core-ui .button-primary.active:focus,.wp-core-ui .button-primary.active:hover,.wp-core-ui .button-primary:active{background:#135e96;border-color:#135e96;box-shadow:none;color:#fff}.wp-core-ui .button-primary-disabled,.wp-core-ui .button-primary.disabled,.wp-core-ui .button-primary:disabled,.wp-core-ui .button-primary[disabled]{color:#a7aaad!important;background:#f6f7f7!important;border-color:#dcdcde!important;box-shadow:none!important;text-shadow:none!important;cursor:default}.wp-core-ui .button-group{position:relative;display:inline-block;white-space:nowrap;font-size:0;vertical-align:middle}.wp-core-ui .button-group>.button{display:inline-block;border-radius:0;margin-right:-1px}.wp-core-ui .button-group>.button:first-child{border-radius:3px 0 0 3px}.wp-core-ui .button-group>.button:last-child{border-radius:0 3px 3px 0}.wp-core-ui .button-group>.button-primary+.button{border-left:0}.wp-core-ui .button-group>.button:focus{position:relative;z-index:1}.wp-core-ui .button-group>.button.active{background-color:#dcdcde;color:#135e96;border-color:#0a4b78;box-shadow:inset 0 2px 5px -3px #0a4b78}.wp-core-ui .button-group>.button.active:focus{border-color:#3582c4;box-shadow:inset 0 2px 5px -3px #0a4b78,0 0 0 1px #3582c4}@media screen and (max-width:782px){.wp-core-ui .button,.wp-core-ui .button.button-large,.wp-core-ui .button.button-small,a.preview,input#publish,input#save-post{padding:0 14px;line-height:2.71428571;font-size:14px;vertical-align:middle;min-height:40px;margin-bottom:4px}.wp-core-ui .copy-to-clipboard-container .copy-attachment-url{margin-bottom:0}#media-upload.wp-core-ui .button{padding:0 10px 1px;min-height:24px;line-height:22px;font-size:13px}.media-frame.mode-grid .bulk-select .button{margin-bottom:0}.wp-core-ui .save-post-status.button{position:relative;margin:0 14px 0 10px}.wp-core-ui.wp-customizer .button{font-size:13px;line-height:2.15384615;min-height:30px;margin:0;vertical-align:inherit}.media-modal-content .media-toolbar-primary .media-button{margin-top:10px;margin-left:5px}.interim-login .button.button-large{min-height:30px;line-height:2;padding:0 12px 2px}}PKj l\jcss/jquery-ui-dialog.min.cssnu[/*! This file is auto-generated */ /*! * jQuery UI CSS Framework 1.11.4 * http://jqueryui.com * * Copyright jQuery Foundation and other contributors * Released under the MIT license. * http://jquery.org/license * * http://api.jqueryui.com/category/theming/ */.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:after,.ui-helper-clearfix:before{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}/*! * jQuery UI Resizable 1.11.4 * http://jqueryui.com * * Copyright jQuery Foundation and other contributors * Released under the MIT license. * http://jquery.org/license */.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:.1px;display:block;touch-action:none}.ui-resizable-autohide .ui-resizable-handle,.ui-resizable-disabled .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.ui-button{display:inline-block;text-decoration:none;font-size:13px;line-height:2;height:28px;margin:0;padding:0 10px 1px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-sizing:border-box;color:#50575e;border-color:#c3c4c7;background:#f6f7f7;box-shadow:0 1px 0 #c3c4c7;vertical-align:top}.ui-button:active,.ui-button:focus{outline:0}.ui-button::-moz-focus-inner{border-width:0;border-style:none;padding:0}.ui-button:focus,.ui-button:hover{background:#f6f7f7;border-color:#8c8f94;color:#1d2327}.ui-button:focus{border-color:#4f94d4;box-shadow:0 0 3px rgba(34,113,177,.8)}.ui-button:active{background:#f0f0f1;border-color:#8c8f94;box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5)}.ui-button:disabled,.ui-button[disabled]{color:#a7aaad!important;border-color:#dcdcde!important;background:#f6f7f7!important;box-shadow:none!important;text-shadow:0 1px 0 #fff!important;cursor:default;transform:none!important}@media screen and (max-width:782px){.ui-button{padding:6px 14px;line-height:normal;font-size:14px;vertical-align:middle;height:auto;margin-bottom:4px}}.ui-dialog{position:absolute;top:0;left:0;z-index:100102;background-color:#fff;box-shadow:0 3px 6px rgba(0,0,0,.3);overflow:hidden}.ui-dialog-titlebar{background:#fff;border-bottom:1px solid #dcdcde;height:36px;font-size:18px;font-weight:600;line-height:2;padding:0 36px 0 16px}.ui-button.ui-dialog-titlebar-close{background:0 0;border:none;box-shadow:none;color:#646970;cursor:pointer;display:block;padding:0;position:absolute;top:0;right:0;width:36px;height:36px;text-align:center;border-radius:0;overflow:hidden}.ui-dialog-titlebar-close:before{font:normal 20px/1 dashicons;vertical-align:top;speak:never;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.8;width:36px;height:36px;content:"\f158"}.ui-button.ui-dialog-titlebar-close:focus,.ui-button.ui-dialog-titlebar-close:hover{color:#135e96}.ui-button.ui-dialog-titlebar-close:focus{box-shadow:0 0 0 1px #4f94d4,0 0 2px 1px rgba(79,148,212,.8);outline:2px solid transparent;outline-offset:-2px}.ui-dialog-content{padding:16px;overflow:auto}.ui-dialog-buttonpane{background:#fff;border-top:1px solid #dcdcde;padding:16px}.ui-dialog-buttonpane .ui-button{margin-left:16px}.ui-dialog-buttonpane .ui-dialog-buttonset{float:right}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-widget-overlay{position:fixed;top:0;left:0;right:0;bottom:0;min-height:360px;background:#000;opacity:.7;z-index:100101}PKj l\H! /css/dist/block-editor/default-editor-styles.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } /** * Default editor styles. * * These styles are shown if a theme does not register its own editor style, * a theme.json file, or has toggled off "Use theme styles" in preferences. */ body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 18px; line-height: 1.5; --wp--style--block-gap: 2em; } p { line-height: 1.8; } .editor-post-title__block { margin-top: 2em; margin-bottom: 1em; font-size: 2.5em; font-weight: 800; }PKj l\uaff#css/dist/block-editor/style.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.block-editor-autocompleters__block{white-space:nowrap}.block-editor-autocompleters__block .block-editor-block-icon{margin-right:8px}.block-editor-block-alignment-control__menu-group .components-menu-item__info{margin-top:0}.block-editor-block-alignment-matrix-control__popover .components-popover__content{min-width:0;width:auto}.block-editor-block-alignment-matrix-control__popover .components-popover__content>div{padding:8px}.block-editor-block-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px}.block-editor-block-icon.has-colors svg{fill:currentColor}@media (forced-colors:active){.block-editor-block-icon.has-colors svg{fill:CanvasText}}.block-editor-block-icon svg{min-width:20px;min-height:20px;max-width:24px;max-height:24px}.block-editor-block-inspector p{margin-top:0}.block-editor-block-inspector h2,.block-editor-block-inspector h3{font-size:13px;color:#1e1e1e;margin-bottom:1.5em}.block-editor-block-inspector .components-base-control{margin-bottom:24px}.block-editor-block-inspector .components-base-control:last-child{margin-bottom:8px}.block-editor-block-inspector .components-panel__body{border:none;border-top:1px solid #e0e0e0}.block-editor-block-inspector .block-editor-block-card{padding:16px}.block-editor-block-inspector__no-blocks{display:block;font-size:13px;background:#fff;padding:32px 16px;text-align:center}.block-editor-block-styles .block-editor-block-list__block{margin:0}.block-editor-block-list__layout{position:relative}.block-editor-block-list__layout.is-navigate-mode{cursor:default}.block-editor-block-list__layout .block-editor-block-list__block.is-highlighted:after,.block-editor-block-list__layout .block-editor-block-list__block.is-multi-selected:after,.block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-hovered:after,.block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-selected:after{position:absolute;z-index:1;pointer-events:none;content:"";top:1px;bottom:1px;left:1px;right:1px;box-shadow:0 0 0 1px var(--wp-admin-theme-color);border-radius:1px;outline:2px solid transparent}.is-dark-theme .block-editor-block-list__layout .block-editor-block-list__block.is-highlighted:after,.is-dark-theme .block-editor-block-list__layout .block-editor-block-list__block.is-multi-selected:after,.is-dark-theme .block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-hovered:after,.is-dark-theme .block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-selected:after{box-shadow:0 0 0 1px #fff}.block-editor-block-list__layout .block-editor-block-list__block.is-highlighted .components-placeholder ::selection,.block-editor-block-list__layout .block-editor-block-list__block.is-multi-selected .components-placeholder ::selection,.block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-hovered .components-placeholder ::selection,.block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-selected .components-placeholder ::selection{background:transparent}.block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-hovered:not(.is-selected):after{box-shadow:0 0 0 1px var(--wp-admin-theme-color)}.block-editor-block-list__layout .block-editor-block-list__block.is-highlighted:after{box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:1px solid transparent}.block-editor-block-list__layout .block-editor-block-list__block.is-multi-selected:after,.block-editor-block-list__layout .is-block-moving-mode.block-editor-block-list__block.has-child-selected,.block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-selected:after{box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);outline:2px solid transparent}.block-editor-block-list__layout .is-block-moving-mode.block-editor-block-list__block.is-selected:before{content:"";position:absolute;z-index:0;pointer-events:none;transition:border-color .1s linear,border-style .1s linear,box-shadow .1s linear;right:0;left:0;top:-14px;border-radius:2px;border-top:4px solid #ccc}.block-editor-block-list__layout .is-block-moving-mode.block-editor-block-list__block.is-selected:after{content:none}.block-editor-block-list__layout .is-block-moving-mode.can-insert-moving-block.block-editor-block-list__block.is-selected:before{border-color:var(--wp-admin-theme-color)}.is-block-moving-mode.block-editor-block-list__block-selection-button{opacity:0;font-size:1px;height:1px;padding:0}.block-editor-block-list__layout .block-editor-block-list__block{position:relative;overflow-wrap:break-word}.block-editor-block-list__layout .block-editor-block-list__block .reusable-block-edit-panel *{z-index:1}.block-editor-block-list__layout .block-editor-block-list__block .components-placeholder .components-with-notices-ui{margin:-10px 0 12px}.block-editor-block-list__layout .block-editor-block-list__block .components-with-notices-ui{margin:0 0 12px;width:100%}.block-editor-block-list__layout .block-editor-block-list__block .components-with-notices-ui .components-notice{margin-left:0;margin-right:0}.block-editor-block-list__layout .block-editor-block-list__block .components-with-notices-ui .components-notice .components-notice__content{font-size:13px}.block-editor-block-list__layout .block-editor-block-list__block:not([contenteditable]):focus{outline:none}.block-editor-block-list__layout .block-editor-block-list__block:not([contenteditable]):focus:after{position:absolute;z-index:1;pointer-events:none;content:"";top:1px;bottom:1px;left:1px;right:1px;box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);border-radius:1px;outline:2px solid transparent}.is-dark-theme .block-editor-block-list__layout .block-editor-block-list__block:not([contenteditable]):focus:after{box-shadow:0 0 0 var(--wp-admin-border-width-focus) #fff}.block-editor-block-list__layout .block-editor-block-list__block:after{content:"";pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;border-radius:2px;box-shadow:0 0 0 var(--wp-admin-border-width-focus) transparent}.block-editor-block-list__layout .block-editor-block-list__block.has-warning{min-height:48px}.block-editor-block-list__layout .block-editor-block-list__block.has-warning>*{pointer-events:none;-webkit-user-select:none;user-select:none}.block-editor-block-list__layout .block-editor-block-list__block.has-warning .block-editor-warning{pointer-events:all}.block-editor-block-list__layout .block-editor-block-list__block.has-warning:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:2px;background-color:hsla(0,0%,100%,.4)}.block-editor-block-list__layout .block-editor-block-list__block.has-warning.is-multi-selected:after{background-color:transparent}.block-editor-block-list__layout .block-editor-block-list__block.is-reusable>.block-editor-inner-blocks>.block-editor-block-list__layout.has-overlay:after{display:none}.block-editor-block-list__layout .block-editor-block-list__block.is-reusable>.block-editor-inner-blocks>.block-editor-block-list__layout.has-overlay .block-editor-block-list__layout.has-overlay:after{display:block}.block-editor-block-list__layout .block-editor-block-list__block.is-reusable.has-child-selected:after{box-shadow:0 0 0 1px var(--wp-admin-theme-color)}.block-editor-block-list__layout .block-editor-block-list__block[data-clear=true]{float:none}.is-outline-mode .block-editor-block-list__block:not(.remove-outline).is-hovered{cursor:default}.is-outline-mode .block-editor-block-list__block:not(.remove-outline).is-hovered:after{top:1px;left:1px;right:1px;bottom:1px;box-shadow:0 0 0 1px var(--wp-admin-theme-color);border-radius:1px}.is-outline-mode .block-editor-block-list__block:not(.remove-outline).is-selected{cursor:unset}.is-outline-mode .block-editor-block-list__block:not(.remove-outline).is-selected:after{box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);top:1px;left:1px;right:1px;bottom:1px;border-radius:1px}.is-outline-mode .block-editor-block-list__block:not(.remove-outline).is-selected:focus:after{box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.is-focus-mode .block-editor-block-list__block:not(.has-child-selected){opacity:.5;transition:opacity .1s linear}@media (prefers-reduced-motion:reduce){.is-focus-mode .block-editor-block-list__block:not(.has-child-selected){transition-duration:0s;transition-delay:0s}}.is-focus-mode .block-editor-block-list__block:not(.has-child-selected) .block-editor-block-list__block,.is-focus-mode .block-editor-block-list__block:not(.has-child-selected).is-multi-selected,.is-focus-mode .block-editor-block-list__block:not(.has-child-selected).is-selected{opacity:1}.is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity{opacity:.5;transition:opacity .1s linear}@media (prefers-reduced-motion:reduce){.is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity{transition-duration:0s;transition-delay:0s}}.is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity.has-child-selected,.is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity.is-active-entity,.is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity.is-active-entity .block-editor-block-list__block,.is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity .is-active-entity .block-editor-block-list__block,.is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity:not(.has-child-selected) .block-editor-block-list__block{opacity:1}.wp-block[data-align=left]>*,.wp-block[data-align=right]>*{z-index:21}.wp-site-blocks>[data-align=left]{float:left;margin-right:2em}.wp-site-blocks>[data-align=right]{float:right;margin-left:2em}.wp-site-blocks>[data-align=center]{justify-content:center;margin-left:auto;margin-right:auto}.block-editor-block-list .block-editor-inserter{margin:8px;cursor:move;cursor:grab}@keyframes block-editor-inserter__toggle__fade-in-animation{0%{opacity:0}to{opacity:1}}.wp-block .block-list-appender .block-editor-inserter__toggle{animation:block-editor-inserter__toggle__fade-in-animation .1s ease;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.wp-block .block-list-appender .block-editor-inserter__toggle{animation-duration:1ms;animation-delay:0s}}.block-editor-block-list__block:not(.is-selected):not(.has-child-selected) .block-editor-default-block-appender{display:none}.block-editor-block-list__block:not(.is-selected):not(.has-child-selected) .block-editor-default-block-appender .block-editor-inserter__toggle{opacity:0;transform:scale(0)}.block-editor-block-list__block .block-editor-block-list__block-html-textarea{display:block;margin:0;padding:12px;width:100%;border:none;outline:none;border-radius:2px;box-shadow:inset 0 0 0 1px #1e1e1e;resize:none;overflow:hidden;font-family:Menlo,Consolas,monaco,monospace;font-size:15px;line-height:1.5;transition:padding .2s linear}@media (prefers-reduced-motion:reduce){.block-editor-block-list__block .block-editor-block-list__block-html-textarea{transition-duration:0s;transition-delay:0s}}.block-editor-block-list__block .block-editor-block-list__block-html-textarea:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.block-editor-block-list__block .block-editor-warning{z-index:5;position:relative}.block-editor-block-list__block .block-editor-warning.block-editor-block-list__block-crash-warning{margin-bottom:auto}.block-editor-block-list__insertion-point{position:absolute}.block-editor-block-list__insertion-point-indicator{position:absolute;background:var(--wp-admin-theme-color)}.block-editor-block-list__insertion-point.is-vertical>.block-editor-block-list__insertion-point-indicator{top:50%;height:1px}.block-editor-block-list__insertion-point.is-horizontal>.block-editor-block-list__insertion-point-indicator{top:0;right:0;left:50%;width:1px}.block-editor-block-list__insertion-point-inserter{display:none;position:absolute;justify-content:center;top:calc(50% - 12px);left:calc(50% - 12px)}@media (min-width:480px){.block-editor-block-list__insertion-point-inserter{display:flex}}.block-editor-block-list__block-popover-inserter{position:absolute;top:-9999em;margin-bottom:14px}.block-editor-block-list__block-popover-inserter.is-visible{position:static}.block-editor-block-list__block-popover-inserter .block-editor-inserter__toggle.components-button.has-icon,.block-editor-block-list__empty-block-inserter .block-editor-inserter__toggle.components-button.has-icon,.block-editor-block-list__insertion-point-inserter .block-editor-inserter__toggle.components-button.has-icon,.block-editor-default-block-appender .block-editor-inserter__toggle.components-button.has-icon{background:#1e1e1e;border-radius:2px;color:#fff;padding:0;min-width:24px;height:24px}.block-editor-block-list__block-popover-inserter .block-editor-inserter__toggle.components-button.has-icon:hover,.block-editor-block-list__empty-block-inserter .block-editor-inserter__toggle.components-button.has-icon:hover,.block-editor-block-list__insertion-point-inserter .block-editor-inserter__toggle.components-button.has-icon:hover,.block-editor-default-block-appender .block-editor-inserter__toggle.components-button.has-icon:hover{color:#fff;background:var(--wp-admin-theme-color)}.block-editor-block-list__insertion-point-inserter .block-editor-inserter__toggle.components-button.has-icon{background:var(--wp-admin-theme-color)}.block-editor-block-list__insertion-point-inserter .block-editor-inserter__toggle.components-button.has-icon:hover{background:#1e1e1e}.block-editor-block-contextual-toolbar{display:inline-flex;border:1px solid #1e1e1e;border-radius:2px;background-color:#fff}.block-editor-block-contextual-toolbar .block-editor-block-toolbar .components-toolbar,.block-editor-block-contextual-toolbar .block-editor-block-toolbar .components-toolbar-group{border-right-color:#1e1e1e}.block-editor-block-contextual-toolbar.is-fixed{position:sticky;top:0;width:100%;z-index:31;min-height:48px;display:block;border:none;border-bottom:1px solid #e0e0e0;border-radius:0}.block-editor-block-contextual-toolbar.is-fixed .block-editor-block-toolbar .components-toolbar,.block-editor-block-contextual-toolbar.is-fixed .block-editor-block-toolbar .components-toolbar-group{border-right-color:#e0e0e0}.block-editor-block-contextual-toolbar .block-editor-block-mover-button{overflow:hidden}.block-editor-block-contextual-toolbar .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.block-editor-block-mover-button{min-width:24px;width:24px}.block-editor-block-contextual-toolbar .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.block-editor-block-mover-button svg{min-width:24px}.block-editor-block-contextual-toolbar .block-editor-block-mover:not(.is-horizontal) .block-editor-block-mover-button:focus:before{left:0!important;min-width:0;width:100%}@media (min-width:600px){.block-editor-block-contextual-toolbar .block-editor-block-mover:not(.is-horizontal) .block-editor-block-mover-button.is-up-button svg{top:5px}.block-editor-block-contextual-toolbar .block-editor-block-mover:not(.is-horizontal) .block-editor-block-mover-button.is-down-button svg{bottom:5px}}.block-editor-block-list__block-selection-button{display:inline-flex;padding:0 12px;z-index:22;border-radius:2px;background-color:#1e1e1e;font-size:13px;height:48px}.block-editor-block-list__block-selection-button .block-editor-block-list__block-selection-button__content{margin:auto;display:inline-flex;align-items:center}.block-editor-block-list__block-selection-button .block-editor-block-list__block-selection-button__content>.components-flex__item{margin-right:6px}.block-editor-block-list__block-selection-button .components-button.has-icon.block-selection-button_drag-handle{cursor:grab;padding:0;height:24px;min-width:24px;margin-left:-2px}.block-editor-block-list__block-selection-button .components-button.has-icon.block-selection-button_drag-handle svg{min-width:18px;min-height:18px}.block-editor-block-list__block-selection-button .block-editor-block-icon{font-size:13px;color:#fff;height:48px}.block-editor-block-list__block-selection-button .components-button{min-width:36px;color:#fff;height:48px;display:flex}.block-editor-block-list__block-selection-button .components-button:focus{box-shadow:none;border:none}.block-editor-block-list__block-selection-button .components-button:active{color:#fff}.block-editor-block-list__block-selection-button .block-selection-button_select-button.components-button{padding:0}.block-editor-block-list__insertion-point-popover.is-without-arrow{z-index:28;position:absolute;pointer-events:none}.block-editor-block-list__insertion-point-popover.is-without-arrow *{pointer-events:none}.block-editor-block-list__insertion-point-popover.is-without-arrow .is-with-inserter,.block-editor-block-list__insertion-point-popover.is-without-arrow .is-with-inserter *{pointer-events:all}.block-editor-block-list__insertion-point-popover.is-without-arrow .components-popover__content.components-popover__content{background:none;border:none;box-shadow:none;overflow-y:visible;margin-left:0}@keyframes hide-during-dragging{to{position:fixed;transform:translate(9999px,9999px)}}.components-popover.block-editor-block-list__block-popover{z-index:31;position:absolute}.components-popover.block-editor-block-list__block-popover .components-popover__content{margin:0!important;min-width:auto;width:max-content;background:none;border:none;box-shadow:none;overflow-y:visible;pointer-events:none}.components-popover.block-editor-block-list__block-popover .components-popover__content .block-editor-block-contextual-toolbar,.components-popover.block-editor-block-list__block-popover .components-popover__content .block-editor-block-list__block-selection-button,.components-popover.block-editor-block-list__block-popover .components-popover__content .block-editor-block-list__empty-block-inserter{pointer-events:all}.components-popover.block-editor-block-list__block-popover .components-popover__content .block-editor-block-contextual-toolbar,.components-popover.block-editor-block-list__block-popover .components-popover__content .block-editor-block-list__block-selection-button{margin-top:12px;margin-bottom:12px}.components-popover.block-editor-block-list__block-popover.is-insertion-point-visible{visibility:hidden}.is-dragging-components-draggable .components-popover.block-editor-block-list__block-popover{opacity:0;animation:hide-during-dragging 1ms linear forwards}.is-dragging-components-draggable .components-tooltip{display:none}.is-vertical .block-list-appender{width:24px;margin-right:auto;margin-top:12px;margin-left:12px}.block-list-appender>.block-editor-inserter{display:block}.block-editor-block-list__block:not(.is-selected):not(.has-child-selected):not(.block-editor-block-list__layout) .block-editor-block-list__layout>.block-list-appender .block-list-appender__toggle{opacity:0;transform:scale(0)}.block-editor-block-breadcrumb{list-style:none;padding:0;margin:0}.block-editor-block-breadcrumb li{display:inline-flex;margin:0}.block-editor-block-breadcrumb li .block-editor-block-breadcrumb__separator{fill:currentColor;margin-left:-4px;margin-right:-4px;transform:scaleX(1)}.block-editor-block-breadcrumb li:last-child .block-editor-block-breadcrumb__separator{display:none}.block-editor-block-breadcrumb__button.components-button{height:24px;line-height:24px;padding:0;position:relative}.block-editor-block-breadcrumb__button.components-button:hover:not(:disabled){text-decoration:underline;box-shadow:none}.block-editor-block-breadcrumb__button.components-button:focus{box-shadow:none}.block-editor-block-breadcrumb__button.components-button:focus:before{content:"";display:block;position:absolute;border-radius:2px;top:1px;right:1px;bottom:1px;left:1px;box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.block-editor-block-breadcrumb__current{cursor:default}.block-editor-block-breadcrumb__button.components-button,.block-editor-block-breadcrumb__current{color:#1e1e1e;padding:0 8px;font-size:inherit}.block-editor-block-card{display:flex;align-items:flex-start}.block-editor-block-card__content{flex-grow:1;margin-bottom:4px}.block-editor-block-card__title{font-weight:500}.block-editor-block-card__title.block-editor-block-card__title{line-height:24px;margin:0 0 4px}.block-editor-block-card__description{font-size:13px}.block-editor-block-card .block-editor-block-icon{flex:0 0 24px;margin-left:0;margin-right:12px;width:24px;height:24px}.block-editor-block-compare{height:auto}.block-editor-block-compare__wrapper{display:flex;padding-bottom:16px}.block-editor-block-compare__wrapper>div{display:flex;justify-content:space-between;flex-direction:column;width:50%;padding:0 16px 0 0;min-width:200px;max-width:600px}.block-editor-block-compare__wrapper>div button{float:right}.block-editor-block-compare__wrapper .block-editor-block-compare__converted{border-left:1px solid #ddd;padding-left:15px;padding-right:0}.block-editor-block-compare__wrapper .block-editor-block-compare__html{font-family:Menlo,Consolas,monaco,monospace;font-size:12px;color:#1e1e1e;border-bottom:1px solid #ddd;padding-bottom:15px;line-height:1.7}.block-editor-block-compare__wrapper .block-editor-block-compare__html span{background-color:#e6ffed;padding-top:3px;padding-bottom:3px}.block-editor-block-compare__wrapper .block-editor-block-compare__html span.block-editor-block-compare__added{background-color:#acf2bd}.block-editor-block-compare__wrapper .block-editor-block-compare__html span.block-editor-block-compare__removed{background-color:#cc1818}.block-editor-block-compare__wrapper .block-editor-block-compare__preview{padding:16px 0 0}.block-editor-block-compare__wrapper .block-editor-block-compare__preview p{font-size:12px;margin-top:0}.block-editor-block-compare__wrapper .block-editor-block-compare__action{margin-top:16px}.block-editor-block-compare__wrapper .block-editor-block-compare__heading{font-size:1em;font-weight:400;margin:.67em 0}.block-editor-block-content-overlay.overlay-active:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:transparent;border:none;border-radius:2px;z-index:10;pointer-events:none}.block-editor-block-content-overlay.parent-highlighted.overlay-active:before,.block-editor-block-content-overlay:hover:not(.is-dragging-blocks).overlay-active:before{background:rgba(var(--wp-admin-theme-color--rgb),.1);box-shadow:0 0 0 1px var(--wp-admin-theme-color) inset}.block-editor-block-content-overlay.overlay-active:not(.is-dragging-blocks) *{pointer-events:none}.block-editor-block-content-overlay.is-dragging-blocks{box-shadow:0 0 0 1px var(--wp-admin-theme-color)}.block-editor-block-draggable-chip-wrapper{position:absolute;top:-24px;left:0}.block-editor-block-draggable-chip{background-color:#1e1e1e;border-radius:2px;box-shadow:0 6px 8px rgba(0,0,0,.3);color:#fff;cursor:grabbing;display:inline-flex;height:48px;padding:0 13px;-webkit-user-select:none;user-select:none}.block-editor-block-draggable-chip svg{fill:currentColor}.block-editor-block-draggable-chip .block-editor-block-draggable-chip__content{margin:auto;justify-content:flex-start}.block-editor-block-draggable-chip .block-editor-block-draggable-chip__content>.components-flex__item{margin-right:6px}.block-editor-block-draggable-chip .block-editor-block-draggable-chip__content>.components-flex__item:last-child{margin-right:0}.block-editor-block-draggable-chip .block-editor-block-draggable-chip__content .block-editor-block-icon svg{min-width:18px;min-height:18px}.block-editor-block-draggable-chip .components-flex__item{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px}.block-editor-block-list__layout .is-dragging{background-color:currentColor!important;opacity:.05!important;border-radius:2px!important;pointer-events:none!important}.block-editor-block-list__layout .is-dragging::selection{background:transparent!important}.block-editor-block-list__layout .is-dragging:after{content:none!important}.block-editor-block-mobile-toolbar{display:flex;flex-direction:row;border-right:1px solid #ddd}.block-editor-block-mobile-toolbar .block-editor-block-mover-button{width:36px;height:36px;border-radius:2px;padding:3px;margin:0;justify-content:center;align-items:center}.block-editor-block-mobile-toolbar .block-editor-block-mover-button .dashicon{margin:auto}.block-editor-block-mobile-toolbar .block-editor-block-mover{display:flex;margin-right:auto}.block-editor-block-mobile-toolbar .block-editor-block-mover .block-editor-block-mover-button{float:left}.block-editor-block-mover-button__description{display:none}.block-editor-block-mover-button.has-icon{padding:0}.block-editor-block-mover{display:inline-flex;flex-direction:row}.block-editor-block-mover .block-editor-block-mover__move-button-container,.block-editor-block-mover .components-toolbar{flex:1;flex-direction:row;border-right:none!important}@media (min-width:600px){.block-editor-block-mover .block-editor-block-mover__move-button-container,.block-editor-block-mover .components-toolbar{flex-direction:column}}.block-editor-block-mover.is-horizontal .block-editor-block-mover__move-button-container,.block-editor-block-mover.is-horizontal .components-toolbar{flex-direction:row}.block-editor-block-mover .block-editor-block-mover-button.block-editor-block-mover-button{padding-right:0;padding-left:0;min-width:36px}@media (min-width:600px){.block-editor-block-mover .block-editor-block-mover-button{height:24px;width:42px;padding-right:11px!important;padding-left:6px!important}.block-editor-block-mover .block-editor-block-mover-button.block-editor-block-mover-button{min-width:42px}}@media (min-width:600px){.block-editor-block-mover .block-editor-block-mover-button:before{left:8px!important;right:8px!important}}.block-editor-block-mover .block-editor-block-mover__drag-handle{width:24px;cursor:grab;min-width:24px!important;padding:0!important}.block-editor-block-mover .block-editor-block-mover__drag-handle:focus:before{left:0!important;right:0!important}@media (min-width:600px){.block-editor-block-mover .components-toolbar-group .block-editor-block-mover-button,.block-editor-block-mover .components-toolbar .block-editor-block-mover-button{margin:0 auto 0 0}.block-editor-block-mover .components-toolbar-group .block-editor-block-mover-button.is-up-button:before,.block-editor-block-mover .components-toolbar .block-editor-block-mover-button.is-up-button:before{bottom:0;height:calc(100% - 1px)}.block-editor-block-mover .components-toolbar-group .block-editor-block-mover-button.is-down-button:before,.block-editor-block-mover .components-toolbar .block-editor-block-mover-button.is-down-button:before{top:0;height:calc(100% - 1px)}}.block-editor-block-mover.is-horizontal .block-editor-block-mover-button.has-icon{height:48px;width:24px;padding-left:0;padding-right:0}.block-editor-block-mover.is-horizontal .block-editor-block-mover-button.has-icon:before{top:1px;bottom:1px;min-width:0;width:auto;height:auto}.block-editor-block-mover.is-horizontal .block-editor-block-mover-button.is-up-button.has-icon svg{margin-left:0;margin-right:-8px;margin-bottom:0}.block-editor-block-mover.is-horizontal .block-editor-block-mover-button.is-up-button.has-icon:before{left:0!important;right:0!important}.block-editor-block-mover.is-horizontal .block-editor-block-mover-button.is-down-button.has-icon svg{margin-left:-8px;margin-right:0;margin-top:0}.block-editor-block-mover.is-horizontal .block-editor-block-mover-button.is-down-button.has-icon:before{left:0!important;right:0!important;width:calc(100% + 1px)}.block-editor-block-navigation__container{min-width:280px}.block-editor-block-navigation__label{margin:0 0 12px;color:#757575;text-transform:uppercase;font-size:11px;font-weight:500}.block-editor-block-parent-selector{background:#fff;border-radius:2px}.block-editor-block-parent-selector .block-editor-block-parent-selector__button{width:48px;height:48px;border:1px solid #1e1e1e;border-radius:2px}.block-editor-block-patterns-list__list-item{cursor:pointer;margin-bottom:24px}.block-editor-block-patterns-list__list-item.is-placeholder{min-height:100px}.block-editor-block-patterns-list__list-item[draggable=true] .block-editor-block-preview__container{cursor:grab}.block-editor-block-patterns-list__item{height:100%}.block-editor-block-patterns-list__item .block-editor-block-preview__container{display:flex;align-items:center;overflow:hidden;border-radius:2px;border:1px solid #f0f0f0}.block-editor-block-patterns-list__item .block-editor-block-patterns-list__item-title{padding-top:8px;font-size:12px;text-align:center}.block-editor-block-patterns-list__item:hover .block-editor-block-preview__container{border:1px solid var(--wp-admin-theme-color)}.block-editor-block-patterns-list__item:focus .block-editor-block-preview__container{box-shadow:inset 0 0 0 1px #fff,0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);outline:2px solid transparent}.block-editor-block-patterns-list__item:focus .block-editor-block-patterns-list__item-title,.block-editor-block-patterns-list__item:hover .block-editor-block-patterns-list__item-title{color:var(--wp-admin-theme-color)}.block-editor-block-preview__container{position:relative;width:100%;overflow:hidden}.block-editor-block-preview__container .block-editor-block-preview__content{top:0;left:0;transform-origin:top left;text-align:initial;margin:0;overflow:visible;min-height:auto}.block-editor-block-preview__container .block-editor-block-preview__content .block-editor-block-drop-zone,.block-editor-block-preview__container .block-editor-block-preview__content .block-editor-block-list__insertion-point,.block-editor-block-preview__container .block-editor-block-preview__content .block-list-appender,.block-editor-block-preview__container .block-editor-block-preview__content .reusable-block-indicator,.block-editor-block-preview__content-iframe .block-list-appender{display:none}.block-editor-block-preview__live-content *{pointer-events:none}.block-editor-block-preview__live-content .block-list-appender{display:none}.block-editor-block-preview__live-content .components-button:disabled{opacity:1}.block-editor-block-preview__live-content .block-editor-block-list__block[data-empty=true],.block-editor-block-preview__live-content .components-placeholder{display:none}.block-editor-block-settings-menu__popover .components-dropdown-menu__menu{padding:0}.block-editor-block-styles{display:flex;flex-wrap:wrap;justify-content:space-between}.block-editor-block-styles__item{width:calc(50% - 4px);margin:4px 0;flex-shrink:0;cursor:pointer;overflow:hidden;border-radius:2px;padding:6px;display:flex;flex-direction:column}.block-editor-block-styles__item:focus{box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);outline:2px solid transparent}.block-editor-block-styles__item:hover .block-editor-block-styles__item-preview{border-color:var(--wp-admin-theme-color)}.block-editor-block-styles__item.is-active .block-editor-block-styles__item-label{font-weight:700}.block-editor-block-styles__item.is-active .block-editor-block-styles__item-preview{margin:0;border:2px solid #1e1e1e}.block-editor-block-styles__item .block-editor-block-preview__container{cursor:inherit}.block-editor-block-styles__item-preview{outline:1px solid transparent;padding:0;margin:2px;border-radius:2px;display:flex;overflow:hidden;background:#fff;align-items:center;flex-grow:1;min-height:80px;max-height:160px}.block-editor-block-switcher__styles__menugroup{position:relative}.block-editor-block-styles__item-label{text-align:center;padding:4px 0}.block-editor-block-switcher,.block-editor-block-switcher__no-switcher-icon,.block-editor-block-switcher__toggle{position:relative}.components-button.block-editor-block-switcher__no-switcher-icon,.components-button.block-editor-block-switcher__toggle{margin:0;display:block;height:48px}.components-button.block-editor-block-switcher__no-switcher-icon .block-editor-block-icon,.components-button.block-editor-block-switcher__toggle .block-editor-block-icon{margin:auto}.block-editor-block-switcher__toggle-text{margin-left:8px}.show-icon-labels .block-editor-block-switcher__toggle-text{display:none}.show-icon-labels .block-editor-block-toolbar .block-editor-block-switcher .components-button.has-icon:after{font-size:14px}.block-editor-block-switcher__popover{margin-left:6px}.components-button.block-editor-block-switcher__no-switcher-icon{width:48px}.components-button.block-editor-block-switcher__no-switcher-icon .block-editor-blocks-icon{margin-right:auto;margin-left:auto}.components-button.block-editor-block-switcher__no-switcher-icon:disabled{opacity:1}.components-button.block-editor-block-switcher__no-switcher-icon:disabled,.components-button.block-editor-block-switcher__no-switcher-icon:disabled .block-editor-block-icon.has-colors{color:#1e1e1e}.block-editor-block-toolbar .components-toolbar-group .components-button.block-editor-block-switcher__no-switcher-icon.has-icon.has-icon .block-editor-block-icon,.block-editor-block-toolbar .components-toolbar-group .components-button.block-editor-block-switcher__toggle.has-icon.has-icon .block-editor-block-icon,.block-editor-block-toolbar .components-toolbar .components-button.block-editor-block-switcher__no-switcher-icon.has-icon.has-icon .block-editor-block-icon,.block-editor-block-toolbar .components-toolbar .components-button.block-editor-block-switcher__toggle.has-icon.has-icon .block-editor-block-icon{height:100%;position:relative;margin:0 auto;display:flex;align-items:center;min-width:100%}.block-editor-block-toolbar .components-toolbar-group .components-button.block-editor-block-switcher__no-switcher-icon.has-icon.has-icon:before,.block-editor-block-toolbar .components-toolbar-group .components-button.block-editor-block-switcher__toggle.has-icon.has-icon:before,.block-editor-block-toolbar .components-toolbar .components-button.block-editor-block-switcher__no-switcher-icon.has-icon.has-icon:before,.block-editor-block-toolbar .components-toolbar .components-button.block-editor-block-switcher__toggle.has-icon.has-icon:before{top:8px;right:8px;bottom:8px;left:8px}.components-popover.block-editor-block-switcher__popover .components-popover__content{min-width:300px}.components-popover.block-editor-block-switcher__popover .components-popover__content>div{min-width:auto;display:flex;background:#fff;padding:0}.components-popover.block-editor-block-switcher__popover .components-popover__content>div .components-menu-group{margin:0}.block-editor-block-switcher__popover .components-popover__content .block-editor-block-styles{margin:0 -3px}.block-editor-block-switcher__popover .components-popover__content .components-panel__body{border:0;position:relative;z-index:1}.block-editor-block-switcher__popover .components-popover__content .components-panel__body+.components-panel__body{border-top:1px solid #e0e0e0}.block-editor-block-switcher__popover__preview__parent .block-editor-block-switcher__popover__preview__container{position:absolute;top:-12px;left:calc(100% + 32px)}.block-editor-block-switcher__preview__popover{display:none}.block-editor-block-switcher__preview__popover.components-popover{margin-left:4px;margin-top:11px}@media (min-width:782px){.block-editor-block-switcher__preview__popover{display:block}}.block-editor-block-switcher__preview__popover .components-popover__content{box-shadow:none;border:1px solid #1e1e1e;background:#fff;border-radius:2px}.block-editor-block-switcher__preview__popover .block-editor-block-switcher__preview{width:300px;height:auto;max-height:500px;padding:16px}.block-editor-block-switcher__preview-title{margin-bottom:12px;color:#757575;text-transform:uppercase;font-size:11px;font-weight:500}.block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__no-switcher-icon{width:48px}.block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__no-switcher-icon,.block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__toggle{height:48px}.block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__no-switcher-icon .block-editor-block-icon,.block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__no-switcher-icon .block-editor-block-switcher__transform,.block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__toggle .block-editor-block-icon,.block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__toggle .block-editor-block-switcher__transform{width:48px;height:48px}.block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__no-switcher-icon .block-editor-block-switcher__transform,.block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__toggle .block-editor-block-switcher__transform{padding:12px}.block-editor-block-switcher__preview-patterns-container{padding-bottom:16px}.block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item{margin-top:16px}.block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-preview__container{cursor:pointer}.block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-switcher__preview-patterns-container-list__item{height:100%;border-radius:2px;transition:all .05s ease-in-out;position:relative;border:1px solid transparent}.block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-switcher__preview-patterns-container-list__item:focus,.block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-switcher__preview-patterns-container-list__item:hover{box-shadow:inset 0 0 0 1px #fff,0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);outline:2px solid transparent}.block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-switcher__preview-patterns-container-list__item:hover{box-shadow:inset 0 0 0 1px #fff,0 0 0 var(--wp-admin-border-width-focus) #1e1e1e}.block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-switcher__preview-patterns-container-list__item .block-editor-block-switcher__preview-patterns-container-list__item-title{padding:4px;font-size:12px;text-align:center;cursor:pointer}.block-editor-block-types-list>[role=presentation]{overflow:hidden;display:flex;flex-wrap:wrap}.block-editor-block-variation-picker .components-placeholder__instructions{margin-bottom:0}.block-editor-block-variation-picker .components-placeholder__fieldset{flex-direction:column}.block-editor-block-variation-picker.has-many-variations .components-placeholder__fieldset{max-width:90%}.block-editor-block-variation-picker__variations.block-editor-block-variation-picker__variations{display:flex;justify-content:flex-start;flex-direction:row;flex-wrap:wrap;width:100%;margin:16px 0;padding:0;list-style:none}.block-editor-block-variation-picker__variations.block-editor-block-variation-picker__variations>li{list-style:none;margin:8px 20px 0 0;flex-shrink:1;width:75px;text-align:center}.block-editor-block-variation-picker__variations.block-editor-block-variation-picker__variations>li button{display:inline-flex;margin-right:0}.block-editor-block-variation-picker__variations.block-editor-block-variation-picker__variations .block-editor-block-variation-picker__variation{padding:8px}.block-editor-block-variation-picker__variations.block-editor-block-variation-picker__variations .block-editor-block-variation-picker__variation-label{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:12px;display:block;line-height:1.4}.block-editor-block-variation-picker__variation{width:100%}.block-editor-block-variation-picker__variation.components-button.has-icon{justify-content:center;width:auto}.block-editor-block-variation-picker__variation.components-button.has-icon.is-secondary{background-color:#fff}.block-editor-block-variation-picker__variation.components-button{height:auto;padding:0}.block-editor-block-variation-picker__variation:before{content:"";padding-bottom:100%}.block-editor-block-variation-picker__variation:first-child{margin-left:0}.block-editor-block-variation-picker__variation:last-child{margin-right:0}.block-editor-block-pattern-setup{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;width:100%;border-radius:2px;box-shadow:inset 0 0 0 1px #1e1e1e;outline:1px solid transparent}.block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__toolbar{justify-content:center}.block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__container{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;padding:16px;max-height:550px;overflow:auto;margin:0 1px 1px;width:calc(100% - 2px);background:#fff}.block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__container .block-editor-block-preview__container,.block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__container div[role=button]{cursor:pointer}.block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__container .block-editor-block-pattern-setup-list__item-title{padding:4px;font-size:12px;text-align:center}.block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__container .block-editor-block-preview__container{border-radius:2px;border:1px solid #ddd}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__toolbar{box-sizing:border-box;position:relative;padding:16px;width:100%;text-align:left;margin:0;color:#1e1e1e;border-radius:2px 2px 0 0;background-color:#fff;box-shadow:inset 0 0 0 1px #1e1e1e;outline:1px solid transparent;display:flex;flex-direction:row;align-items:center;justify-content:space-between}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__toolbar .block-editor-block-pattern-setup__display-controls{display:flex}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__toolbar .block-editor-block-pattern-setup__actions,.block-editor-block-pattern-setup .block-editor-block-pattern-setup__toolbar .block-editor-block-pattern-setup__navigation{width:calc(50% - 36px);display:flex}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__toolbar .block-editor-block-pattern-setup__actions{justify-content:flex-end}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__container{display:flex;flex-direction:column;width:100%;box-sizing:border-box}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container{overflow:hidden;position:relative;padding:0;margin:0;list-style:none;transform-style:preserve-3d}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container *{box-sizing:border-box}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container .pattern-slide{opacity:0;position:absolute;top:0;width:100%;margin:auto;padding:16px;transition:transform .5s,opacity .5s,z-index .5s;z-index:100}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container .pattern-slide.active-slide{opacity:1;position:relative;z-index:102}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container .pattern-slide.previous-slide{transform:translateX(-100%);z-index:101}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container .pattern-slide.next-slide{transform:translateX(100%);z-index:101}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .block-list-appender{display:none}.block-editor-block-variation-transforms{padding:0 16px 16px 56px;width:100%}.block-editor-block-variation-transforms .components-dropdown-menu__toggle{border:1px solid #757575;border-radius:2px;min-height:30px;width:100%;position:relative;text-align:left;justify-content:left;padding:6px 12px}.block-editor-block-variation-transforms .components-dropdown-menu__toggle.components-dropdown-menu__toggle{padding-right:24px}.block-editor-block-variation-transforms .components-dropdown-menu__toggle:focus:not(:disabled){border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 calc(var(--wp-admin-border-width-focus) - 1px) var(--wp-admin-theme-color)}.block-editor-block-variation-transforms .components-dropdown-menu__toggle svg{height:100%;padding:0;position:absolute;right:0;top:0}.block-editor-block-variation-transforms__popover .components-popover__content{min-width:230px}.components-border-radius-control{margin-bottom:12px}.components-border-radius-control legend{padding-bottom:4px}.components-border-radius-control .components-border-radius-control__wrapper{display:flex;justify-content:space-between;align-items:flex-start}.components-border-radius-control .components-border-radius-control__wrapper .components-range-control,.components-border-radius-control .components-border-radius-control__wrapper>.components-unit-control-wrapper{width:calc(50% - 26px);margin-bottom:0}.components-border-radius-control .components-border-radius-control__wrapper .components-range-control .components-base-control__field{margin-bottom:0;height:30px}.components-border-radius-control .components-border-radius-control__wrapper .components-range-control .components-range-control__wrapper{margin-right:10px}.components-border-radius-control .components-border-radius-control__wrapper>span{flex:0 0 auto}.components-border-radius-control .components-border-radius-control__input-controls-wrapper{display:flex;width:70%;flex-wrap:wrap}.components-border-radius-control .components-border-radius-control__input-controls-wrapper .components-unit-control-wrapper{width:calc(50% - 8px);margin-bottom:8px;margin-right:8px}.components-border-radius-control .component-border-radius-control__linked-button.has-icon{display:flex;justify-content:center}.components-border-radius-control .component-border-radius-control__linked-button.has-icon svg{margin-right:0}.components-border-style-control legend{line-height:1.4;margin-bottom:8px;padding:0}.components-border-style-control .components-border-style-control__buttons{display:inline-flex;margin-bottom:24px}.components-border-style-control .components-border-style-control__buttons .components-button.has-icon{min-width:30px;height:30px;padding:3px;margin-right:4px}.block-editor-button-block-appender{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px;width:100%;height:auto;color:#1e1e1e;box-shadow:inset 0 0 0 1px #1e1e1e}.is-dark-theme .block-editor-button-block-appender{color:hsla(0,0%,100%,.65);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.65)}.block-editor-button-block-appender:hover{color:var(--wp-admin-theme-color);box-shadow:inset 0 0 0 1px var(--wp-admin-theme-color)}.block-editor-button-block-appender:focus{box-shadow:inset 0 0 0 2px var(--wp-admin-theme-color)}.block-editor-button-block-appender:active{color:#000}.block-editor-color-gradient-control .block-editor-color-gradient-control__color-indicator{margin-bottom:12px}.block-editor-panel-color-gradient-settings .component-color-indicator{vertical-align:text-bottom}.block-editor-panel-color-gradient-settings__panel-title .component-color-indicator{display:inline-block}.block-editor-panel-color-gradient-settings.is-opened .block-editor-panel-color-gradient-settings__panel-title .component-color-indicator{display:none}@media screen and (min-width:782px){.block-editor-panel-color-gradient-settings .components-circular-option-picker__swatches{display:grid;grid-template-columns:repeat(6,28px);justify-content:space-between}}.block-editor-block-inspector .block-editor-panel-color-gradient-settings .components-base-control{margin-bottom:inherit}.block-editor-panel-color-gradient-settings .block-editor-panel-color-gradient-settings__dropdown{display:block}.block-editor-panel-color-gradient-settings__dropdown{width:100%}.block-editor-panel-color-gradient-settings__dropdown-content .components-popover__content>div{width:280px}@media (min-width:782px){.block-editor-panel-color-gradient-settings__dropdown-content .components-popover__content{margin-right:156px!important}.block-editor-panel-color-gradient-settings__dropdown-content.is-from-top .components-popover__content{margin-top:-60px!important}.block-editor-panel-color-gradient-settings__dropdown-content.is-from-bottom .components-popover__content{margin-bottom:-60px!important}}.block-editor-panel-color-gradient-settings__dropdown:last-child>div{border-bottom-width:0}.block-editor-panel-color-gradient-settings__item{padding-top:12px!important;padding-bottom:12px!important}.block-editor-panel-color-gradient-settings__item .block-editor-panel-color-gradient-settings__color-indicator{background:linear-gradient(-45deg,transparent 48%,#ddd 0,#ddd 52%,transparent 0)}.block-editor-panel-color-gradient-settings__item.is-open{background:#f0f0f0;color:var(--wp-admin-theme-color)}.block-editor-contrast-checker>.components-notice{margin:0}.block-editor-default-block-appender{clear:both;margin-left:auto;margin-right:auto;position:relative}.block-editor-default-block-appender[data-root-client-id=""] .block-editor-default-block-appender__content:hover{outline:1px solid transparent}.block-editor-default-block-appender .block-editor-default-block-appender__content{opacity:.62}.block-editor-default-block-appender .components-drop-zone__content-icon{display:none}.block-editor-block-list__empty-block-inserter.block-editor-block-list__empty-block-inserter,.block-editor-default-block-appender .block-editor-inserter{position:absolute;top:0;right:0;line-height:0}.block-editor-block-list__empty-block-inserter.block-editor-block-list__empty-block-inserter:disabled,.block-editor-default-block-appender .block-editor-inserter:disabled{display:none}.block-editor-block-list__block .block-list-appender{position:absolute;list-style:none;padding:0;z-index:2;bottom:0;right:0}.block-editor-block-list__block .block-list-appender.block-list-appender{margin:0;line-height:0}.block-editor-block-list__block .block-list-appender .block-editor-default-block-appender{height:24px}.block-editor-block-list__block .block-list-appender .block-editor-inserter__toggle.components-button.has-icon,.block-editor-block-list__block .block-list-appender .block-list-appender__toggle{flex-direction:row;box-shadow:none;height:24px;width:24px;display:none;padding:0!important;background:#1e1e1e;color:#fff}.block-editor-block-list__block .block-list-appender .block-editor-inserter__toggle.components-button.has-icon:hover,.block-editor-block-list__block .block-list-appender .block-list-appender__toggle:hover{color:#fff;background:var(--wp-admin-theme-color)}.block-editor-block-list__block .block-list-appender .block-editor-default-block-appender__content{display:none}.block-editor-block-list__block .block-list-appender:only-child{position:relative;right:auto;align-self:center;list-style:none;line-height:inherit}.block-editor-block-list__block .block-list-appender:only-child .block-editor-default-block-appender__content{display:block}.block-editor-block-list__block.is-selected .block-editor-block-list__layout>.block-list-appender .block-editor-inserter__toggle.components-button.has-icon,.block-editor-block-list__block.is-selected .block-editor-block-list__layout>.block-list-appender .block-list-appender__toggle,.block-editor-block-list__block.is-selected>.block-list-appender .block-editor-inserter__toggle.components-button.has-icon,.block-editor-block-list__block.is-selected>.block-list-appender .block-list-appender__toggle{display:flex}.block-editor-duotone-control__popover>.components-popover__content>div{padding:16px;width:280px}.block-editor-duotone-control__popover .components-menu-group__label{padding:0}.block-editor-duotone-control__popover .components-custom-gradient-picker__gradient-bar{margin:16px 0 12px}.block-editor-duotone-control__popover .components-circular-option-picker__swatches{display:grid;grid-template-columns:repeat(6,28px);gap:12px;justify-content:space-between}.block-editor-duotone-control__description{margin:16px 0;font-size:12px}.block-editor-duotone-control__popover:not([data-y-axis=middle][data-x-axis=right])>.components-popover__content{margin-left:-14px}.components-font-appearance-control{margin-bottom:24px}.components-font-appearance-control ul li{color:#1e1e1e;text-transform:capitalize}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}@keyframes loadingpulse{0%{opacity:1}50%{opacity:0}to{opacity:1}}.block-editor-link-control{position:relative;min-width:360px}.components-popover__content .block-editor-link-control{min-width:auto;width:90vw;max-width:360px}.block-editor-link-control__search-input-container,.block-editor-link-control__search-input-wrapper{position:relative}.block-editor-link-control__search-input.has-no-label .block-editor-url-input__input{flex:1}.block-editor-link-control__field{margin:16px}.block-editor-link-control__field>.components-base-control__field{display:flex;align-items:center;margin:0}.block-editor-link-control__field .components-base-control__label{margin-right:16px;margin-bottom:0}.block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input,.block-editor-link-control__field input[type=text]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;font-size:16px;line-height:normal;width:calc(100% - 32px);display:block;padding:11px 36px 11px 16px;margin:0;position:relative;border:1px solid #ddd;border-radius:2px}@media (prefers-reduced-motion:reduce){.block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input,.block-editor-link-control__field input[type=text]{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input,.block-editor-link-control__field input[type=text]{font-size:13px;line-height:normal}}.block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input:focus,.block-editor-link-control__field input[type=text]:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input::-webkit-input-placeholder,.block-editor-link-control__field input[type=text]::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input::-moz-placeholder,.block-editor-link-control__field input[type=text]::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input:-ms-input-placeholder,.block-editor-link-control__field input[type=text]:-ms-input-placeholder{color:rgba(30,30,30,.62)}.block-editor-link-control__search-error{margin:-8px 16px 16px}.block-editor-link-control__search-actions{position:absolute;top:3px;right:19px}.components-button .block-editor-link-control__search-submit .has-icon{margin:-1px}.block-editor-link-control__search-results-wrapper{position:relative;margin-top:-15px}.block-editor-link-control__search-results-wrapper:after,.block-editor-link-control__search-results-wrapper:before{content:"";position:absolute;left:-1px;right:16px;display:block;pointer-events:none;z-index:100}.block-editor-link-control__search-results-wrapper:before{height:8px;top:0;bottom:auto}.block-editor-link-control__search-results-wrapper:after{height:16px;bottom:0;top:auto}.block-editor-link-control__search-results-label{padding:16px 32px 0;display:block;font-weight:600}.block-editor-link-control__search-results{margin:0;padding:8px 16px;max-height:200px;overflow-y:auto}.block-editor-link-control__search-results.is-loading{opacity:.2}.block-editor-link-control__search-item{position:relative;display:flex;align-items:flex-start;font-size:13px;cursor:pointer;background:#fff;width:100%;border:none;text-align:left;padding:12px 16px;border-radius:2px;height:auto}.block-editor-link-control__search-item:focus,.block-editor-link-control__search-item:hover{background-color:#f0f0f0}.block-editor-link-control__search-item:focus .block-editor-link-control__search-item-type,.block-editor-link-control__search-item:hover .block-editor-link-control__search-item-type{background:#fff}.block-editor-link-control__search-item:focus:not(:disabled){box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color) inset}.block-editor-link-control__search-item.is-selected{background:#f0f0f0}.block-editor-link-control__search-item.is-selected .block-editor-link-control__search-item-type{background:#fff}.block-editor-link-control__search-item.is-current{flex-direction:column;background:transparent;border:0;width:100%;cursor:default;padding:16px}.block-editor-link-control__search-item .block-editor-link-control__search-item-header{display:block;flex-direction:row;align-items:flex-start;margin-right:8px;white-space:pre-wrap;overflow-wrap:break-word}.block-editor-link-control__search-item .block-editor-link-control__search-item-header .block-editor-link-control__search-item-info{word-break:break-all}.block-editor-link-control__search-item.is-preview .block-editor-link-control__search-item-header{display:flex;flex:1}.block-editor-link-control__search-item.is-error .block-editor-link-control__search-item-header{align-items:center}.block-editor-link-control__search-item .block-editor-link-control__search-item-icon{position:relative;top:.2em;margin-right:8px;max-height:24px;flex-shrink:0;width:24px;display:flex;justify-content:center}.block-editor-link-control__search-item .block-editor-link-control__search-item-icon img{width:16px}.block-editor-link-control__search-item.is-error .block-editor-link-control__search-item-icon{top:0;width:32px;max-height:32px}.block-editor-link-control__search-item .block-editor-link-control__search-item-info,.block-editor-link-control__search-item .block-editor-link-control__search-item-title{overflow:hidden;text-overflow:ellipsis}.block-editor-link-control__search-item .block-editor-link-control__search-item-info .components-external-link__icon,.block-editor-link-control__search-item .block-editor-link-control__search-item-title .components-external-link__icon{position:absolute;right:0;margin-top:0}.block-editor-link-control__search-item .block-editor-link-control__search-item-title{display:block;margin-bottom:.2em;font-weight:500;position:relative}.block-editor-link-control__search-item .block-editor-link-control__search-item-title mark{font-weight:700;color:inherit;background-color:transparent}.block-editor-link-control__search-item .block-editor-link-control__search-item-title span{font-weight:400}.block-editor-link-control__search-item .block-editor-link-control__search-item-title svg{display:none}.block-editor-link-control__search-item .block-editor-link-control__search-item-info{display:block;color:#757575;font-size:.9em;line-height:1.3}.block-editor-link-control__search-item .block-editor-link-control__search-item-error-notice{font-style:italic;font-size:1.1em}.block-editor-link-control__search-item .block-editor-link-control__search-item-type{display:block;padding:3px 6px;margin-left:auto;font-size:.9em;background-color:#f0f0f0;border-radius:2px}.block-editor-link-control__search-item .block-editor-link-control__search-item-description{padding-top:12px;margin:0}.block-editor-link-control__search-item .block-editor-link-control__search-item-description.is-placeholder{margin-top:12px;padding-top:0;height:28px;display:flex;flex-direction:column;justify-content:space-around}.block-editor-link-control__search-item .block-editor-link-control__search-item-description.is-placeholder:after,.block-editor-link-control__search-item .block-editor-link-control__search-item-description.is-placeholder:before{display:block;content:"";height:.7em;width:100%;background-color:#f0f0f0;border-radius:3px}.block-editor-link-control__search-item .block-editor-link-control__search-item-description .components-text{font-size:.9em}.block-editor-link-control__search-item .block-editor-link-control__search-item-image{display:flex;width:100%;background-color:#f0f0f0;justify-content:center;height:140px;max-height:140px;overflow:hidden;border-radius:2px;margin-top:12px}.block-editor-link-control__search-item .block-editor-link-control__search-item-image.is-placeholder{background-color:#f0f0f0;border-radius:3px}.block-editor-link-control__search-item .block-editor-link-control__search-item-image img{display:block;max-width:100%;height:140px;max-height:140px}.block-editor-link-control__search-item-top{display:flex;flex-direction:row;width:100%}.block-editor-link-control__search-item-bottom{transition:opacity 1.5s;width:100%}.block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-description:after,.block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-description:before,.block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-image{animation:loadingpulse 1s linear infinite;animation-delay:.5s}.block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-icon img,.block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-icon svg{opacity:0}.block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-icon:before{content:"";display:block;background-color:#f0f0f0;position:absolute;top:0;left:0;right:0;bottom:0;border-radius:100%;animation:loadingpulse 1s linear infinite;animation-delay:.5s}.block-editor-link-control__loading{margin:16px;display:flex;align-items:center}.block-editor-link-control__loading .components-spinner{margin-top:0}.components-button+.block-editor-link-control__search-create{overflow:visible;padding:12px 16px}.components-button+.block-editor-link-control__search-create:before{content:"";position:absolute;top:-10px;left:0;display:block;width:100%}.block-editor-link-control__search-create{align-items:center}.block-editor-link-control__search-create .block-editor-link-control__search-item-title{margin-bottom:0}.block-editor-link-control__search-create .block-editor-link-control__search-item-icon{top:0}.block-editor-link-control__search-results div[role=menu]>.block-editor-link-control__search-item.block-editor-link-control__search-item{padding:10px}.block-editor-link-control__tools{display:flex;align-items:center;border-top:1px solid #ddd;margin:0;padding:16px}.block-editor-link-control__unlink{padding-left:16px;padding-right:16px}.block-editor-link-control__settings{flex:1;margin:0}.block-editor-link-control__settings :last-child{margin-bottom:0}.is-alternate .block-editor-link-control__settings{border-top:1px solid #1e1e1e}.block-editor-link-control__setting{margin-bottom:16px}.block-editor-link-control__setting :last-child{margin-bottom:0}.block-editor-link-control .block-editor-link-control__search-input .components-spinner{display:block}.block-editor-link-control .block-editor-link-control__search-input .components-spinner.components-spinner{position:absolute;left:auto;bottom:auto;top:28px;right:62px}.block-editor-link-control__search-item-action{margin-left:auto;flex-shrink:0}.block-editor-line-height-control{margin-bottom:24px}.block-editor-line-height-control input{display:block;max-width:60px}.block-editor-image-size-control{margin-bottom:1em}.block-editor-image-size-control .block-editor-image-size-control__row{display:flex;justify-content:space-between}.block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height,.block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width{margin-bottom:.5em}.block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height input,.block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width input{line-height:1.25}.block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width{margin-right:5px}.block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height{margin-left:5px}.block-editor-block-list__layout.has-overlay:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:60}.block-editor-block-types-list__list-item{display:block;width:33.33%;padding:0;margin:0}.components-button.block-editor-block-types-list__item{display:flex;flex-direction:column;width:100%;font-size:13px;color:#1e1e1e;padding:8px;align-items:stretch;justify-content:center;cursor:pointer;background:transparent;word-break:break-word;border-radius:2px;transition:all .05s ease-in-out;position:relative;height:auto}@media (prefers-reduced-motion:reduce){.components-button.block-editor-block-types-list__item{transition-duration:0s;transition-delay:0s}}.components-button.block-editor-block-types-list__item:disabled{opacity:.6;cursor:default}.components-button.block-editor-block-types-list__item:not(:disabled):hover{color:var(--wp-admin-theme-color)!important}.components-button.block-editor-block-types-list__item:not(:disabled):focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.components-button.block-editor-block-types-list__item:not(:disabled).is-active{color:#fff;background:#1e1e1e;outline:2px solid transparent;outline-offset:-2px}.block-editor-block-types-list__item-icon{padding:12px 20px;border-radius:2px;color:#1e1e1e;transition:all .05s ease-in-out}@media (prefers-reduced-motion:reduce){.block-editor-block-types-list__item-icon{transition-duration:0s;transition-delay:0s}}.block-editor-block-types-list__item-icon .block-editor-block-icon{margin-left:auto;margin-right:auto}.block-editor-block-types-list__item-icon svg{transition:all .15s ease-out}@media (prefers-reduced-motion:reduce){.block-editor-block-types-list__item-icon svg{transition-duration:0s;transition-delay:0s}}.block-editor-block-types-list__list-item[draggable=true] .block-editor-block-types-list__item-icon{cursor:grab}.block-editor-block-types-list__item-title{padding:4px 2px 8px;font-size:12px}.block-editor-list-view-tree{width:100%;border-collapse:collapse;padding:0;margin:0}.components-modal__content .block-editor-list-view-tree{margin:-12px -6px 0;width:calc(100% + 12px)}.block-editor-list-view-leaf{position:relative}.block-editor-list-view-leaf.is-selected{background:var(--wp-admin-theme-color)}.block-editor-list-view-leaf.is-selected .block-editor-list-view-block-contents,.block-editor-list-view-leaf.is-selected .components-button.has-icon{color:#fff}.is-dragging-components-draggable .block-editor-list-view-leaf.is-selected .block-editor-list-view-block-contents{background:none;color:#1e1e1e}.block-editor-list-view-leaf.is-selected .block-editor-list-view-block-contents:focus:after{box-shadow:inset 0 0 0 1px #fff,0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.block-editor-list-view-leaf.is-selected .block-editor-list-view-block__menu:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) #fff}.block-editor-list-view-leaf.is-branch-selected:not(.is-selected){background:linear-gradient(hsla(0,0%,100%,.9),hsla(0,0%,100%,.9)),linear-gradient(var(--wp-admin-theme-color),var(--wp-admin-theme-color))}.block-editor-list-view-leaf.is-branch-selected.is-selected .block-editor-list-view-block-contents{border-radius:2px 2px 0 0}.block-editor-list-view-leaf[aria-expanded=false].is-branch-selected.is-selected .block-editor-list-view-block-contents{border-radius:2px}.block-editor-list-view-leaf.is-branch-selected:not(.is-selected) .block-editor-list-view-block-contents{border-radius:0}.block-editor-list-view-leaf.is-dragging{display:none}.block-editor-list-view-leaf .block-editor-list-view-block-contents{display:flex;align-items:center;width:100%;height:auto;padding:6px 12px 6px 0;text-align:left;color:#1e1e1e;border-radius:2px;position:relative;white-space:nowrap}.block-editor-list-view-leaf .block-editor-list-view-block-contents.is-dropping-before:before{content:"";position:absolute;pointer-events:none;transition:border-color .1s linear,border-style .1s linear,box-shadow .1s linear;top:-2px;right:0;left:0;border-top:4px solid var(--wp-admin-theme-color)}.components-modal__content .block-editor-list-view-leaf .block-editor-list-view-block-contents{padding-left:0;padding-right:0}.block-editor-list-view-leaf .block-editor-list-view-block-contents:focus{box-shadow:none}.block-editor-list-view-leaf .block-editor-list-view-block-contents:focus:after{content:"";position:absolute;top:0;right:-29px;bottom:0;left:0;border-radius:inherit;box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);z-index:1;pointer-events:none}.is-dragging-components-draggable .block-editor-list-view-leaf .block-editor-list-view-block-contents:focus:after{box-shadow:none}.block-editor-list-view-leaf.has-single-cell .block-editor-list-view-block-contents:focus:after{right:0}.block-editor-list-view-leaf .block-editor-list-view-block__menu:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);z-index:1}.is-dragging-components-draggable .block-editor-list-view-leaf .block-editor-list-view-block__menu:focus{box-shadow:none}.block-editor-list-view-leaf.is-visible .block-editor-list-view-block-contents{opacity:1;animation:edit-post__fade-in-animation .2s ease-out 0s;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.block-editor-list-view-leaf.is-visible .block-editor-list-view-block-contents{animation-duration:1ms;animation-delay:0s}}.block-editor-list-view-leaf .block-editor-block-icon{align-self:flex-start;margin-right:8px;width:24px}.block-editor-list-view-leaf .block-editor-list-view-block__contents-cell,.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell,.block-editor-list-view-leaf .block-editor-list-view-block__mover-cell{padding-top:0;padding-bottom:0}.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell,.block-editor-list-view-leaf .block-editor-list-view-block__mover-cell{line-height:0;width:36px;opacity:0;vertical-align:middle}@media (prefers-reduced-motion:reduce){.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell,.block-editor-list-view-leaf .block-editor-list-view-block__mover-cell{transition-duration:0s;transition-delay:0s}}.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell.is-visible,.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell:hover,.block-editor-list-view-leaf .block-editor-list-view-block__mover-cell.is-visible,.block-editor-list-view-leaf .block-editor-list-view-block__mover-cell:hover{position:relative;z-index:1;opacity:1;animation:edit-post__fade-in-animation .2s ease-out 0s;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell.is-visible,.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell:hover,.block-editor-list-view-leaf .block-editor-list-view-block__mover-cell.is-visible,.block-editor-list-view-leaf .block-editor-list-view-block__mover-cell:hover{animation-duration:1ms;animation-delay:0s}}.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell,.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell .components-button.has-icon,.block-editor-list-view-leaf .block-editor-list-view-block__mover-cell,.block-editor-list-view-leaf .block-editor-list-view-block__mover-cell .components-button.has-icon{width:24px;min-width:24px;padding:0}.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell{padding-right:5px}.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell .components-button.has-icon{height:24px}.block-editor-list-view-leaf .block-editor-list-view-block__mover-cell-alignment-wrapper{display:flex;height:100%;flex-direction:column;align-items:center}.block-editor-list-view-leaf .block-editor-block-mover-button{position:relative;width:36px;height:24px}.block-editor-list-view-leaf .block-editor-block-mover-button svg{position:relative;height:24px}.block-editor-list-view-leaf .block-editor-block-mover-button.is-up-button{margin-top:-6px;align-items:flex-end}.block-editor-list-view-leaf .block-editor-block-mover-button.is-up-button svg{bottom:-4px}.block-editor-list-view-leaf .block-editor-block-mover-button.is-down-button{margin-bottom:-6px;align-items:flex-start}.block-editor-list-view-leaf .block-editor-block-mover-button.is-down-button svg{top:-4px}.block-editor-list-view-leaf .block-editor-block-mover-button:focus,.block-editor-list-view-leaf .block-editor-block-mover-button:focus:enabled{box-shadow:none;outline:none}.block-editor-list-view-leaf .block-editor-block-mover-button:focus:before{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 0 0 4px #fff;outline:2px solid transparent}.block-editor-list-view-leaf .block-editor-block-mover-button:before{content:"";position:absolute;display:block;border-radius:2px;height:16px;min-width:100%;left:0;right:0;animation:components-button__appear-animation .1s ease;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.block-editor-list-view-leaf .block-editor-block-mover-button:before{animation-duration:1ms;animation-delay:0s}}.block-editor-list-view-leaf .block-editor-inserter__toggle{background:#1e1e1e;color:#fff;height:24px;margin:6px 6px 6px 1px;min-width:24px}.block-editor-list-view-leaf .block-editor-inserter__toggle:active{color:#fff}.block-editor-list-view-leaf .block-editor-list-view-block-select-button__anchor{background:rgba(0,0,0,.1);border-radius:2px;display:inline-block;padding:2px 6px;margin:0 8px;max-width:120px;overflow:hidden;text-overflow:ellipsis}.block-editor-list-view-leaf.is-selected .block-editor-list-view-block-select-button__anchor{background:rgba(0,0,0,.3)}.block-editor-list-view-appender__description,.block-editor-list-view-block-select-button__description{display:none}.block-editor-list-view-appender__cell .block-editor-list-view-appender__container,.block-editor-list-view-appender__cell .block-editor-list-view-block__contents-container,.block-editor-list-view-block__contents-cell .block-editor-list-view-appender__container,.block-editor-list-view-block__contents-cell .block-editor-list-view-block__contents-container{display:flex}.block-editor-list-view__expander{height:24px;margin-left:4px;width:24px}.block-editor-list-view-leaf[aria-level] .block-editor-list-view__expander{margin-left:220px}.block-editor-list-view-leaf:not([aria-level="1"]) .block-editor-list-view__expander{margin-right:4px}.block-editor-list-view-leaf[aria-level="1"] .block-editor-list-view__expander{margin-left:0}.block-editor-list-view-leaf[aria-level="2"] .block-editor-list-view__expander{margin-left:24px}.block-editor-list-view-leaf[aria-level="3"] .block-editor-list-view__expander{margin-left:52px}.block-editor-list-view-leaf[aria-level="4"] .block-editor-list-view__expander{margin-left:80px}.block-editor-list-view-leaf[aria-level="5"] .block-editor-list-view__expander{margin-left:108px}.block-editor-list-view-leaf[aria-level="6"] .block-editor-list-view__expander{margin-left:136px}.block-editor-list-view-leaf[aria-level="7"] .block-editor-list-view__expander{margin-left:164px}.block-editor-list-view-leaf[aria-level="8"] .block-editor-list-view__expander{margin-left:192px}.block-editor-list-view-leaf .block-editor-list-view__expander{visibility:hidden}.block-editor-list-view-leaf[aria-expanded=true] .block-editor-list-view__expander svg{visibility:visible;transition:transform .2s ease;transform:rotate(90deg)}@media (prefers-reduced-motion:reduce){.block-editor-list-view-leaf[aria-expanded=true] .block-editor-list-view__expander svg{transition-duration:0s;transition-delay:0s}}.block-editor-list-view-leaf[aria-expanded=false] .block-editor-list-view__expander svg{visibility:visible;transform:rotate(0deg);transition:transform .2s ease}@media (prefers-reduced-motion:reduce){.block-editor-list-view-leaf[aria-expanded=false] .block-editor-list-view__expander svg{transition-duration:0s;transition-delay:0s}}.block-editor-list-view-drop-indicator{pointer-events:none}.block-editor-list-view-drop-indicator .block-editor-list-view-drop-indicator__line{background:var(--wp-admin-theme-color);height:1px}.block-editor-list-view-drop-indicator:not([data-y-axis=middle][data-x-axis=right])>.components-popover__content{margin-left:0;border:none;box-shadow:none}.block-editor-list-view-placeholder{padding:0;margin:0;height:36px}.modal-open .block-editor-media-replace-flow__options{display:none}.block-editor-media-replace-flow__indicator{margin-left:4px}.block-editor-media-flow__url-input{border-top:1px solid #1e1e1e;margin-top:8px;margin-right:-8px;margin-left:-8px;padding:16px}.block-editor-media-flow__url-input .block-editor-media-replace-flow__image-url-label{display:block;top:16px;margin-bottom:8px}.block-editor-media-flow__url-input .block-editor-link-control{width:220px}.block-editor-media-flow__url-input .block-editor-link-control .block-editor-url-input{padding:0}.block-editor-media-flow__url-input .block-editor-link-control .components-base-control .components-base-control__field{margin-bottom:0}.block-editor-media-flow__url-input .block-editor-link-control .block-editor-link-control__search-item-title{max-width:180px;white-space:nowrap}.block-editor-media-flow__url-input .block-editor-link-control .block-editor-link-control__search-item-info{white-space:nowrap}.block-editor-media-flow__url-input .block-editor-link-control .block-editor-link-control__search-item.is-current{width:auto;padding:0}.block-editor-media-flow__url-input .block-editor-link-control .block-editor-link-control__search-input.block-editor-link-control__search-input input[type=text]{margin:0;width:100%}.block-editor-media-flow__url-input .block-editor-link-control .block-editor-link-control__search-actions{top:0;right:4px}.block-editor-media-flow__error{padding:0 20px 20px;max-width:255px}.block-editor-media-flow__error .components-with-notices-ui{max-width:255px}.block-editor-media-flow__error .components-with-notices-ui .components-notice__content{overflow:hidden;word-wrap:break-word}.block-editor-media-flow__error .components-with-notices-ui .components-notice__dismiss{position:absolute;right:10px}.block-editor-media-placeholder__url-input-container .block-editor-media-placeholder__button{margin-bottom:0}.block-editor-media-placeholder__url-input-form{display:flex}.block-editor-media-placeholder__url-input-form input[type=url].block-editor-media-placeholder__url-input-field{width:100%;min-width:200px;flex-grow:1;border:none;border-radius:0;margin:2px}@media (min-width:600px){.block-editor-media-placeholder__url-input-form input[type=url].block-editor-media-placeholder__url-input-field{width:300px}}.block-editor-media-placeholder__url-input-submit-button{flex-shrink:1}.block-editor-media-placeholder__button{margin-bottom:.5rem}.block-editor-media-placeholder__cancel-button.is-link{margin:1em;display:block}.block-editor-media-placeholder.is-appender{min-height:0}.block-editor-media-placeholder.is-appender:hover{cursor:pointer;box-shadow:0 0 0 1px var(--wp-admin-theme-color)}.block-editor-multi-selection-inspector__card{display:flex;align-items:flex-start;padding:16px}.block-editor-multi-selection-inspector__card-content{flex-grow:1}.block-editor-multi-selection-inspector__card-title{font-weight:500;margin-bottom:5px}.block-editor-multi-selection-inspector__card-description{font-size:13px}.block-editor-multi-selection-inspector__card .block-editor-block-icon{margin-left:-2px;margin-right:10px;padding:0 3px;width:36px;height:24px}.block-editor-plain-text{box-shadow:none;font-family:inherit;font-size:inherit;color:inherit;line-height:inherit;border:none;padding:0;margin:0;width:100%}.block-editor-responsive-block-control{margin-bottom:28px;border-bottom:1px solid #ccc;padding-bottom:14px}.block-editor-responsive-block-control:last-child{padding-bottom:0;border-bottom:0}.block-editor-responsive-block-control__title{margin:0 0 .6em -3px}.block-editor-responsive-block-control__label{font-weight:600;margin-bottom:.6em;margin-left:-3px}.block-editor-responsive-block-control__inner{margin-left:-1px}.block-editor-responsive-block-control__toggle{margin-left:1px}.block-editor-responsive-block-control .components-base-control__help{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.rich-text [data-rich-text-placeholder]{pointer-events:none}.rich-text [data-rich-text-placeholder]:after{content:attr(data-rich-text-placeholder);opacity:.62}.rich-text:focus{outline:none}.rich-text:focus [data-rich-text-format-boundary]{border-radius:2px}.block-editor-rich-text__editable>p:first-child{margin-top:0}figcaption.block-editor-rich-text__editable [data-rich-text-placeholder]:before{opacity:.8}.components-popover.block-editor-rich-text__inline-format-toolbar{z-index:99998}.components-popover.block-editor-rich-text__inline-format-toolbar .components-popover__content{width:auto;min-width:auto;margin-bottom:8px;box-shadow:none;border:1px solid #1e1e1e;border-radius:2px;background-color:#fff}.components-popover.block-editor-rich-text__inline-format-toolbar .components-toolbar,.components-popover.block-editor-rich-text__inline-format-toolbar .components-toolbar-group{border:none}.components-popover.block-editor-rich-text__inline-format-toolbar .components-dropdown-menu__toggle,.components-popover.block-editor-rich-text__inline-format-toolbar .components-toolbar__control{min-width:48px;min-height:48px;padding-left:12px;padding-right:12px}.block-editor-rich-text__inline-format-toolbar-group .components-dropdown-menu__toggle{justify-content:center}.show-icon-labels .block-editor-rich-text__inline-format-toolbar-group .components-button.has-icon{width:auto}.show-icon-labels .block-editor-rich-text__inline-format-toolbar-group .components-button.has-icon svg{display:none}.show-icon-labels .block-editor-rich-text__inline-format-toolbar-group .components-button.has-icon:after{content:attr(aria-label)}[data-rich-text-script]{display:inline}[data-rich-text-script]:before{content:"";background:#ff0}.block-editor-skip-to-selected-block{position:absolute;top:-9999em}.block-editor-skip-to-selected-block:focus{height:auto;width:auto;display:block;font-size:14px;font-weight:600;padding:15px 23px 14px;background:#f1f1f1;color:var(--wp-admin-theme-color);line-height:normal;box-shadow:0 0 2px 2px rgba(0,0,0,.6);text-decoration:none;outline:none;z-index:100000}.block-editor-text-transform-control{flex:0 0 50%}.block-editor-text-transform-control legend{margin-bottom:8px}.block-editor-text-transform-control .block-editor-text-transform-control__buttons{display:inline-flex;margin-bottom:24px}.block-editor-text-transform-control .block-editor-text-transform-control__buttons .components-button.has-icon{min-width:24px;padding:0;margin-right:4px}.block-editor-text-decoration-control{flex:0 0 50%}.block-editor-text-decoration-control legend{margin-bottom:8px}.block-editor-text-decoration-control .block-editor-text-decoration-control__buttons{display:inline-flex;margin-bottom:24px}.block-editor-text-decoration-control .block-editor-text-decoration-control__buttons .components-button.has-icon{min-width:24px;padding:0;margin-right:4px}.block-editor-tool-selector__help{margin:8px -8px -8px;padding:16px;border-top:1px solid #ddd;color:#757575;min-width:280px}.block-editor-block-list__block .block-editor-url-input,.block-editor-url-input,.components-popover .block-editor-url-input{flex-grow:1;position:relative;padding:1px}.block-editor-block-list__block .block-editor-url-input input[type=text],.block-editor-url-input input[type=text],.components-popover .block-editor-url-input input[type=text]{width:100%;padding:8px 8px 8px 12px;border:none;border-radius:0;margin-left:0;margin-right:0;font-size:16px}@media (min-width:600px){.block-editor-block-list__block .block-editor-url-input input[type=text],.block-editor-url-input input[type=text],.components-popover .block-editor-url-input input[type=text]{width:300px;font-size:13px}}.block-editor-block-list__block .block-editor-url-input input[type=text]::-ms-clear,.block-editor-url-input input[type=text]::-ms-clear,.components-popover .block-editor-url-input input[type=text]::-ms-clear{display:none}.block-editor-block-list__block .block-editor-url-input.is-full-width,.block-editor-block-list__block .block-editor-url-input.is-full-width .block-editor-url-input__input[type=text],.block-editor-block-list__block .block-editor-url-input.is-full-width__suggestions,.block-editor-url-input.is-full-width,.block-editor-url-input.is-full-width .block-editor-url-input__input[type=text],.block-editor-url-input.is-full-width__suggestions,.components-popover .block-editor-url-input.is-full-width,.components-popover .block-editor-url-input.is-full-width .block-editor-url-input__input[type=text],.components-popover .block-editor-url-input.is-full-width__suggestions{width:100%}.block-editor-block-list__block .block-editor-url-input .components-spinner,.block-editor-url-input .components-spinner,.components-popover .block-editor-url-input .components-spinner{position:absolute;right:8px 8px 8px 12px;bottom:8px 8px 8px 12px8px1;margin:0}.block-editor-url-input__input[type=text]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;padding:6px 8px;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;border:1px solid #757575;font-size:16px;line-height:normal}@media (prefers-reduced-motion:reduce){.block-editor-url-input__input[type=text]{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.block-editor-url-input__input[type=text]{font-size:13px;line-height:normal}}.block-editor-url-input__input[type=text]:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.block-editor-url-input__input[type=text]::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.block-editor-url-input__input[type=text]::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.block-editor-url-input__input[type=text]:-ms-input-placeholder{color:rgba(30,30,30,.62)}.block-editor-url-input__suggestions{max-height:200px;transition:all .15s ease-in-out;padding:4px 0;width:302px;overflow-y:auto}@media (prefers-reduced-motion:reduce){.block-editor-url-input__suggestions{transition-duration:0s;transition-delay:0s}}.block-editor-url-input .components-spinner,.block-editor-url-input__suggestions{display:none}@media (min-width:600px){.block-editor-url-input .components-spinner,.block-editor-url-input__suggestions{display:inherit}}.block-editor-url-input__suggestion{padding:4px 8px 8px;color:#757575;display:block;font-size:13px;cursor:pointer;background:#fff;width:100%;border:none;text-align:left;box-shadow:none}.block-editor-url-input__suggestion:hover{background:#ddd}.block-editor-url-input__suggestion.is-selected,.block-editor-url-input__suggestion:focus{background:var(--wp-admin-theme-color-darker-20);color:#fff;outline:none}.components-toolbar-group>.block-editor-url-input__button,.components-toolbar>.block-editor-url-input__button{position:inherit}.block-editor-url-input__button .block-editor-url-input__back{margin-right:4px;overflow:visible}.block-editor-url-input__button .block-editor-url-input__back:after{content:"";position:absolute;display:block;width:1px;height:24px;right:-1px;background:#ddd}.block-editor-url-input__button-modal{box-shadow:0 2px 6px rgba(0,0,0,.05);border:1px solid #ddd;background:#fff}.block-editor-url-input__button-modal-line{display:flex;flex-direction:row;flex-grow:1;flex-shrink:1;min-width:0;align-items:flex-start}.block-editor-url-input__button-modal-line .components-button{flex-shrink:0;width:36px;height:36px}.block-editor-url-popover__additional-controls{border-top:1px solid #ddd}.block-editor-url-popover__additional-controls>div[role=menu] .components-button:not(:disabled):not([aria-disabled=true]):not(.is-secondary)>svg{box-shadow:none}.block-editor-url-popover__additional-controls div[role=menu]>.components-button{padding-left:12px}.block-editor-url-popover__row{display:flex}.block-editor-url-popover__row>:not(.block-editor-url-popover__settings-toggle){flex-grow:1}.block-editor-url-popover .components-button.has-icon{padding:3px}.block-editor-url-popover .components-button.has-icon>svg{padding:5px;border-radius:2px;height:30px;width:30px}.block-editor-url-popover .components-button.has-icon:not(:disabled):focus{box-shadow:none}.block-editor-url-popover .components-button.has-icon:not(:disabled):focus>svg{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 0 0 4px #fff;outline:2px solid transparent}.block-editor-url-popover__settings-toggle{flex-shrink:0;border-radius:0;border-left:1px solid #ddd;margin-left:1px}.block-editor-url-popover__settings-toggle[aria-expanded=true] .dashicon{transform:rotate(180deg)}.block-editor-url-popover__input-container .components-base-control:last-child,.block-editor-url-popover__input-container .components-base-control:last-child .components-base-control__field{margin-bottom:0}.block-editor-url-popover__settings{display:block;padding:16px;border-top:1px solid #ddd}.block-editor-url-popover__link-editor,.block-editor-url-popover__link-viewer{display:flex}.block-editor-url-popover__link-editor .block-editor-url-input .components-base-control__field,.block-editor-url-popover__link-viewer .block-editor-url-input .components-base-control__field{margin-bottom:0}.block-editor-url-popover__link-editor .block-editor-url-input .components-spinner,.block-editor-url-popover__link-viewer .block-editor-url-input .components-spinner{bottom:8px 8px 8px 12px1}.block-editor-url-popover__link-viewer-url{margin:7px;flex-grow:1;flex-shrink:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:150px;max-width:500px}.block-editor-url-popover__link-viewer-url.has-invalid-link{color:#cc1818}.block-editor-warning{align-items:center;display:flex;flex-wrap:wrap;padding:1em;border:1px solid #1e1e1e;border-radius:2px;background-color:#fff}.block-editor-warning,.block-editor-warning .block-editor-warning__message{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.block-editor-warning .block-editor-warning__message{line-height:1.4;font-size:13px;color:#1e1e1e;margin:0}.block-editor-warning p.block-editor-warning__message.block-editor-warning__message{min-height:auto}.block-editor-warning .block-editor-warning__contents{display:flex;flex-direction:row;justify-content:space-between;flex-wrap:wrap;align-items:baseline;width:100%}.block-editor-warning .block-editor-warning__actions{display:flex;margin-top:1em}.block-editor-warning .block-editor-warning__action{margin:0 8px 0 0}.block-editor-warning__secondary{margin:auto 0 auto 8px}.components-popover.block-editor-warning__dropdown{z-index:99998}.html-anchor-control .components-external-link{display:block;margin-top:8px}.block-editor-hooks__layout-controls{display:flex;margin-bottom:16px}.block-editor-hooks__layout-controls .block-editor-hooks__layout-controls-unit{display:flex;margin-right:24px}.block-editor-hooks__layout-controls .block-editor-hooks__layout-controls-unit svg{margin:auto 0 4px 8px}.block-editor-hooks__layout-controls-reset{display:flex;justify-content:flex-end;margin-bottom:24px}.block-editor-hooks__layout-controls-helptext{font-size:12px}.block-editor-hooks__flex-layout-justification-controls,.block-editor-hooks__flex-layout-orientation-controls{margin-bottom:12px}.block-editor-hooks__flex-layout-justification-controls legend,.block-editor-hooks__flex-layout-orientation-controls legend{margin-bottom:8px}.block-editor-hooks__border-controls .block-editor-hooks__border-controls-row{display:flex;justify-content:space-between}.block-editor-hooks__border-controls .block-editor-hooks__border-controls-row>*{width:calc(50% - 8px)}.block-editor-hooks__border-controls .components-unit-control-wrapper{margin-bottom:24px}.block-editor-hooks__border-controls .components-unit-control-wrapper:last-child{margin-bottom:8px}.dimensions-block-support-panel .single-column{grid-column:span 1}.typography-block-support-panel .block-editor-text-decoration-control__buttons,.typography-block-support-panel .block-editor-text-transform-control__buttons,.typography-block-support-panel .components-font-appearance-control,.typography-block-support-panel .components-font-size-picker__controls{margin-bottom:0}.typography-block-support-panel .block-editor-line-height-control input{max-width:100%}.typography-block-support-panel .single-column{grid-column:span 1}.block-editor-block-toolbar{display:flex;flex-grow:1;width:100%;position:relative;overflow-y:hidden;overflow-x:auto;transition:border-color .1s linear,box-shadow .1s linear}@media (prefers-reduced-motion:reduce){.block-editor-block-toolbar{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.block-editor-block-toolbar{overflow:inherit}}.block-editor-block-toolbar .components-toolbar,.block-editor-block-toolbar .components-toolbar-group{background:none;line-height:0;margin-top:-1px;margin-bottom:-1px;border:0;border-right:1px solid #ddd}.block-editor-block-toolbar>:last-child,.block-editor-block-toolbar>:last-child .components-toolbar,.block-editor-block-toolbar>:last-child .components-toolbar-group{border-right:none}.block-editor-block-contextual-toolbar.has-parent:not(.is-fixed){margin-left:56px}.show-icon-labels .block-editor-block-contextual-toolbar.has-parent:not(.is-fixed){margin-left:0}.block-editor-block-parent-selector{position:absolute;top:-1px;left:-57px}.show-icon-labels .block-editor-block-parent-selector{position:relative;left:auto;top:auto;margin-top:-1px;margin-left:-1px;margin-bottom:-1px}.block-editor-block-toolbar__block-controls{height:auto!important;padding:0!important;margin-left:-1px}.block-editor-block-toolbar__block-controls .block-editor-block-switcher .components-dropdown-menu__toggle .block-editor-block-icon,.block-editor-block-toolbar__block-controls .block-editor-block-switcher__no-switcher-icon .block-editor-block-icon{width:24px!important;margin:0!important}.block-editor-block-toolbar__block-controls .block-editor-block-mover{margin-left:-6px}.block-editor-block-toolbar .components-toolbar,.block-editor-block-toolbar .components-toolbar-group,.block-editor-rich-text__inline-format-toolbar-group .components-toolbar,.block-editor-rich-text__inline-format-toolbar-group .components-toolbar-group{display:flex;flex-wrap:nowrap}.block-editor-block-toolbar__slot{display:inline-block;line-height:0}@supports (position:sticky){.block-editor-block-toolbar__slot{display:inline-flex}}.show-icon-labels .block-editor-block-toolbar .components-button.has-icon{width:auto}.show-icon-labels .block-editor-block-toolbar .components-button.has-icon svg{display:none}.show-icon-labels .block-editor-block-toolbar .components-button.has-icon:after{content:attr(aria-label);font-size:12px}.show-icon-labels .components-accessible-toolbar .components-toolbar-group>div:first-child:last-child>.components-button.has-icon{padding-left:6px;padding-right:6px}.show-icon-labels .block-editor-block-switcher{border-right:1px solid #1e1e1e}.show-icon-labels .block-editor-block-switcher .components-dropdown-menu__toggle{margin-left:0}.show-icon-labels .block-editor-block-switcher .components-dropdown-menu__toggle .block-editor-block-icon,.show-icon-labels .block-editor-block-switcher__no-switcher-icon .block-editor-block-icon{width:0!important;height:0!important}.show-icon-labels .block-editor-block-parent-selector__button .block-editor-block-icon{width:0}.show-icon-labels .block-editor-block-toolbar__block-controls .block-editor-block-mover{margin-left:0;white-space:nowrap}.show-icon-labels .block-editor-block-mover-button{padding-left:8px!important;padding-right:8px!important}.show-icon-labels .block-editor-block-mover__drag-handle.has-icon{padding-left:6px!important;padding-right:6px!important;border-right:1px solid #1e1e1e}@media (min-width:600px){.show-icon-labels .is-up-button.is-up-button.is-up-button{border-bottom:1px solid #1e1e1e;margin-right:0;border-radius:0}}.show-icon-labels .block-editor-block-contextual-toolbar .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.block-editor-block-mover-button{width:auto}.show-icon-labels .components-toolbar,.show-icon-labels .components-toolbar-group{flex-shrink:1}.show-icon-labels .block-editor-rich-text__inline-format-toolbar-group .components-button+.components-button{margin-left:6px}.block-editor-inserter{display:inline-block;background:none;border:none;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;line-height:0}@media (min-width:782px){.block-editor-inserter{position:relative}}.block-editor-inserter__content{position:relative}.block-editor-inserter__popover.is-quick .components-popover__content{border:none}.block-editor-inserter__popover.is-quick .components-popover__content .block-editor-inserter__quick-inserter>*{border-left:1px solid #ccc;border-right:1px solid #ccc}.block-editor-inserter__popover.is-quick .components-popover__content .block-editor-inserter__quick-inserter>:first-child{border-top:1px solid #ccc}.block-editor-inserter__popover.is-quick .components-popover__content .block-editor-inserter__quick-inserter>:last-child{border-bottom:1px solid #ccc}.block-editor-inserter__popover.is-quick .components-popover__content .block-editor-inserter__quick-inserter>.components-button{border:1px solid #1e1e1e}.block-editor-inserter__popover .block-editor-inserter__menu{margin:-12px}.block-editor-inserter__popover .block-editor-inserter__menu .block-editor-inserter__tabs .components-tab-panel__tabs{top:60px}.block-editor-inserter__popover .block-editor-inserter__menu .block-editor-inserter__main-area{overflow:visible;height:auto}.block-editor-inserter__popover .block-editor-inserter__menu .block-editor-inserter__preview-container{display:none}.block-editor-inserter__toggle.components-button{display:inline-flex;align-items:center;cursor:pointer;border:none;outline:none;padding:0;transition:color .2s ease}@media (prefers-reduced-motion:reduce){.block-editor-inserter__toggle.components-button{transition-duration:0s;transition-delay:0s}}.block-editor-inserter__menu{height:100%;position:relative;overflow:visible}.block-editor-inserter__main-area{width:auto;overflow-y:auto;height:100%}@media (min-width:782px){.block-editor-inserter__main-area{width:350px}}.block-editor-inserter__inline-elements{margin-top:-1px}.block-editor-inserter__menu.is-bottom:after{border-bottom-color:#fff}.components-popover.block-editor-inserter__popover{z-index:99999}.block-editor-inserter__search{background:#fff;padding:16px 16px 0;position:sticky;top:0;z-index:1}.block-editor-inserter__search .components-search-control__icon{right:20px}.block-editor-inserter__search .components-base-control__field{margin-bottom:0}.block-editor-inserter__tabs{display:flex;flex-direction:column}.block-editor-inserter__tabs .components-tab-panel__tabs{position:sticky;top:64px;background:#fff;z-index:1;border-bottom:1px solid #ddd}.block-editor-inserter__tabs .components-tab-panel__tabs .components-tab-panel__tabs-item{flex-grow:1;margin-bottom:-1px}.block-editor-inserter__tabs .components-tab-panel__tab-content{display:flex;flex-grow:1;flex-direction:column;position:relative;z-index:0}.block-editor-inserter__panel-header{display:inline-flex;align-items:center;padding:16px 16px 0}.block-editor-inserter__panel-header-patterns{padding:16px 16px 0}.block-editor-inserter__panel-content{padding:16px}.block-editor-inserter__panel-title,.block-editor-inserter__panel-title button{margin:0 12px 0 0;color:#757575;text-transform:uppercase;font-size:11px;font-weight:500}.block-editor-inserter__panel-dropdown select.components-select-control__input.components-select-control__input.components-select-control__input{height:36px;line-height:36px}.block-editor-inserter__panel-dropdown select{border:none}.block-editor-inserter__block-list{flex-grow:1;position:relative}.block-editor-inserter__reusable-blocks-panel{position:relative;text-align:right}.block-editor-inserter__manage-reusable-blocks{display:inline-block;margin:16px}.block-editor-inserter__no-results{padding:32px;text-align:center}.block-editor-inserter__no-results-icon{fill:#949494}.block-editor-inserter__child-blocks{padding:0 16px}.block-editor-inserter__parent-block-header{display:flex;align-items:center}.block-editor-inserter__parent-block-header h2{font-size:13px}.block-editor-inserter__parent-block-header .block-editor-block-icon{margin-right:8px}.block-editor-inserter__preview-container{display:none;width:300px;background:#fff;border-radius:2px;border:1px solid #ddd;position:absolute;top:16px;left:calc(100% + 16px);max-height:calc(100% - 32px);overflow-y:hidden}@media (min-width:782px){.block-editor-inserter__preview-container{display:block}}.block-editor-inserter__preview-container .block-editor-block-card{padding:16px}.block-editor-inserter__preview-container .block-editor-block-card__title{font-size:13px}.block-editor-inserter__preview-content{min-height:144px;background:#f0f0f0;display:grid;flex-grow:1;align-items:center}.block-editor-inserter__preview-content-missing{flex:1;display:flex;justify-content:center;align-items:center;min-height:144px;color:#757575;background:#f0f0f0}.block-editor-inserter__tips{border-top:1px solid #ddd;padding:16px;flex-shrink:0;position:relative}.block-editor-inserter__manage-reusable-blocks-container{padding:16px}.block-editor-inserter__quick-inserter{width:100%;max-width:100%}@media (min-width:782px){.block-editor-inserter__quick-inserter{width:350px}}.block-editor-inserter__quick-inserter-results .block-editor-inserter__panel-header{height:0;padding:0;float:left}.block-editor-inserter__quick-inserter.has-expand .block-editor-inserter__panel-content,.block-editor-inserter__quick-inserter.has-search .block-editor-inserter__panel-content{padding:16px}.block-editor-inserter__quick-inserter-patterns .block-editor-block-patterns-list{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px}.block-editor-inserter__quick-inserter-patterns .block-editor-block-patterns-list .block-editor-block-patterns-list__list-item{margin-bottom:0}.block-editor-inserter__quick-inserter-patterns .block-editor-block-patterns-list .block-editor-block-preview__container{min-height:100px}.block-editor-inserter__quick-inserter-separator{border-top:1px solid #ddd}.block-editor-inserter__popover.is-quick>.components-popover__content>div{padding:0}.block-editor-inserter__quick-inserter-expand.components-button{display:block;background:#1e1e1e;color:#fff;width:100%;height:44px;border-radius:0}.block-editor-inserter__quick-inserter-expand.components-button:hover{color:#fff}.block-editor-inserter__quick-inserter-expand.components-button:active{color:#ccc}.block-editor-inserter__quick-inserter-expand.components-button.components-button:focus:not(:disabled){box-shadow:none;background:var(--wp-admin-theme-color);border-color:var(--wp-admin-theme-color)}.block-editor-block-patterns-explorer__sidebar{position:absolute;top:60px;left:0;bottom:0;width:280px;padding:24px 32px 32px;overflow-x:visible;overflow-y:scroll}.block-editor-block-patterns-explorer__sidebar__categories-list__item{display:block;width:100%;height:48px;text-align:left}.block-editor-block-patterns-explorer__search{margin-bottom:32px}.block-editor-block-patterns-explorer__search-results-count{padding-bottom:32px}.block-editor-block-patterns-explorer__list{margin-left:248px}.block-editor-block-patterns-explorer .block-editor-block-patterns-list{display:grid;grid-gap:32px;grid-template-columns:repeat(1,1fr)}@media (min-width:1080px){.block-editor-block-patterns-explorer .block-editor-block-patterns-list{grid-template-columns:repeat(2,1fr)}}@media (min-width:1440px){.block-editor-block-patterns-explorer .block-editor-block-patterns-list{grid-template-columns:repeat(3,1fr)}}.block-editor-block-patterns-explorer .block-editor-block-patterns-list .block-editor-block-patterns-list__list-item{min-height:240px}.block-editor-block-patterns-explorer .block-editor-block-patterns-list .block-editor-block-preview__container{height:inherit;min-height:100px;max-height:800px}.block-editor-post-preview__dropdown{padding:0}.block-editor-post-preview__button-resize.block-editor-post-preview__button-resize{padding-left:40px}.block-editor-post-preview__button-resize.block-editor-post-preview__button-resize.has-icon{padding-left:8px}.block-editor-post-preview__dropdown-content .components-popover__content{overflow-y:visible}.block-editor-post-preview__dropdown-content.edit-post-post-preview-dropdown .components-menu-group:first-child{padding-bottom:8px}.block-editor-post-preview__dropdown-content.edit-post-post-preview-dropdown .components-menu-group:last-child{margin-bottom:0}.block-editor-post-preview__dropdown-content .components-menu-group+.components-menu-group{padding:8px}@media (min-width:600px){.edit-post-header__settings .editor-post-preview,.edit-site-header__actions .editor-post-preview{display:none}}@media (min-width:600px){.edit-post-header.has-reduced-ui .edit-post-header__settings .block-editor-post-preview__button-toggle,.edit-post-header.has-reduced-ui .edit-post-header__settings .editor-post-save-draft,.edit-post-header.has-reduced-ui .edit-post-header__settings .editor-post-saved-state{transition:opacity .1s linear}}@media (min-width:600px) and (prefers-reduced-motion:reduce){.edit-post-header.has-reduced-ui .edit-post-header__settings .block-editor-post-preview__button-toggle,.edit-post-header.has-reduced-ui .edit-post-header__settings .editor-post-save-draft,.edit-post-header.has-reduced-ui .edit-post-header__settings .editor-post-saved-state{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.edit-post-header.has-reduced-ui:not(:hover) .edit-post-header__settings .block-editor-post-preview__button-toggle,.edit-post-header.has-reduced-ui:not(:hover) .edit-post-header__settings .editor-post-save-draft,.edit-post-header.has-reduced-ui:not(:hover) .edit-post-header__settings .editor-post-saved-state{opacity:0}.edit-post-header.has-reduced-ui:not(:hover) .edit-post-header__settings .block-editor-post-preview__button-toggle.is-opened{opacity:1}}body.admin-color-light{--wp-admin-theme-color:#0085ba;--wp-admin-theme-color--rgb:0,133,186;--wp-admin-theme-color-darker-10:#0073a1;--wp-admin-theme-color-darker-10--rgb:0,115,161;--wp-admin-theme-color-darker-20:#006187;--wp-admin-theme-color-darker-20--rgb:0,97,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-light{--wp-admin-border-width-focus:1.5px}}body.admin-color-modern{--wp-admin-theme-color:#3858e9;--wp-admin-theme-color--rgb:56,88,233;--wp-admin-theme-color-darker-10:#2145e6;--wp-admin-theme-color-darker-10--rgb:33,69,230;--wp-admin-theme-color-darker-20:#183ad6;--wp-admin-theme-color-darker-20--rgb:24,58,214;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-modern{--wp-admin-border-width-focus:1.5px}}body.admin-color-blue{--wp-admin-theme-color:#096484;--wp-admin-theme-color--rgb:9,100,132;--wp-admin-theme-color-darker-10:#07526c;--wp-admin-theme-color-darker-10--rgb:7,82,108;--wp-admin-theme-color-darker-20:#064054;--wp-admin-theme-color-darker-20--rgb:6,64,84;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-blue{--wp-admin-border-width-focus:1.5px}}body.admin-color-coffee{--wp-admin-theme-color:#46403c;--wp-admin-theme-color--rgb:70,64,60;--wp-admin-theme-color-darker-10:#383330;--wp-admin-theme-color-darker-10--rgb:56,51,48;--wp-admin-theme-color-darker-20:#2b2724;--wp-admin-theme-color-darker-20--rgb:43,39,36;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-coffee{--wp-admin-border-width-focus:1.5px}}body.admin-color-ectoplasm{--wp-admin-theme-color:#523f6d;--wp-admin-theme-color--rgb:82,63,109;--wp-admin-theme-color-darker-10:#46365d;--wp-admin-theme-color-darker-10--rgb:70,54,93;--wp-admin-theme-color-darker-20:#3a2c4d;--wp-admin-theme-color-darker-20--rgb:58,44,77;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-ectoplasm{--wp-admin-border-width-focus:1.5px}}body.admin-color-midnight{--wp-admin-theme-color:#e14d43;--wp-admin-theme-color--rgb:225,77,67;--wp-admin-theme-color-darker-10:#dd382d;--wp-admin-theme-color-darker-10--rgb:221,56,45;--wp-admin-theme-color-darker-20:#d02c21;--wp-admin-theme-color-darker-20--rgb:208,44,33;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-midnight{--wp-admin-border-width-focus:1.5px}}body.admin-color-ocean{--wp-admin-theme-color:#627c83;--wp-admin-theme-color--rgb:98,124,131;--wp-admin-theme-color-darker-10:#576e74;--wp-admin-theme-color-darker-10--rgb:87,110,116;--wp-admin-theme-color-darker-20:#4c6066;--wp-admin-theme-color-darker-20--rgb:76,96,102;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-ocean{--wp-admin-border-width-focus:1.5px}}body.admin-color-sunrise{--wp-admin-theme-color:#dd823b;--wp-admin-theme-color--rgb:221,130,59;--wp-admin-theme-color-darker-10:#d97426;--wp-admin-theme-color-darker-10--rgb:217,116,38;--wp-admin-theme-color-darker-20:#c36922;--wp-admin-theme-color-darker-20--rgb:195,105,34;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-sunrise{--wp-admin-border-width-focus:1.5px}}PKj l\Nuu'css/dist/block-editor/style-rtl.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.block-editor-autocompleters__block{white-space:nowrap}.block-editor-autocompleters__block .block-editor-block-icon{margin-left:8px}.block-editor-block-alignment-control__menu-group .components-menu-item__info{margin-top:0}.block-editor-block-alignment-matrix-control__popover .components-popover__content{min-width:0;width:auto}.block-editor-block-alignment-matrix-control__popover .components-popover__content>div{padding:8px}.block-editor-block-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px}.block-editor-block-icon.has-colors svg{fill:currentColor}@media (forced-colors:active){.block-editor-block-icon.has-colors svg{fill:CanvasText}}.block-editor-block-icon svg{min-width:20px;min-height:20px;max-width:24px;max-height:24px}.block-editor-block-inspector p{margin-top:0}.block-editor-block-inspector h2,.block-editor-block-inspector h3{font-size:13px;color:#1e1e1e;margin-bottom:1.5em}.block-editor-block-inspector .components-base-control{margin-bottom:24px}.block-editor-block-inspector .components-base-control:last-child{margin-bottom:8px}.block-editor-block-inspector .components-panel__body{border:none;border-top:1px solid #e0e0e0}.block-editor-block-inspector .block-editor-block-card{padding:16px}.block-editor-block-inspector__no-blocks{display:block;font-size:13px;background:#fff;padding:32px 16px;text-align:center}.block-editor-block-styles .block-editor-block-list__block{margin:0}.block-editor-block-list__layout{position:relative}.block-editor-block-list__layout.is-navigate-mode{cursor:default}.block-editor-block-list__layout .block-editor-block-list__block.is-highlighted:after,.block-editor-block-list__layout .block-editor-block-list__block.is-multi-selected:after,.block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-hovered:after,.block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-selected:after{position:absolute;z-index:1;pointer-events:none;content:"";top:1px;bottom:1px;right:1px;left:1px;box-shadow:0 0 0 1px var(--wp-admin-theme-color);border-radius:1px;outline:2px solid transparent}.is-dark-theme .block-editor-block-list__layout .block-editor-block-list__block.is-highlighted:after,.is-dark-theme .block-editor-block-list__layout .block-editor-block-list__block.is-multi-selected:after,.is-dark-theme .block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-hovered:after,.is-dark-theme .block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-selected:after{box-shadow:0 0 0 1px #fff}.block-editor-block-list__layout .block-editor-block-list__block.is-highlighted .components-placeholder ::selection,.block-editor-block-list__layout .block-editor-block-list__block.is-multi-selected .components-placeholder ::selection,.block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-hovered .components-placeholder ::selection,.block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-selected .components-placeholder ::selection{background:transparent}.block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-hovered:not(.is-selected):after{box-shadow:0 0 0 1px var(--wp-admin-theme-color)}.block-editor-block-list__layout .block-editor-block-list__block.is-highlighted:after{box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:1px solid transparent}.block-editor-block-list__layout .block-editor-block-list__block.is-multi-selected:after,.block-editor-block-list__layout .is-block-moving-mode.block-editor-block-list__block.has-child-selected,.block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-selected:after{box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);outline:2px solid transparent}.block-editor-block-list__layout .is-block-moving-mode.block-editor-block-list__block.is-selected:before{content:"";position:absolute;z-index:0;pointer-events:none;transition:border-color .1s linear,border-style .1s linear,box-shadow .1s linear;left:0;right:0;top:-14px;border-radius:2px;border-top:4px solid #ccc}.block-editor-block-list__layout .is-block-moving-mode.block-editor-block-list__block.is-selected:after{content:none}.block-editor-block-list__layout .is-block-moving-mode.can-insert-moving-block.block-editor-block-list__block.is-selected:before{border-color:var(--wp-admin-theme-color)}.is-block-moving-mode.block-editor-block-list__block-selection-button{opacity:0;font-size:1px;height:1px;padding:0}.block-editor-block-list__layout .block-editor-block-list__block{position:relative;overflow-wrap:break-word}.block-editor-block-list__layout .block-editor-block-list__block .reusable-block-edit-panel *{z-index:1}.block-editor-block-list__layout .block-editor-block-list__block .components-placeholder .components-with-notices-ui{margin:-10px 0 12px}.block-editor-block-list__layout .block-editor-block-list__block .components-with-notices-ui{margin:0 0 12px;width:100%}.block-editor-block-list__layout .block-editor-block-list__block .components-with-notices-ui .components-notice{margin-right:0;margin-left:0}.block-editor-block-list__layout .block-editor-block-list__block .components-with-notices-ui .components-notice .components-notice__content{font-size:13px}.block-editor-block-list__layout .block-editor-block-list__block:not([contenteditable]):focus{outline:none}.block-editor-block-list__layout .block-editor-block-list__block:not([contenteditable]):focus:after{position:absolute;z-index:1;pointer-events:none;content:"";top:1px;bottom:1px;right:1px;left:1px;box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);border-radius:1px;outline:2px solid transparent}.is-dark-theme .block-editor-block-list__layout .block-editor-block-list__block:not([contenteditable]):focus:after{box-shadow:0 0 0 var(--wp-admin-border-width-focus) #fff}.block-editor-block-list__layout .block-editor-block-list__block:after{content:"";pointer-events:none;position:absolute;top:0;left:0;bottom:0;right:0;border-radius:2px;box-shadow:0 0 0 var(--wp-admin-border-width-focus) transparent}.block-editor-block-list__layout .block-editor-block-list__block.has-warning{min-height:48px}.block-editor-block-list__layout .block-editor-block-list__block.has-warning>*{pointer-events:none;-webkit-user-select:none;user-select:none}.block-editor-block-list__layout .block-editor-block-list__block.has-warning .block-editor-warning{pointer-events:all}.block-editor-block-list__layout .block-editor-block-list__block.has-warning:after{content:"";position:absolute;top:0;left:0;bottom:0;right:0;border-radius:2px;background-color:hsla(0,0%,100%,.4)}.block-editor-block-list__layout .block-editor-block-list__block.has-warning.is-multi-selected:after{background-color:transparent}.block-editor-block-list__layout .block-editor-block-list__block.is-reusable>.block-editor-inner-blocks>.block-editor-block-list__layout.has-overlay:after{display:none}.block-editor-block-list__layout .block-editor-block-list__block.is-reusable>.block-editor-inner-blocks>.block-editor-block-list__layout.has-overlay .block-editor-block-list__layout.has-overlay:after{display:block}.block-editor-block-list__layout .block-editor-block-list__block.is-reusable.has-child-selected:after{box-shadow:0 0 0 1px var(--wp-admin-theme-color)}.block-editor-block-list__layout .block-editor-block-list__block[data-clear=true]{float:none}.is-outline-mode .block-editor-block-list__block:not(.remove-outline).is-hovered{cursor:default}.is-outline-mode .block-editor-block-list__block:not(.remove-outline).is-hovered:after{top:1px;right:1px;left:1px;bottom:1px;box-shadow:0 0 0 1px var(--wp-admin-theme-color);border-radius:1px}.is-outline-mode .block-editor-block-list__block:not(.remove-outline).is-selected{cursor:unset}.is-outline-mode .block-editor-block-list__block:not(.remove-outline).is-selected:after{box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);top:1px;right:1px;left:1px;bottom:1px;border-radius:1px}.is-outline-mode .block-editor-block-list__block:not(.remove-outline).is-selected:focus:after{box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.is-focus-mode .block-editor-block-list__block:not(.has-child-selected){opacity:.5;transition:opacity .1s linear}@media (prefers-reduced-motion:reduce){.is-focus-mode .block-editor-block-list__block:not(.has-child-selected){transition-duration:0s;transition-delay:0s}}.is-focus-mode .block-editor-block-list__block:not(.has-child-selected) .block-editor-block-list__block,.is-focus-mode .block-editor-block-list__block:not(.has-child-selected).is-multi-selected,.is-focus-mode .block-editor-block-list__block:not(.has-child-selected).is-selected{opacity:1}.is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity{opacity:.5;transition:opacity .1s linear}@media (prefers-reduced-motion:reduce){.is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity{transition-duration:0s;transition-delay:0s}}.is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity.has-child-selected,.is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity.is-active-entity,.is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity.is-active-entity .block-editor-block-list__block,.is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity .is-active-entity .block-editor-block-list__block,.is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity:not(.has-child-selected) .block-editor-block-list__block{opacity:1}.wp-block[data-align=left]>*,.wp-block[data-align=right]>*{z-index:21}.wp-site-blocks>[data-align=left]{float:right;margin-left:2em}.wp-site-blocks>[data-align=right]{float:left;margin-right:2em}.wp-site-blocks>[data-align=center]{justify-content:center;margin-right:auto;margin-left:auto}.block-editor-block-list .block-editor-inserter{margin:8px;cursor:move;cursor:grab}@keyframes block-editor-inserter__toggle__fade-in-animation{0%{opacity:0}to{opacity:1}}.wp-block .block-list-appender .block-editor-inserter__toggle{animation:block-editor-inserter__toggle__fade-in-animation .1s ease;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.wp-block .block-list-appender .block-editor-inserter__toggle{animation-duration:1ms;animation-delay:0s}}.block-editor-block-list__block:not(.is-selected):not(.has-child-selected) .block-editor-default-block-appender{display:none}.block-editor-block-list__block:not(.is-selected):not(.has-child-selected) .block-editor-default-block-appender .block-editor-inserter__toggle{opacity:0;transform:scale(0)}.block-editor-block-list__block .block-editor-block-list__block-html-textarea{display:block;margin:0;padding:12px;width:100%;border:none;outline:none;border-radius:2px;box-shadow:inset 0 0 0 1px #1e1e1e;resize:none;overflow:hidden;font-family:Menlo,Consolas,monaco,monospace;font-size:15px;line-height:1.5;transition:padding .2s linear}@media (prefers-reduced-motion:reduce){.block-editor-block-list__block .block-editor-block-list__block-html-textarea{transition-duration:0s;transition-delay:0s}}.block-editor-block-list__block .block-editor-block-list__block-html-textarea:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.block-editor-block-list__block .block-editor-warning{z-index:5;position:relative}.block-editor-block-list__block .block-editor-warning.block-editor-block-list__block-crash-warning{margin-bottom:auto}.block-editor-block-list__insertion-point{position:absolute}.block-editor-block-list__insertion-point-indicator{position:absolute;background:var(--wp-admin-theme-color)}.block-editor-block-list__insertion-point.is-vertical>.block-editor-block-list__insertion-point-indicator{top:50%;height:1px}.block-editor-block-list__insertion-point.is-horizontal>.block-editor-block-list__insertion-point-indicator{top:0;left:0;right:50%;width:1px}.block-editor-block-list__insertion-point-inserter{display:none;position:absolute;justify-content:center;top:calc(50% - 12px);right:calc(50% - 12px)}@media (min-width:480px){.block-editor-block-list__insertion-point-inserter{display:flex}}.block-editor-block-list__block-popover-inserter{position:absolute;top:-9999em;margin-bottom:14px}.block-editor-block-list__block-popover-inserter.is-visible{position:static}.block-editor-block-list__block-popover-inserter .block-editor-inserter__toggle.components-button.has-icon,.block-editor-block-list__empty-block-inserter .block-editor-inserter__toggle.components-button.has-icon,.block-editor-block-list__insertion-point-inserter .block-editor-inserter__toggle.components-button.has-icon,.block-editor-default-block-appender .block-editor-inserter__toggle.components-button.has-icon{background:#1e1e1e;border-radius:2px;color:#fff;padding:0;min-width:24px;height:24px}.block-editor-block-list__block-popover-inserter .block-editor-inserter__toggle.components-button.has-icon:hover,.block-editor-block-list__empty-block-inserter .block-editor-inserter__toggle.components-button.has-icon:hover,.block-editor-block-list__insertion-point-inserter .block-editor-inserter__toggle.components-button.has-icon:hover,.block-editor-default-block-appender .block-editor-inserter__toggle.components-button.has-icon:hover{color:#fff;background:var(--wp-admin-theme-color)}.block-editor-block-list__insertion-point-inserter .block-editor-inserter__toggle.components-button.has-icon{background:var(--wp-admin-theme-color)}.block-editor-block-list__insertion-point-inserter .block-editor-inserter__toggle.components-button.has-icon:hover{background:#1e1e1e}.block-editor-block-contextual-toolbar{display:inline-flex;border:1px solid #1e1e1e;border-radius:2px;background-color:#fff}.block-editor-block-contextual-toolbar .block-editor-block-toolbar .components-toolbar,.block-editor-block-contextual-toolbar .block-editor-block-toolbar .components-toolbar-group{border-left-color:#1e1e1e}.block-editor-block-contextual-toolbar.is-fixed{position:sticky;top:0;width:100%;z-index:31;min-height:48px;display:block;border:none;border-bottom:1px solid #e0e0e0;border-radius:0}.block-editor-block-contextual-toolbar.is-fixed .block-editor-block-toolbar .components-toolbar,.block-editor-block-contextual-toolbar.is-fixed .block-editor-block-toolbar .components-toolbar-group{border-left-color:#e0e0e0}.block-editor-block-contextual-toolbar .block-editor-block-mover-button{overflow:hidden}.block-editor-block-contextual-toolbar .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.block-editor-block-mover-button{min-width:24px;width:24px}.block-editor-block-contextual-toolbar .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.block-editor-block-mover-button svg{min-width:24px}.block-editor-block-contextual-toolbar .block-editor-block-mover:not(.is-horizontal) .block-editor-block-mover-button:focus:before{right:0!important;min-width:0;width:100%}@media (min-width:600px){.block-editor-block-contextual-toolbar .block-editor-block-mover:not(.is-horizontal) .block-editor-block-mover-button.is-up-button svg{top:5px}.block-editor-block-contextual-toolbar .block-editor-block-mover:not(.is-horizontal) .block-editor-block-mover-button.is-down-button svg{bottom:5px}}.block-editor-block-list__block-selection-button{display:inline-flex;padding:0 12px;z-index:22;border-radius:2px;background-color:#1e1e1e;font-size:13px;height:48px}.block-editor-block-list__block-selection-button .block-editor-block-list__block-selection-button__content{margin:auto;display:inline-flex;align-items:center}.block-editor-block-list__block-selection-button .block-editor-block-list__block-selection-button__content>.components-flex__item{margin-left:6px}.block-editor-block-list__block-selection-button .components-button.has-icon.block-selection-button_drag-handle{cursor:grab;padding:0;height:24px;min-width:24px;margin-right:-2px}.block-editor-block-list__block-selection-button .components-button.has-icon.block-selection-button_drag-handle svg{min-width:18px;min-height:18px}.block-editor-block-list__block-selection-button .block-editor-block-icon{font-size:13px;color:#fff;height:48px}.block-editor-block-list__block-selection-button .components-button{min-width:36px;color:#fff;height:48px;display:flex}.block-editor-block-list__block-selection-button .components-button:focus{box-shadow:none;border:none}.block-editor-block-list__block-selection-button .components-button:active{color:#fff}.block-editor-block-list__block-selection-button .block-selection-button_select-button.components-button{padding:0}.block-editor-block-list__insertion-point-popover.is-without-arrow{z-index:28;position:absolute;pointer-events:none}.block-editor-block-list__insertion-point-popover.is-without-arrow *{pointer-events:none}.block-editor-block-list__insertion-point-popover.is-without-arrow .is-with-inserter,.block-editor-block-list__insertion-point-popover.is-without-arrow .is-with-inserter *{pointer-events:all}.block-editor-block-list__insertion-point-popover.is-without-arrow .components-popover__content.components-popover__content{background:none;border:none;box-shadow:none;overflow-y:visible;margin-right:0}@keyframes hide-during-dragging{to{position:fixed;transform:translate(-9999px,9999px)}}.components-popover.block-editor-block-list__block-popover{z-index:31;position:absolute}.components-popover.block-editor-block-list__block-popover .components-popover__content{margin:0!important;min-width:auto;width:max-content;background:none;border:none;box-shadow:none;overflow-y:visible;pointer-events:none}.components-popover.block-editor-block-list__block-popover .components-popover__content .block-editor-block-contextual-toolbar,.components-popover.block-editor-block-list__block-popover .components-popover__content .block-editor-block-list__block-selection-button,.components-popover.block-editor-block-list__block-popover .components-popover__content .block-editor-block-list__empty-block-inserter{pointer-events:all}.components-popover.block-editor-block-list__block-popover .components-popover__content .block-editor-block-contextual-toolbar,.components-popover.block-editor-block-list__block-popover .components-popover__content .block-editor-block-list__block-selection-button{margin-top:12px;margin-bottom:12px}.components-popover.block-editor-block-list__block-popover.is-insertion-point-visible{visibility:hidden}.is-dragging-components-draggable .components-popover.block-editor-block-list__block-popover{opacity:0;animation:hide-during-dragging 1ms linear forwards}.is-dragging-components-draggable .components-tooltip{display:none}.is-vertical .block-list-appender{width:24px;margin-left:auto;margin-top:12px;margin-right:12px}.block-list-appender>.block-editor-inserter{display:block}.block-editor-block-list__block:not(.is-selected):not(.has-child-selected):not(.block-editor-block-list__layout) .block-editor-block-list__layout>.block-list-appender .block-list-appender__toggle{opacity:0;transform:scale(0)}.block-editor-block-breadcrumb{list-style:none;padding:0;margin:0}.block-editor-block-breadcrumb li{display:inline-flex;margin:0}.block-editor-block-breadcrumb li .block-editor-block-breadcrumb__separator{fill:currentColor;margin-right:-4px;margin-left:-4px;transform:scaleX(-1)}.block-editor-block-breadcrumb li:last-child .block-editor-block-breadcrumb__separator{display:none}.block-editor-block-breadcrumb__button.components-button{height:24px;line-height:24px;padding:0;position:relative}.block-editor-block-breadcrumb__button.components-button:hover:not(:disabled){text-decoration:underline;box-shadow:none}.block-editor-block-breadcrumb__button.components-button:focus{box-shadow:none}.block-editor-block-breadcrumb__button.components-button:focus:before{content:"";display:block;position:absolute;border-radius:2px;top:1px;left:1px;bottom:1px;right:1px;box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.block-editor-block-breadcrumb__current{cursor:default}.block-editor-block-breadcrumb__button.components-button,.block-editor-block-breadcrumb__current{color:#1e1e1e;padding:0 8px;font-size:inherit}.block-editor-block-card{display:flex;align-items:flex-start}.block-editor-block-card__content{flex-grow:1;margin-bottom:4px}.block-editor-block-card__title{font-weight:500}.block-editor-block-card__title.block-editor-block-card__title{line-height:24px;margin:0 0 4px}.block-editor-block-card__description{font-size:13px}.block-editor-block-card .block-editor-block-icon{flex:0 0 24px;margin-right:0;margin-left:12px;width:24px;height:24px}.block-editor-block-compare{height:auto}.block-editor-block-compare__wrapper{display:flex;padding-bottom:16px}.block-editor-block-compare__wrapper>div{display:flex;justify-content:space-between;flex-direction:column;width:50%;padding:0 0 0 16px;min-width:200px;max-width:600px}.block-editor-block-compare__wrapper>div button{float:left}.block-editor-block-compare__wrapper .block-editor-block-compare__converted{border-right:1px solid #ddd;padding-right:15px;padding-left:0}.block-editor-block-compare__wrapper .block-editor-block-compare__html{font-family:Menlo,Consolas,monaco,monospace;font-size:12px;color:#1e1e1e;border-bottom:1px solid #ddd;padding-bottom:15px;line-height:1.7}.block-editor-block-compare__wrapper .block-editor-block-compare__html span{background-color:#e6ffed;padding-top:3px;padding-bottom:3px}.block-editor-block-compare__wrapper .block-editor-block-compare__html span.block-editor-block-compare__added{background-color:#acf2bd}.block-editor-block-compare__wrapper .block-editor-block-compare__html span.block-editor-block-compare__removed{background-color:#cc1818}.block-editor-block-compare__wrapper .block-editor-block-compare__preview{padding:16px 0 0}.block-editor-block-compare__wrapper .block-editor-block-compare__preview p{font-size:12px;margin-top:0}.block-editor-block-compare__wrapper .block-editor-block-compare__action{margin-top:16px}.block-editor-block-compare__wrapper .block-editor-block-compare__heading{font-size:1em;font-weight:400;margin:.67em 0}.block-editor-block-content-overlay.overlay-active:before{content:"";position:absolute;top:0;right:0;width:100%;height:100%;background:transparent;border:none;border-radius:2px;z-index:10;pointer-events:none}.block-editor-block-content-overlay.parent-highlighted.overlay-active:before,.block-editor-block-content-overlay:hover:not(.is-dragging-blocks).overlay-active:before{background:rgba(var(--wp-admin-theme-color--rgb),.1);box-shadow:0 0 0 1px var(--wp-admin-theme-color) inset}.block-editor-block-content-overlay.overlay-active:not(.is-dragging-blocks) *{pointer-events:none}.block-editor-block-content-overlay.is-dragging-blocks{box-shadow:0 0 0 1px var(--wp-admin-theme-color)}.block-editor-block-draggable-chip-wrapper{position:absolute;top:-24px;right:0}.block-editor-block-draggable-chip{background-color:#1e1e1e;border-radius:2px;box-shadow:0 6px 8px rgba(0,0,0,.3);color:#fff;cursor:grabbing;display:inline-flex;height:48px;padding:0 13px;-webkit-user-select:none;user-select:none}.block-editor-block-draggable-chip svg{fill:currentColor}.block-editor-block-draggable-chip .block-editor-block-draggable-chip__content{margin:auto;justify-content:flex-start}.block-editor-block-draggable-chip .block-editor-block-draggable-chip__content>.components-flex__item{margin-left:6px}.block-editor-block-draggable-chip .block-editor-block-draggable-chip__content>.components-flex__item:last-child{margin-left:0}.block-editor-block-draggable-chip .block-editor-block-draggable-chip__content .block-editor-block-icon svg{min-width:18px;min-height:18px}.block-editor-block-draggable-chip .components-flex__item{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px}.block-editor-block-list__layout .is-dragging{background-color:currentColor!important;opacity:.05!important;border-radius:2px!important;pointer-events:none!important}.block-editor-block-list__layout .is-dragging::selection{background:transparent!important}.block-editor-block-list__layout .is-dragging:after{content:none!important}.block-editor-block-mobile-toolbar{display:flex;flex-direction:row;border-left:1px solid #ddd}.block-editor-block-mobile-toolbar .block-editor-block-mover-button{width:36px;height:36px;border-radius:2px;padding:3px;margin:0;justify-content:center;align-items:center}.block-editor-block-mobile-toolbar .block-editor-block-mover-button .dashicon{margin:auto}.block-editor-block-mobile-toolbar .block-editor-block-mover{display:flex;margin-left:auto}.block-editor-block-mobile-toolbar .block-editor-block-mover .block-editor-block-mover-button{float:right}.block-editor-block-mover-button__description{display:none}.block-editor-block-mover-button.has-icon{padding:0}.block-editor-block-mover{display:inline-flex;flex-direction:row}.block-editor-block-mover .block-editor-block-mover__move-button-container,.block-editor-block-mover .components-toolbar{flex:1;flex-direction:row;border-left:none!important}@media (min-width:600px){.block-editor-block-mover .block-editor-block-mover__move-button-container,.block-editor-block-mover .components-toolbar{flex-direction:column}}.block-editor-block-mover.is-horizontal .block-editor-block-mover__move-button-container,.block-editor-block-mover.is-horizontal .components-toolbar{flex-direction:row}.block-editor-block-mover .block-editor-block-mover-button.block-editor-block-mover-button{padding-left:0;padding-right:0;min-width:36px}@media (min-width:600px){.block-editor-block-mover .block-editor-block-mover-button{height:24px;width:42px;padding-left:11px!important;padding-right:6px!important}.block-editor-block-mover .block-editor-block-mover-button.block-editor-block-mover-button{min-width:42px}}@media (min-width:600px){.block-editor-block-mover .block-editor-block-mover-button:before{right:8px!important;left:8px!important}}.block-editor-block-mover .block-editor-block-mover__drag-handle{width:24px;cursor:grab;min-width:24px!important;padding:0!important}.block-editor-block-mover .block-editor-block-mover__drag-handle:focus:before{right:0!important;left:0!important}@media (min-width:600px){.block-editor-block-mover .components-toolbar-group .block-editor-block-mover-button,.block-editor-block-mover .components-toolbar .block-editor-block-mover-button{margin:0 0 0 auto}.block-editor-block-mover .components-toolbar-group .block-editor-block-mover-button.is-up-button:before,.block-editor-block-mover .components-toolbar .block-editor-block-mover-button.is-up-button:before{bottom:0;height:calc(100% - 1px)}.block-editor-block-mover .components-toolbar-group .block-editor-block-mover-button.is-down-button:before,.block-editor-block-mover .components-toolbar .block-editor-block-mover-button.is-down-button:before{top:0;height:calc(100% - 1px)}}.block-editor-block-mover.is-horizontal .block-editor-block-mover-button.has-icon{height:48px;width:24px;padding-right:0;padding-left:0}.block-editor-block-mover.is-horizontal .block-editor-block-mover-button.has-icon:before{top:1px;bottom:1px;min-width:0;width:auto;height:auto}.block-editor-block-mover.is-horizontal .block-editor-block-mover-button.is-up-button.has-icon svg{margin-right:0;margin-left:-8px;margin-bottom:0}.block-editor-block-mover.is-horizontal .block-editor-block-mover-button.is-up-button.has-icon:before{right:0!important;left:0!important}.block-editor-block-mover.is-horizontal .block-editor-block-mover-button.is-down-button.has-icon svg{margin-right:-8px;margin-left:0;margin-top:0}.block-editor-block-mover.is-horizontal .block-editor-block-mover-button.is-down-button.has-icon:before{right:0!important;left:0!important;width:calc(100% + 1px)}.block-editor-block-navigation__container{min-width:280px}.block-editor-block-navigation__label{margin:0 0 12px;color:#757575;text-transform:uppercase;font-size:11px;font-weight:500}.block-editor-block-parent-selector{background:#fff;border-radius:2px}.block-editor-block-parent-selector .block-editor-block-parent-selector__button{width:48px;height:48px;border:1px solid #1e1e1e;border-radius:2px}.block-editor-block-patterns-list__list-item{cursor:pointer;margin-bottom:24px}.block-editor-block-patterns-list__list-item.is-placeholder{min-height:100px}.block-editor-block-patterns-list__list-item[draggable=true] .block-editor-block-preview__container{cursor:grab}.block-editor-block-patterns-list__item{height:100%}.block-editor-block-patterns-list__item .block-editor-block-preview__container{display:flex;align-items:center;overflow:hidden;border-radius:2px;border:1px solid #f0f0f0}.block-editor-block-patterns-list__item .block-editor-block-patterns-list__item-title{padding-top:8px;font-size:12px;text-align:center}.block-editor-block-patterns-list__item:hover .block-editor-block-preview__container{border:1px solid var(--wp-admin-theme-color)}.block-editor-block-patterns-list__item:focus .block-editor-block-preview__container{box-shadow:inset 0 0 0 1px #fff,0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);outline:2px solid transparent}.block-editor-block-patterns-list__item:focus .block-editor-block-patterns-list__item-title,.block-editor-block-patterns-list__item:hover .block-editor-block-patterns-list__item-title{color:var(--wp-admin-theme-color)}.block-editor-block-preview__container{position:relative;width:100%;overflow:hidden}.block-editor-block-preview__container .block-editor-block-preview__content{top:0;right:0;transform-origin:top right;text-align:initial;margin:0;overflow:visible;min-height:auto}.block-editor-block-preview__container .block-editor-block-preview__content .block-editor-block-drop-zone,.block-editor-block-preview__container .block-editor-block-preview__content .block-editor-block-list__insertion-point,.block-editor-block-preview__container .block-editor-block-preview__content .block-list-appender,.block-editor-block-preview__container .block-editor-block-preview__content .reusable-block-indicator,.block-editor-block-preview__content-iframe .block-list-appender{display:none}.block-editor-block-preview__live-content *{pointer-events:none}.block-editor-block-preview__live-content .block-list-appender{display:none}.block-editor-block-preview__live-content .components-button:disabled{opacity:1}.block-editor-block-preview__live-content .block-editor-block-list__block[data-empty=true],.block-editor-block-preview__live-content .components-placeholder{display:none}.block-editor-block-settings-menu__popover .components-dropdown-menu__menu{padding:0}.block-editor-block-styles{display:flex;flex-wrap:wrap;justify-content:space-between}.block-editor-block-styles__item{width:calc(50% - 4px);margin:4px 0;flex-shrink:0;cursor:pointer;overflow:hidden;border-radius:2px;padding:6px;display:flex;flex-direction:column}.block-editor-block-styles__item:focus{box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);outline:2px solid transparent}.block-editor-block-styles__item:hover .block-editor-block-styles__item-preview{border-color:var(--wp-admin-theme-color)}.block-editor-block-styles__item.is-active .block-editor-block-styles__item-label{font-weight:700}.block-editor-block-styles__item.is-active .block-editor-block-styles__item-preview{margin:0;border:2px solid #1e1e1e}.block-editor-block-styles__item .block-editor-block-preview__container{cursor:inherit}.block-editor-block-styles__item-preview{outline:1px solid transparent;padding:0;margin:2px;border-radius:2px;display:flex;overflow:hidden;background:#fff;align-items:center;flex-grow:1;min-height:80px;max-height:160px}.block-editor-block-switcher__styles__menugroup{position:relative}.block-editor-block-styles__item-label{text-align:center;padding:4px 0}.block-editor-block-switcher,.block-editor-block-switcher__no-switcher-icon,.block-editor-block-switcher__toggle{position:relative}.components-button.block-editor-block-switcher__no-switcher-icon,.components-button.block-editor-block-switcher__toggle{margin:0;display:block;height:48px}.components-button.block-editor-block-switcher__no-switcher-icon .block-editor-block-icon,.components-button.block-editor-block-switcher__toggle .block-editor-block-icon{margin:auto}.block-editor-block-switcher__toggle-text{margin-right:8px}.show-icon-labels .block-editor-block-switcher__toggle-text{display:none}.show-icon-labels .block-editor-block-toolbar .block-editor-block-switcher .components-button.has-icon:after{font-size:14px}.block-editor-block-switcher__popover{margin-right:6px}.components-button.block-editor-block-switcher__no-switcher-icon{width:48px}.components-button.block-editor-block-switcher__no-switcher-icon .block-editor-blocks-icon{margin-left:auto;margin-right:auto}.components-button.block-editor-block-switcher__no-switcher-icon:disabled{opacity:1}.components-button.block-editor-block-switcher__no-switcher-icon:disabled,.components-button.block-editor-block-switcher__no-switcher-icon:disabled .block-editor-block-icon.has-colors{color:#1e1e1e}.block-editor-block-toolbar .components-toolbar-group .components-button.block-editor-block-switcher__no-switcher-icon.has-icon.has-icon .block-editor-block-icon,.block-editor-block-toolbar .components-toolbar-group .components-button.block-editor-block-switcher__toggle.has-icon.has-icon .block-editor-block-icon,.block-editor-block-toolbar .components-toolbar .components-button.block-editor-block-switcher__no-switcher-icon.has-icon.has-icon .block-editor-block-icon,.block-editor-block-toolbar .components-toolbar .components-button.block-editor-block-switcher__toggle.has-icon.has-icon .block-editor-block-icon{height:100%;position:relative;margin:0 auto;display:flex;align-items:center;min-width:100%}.block-editor-block-toolbar .components-toolbar-group .components-button.block-editor-block-switcher__no-switcher-icon.has-icon.has-icon:before,.block-editor-block-toolbar .components-toolbar-group .components-button.block-editor-block-switcher__toggle.has-icon.has-icon:before,.block-editor-block-toolbar .components-toolbar .components-button.block-editor-block-switcher__no-switcher-icon.has-icon.has-icon:before,.block-editor-block-toolbar .components-toolbar .components-button.block-editor-block-switcher__toggle.has-icon.has-icon:before{top:8px;left:8px;bottom:8px;right:8px}.components-popover.block-editor-block-switcher__popover .components-popover__content{min-width:300px}.components-popover.block-editor-block-switcher__popover .components-popover__content>div{min-width:auto;display:flex;background:#fff;padding:0}.components-popover.block-editor-block-switcher__popover .components-popover__content>div .components-menu-group{margin:0}.block-editor-block-switcher__popover .components-popover__content .block-editor-block-styles{margin:0 -3px}.block-editor-block-switcher__popover .components-popover__content .components-panel__body{border:0;position:relative;z-index:1}.block-editor-block-switcher__popover .components-popover__content .components-panel__body+.components-panel__body{border-top:1px solid #e0e0e0}.block-editor-block-switcher__popover__preview__parent .block-editor-block-switcher__popover__preview__container{position:absolute;top:-12px;right:calc(100% + 32px)}.block-editor-block-switcher__preview__popover{display:none}.block-editor-block-switcher__preview__popover.components-popover{margin-right:4px;margin-top:11px}@media (min-width:782px){.block-editor-block-switcher__preview__popover{display:block}}.block-editor-block-switcher__preview__popover .components-popover__content{box-shadow:none;border:1px solid #1e1e1e;background:#fff;border-radius:2px}.block-editor-block-switcher__preview__popover .block-editor-block-switcher__preview{width:300px;height:auto;max-height:500px;padding:16px}.block-editor-block-switcher__preview-title{margin-bottom:12px;color:#757575;text-transform:uppercase;font-size:11px;font-weight:500}.block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__no-switcher-icon{width:48px}.block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__no-switcher-icon,.block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__toggle{height:48px}.block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__no-switcher-icon .block-editor-block-icon,.block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__no-switcher-icon .block-editor-block-switcher__transform,.block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__toggle .block-editor-block-icon,.block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__toggle .block-editor-block-switcher__transform{width:48px;height:48px}.block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__no-switcher-icon .block-editor-block-switcher__transform,.block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__toggle .block-editor-block-switcher__transform{padding:12px}.block-editor-block-switcher__preview-patterns-container{padding-bottom:16px}.block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item{margin-top:16px}.block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-preview__container{cursor:pointer}.block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-switcher__preview-patterns-container-list__item{height:100%;border-radius:2px;transition:all .05s ease-in-out;position:relative;border:1px solid transparent}.block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-switcher__preview-patterns-container-list__item:focus,.block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-switcher__preview-patterns-container-list__item:hover{box-shadow:inset 0 0 0 1px #fff,0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);outline:2px solid transparent}.block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-switcher__preview-patterns-container-list__item:hover{box-shadow:inset 0 0 0 1px #fff,0 0 0 var(--wp-admin-border-width-focus) #1e1e1e}.block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-switcher__preview-patterns-container-list__item .block-editor-block-switcher__preview-patterns-container-list__item-title{padding:4px;font-size:12px;text-align:center;cursor:pointer}.block-editor-block-types-list>[role=presentation]{overflow:hidden;display:flex;flex-wrap:wrap}.block-editor-block-variation-picker .components-placeholder__instructions{margin-bottom:0}.block-editor-block-variation-picker .components-placeholder__fieldset{flex-direction:column}.block-editor-block-variation-picker.has-many-variations .components-placeholder__fieldset{max-width:90%}.block-editor-block-variation-picker__variations.block-editor-block-variation-picker__variations{display:flex;justify-content:flex-start;flex-direction:row;flex-wrap:wrap;width:100%;margin:16px 0;padding:0;list-style:none}.block-editor-block-variation-picker__variations.block-editor-block-variation-picker__variations>li{list-style:none;margin:8px 0 0 20px;flex-shrink:1;width:75px;text-align:center}.block-editor-block-variation-picker__variations.block-editor-block-variation-picker__variations>li button{display:inline-flex;margin-left:0}.block-editor-block-variation-picker__variations.block-editor-block-variation-picker__variations .block-editor-block-variation-picker__variation{padding:8px}.block-editor-block-variation-picker__variations.block-editor-block-variation-picker__variations .block-editor-block-variation-picker__variation-label{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:12px;display:block;line-height:1.4}.block-editor-block-variation-picker__variation{width:100%}.block-editor-block-variation-picker__variation.components-button.has-icon{justify-content:center;width:auto}.block-editor-block-variation-picker__variation.components-button.has-icon.is-secondary{background-color:#fff}.block-editor-block-variation-picker__variation.components-button{height:auto;padding:0}.block-editor-block-variation-picker__variation:before{content:"";padding-bottom:100%}.block-editor-block-variation-picker__variation:first-child{margin-right:0}.block-editor-block-variation-picker__variation:last-child{margin-left:0}.block-editor-block-pattern-setup{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;width:100%;border-radius:2px;box-shadow:inset 0 0 0 1px #1e1e1e;outline:1px solid transparent}.block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__toolbar{justify-content:center}.block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__container{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;padding:16px;max-height:550px;overflow:auto;margin:0 1px 1px;width:calc(100% - 2px);background:#fff}.block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__container .block-editor-block-preview__container,.block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__container div[role=button]{cursor:pointer}.block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__container .block-editor-block-pattern-setup-list__item-title{padding:4px;font-size:12px;text-align:center}.block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__container .block-editor-block-preview__container{border-radius:2px;border:1px solid #ddd}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__toolbar{box-sizing:border-box;position:relative;padding:16px;width:100%;text-align:right;margin:0;color:#1e1e1e;border-radius:2px 2px 0 0;background-color:#fff;box-shadow:inset 0 0 0 1px #1e1e1e;outline:1px solid transparent;display:flex;flex-direction:row;align-items:center;justify-content:space-between}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__toolbar .block-editor-block-pattern-setup__display-controls{display:flex}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__toolbar .block-editor-block-pattern-setup__actions,.block-editor-block-pattern-setup .block-editor-block-pattern-setup__toolbar .block-editor-block-pattern-setup__navigation{width:calc(50% - 36px);display:flex}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__toolbar .block-editor-block-pattern-setup__actions{justify-content:flex-end}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__container{display:flex;flex-direction:column;width:100%;box-sizing:border-box}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container{overflow:hidden;position:relative;padding:0;margin:0;list-style:none;transform-style:preserve-3d}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container *{box-sizing:border-box}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container .pattern-slide{opacity:0;position:absolute;top:0;width:100%;margin:auto;padding:16px;transition:transform .5s,opacity .5s,z-index .5s;z-index:100}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container .pattern-slide.active-slide{opacity:1;position:relative;z-index:102}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container .pattern-slide.previous-slide{transform:translateX(100%);z-index:101}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container .pattern-slide.next-slide{transform:translateX(-100%);z-index:101}.block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .block-list-appender{display:none}.block-editor-block-variation-transforms{padding:0 56px 16px 16px;width:100%}.block-editor-block-variation-transforms .components-dropdown-menu__toggle{border:1px solid #757575;border-radius:2px;min-height:30px;width:100%;position:relative;text-align:right;justify-content:left;padding:6px 12px}.block-editor-block-variation-transforms .components-dropdown-menu__toggle.components-dropdown-menu__toggle{padding-left:24px}.block-editor-block-variation-transforms .components-dropdown-menu__toggle:focus:not(:disabled){border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 calc(var(--wp-admin-border-width-focus) - 1px) var(--wp-admin-theme-color)}.block-editor-block-variation-transforms .components-dropdown-menu__toggle svg{height:100%;padding:0;position:absolute;left:0;top:0}.block-editor-block-variation-transforms__popover .components-popover__content{min-width:230px}.components-border-radius-control{margin-bottom:12px}.components-border-radius-control legend{padding-bottom:4px}.components-border-radius-control .components-border-radius-control__wrapper{display:flex;justify-content:space-between;align-items:flex-start}.components-border-radius-control .components-border-radius-control__wrapper .components-range-control,.components-border-radius-control .components-border-radius-control__wrapper>.components-unit-control-wrapper{width:calc(50% - 26px);margin-bottom:0}.components-border-radius-control .components-border-radius-control__wrapper .components-range-control .components-base-control__field{margin-bottom:0;height:30px}.components-border-radius-control .components-border-radius-control__wrapper .components-range-control .components-range-control__wrapper{margin-left:10px}.components-border-radius-control .components-border-radius-control__wrapper>span{flex:0 0 auto}.components-border-radius-control .components-border-radius-control__input-controls-wrapper{display:flex;width:70%;flex-wrap:wrap}.components-border-radius-control .components-border-radius-control__input-controls-wrapper .components-unit-control-wrapper{width:calc(50% - 8px);margin-bottom:8px;margin-left:8px}.components-border-radius-control .component-border-radius-control__linked-button.has-icon{display:flex;justify-content:center}.components-border-radius-control .component-border-radius-control__linked-button.has-icon svg{margin-left:0}.components-border-style-control legend{line-height:1.4;margin-bottom:8px;padding:0}.components-border-style-control .components-border-style-control__buttons{display:inline-flex;margin-bottom:24px}.components-border-style-control .components-border-style-control__buttons .components-button.has-icon{min-width:30px;height:30px;padding:3px;margin-left:4px}.block-editor-button-block-appender{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px;width:100%;height:auto;color:#1e1e1e;box-shadow:inset 0 0 0 1px #1e1e1e}.is-dark-theme .block-editor-button-block-appender{color:hsla(0,0%,100%,.65);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.65)}.block-editor-button-block-appender:hover{color:var(--wp-admin-theme-color);box-shadow:inset 0 0 0 1px var(--wp-admin-theme-color)}.block-editor-button-block-appender:focus{box-shadow:inset 0 0 0 2px var(--wp-admin-theme-color)}.block-editor-button-block-appender:active{color:#000}.block-editor-color-gradient-control .block-editor-color-gradient-control__color-indicator{margin-bottom:12px}.block-editor-panel-color-gradient-settings .component-color-indicator{vertical-align:text-bottom}.block-editor-panel-color-gradient-settings__panel-title .component-color-indicator{display:inline-block}.block-editor-panel-color-gradient-settings.is-opened .block-editor-panel-color-gradient-settings__panel-title .component-color-indicator{display:none}@media screen and (min-width:782px){.block-editor-panel-color-gradient-settings .components-circular-option-picker__swatches{display:grid;grid-template-columns:repeat(6,28px);justify-content:space-between}}.block-editor-block-inspector .block-editor-panel-color-gradient-settings .components-base-control{margin-bottom:inherit}.block-editor-panel-color-gradient-settings .block-editor-panel-color-gradient-settings__dropdown{display:block}.block-editor-panel-color-gradient-settings__dropdown{width:100%}.block-editor-panel-color-gradient-settings__dropdown-content .components-popover__content>div{width:280px}@media (min-width:782px){.block-editor-panel-color-gradient-settings__dropdown-content .components-popover__content{margin-left:156px!important}.block-editor-panel-color-gradient-settings__dropdown-content.is-from-top .components-popover__content{margin-top:-60px!important}.block-editor-panel-color-gradient-settings__dropdown-content.is-from-bottom .components-popover__content{margin-bottom:-60px!important}}.block-editor-panel-color-gradient-settings__dropdown:last-child>div{border-bottom-width:0}.block-editor-panel-color-gradient-settings__item{padding-top:12px!important;padding-bottom:12px!important}.block-editor-panel-color-gradient-settings__item .block-editor-panel-color-gradient-settings__color-indicator{background:linear-gradient(45deg,transparent 48%,#ddd 0,#ddd 52%,transparent 0)}.block-editor-panel-color-gradient-settings__item.is-open{background:#f0f0f0;color:var(--wp-admin-theme-color)}.block-editor-contrast-checker>.components-notice{margin:0}.block-editor-default-block-appender{clear:both;margin-right:auto;margin-left:auto;position:relative}.block-editor-default-block-appender[data-root-client-id=""] .block-editor-default-block-appender__content:hover{outline:1px solid transparent}.block-editor-default-block-appender .block-editor-default-block-appender__content{opacity:.62}.block-editor-default-block-appender .components-drop-zone__content-icon{display:none}.block-editor-block-list__empty-block-inserter.block-editor-block-list__empty-block-inserter,.block-editor-default-block-appender .block-editor-inserter{position:absolute;top:0;left:0;line-height:0}.block-editor-block-list__empty-block-inserter.block-editor-block-list__empty-block-inserter:disabled,.block-editor-default-block-appender .block-editor-inserter:disabled{display:none}.block-editor-block-list__block .block-list-appender{position:absolute;list-style:none;padding:0;z-index:2;bottom:0;left:0}.block-editor-block-list__block .block-list-appender.block-list-appender{margin:0;line-height:0}.block-editor-block-list__block .block-list-appender .block-editor-default-block-appender{height:24px}.block-editor-block-list__block .block-list-appender .block-editor-inserter__toggle.components-button.has-icon,.block-editor-block-list__block .block-list-appender .block-list-appender__toggle{flex-direction:row;box-shadow:none;height:24px;width:24px;display:none;padding:0!important;background:#1e1e1e;color:#fff}.block-editor-block-list__block .block-list-appender .block-editor-inserter__toggle.components-button.has-icon:hover,.block-editor-block-list__block .block-list-appender .block-list-appender__toggle:hover{color:#fff;background:var(--wp-admin-theme-color)}.block-editor-block-list__block .block-list-appender .block-editor-default-block-appender__content{display:none}.block-editor-block-list__block .block-list-appender:only-child{position:relative;left:auto;align-self:center;list-style:none;line-height:inherit}.block-editor-block-list__block .block-list-appender:only-child .block-editor-default-block-appender__content{display:block}.block-editor-block-list__block.is-selected .block-editor-block-list__layout>.block-list-appender .block-editor-inserter__toggle.components-button.has-icon,.block-editor-block-list__block.is-selected .block-editor-block-list__layout>.block-list-appender .block-list-appender__toggle,.block-editor-block-list__block.is-selected>.block-list-appender .block-editor-inserter__toggle.components-button.has-icon,.block-editor-block-list__block.is-selected>.block-list-appender .block-list-appender__toggle{display:flex}.block-editor-duotone-control__popover>.components-popover__content>div{padding:16px;width:280px}.block-editor-duotone-control__popover .components-menu-group__label{padding:0}.block-editor-duotone-control__popover .components-custom-gradient-picker__gradient-bar{margin:16px 0 12px}.block-editor-duotone-control__popover .components-circular-option-picker__swatches{display:grid;grid-template-columns:repeat(6,28px);gap:12px;justify-content:space-between}.block-editor-duotone-control__description{margin:16px 0;font-size:12px}.block-editor-duotone-control__popover:not([data-y-axis=middle][data-x-axis=right])>.components-popover__content{margin-right:-14px}.components-font-appearance-control{margin-bottom:24px}.components-font-appearance-control ul li{color:#1e1e1e;text-transform:capitalize}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}@keyframes loadingpulse{0%{opacity:1}50%{opacity:0}to{opacity:1}}.block-editor-link-control{position:relative;min-width:360px}.components-popover__content .block-editor-link-control{min-width:auto;width:90vw;max-width:360px}.block-editor-link-control__search-input-container,.block-editor-link-control__search-input-wrapper{position:relative}.block-editor-link-control__search-input.has-no-label .block-editor-url-input__input{flex:1}.block-editor-link-control__field{margin:16px}.block-editor-link-control__field>.components-base-control__field{display:flex;align-items:center;margin:0}.block-editor-link-control__field .components-base-control__label{margin-left:16px;margin-bottom:0}.block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input,.block-editor-link-control__field input[type=text]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;font-size:16px;line-height:normal;width:calc(100% - 32px);display:block;padding:11px 16px 11px 36px;margin:0;position:relative;border:1px solid #ddd;border-radius:2px}@media (prefers-reduced-motion:reduce){.block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input,.block-editor-link-control__field input[type=text]{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input,.block-editor-link-control__field input[type=text]{font-size:13px;line-height:normal}}.block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input:focus,.block-editor-link-control__field input[type=text]:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input::-webkit-input-placeholder,.block-editor-link-control__field input[type=text]::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input::-moz-placeholder,.block-editor-link-control__field input[type=text]::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input:-ms-input-placeholder,.block-editor-link-control__field input[type=text]:-ms-input-placeholder{color:rgba(30,30,30,.62)}.block-editor-link-control__search-error{margin:-8px 16px 16px}.block-editor-link-control__search-actions{position:absolute;top:3px;left:19px}.components-button .block-editor-link-control__search-submit .has-icon{margin:-1px}.block-editor-link-control__search-results-wrapper{position:relative;margin-top:-15px}.block-editor-link-control__search-results-wrapper:after,.block-editor-link-control__search-results-wrapper:before{content:"";position:absolute;right:-1px;left:16px;display:block;pointer-events:none;z-index:100}.block-editor-link-control__search-results-wrapper:before{height:8px;top:0;bottom:auto}.block-editor-link-control__search-results-wrapper:after{height:16px;bottom:0;top:auto}.block-editor-link-control__search-results-label{padding:16px 32px 0;display:block;font-weight:600}.block-editor-link-control__search-results{margin:0;padding:8px 16px;max-height:200px;overflow-y:auto}.block-editor-link-control__search-results.is-loading{opacity:.2}.block-editor-link-control__search-item{position:relative;display:flex;align-items:flex-start;font-size:13px;cursor:pointer;background:#fff;width:100%;border:none;text-align:right;padding:12px 16px;border-radius:2px;height:auto}.block-editor-link-control__search-item:focus,.block-editor-link-control__search-item:hover{background-color:#f0f0f0}.block-editor-link-control__search-item:focus .block-editor-link-control__search-item-type,.block-editor-link-control__search-item:hover .block-editor-link-control__search-item-type{background:#fff}.block-editor-link-control__search-item:focus:not(:disabled){box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color) inset}.block-editor-link-control__search-item.is-selected{background:#f0f0f0}.block-editor-link-control__search-item.is-selected .block-editor-link-control__search-item-type{background:#fff}.block-editor-link-control__search-item.is-current{flex-direction:column;background:transparent;border:0;width:100%;cursor:default;padding:16px}.block-editor-link-control__search-item .block-editor-link-control__search-item-header{display:block;flex-direction:row;align-items:flex-start;margin-left:8px;white-space:pre-wrap;overflow-wrap:break-word}.block-editor-link-control__search-item .block-editor-link-control__search-item-header .block-editor-link-control__search-item-info{word-break:break-all}.block-editor-link-control__search-item.is-preview .block-editor-link-control__search-item-header{display:flex;flex:1}.block-editor-link-control__search-item.is-error .block-editor-link-control__search-item-header{align-items:center}.block-editor-link-control__search-item .block-editor-link-control__search-item-icon{position:relative;top:.2em;margin-left:8px;max-height:24px;flex-shrink:0;width:24px;display:flex;justify-content:center}.block-editor-link-control__search-item .block-editor-link-control__search-item-icon img{width:16px}.block-editor-link-control__search-item.is-error .block-editor-link-control__search-item-icon{top:0;width:32px;max-height:32px}.block-editor-link-control__search-item .block-editor-link-control__search-item-info,.block-editor-link-control__search-item .block-editor-link-control__search-item-title{overflow:hidden;text-overflow:ellipsis}.block-editor-link-control__search-item .block-editor-link-control__search-item-info .components-external-link__icon,.block-editor-link-control__search-item .block-editor-link-control__search-item-title .components-external-link__icon{position:absolute;left:0;margin-top:0}.block-editor-link-control__search-item .block-editor-link-control__search-item-title{display:block;margin-bottom:.2em;font-weight:500;position:relative}.block-editor-link-control__search-item .block-editor-link-control__search-item-title mark{font-weight:700;color:inherit;background-color:transparent}.block-editor-link-control__search-item .block-editor-link-control__search-item-title span{font-weight:400}.block-editor-link-control__search-item .block-editor-link-control__search-item-title svg{display:none}.block-editor-link-control__search-item .block-editor-link-control__search-item-info{display:block;color:#757575;font-size:.9em;line-height:1.3}.block-editor-link-control__search-item .block-editor-link-control__search-item-error-notice{font-style:italic;font-size:1.1em}.block-editor-link-control__search-item .block-editor-link-control__search-item-type{display:block;padding:3px 6px;margin-right:auto;font-size:.9em;background-color:#f0f0f0;border-radius:2px}.block-editor-link-control__search-item .block-editor-link-control__search-item-description{padding-top:12px;margin:0}.block-editor-link-control__search-item .block-editor-link-control__search-item-description.is-placeholder{margin-top:12px;padding-top:0;height:28px;display:flex;flex-direction:column;justify-content:space-around}.block-editor-link-control__search-item .block-editor-link-control__search-item-description.is-placeholder:after,.block-editor-link-control__search-item .block-editor-link-control__search-item-description.is-placeholder:before{display:block;content:"";height:.7em;width:100%;background-color:#f0f0f0;border-radius:3px}.block-editor-link-control__search-item .block-editor-link-control__search-item-description .components-text{font-size:.9em}.block-editor-link-control__search-item .block-editor-link-control__search-item-image{display:flex;width:100%;background-color:#f0f0f0;justify-content:center;height:140px;max-height:140px;overflow:hidden;border-radius:2px;margin-top:12px}.block-editor-link-control__search-item .block-editor-link-control__search-item-image.is-placeholder{background-color:#f0f0f0;border-radius:3px}.block-editor-link-control__search-item .block-editor-link-control__search-item-image img{display:block;max-width:100%;height:140px;max-height:140px}.block-editor-link-control__search-item-top{display:flex;flex-direction:row;width:100%}.block-editor-link-control__search-item-bottom{transition:opacity 1.5s;width:100%}.block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-description:after,.block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-description:before,.block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-image{animation:loadingpulse 1s linear infinite;animation-delay:.5s}.block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-icon img,.block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-icon svg{opacity:0}.block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-icon:before{content:"";display:block;background-color:#f0f0f0;position:absolute;top:0;right:0;left:0;bottom:0;border-radius:100%;animation:loadingpulse 1s linear infinite;animation-delay:.5s}.block-editor-link-control__loading{margin:16px;display:flex;align-items:center}.block-editor-link-control__loading .components-spinner{margin-top:0}.components-button+.block-editor-link-control__search-create{overflow:visible;padding:12px 16px}.components-button+.block-editor-link-control__search-create:before{content:"";position:absolute;top:-10px;right:0;display:block;width:100%}.block-editor-link-control__search-create{align-items:center}.block-editor-link-control__search-create .block-editor-link-control__search-item-title{margin-bottom:0}.block-editor-link-control__search-create .block-editor-link-control__search-item-icon{top:0}.block-editor-link-control__search-results div[role=menu]>.block-editor-link-control__search-item.block-editor-link-control__search-item{padding:10px}.block-editor-link-control__tools{display:flex;align-items:center;border-top:1px solid #ddd;margin:0;padding:16px}.block-editor-link-control__unlink{padding-right:16px;padding-left:16px}.block-editor-link-control__settings{flex:1;margin:0}.block-editor-link-control__settings :last-child{margin-bottom:0}.is-alternate .block-editor-link-control__settings{border-top:1px solid #1e1e1e}.block-editor-link-control__setting{margin-bottom:16px}.block-editor-link-control__setting :last-child{margin-bottom:0}.block-editor-link-control .block-editor-link-control__search-input .components-spinner{display:block}.block-editor-link-control .block-editor-link-control__search-input .components-spinner.components-spinner{position:absolute;right:auto;bottom:auto;top:28px;left:62px}.block-editor-link-control__search-item-action{margin-right:auto;flex-shrink:0}.block-editor-line-height-control{margin-bottom:24px}.block-editor-line-height-control input{display:block;max-width:60px}.block-editor-image-size-control{margin-bottom:1em}.block-editor-image-size-control .block-editor-image-size-control__row{display:flex;justify-content:space-between}.block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height,.block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width{margin-bottom:.5em}.block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height input,.block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width input{line-height:1.25}.block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width{margin-left:5px}.block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height{margin-right:5px}.block-editor-block-list__layout.has-overlay:after{content:"";position:absolute;top:0;left:0;bottom:0;right:0;z-index:60}.block-editor-block-types-list__list-item{display:block;width:33.33%;padding:0;margin:0}.components-button.block-editor-block-types-list__item{display:flex;flex-direction:column;width:100%;font-size:13px;color:#1e1e1e;padding:8px;align-items:stretch;justify-content:center;cursor:pointer;background:transparent;word-break:break-word;border-radius:2px;transition:all .05s ease-in-out;position:relative;height:auto}@media (prefers-reduced-motion:reduce){.components-button.block-editor-block-types-list__item{transition-duration:0s;transition-delay:0s}}.components-button.block-editor-block-types-list__item:disabled{opacity:.6;cursor:default}.components-button.block-editor-block-types-list__item:not(:disabled):hover{color:var(--wp-admin-theme-color)!important}.components-button.block-editor-block-types-list__item:not(:disabled):focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.components-button.block-editor-block-types-list__item:not(:disabled).is-active{color:#fff;background:#1e1e1e;outline:2px solid transparent;outline-offset:-2px}.block-editor-block-types-list__item-icon{padding:12px 20px;border-radius:2px;color:#1e1e1e;transition:all .05s ease-in-out}@media (prefers-reduced-motion:reduce){.block-editor-block-types-list__item-icon{transition-duration:0s;transition-delay:0s}}.block-editor-block-types-list__item-icon .block-editor-block-icon{margin-right:auto;margin-left:auto}.block-editor-block-types-list__item-icon svg{transition:all .15s ease-out}@media (prefers-reduced-motion:reduce){.block-editor-block-types-list__item-icon svg{transition-duration:0s;transition-delay:0s}}.block-editor-block-types-list__list-item[draggable=true] .block-editor-block-types-list__item-icon{cursor:grab}.block-editor-block-types-list__item-title{padding:4px 2px 8px;font-size:12px}.block-editor-list-view-tree{width:100%;border-collapse:collapse;padding:0;margin:0}.components-modal__content .block-editor-list-view-tree{margin:-12px -6px 0;width:calc(100% + 12px)}.block-editor-list-view-leaf{position:relative}.block-editor-list-view-leaf.is-selected{background:var(--wp-admin-theme-color)}.block-editor-list-view-leaf.is-selected .block-editor-list-view-block-contents,.block-editor-list-view-leaf.is-selected .components-button.has-icon{color:#fff}.is-dragging-components-draggable .block-editor-list-view-leaf.is-selected .block-editor-list-view-block-contents{background:none;color:#1e1e1e}.block-editor-list-view-leaf.is-selected .block-editor-list-view-block-contents:focus:after{box-shadow:inset 0 0 0 1px #fff,0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.block-editor-list-view-leaf.is-selected .block-editor-list-view-block__menu:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) #fff}.block-editor-list-view-leaf.is-branch-selected:not(.is-selected){background:linear-gradient(hsla(0,0%,100%,.9),hsla(0,0%,100%,.9)),linear-gradient(var(--wp-admin-theme-color),var(--wp-admin-theme-color))}.block-editor-list-view-leaf.is-branch-selected.is-selected .block-editor-list-view-block-contents{border-radius:2px 2px 0 0}.block-editor-list-view-leaf[aria-expanded=false].is-branch-selected.is-selected .block-editor-list-view-block-contents{border-radius:2px}.block-editor-list-view-leaf.is-branch-selected:not(.is-selected) .block-editor-list-view-block-contents{border-radius:0}.block-editor-list-view-leaf.is-dragging{display:none}.block-editor-list-view-leaf .block-editor-list-view-block-contents{display:flex;align-items:center;width:100%;height:auto;padding:6px 0 6px 12px;text-align:right;color:#1e1e1e;border-radius:2px;position:relative;white-space:nowrap}.block-editor-list-view-leaf .block-editor-list-view-block-contents.is-dropping-before:before{content:"";position:absolute;pointer-events:none;transition:border-color .1s linear,border-style .1s linear,box-shadow .1s linear;top:-2px;left:0;right:0;border-top:4px solid var(--wp-admin-theme-color)}.components-modal__content .block-editor-list-view-leaf .block-editor-list-view-block-contents{padding-right:0;padding-left:0}.block-editor-list-view-leaf .block-editor-list-view-block-contents:focus{box-shadow:none}.block-editor-list-view-leaf .block-editor-list-view-block-contents:focus:after{content:"";position:absolute;top:0;left:-29px;bottom:0;right:0;border-radius:inherit;box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);z-index:1;pointer-events:none}.is-dragging-components-draggable .block-editor-list-view-leaf .block-editor-list-view-block-contents:focus:after{box-shadow:none}.block-editor-list-view-leaf.has-single-cell .block-editor-list-view-block-contents:focus:after{left:0}.block-editor-list-view-leaf .block-editor-list-view-block__menu:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);z-index:1}.is-dragging-components-draggable .block-editor-list-view-leaf .block-editor-list-view-block__menu:focus{box-shadow:none}.block-editor-list-view-leaf.is-visible .block-editor-list-view-block-contents{opacity:1;animation:edit-post__fade-in-animation .2s ease-out 0s;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.block-editor-list-view-leaf.is-visible .block-editor-list-view-block-contents{animation-duration:1ms;animation-delay:0s}}.block-editor-list-view-leaf .block-editor-block-icon{align-self:flex-start;margin-left:8px;width:24px}.block-editor-list-view-leaf .block-editor-list-view-block__contents-cell,.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell,.block-editor-list-view-leaf .block-editor-list-view-block__mover-cell{padding-top:0;padding-bottom:0}.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell,.block-editor-list-view-leaf .block-editor-list-view-block__mover-cell{line-height:0;width:36px;opacity:0;vertical-align:middle}@media (prefers-reduced-motion:reduce){.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell,.block-editor-list-view-leaf .block-editor-list-view-block__mover-cell{transition-duration:0s;transition-delay:0s}}.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell.is-visible,.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell:hover,.block-editor-list-view-leaf .block-editor-list-view-block__mover-cell.is-visible,.block-editor-list-view-leaf .block-editor-list-view-block__mover-cell:hover{position:relative;z-index:1;opacity:1;animation:edit-post__fade-in-animation .2s ease-out 0s;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell.is-visible,.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell:hover,.block-editor-list-view-leaf .block-editor-list-view-block__mover-cell.is-visible,.block-editor-list-view-leaf .block-editor-list-view-block__mover-cell:hover{animation-duration:1ms;animation-delay:0s}}.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell,.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell .components-button.has-icon,.block-editor-list-view-leaf .block-editor-list-view-block__mover-cell,.block-editor-list-view-leaf .block-editor-list-view-block__mover-cell .components-button.has-icon{width:24px;min-width:24px;padding:0}.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell{padding-left:5px}.block-editor-list-view-leaf .block-editor-list-view-block__menu-cell .components-button.has-icon{height:24px}.block-editor-list-view-leaf .block-editor-list-view-block__mover-cell-alignment-wrapper{display:flex;height:100%;flex-direction:column;align-items:center}.block-editor-list-view-leaf .block-editor-block-mover-button{position:relative;width:36px;height:24px}.block-editor-list-view-leaf .block-editor-block-mover-button svg{position:relative;height:24px}.block-editor-list-view-leaf .block-editor-block-mover-button.is-up-button{margin-top:-6px;align-items:flex-end}.block-editor-list-view-leaf .block-editor-block-mover-button.is-up-button svg{bottom:-4px}.block-editor-list-view-leaf .block-editor-block-mover-button.is-down-button{margin-bottom:-6px;align-items:flex-start}.block-editor-list-view-leaf .block-editor-block-mover-button.is-down-button svg{top:-4px}.block-editor-list-view-leaf .block-editor-block-mover-button:focus,.block-editor-list-view-leaf .block-editor-block-mover-button:focus:enabled{box-shadow:none;outline:none}.block-editor-list-view-leaf .block-editor-block-mover-button:focus:before{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 0 0 4px #fff;outline:2px solid transparent}.block-editor-list-view-leaf .block-editor-block-mover-button:before{content:"";position:absolute;display:block;border-radius:2px;height:16px;min-width:100%;right:0;left:0;animation:components-button__appear-animation .1s ease;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.block-editor-list-view-leaf .block-editor-block-mover-button:before{animation-duration:1ms;animation-delay:0s}}.block-editor-list-view-leaf .block-editor-inserter__toggle{background:#1e1e1e;color:#fff;height:24px;margin:6px 1px 6px 6px;min-width:24px}.block-editor-list-view-leaf .block-editor-inserter__toggle:active{color:#fff}.block-editor-list-view-leaf .block-editor-list-view-block-select-button__anchor{background:rgba(0,0,0,.1);border-radius:2px;display:inline-block;padding:2px 6px;margin:0 8px;max-width:120px;overflow:hidden;text-overflow:ellipsis}.block-editor-list-view-leaf.is-selected .block-editor-list-view-block-select-button__anchor{background:rgba(0,0,0,.3)}.block-editor-list-view-appender__description,.block-editor-list-view-block-select-button__description{display:none}.block-editor-list-view-appender__cell .block-editor-list-view-appender__container,.block-editor-list-view-appender__cell .block-editor-list-view-block__contents-container,.block-editor-list-view-block__contents-cell .block-editor-list-view-appender__container,.block-editor-list-view-block__contents-cell .block-editor-list-view-block__contents-container{display:flex}.block-editor-list-view__expander{height:24px;margin-right:4px;width:24px}.block-editor-list-view-leaf[aria-level] .block-editor-list-view__expander{margin-right:220px}.block-editor-list-view-leaf:not([aria-level="1"]) .block-editor-list-view__expander{margin-left:4px}.block-editor-list-view-leaf[aria-level="1"] .block-editor-list-view__expander{margin-right:0}.block-editor-list-view-leaf[aria-level="2"] .block-editor-list-view__expander{margin-right:24px}.block-editor-list-view-leaf[aria-level="3"] .block-editor-list-view__expander{margin-right:52px}.block-editor-list-view-leaf[aria-level="4"] .block-editor-list-view__expander{margin-right:80px}.block-editor-list-view-leaf[aria-level="5"] .block-editor-list-view__expander{margin-right:108px}.block-editor-list-view-leaf[aria-level="6"] .block-editor-list-view__expander{margin-right:136px}.block-editor-list-view-leaf[aria-level="7"] .block-editor-list-view__expander{margin-right:164px}.block-editor-list-view-leaf[aria-level="8"] .block-editor-list-view__expander{margin-right:192px}.block-editor-list-view-leaf .block-editor-list-view__expander{visibility:hidden}.block-editor-list-view-leaf[aria-expanded=true] .block-editor-list-view__expander svg{visibility:visible;transition:transform .2s ease;transform:rotate(-90deg)}@media (prefers-reduced-motion:reduce){.block-editor-list-view-leaf[aria-expanded=true] .block-editor-list-view__expander svg{transition-duration:0s;transition-delay:0s}}.block-editor-list-view-leaf[aria-expanded=false] .block-editor-list-view__expander svg{visibility:visible;transform:rotate(0deg);transition:transform .2s ease}@media (prefers-reduced-motion:reduce){.block-editor-list-view-leaf[aria-expanded=false] .block-editor-list-view__expander svg{transition-duration:0s;transition-delay:0s}}.block-editor-list-view-drop-indicator{pointer-events:none}.block-editor-list-view-drop-indicator .block-editor-list-view-drop-indicator__line{background:var(--wp-admin-theme-color);height:1px}.block-editor-list-view-drop-indicator:not([data-y-axis=middle][data-x-axis=right])>.components-popover__content{margin-right:0;border:none;box-shadow:none}.block-editor-list-view-placeholder{padding:0;margin:0;height:36px}.modal-open .block-editor-media-replace-flow__options{display:none}.block-editor-media-replace-flow__indicator{margin-right:4px}.block-editor-media-flow__url-input{border-top:1px solid #1e1e1e;margin-top:8px;margin-left:-8px;margin-right:-8px;padding:16px}.block-editor-media-flow__url-input .block-editor-media-replace-flow__image-url-label{display:block;top:16px;margin-bottom:8px}.block-editor-media-flow__url-input .block-editor-link-control{width:220px}.block-editor-media-flow__url-input .block-editor-link-control .block-editor-url-input{padding:0}.block-editor-media-flow__url-input .block-editor-link-control .components-base-control .components-base-control__field{margin-bottom:0}.block-editor-media-flow__url-input .block-editor-link-control .block-editor-link-control__search-item-title{max-width:180px;white-space:nowrap}.block-editor-media-flow__url-input .block-editor-link-control .block-editor-link-control__search-item-info{white-space:nowrap}.block-editor-media-flow__url-input .block-editor-link-control .block-editor-link-control__search-item.is-current{width:auto;padding:0}.block-editor-media-flow__url-input .block-editor-link-control .block-editor-link-control__search-input.block-editor-link-control__search-input input[type=text]{margin:0;width:100%}.block-editor-media-flow__url-input .block-editor-link-control .block-editor-link-control__search-actions{top:0;left:4px}.block-editor-media-flow__error{padding:0 20px 20px;max-width:255px}.block-editor-media-flow__error .components-with-notices-ui{max-width:255px}.block-editor-media-flow__error .components-with-notices-ui .components-notice__content{overflow:hidden;word-wrap:break-word}.block-editor-media-flow__error .components-with-notices-ui .components-notice__dismiss{position:absolute;left:10px}.block-editor-media-placeholder__url-input-container .block-editor-media-placeholder__button{margin-bottom:0}.block-editor-media-placeholder__url-input-form{display:flex}.block-editor-media-placeholder__url-input-form input[type=url].block-editor-media-placeholder__url-input-field{width:100%;min-width:200px;flex-grow:1;border:none;border-radius:0;margin:2px}@media (min-width:600px){.block-editor-media-placeholder__url-input-form input[type=url].block-editor-media-placeholder__url-input-field{width:300px}}.block-editor-media-placeholder__url-input-submit-button{flex-shrink:1}.block-editor-media-placeholder__button{margin-bottom:.5rem}.block-editor-media-placeholder__cancel-button.is-link{margin:1em;display:block}.block-editor-media-placeholder.is-appender{min-height:0}.block-editor-media-placeholder.is-appender:hover{cursor:pointer;box-shadow:0 0 0 1px var(--wp-admin-theme-color)}.block-editor-multi-selection-inspector__card{display:flex;align-items:flex-start;padding:16px}.block-editor-multi-selection-inspector__card-content{flex-grow:1}.block-editor-multi-selection-inspector__card-title{font-weight:500;margin-bottom:5px}.block-editor-multi-selection-inspector__card-description{font-size:13px}.block-editor-multi-selection-inspector__card .block-editor-block-icon{margin-right:-2px;margin-left:10px;padding:0 3px;width:36px;height:24px}.block-editor-plain-text{box-shadow:none;font-family:inherit;font-size:inherit;color:inherit;line-height:inherit;border:none;padding:0;margin:0;width:100%}.block-editor-responsive-block-control{margin-bottom:28px;border-bottom:1px solid #ccc;padding-bottom:14px}.block-editor-responsive-block-control:last-child{padding-bottom:0;border-bottom:0}.block-editor-responsive-block-control__title{margin:0 -3px .6em 0}.block-editor-responsive-block-control__label{font-weight:600;margin-bottom:.6em;margin-right:-3px}.block-editor-responsive-block-control__inner{margin-right:-1px}.block-editor-responsive-block-control__toggle{margin-right:1px}.block-editor-responsive-block-control .components-base-control__help{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.rich-text [data-rich-text-placeholder]{pointer-events:none}.rich-text [data-rich-text-placeholder]:after{content:attr(data-rich-text-placeholder);opacity:.62}.rich-text:focus{outline:none}.rich-text:focus [data-rich-text-format-boundary]{border-radius:2px}.block-editor-rich-text__editable>p:first-child{margin-top:0}figcaption.block-editor-rich-text__editable [data-rich-text-placeholder]:before{opacity:.8}.components-popover.block-editor-rich-text__inline-format-toolbar{z-index:99998}.components-popover.block-editor-rich-text__inline-format-toolbar .components-popover__content{width:auto;min-width:auto;margin-bottom:8px;box-shadow:none;border:1px solid #1e1e1e;border-radius:2px;background-color:#fff}.components-popover.block-editor-rich-text__inline-format-toolbar .components-toolbar,.components-popover.block-editor-rich-text__inline-format-toolbar .components-toolbar-group{border:none}.components-popover.block-editor-rich-text__inline-format-toolbar .components-dropdown-menu__toggle,.components-popover.block-editor-rich-text__inline-format-toolbar .components-toolbar__control{min-width:48px;min-height:48px;padding-right:12px;padding-left:12px}.block-editor-rich-text__inline-format-toolbar-group .components-dropdown-menu__toggle{justify-content:center}.show-icon-labels .block-editor-rich-text__inline-format-toolbar-group .components-button.has-icon{width:auto}.show-icon-labels .block-editor-rich-text__inline-format-toolbar-group .components-button.has-icon svg{display:none}.show-icon-labels .block-editor-rich-text__inline-format-toolbar-group .components-button.has-icon:after{content:attr(aria-label)}[data-rich-text-script]{display:inline}[data-rich-text-script]:before{content:"";background:#ff0}.block-editor-skip-to-selected-block{position:absolute;top:-9999em}.block-editor-skip-to-selected-block:focus{height:auto;width:auto;display:block;font-size:14px;font-weight:600;padding:15px 23px 14px;background:#f1f1f1;color:var(--wp-admin-theme-color);line-height:normal;box-shadow:0 0 2px 2px rgba(0,0,0,.6);text-decoration:none;outline:none;z-index:100000}.block-editor-text-transform-control{flex:0 0 50%}.block-editor-text-transform-control legend{margin-bottom:8px}.block-editor-text-transform-control .block-editor-text-transform-control__buttons{display:inline-flex;margin-bottom:24px}.block-editor-text-transform-control .block-editor-text-transform-control__buttons .components-button.has-icon{min-width:24px;padding:0;margin-left:4px}.block-editor-text-decoration-control{flex:0 0 50%}.block-editor-text-decoration-control legend{margin-bottom:8px}.block-editor-text-decoration-control .block-editor-text-decoration-control__buttons{display:inline-flex;margin-bottom:24px}.block-editor-text-decoration-control .block-editor-text-decoration-control__buttons .components-button.has-icon{min-width:24px;padding:0;margin-left:4px}.block-editor-tool-selector__help{margin:8px -8px -8px;padding:16px;border-top:1px solid #ddd;color:#757575;min-width:280px}.block-editor-block-list__block .block-editor-url-input,.block-editor-url-input,.components-popover .block-editor-url-input{flex-grow:1;position:relative;padding:1px}.block-editor-block-list__block .block-editor-url-input input[type=text],.block-editor-url-input input[type=text],.components-popover .block-editor-url-input input[type=text]{width:100%;padding:8px 12px 8px 8px;border:none;border-radius:0;margin-right:0;margin-left:0;font-size:16px}@media (min-width:600px){.block-editor-block-list__block .block-editor-url-input input[type=text],.block-editor-url-input input[type=text],.components-popover .block-editor-url-input input[type=text]{width:300px;font-size:13px}}.block-editor-block-list__block .block-editor-url-input input[type=text]::-ms-clear,.block-editor-url-input input[type=text]::-ms-clear,.components-popover .block-editor-url-input input[type=text]::-ms-clear{display:none}.block-editor-block-list__block .block-editor-url-input.is-full-width,.block-editor-block-list__block .block-editor-url-input.is-full-width .block-editor-url-input__input[type=text],.block-editor-block-list__block .block-editor-url-input.is-full-width__suggestions,.block-editor-url-input.is-full-width,.block-editor-url-input.is-full-width .block-editor-url-input__input[type=text],.block-editor-url-input.is-full-width__suggestions,.components-popover .block-editor-url-input.is-full-width,.components-popover .block-editor-url-input.is-full-width .block-editor-url-input__input[type=text],.components-popover .block-editor-url-input.is-full-width__suggestions{width:100%}.block-editor-block-list__block .block-editor-url-input .components-spinner,.block-editor-url-input .components-spinner,.components-popover .block-editor-url-input .components-spinner{position:absolute;left:8px 8px 8px 12px;bottom:8px 8px 8px 12px8px1;margin:0}.block-editor-url-input__input[type=text]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;padding:6px 8px;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;border:1px solid #757575;font-size:16px;line-height:normal}@media (prefers-reduced-motion:reduce){.block-editor-url-input__input[type=text]{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.block-editor-url-input__input[type=text]{font-size:13px;line-height:normal}}.block-editor-url-input__input[type=text]:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.block-editor-url-input__input[type=text]::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.block-editor-url-input__input[type=text]::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.block-editor-url-input__input[type=text]:-ms-input-placeholder{color:rgba(30,30,30,.62)}.block-editor-url-input__suggestions{max-height:200px;transition:all .15s ease-in-out;padding:4px 0;width:302px;overflow-y:auto}@media (prefers-reduced-motion:reduce){.block-editor-url-input__suggestions{transition-duration:0s;transition-delay:0s}}.block-editor-url-input .components-spinner,.block-editor-url-input__suggestions{display:none}@media (min-width:600px){.block-editor-url-input .components-spinner,.block-editor-url-input__suggestions{display:inherit}}.block-editor-url-input__suggestion{padding:4px 8px 8px;color:#757575;display:block;font-size:13px;cursor:pointer;background:#fff;width:100%;border:none;text-align:right;box-shadow:none}.block-editor-url-input__suggestion:hover{background:#ddd}.block-editor-url-input__suggestion.is-selected,.block-editor-url-input__suggestion:focus{background:var(--wp-admin-theme-color-darker-20);color:#fff;outline:none}.components-toolbar-group>.block-editor-url-input__button,.components-toolbar>.block-editor-url-input__button{position:inherit}.block-editor-url-input__button .block-editor-url-input__back{margin-left:4px;overflow:visible}.block-editor-url-input__button .block-editor-url-input__back:after{content:"";position:absolute;display:block;width:1px;height:24px;left:-1px;background:#ddd}.block-editor-url-input__button-modal{box-shadow:0 2px 6px rgba(0,0,0,.05);border:1px solid #ddd;background:#fff}.block-editor-url-input__button-modal-line{display:flex;flex-direction:row;flex-grow:1;flex-shrink:1;min-width:0;align-items:flex-start}.block-editor-url-input__button-modal-line .components-button{flex-shrink:0;width:36px;height:36px}.block-editor-url-popover__additional-controls{border-top:1px solid #ddd}.block-editor-url-popover__additional-controls>div[role=menu] .components-button:not(:disabled):not([aria-disabled=true]):not(.is-secondary)>svg{box-shadow:none}.block-editor-url-popover__additional-controls div[role=menu]>.components-button{padding-right:12px}.block-editor-url-popover__row{display:flex}.block-editor-url-popover__row>:not(.block-editor-url-popover__settings-toggle){flex-grow:1}.block-editor-url-popover .components-button.has-icon{padding:3px}.block-editor-url-popover .components-button.has-icon>svg{padding:5px;border-radius:2px;height:30px;width:30px}.block-editor-url-popover .components-button.has-icon:not(:disabled):focus{box-shadow:none}.block-editor-url-popover .components-button.has-icon:not(:disabled):focus>svg{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 0 0 4px #fff;outline:2px solid transparent}.block-editor-url-popover__settings-toggle{flex-shrink:0;border-radius:0;border-right:1px solid #ddd;margin-right:1px}.block-editor-url-popover__settings-toggle[aria-expanded=true] .dashicon{transform:rotate(-180deg)}.block-editor-url-popover__input-container .components-base-control:last-child,.block-editor-url-popover__input-container .components-base-control:last-child .components-base-control__field{margin-bottom:0}.block-editor-url-popover__settings{display:block;padding:16px;border-top:1px solid #ddd}.block-editor-url-popover__link-editor,.block-editor-url-popover__link-viewer{display:flex}.block-editor-url-popover__link-editor .block-editor-url-input .components-base-control__field,.block-editor-url-popover__link-viewer .block-editor-url-input .components-base-control__field{margin-bottom:0}.block-editor-url-popover__link-editor .block-editor-url-input .components-spinner,.block-editor-url-popover__link-viewer .block-editor-url-input .components-spinner{bottom:8px 8px 8px 12px1}.block-editor-url-popover__link-viewer-url{margin:7px;flex-grow:1;flex-shrink:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:150px;max-width:500px}.block-editor-url-popover__link-viewer-url.has-invalid-link{color:#cc1818}.block-editor-warning{align-items:center;display:flex;flex-wrap:wrap;padding:1em;border:1px solid #1e1e1e;border-radius:2px;background-color:#fff}.block-editor-warning,.block-editor-warning .block-editor-warning__message{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.block-editor-warning .block-editor-warning__message{line-height:1.4;font-size:13px;color:#1e1e1e;margin:0}.block-editor-warning p.block-editor-warning__message.block-editor-warning__message{min-height:auto}.block-editor-warning .block-editor-warning__contents{display:flex;flex-direction:row;justify-content:space-between;flex-wrap:wrap;align-items:baseline;width:100%}.block-editor-warning .block-editor-warning__actions{display:flex;margin-top:1em}.block-editor-warning .block-editor-warning__action{margin:0 0 0 8px}.block-editor-warning__secondary{margin:auto 8px auto 0}.components-popover.block-editor-warning__dropdown{z-index:99998}.html-anchor-control .components-external-link{display:block;margin-top:8px}.block-editor-hooks__layout-controls{display:flex;margin-bottom:16px}.block-editor-hooks__layout-controls .block-editor-hooks__layout-controls-unit{display:flex;margin-left:24px}.block-editor-hooks__layout-controls .block-editor-hooks__layout-controls-unit svg{margin:auto 8px 4px 0}.block-editor-hooks__layout-controls-reset{display:flex;justify-content:flex-end;margin-bottom:24px}.block-editor-hooks__layout-controls-helptext{font-size:12px}.block-editor-hooks__flex-layout-justification-controls,.block-editor-hooks__flex-layout-orientation-controls{margin-bottom:12px}.block-editor-hooks__flex-layout-justification-controls legend,.block-editor-hooks__flex-layout-orientation-controls legend{margin-bottom:8px}.block-editor-hooks__border-controls .block-editor-hooks__border-controls-row{display:flex;justify-content:space-between}.block-editor-hooks__border-controls .block-editor-hooks__border-controls-row>*{width:calc(50% - 8px)}.block-editor-hooks__border-controls .components-unit-control-wrapper{margin-bottom:24px}.block-editor-hooks__border-controls .components-unit-control-wrapper:last-child{margin-bottom:8px}.dimensions-block-support-panel .single-column{grid-column:span 1}.typography-block-support-panel .block-editor-text-decoration-control__buttons,.typography-block-support-panel .block-editor-text-transform-control__buttons,.typography-block-support-panel .components-font-appearance-control,.typography-block-support-panel .components-font-size-picker__controls{margin-bottom:0}.typography-block-support-panel .block-editor-line-height-control input{max-width:100%}.typography-block-support-panel .single-column{grid-column:span 1}.block-editor-block-toolbar{display:flex;flex-grow:1;width:100%;position:relative;overflow-y:hidden;overflow-x:auto;transition:border-color .1s linear,box-shadow .1s linear}@media (prefers-reduced-motion:reduce){.block-editor-block-toolbar{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.block-editor-block-toolbar{overflow:inherit}}.block-editor-block-toolbar .components-toolbar,.block-editor-block-toolbar .components-toolbar-group{background:none;line-height:0;margin-top:-1px;margin-bottom:-1px;border:0;border-left:1px solid #ddd}.block-editor-block-toolbar>:last-child,.block-editor-block-toolbar>:last-child .components-toolbar,.block-editor-block-toolbar>:last-child .components-toolbar-group{border-left:none}.block-editor-block-contextual-toolbar.has-parent:not(.is-fixed){margin-right:56px}.show-icon-labels .block-editor-block-contextual-toolbar.has-parent:not(.is-fixed){margin-right:0}.block-editor-block-parent-selector{position:absolute;top:-1px;right:-57px}.show-icon-labels .block-editor-block-parent-selector{position:relative;right:auto;top:auto;margin-top:-1px;margin-right:-1px;margin-bottom:-1px}.block-editor-block-toolbar__block-controls{height:auto!important;padding:0!important;margin-right:-1px}.block-editor-block-toolbar__block-controls .block-editor-block-switcher .components-dropdown-menu__toggle .block-editor-block-icon,.block-editor-block-toolbar__block-controls .block-editor-block-switcher__no-switcher-icon .block-editor-block-icon{width:24px!important;margin:0!important}.block-editor-block-toolbar__block-controls .block-editor-block-mover{margin-right:-6px}.block-editor-block-toolbar .components-toolbar,.block-editor-block-toolbar .components-toolbar-group,.block-editor-rich-text__inline-format-toolbar-group .components-toolbar,.block-editor-rich-text__inline-format-toolbar-group .components-toolbar-group{display:flex;flex-wrap:nowrap}.block-editor-block-toolbar__slot{display:inline-block;line-height:0}@supports (position:sticky){.block-editor-block-toolbar__slot{display:inline-flex}}.show-icon-labels .block-editor-block-toolbar .components-button.has-icon{width:auto}.show-icon-labels .block-editor-block-toolbar .components-button.has-icon svg{display:none}.show-icon-labels .block-editor-block-toolbar .components-button.has-icon:after{content:attr(aria-label);font-size:12px}.show-icon-labels .components-accessible-toolbar .components-toolbar-group>div:first-child:last-child>.components-button.has-icon{padding-right:6px;padding-left:6px}.show-icon-labels .block-editor-block-switcher{border-left:1px solid #1e1e1e}.show-icon-labels .block-editor-block-switcher .components-dropdown-menu__toggle{margin-right:0}.show-icon-labels .block-editor-block-switcher .components-dropdown-menu__toggle .block-editor-block-icon,.show-icon-labels .block-editor-block-switcher__no-switcher-icon .block-editor-block-icon{width:0!important;height:0!important}.show-icon-labels .block-editor-block-parent-selector__button .block-editor-block-icon{width:0}.show-icon-labels .block-editor-block-toolbar__block-controls .block-editor-block-mover{margin-right:0;white-space:nowrap}.show-icon-labels .block-editor-block-mover-button{padding-right:8px!important;padding-left:8px!important}.show-icon-labels .block-editor-block-mover__drag-handle.has-icon{padding-right:6px!important;padding-left:6px!important;border-left:1px solid #1e1e1e}@media (min-width:600px){.show-icon-labels .is-up-button.is-up-button.is-up-button{border-bottom:1px solid #1e1e1e;margin-left:0;border-radius:0}}.show-icon-labels .block-editor-block-contextual-toolbar .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.block-editor-block-mover-button{width:auto}.show-icon-labels .components-toolbar,.show-icon-labels .components-toolbar-group{flex-shrink:1}.show-icon-labels .block-editor-rich-text__inline-format-toolbar-group .components-button+.components-button{margin-right:6px}.block-editor-inserter{display:inline-block;background:none;border:none;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;line-height:0}@media (min-width:782px){.block-editor-inserter{position:relative}}.block-editor-inserter__content{position:relative}.block-editor-inserter__popover.is-quick .components-popover__content{border:none}.block-editor-inserter__popover.is-quick .components-popover__content .block-editor-inserter__quick-inserter>*{border-right:1px solid #ccc;border-left:1px solid #ccc}.block-editor-inserter__popover.is-quick .components-popover__content .block-editor-inserter__quick-inserter>:first-child{border-top:1px solid #ccc}.block-editor-inserter__popover.is-quick .components-popover__content .block-editor-inserter__quick-inserter>:last-child{border-bottom:1px solid #ccc}.block-editor-inserter__popover.is-quick .components-popover__content .block-editor-inserter__quick-inserter>.components-button{border:1px solid #1e1e1e}.block-editor-inserter__popover .block-editor-inserter__menu{margin:-12px}.block-editor-inserter__popover .block-editor-inserter__menu .block-editor-inserter__tabs .components-tab-panel__tabs{top:60px}.block-editor-inserter__popover .block-editor-inserter__menu .block-editor-inserter__main-area{overflow:visible;height:auto}.block-editor-inserter__popover .block-editor-inserter__menu .block-editor-inserter__preview-container{display:none}.block-editor-inserter__toggle.components-button{display:inline-flex;align-items:center;cursor:pointer;border:none;outline:none;padding:0;transition:color .2s ease}@media (prefers-reduced-motion:reduce){.block-editor-inserter__toggle.components-button{transition-duration:0s;transition-delay:0s}}.block-editor-inserter__menu{height:100%;position:relative;overflow:visible}.block-editor-inserter__main-area{width:auto;overflow-y:auto;height:100%}@media (min-width:782px){.block-editor-inserter__main-area{width:350px}}.block-editor-inserter__inline-elements{margin-top:-1px}.block-editor-inserter__menu.is-bottom:after{border-bottom-color:#fff}.components-popover.block-editor-inserter__popover{z-index:99999}.block-editor-inserter__search{background:#fff;padding:16px 16px 0;position:sticky;top:0;z-index:1}.block-editor-inserter__search .components-search-control__icon{left:20px}.block-editor-inserter__search .components-base-control__field{margin-bottom:0}.block-editor-inserter__tabs{display:flex;flex-direction:column}.block-editor-inserter__tabs .components-tab-panel__tabs{position:sticky;top:64px;background:#fff;z-index:1;border-bottom:1px solid #ddd}.block-editor-inserter__tabs .components-tab-panel__tabs .components-tab-panel__tabs-item{flex-grow:1;margin-bottom:-1px}.block-editor-inserter__tabs .components-tab-panel__tab-content{display:flex;flex-grow:1;flex-direction:column;position:relative;z-index:0}.block-editor-inserter__panel-header{display:inline-flex;align-items:center;padding:16px 16px 0}.block-editor-inserter__panel-header-patterns{padding:16px 16px 0}.block-editor-inserter__panel-content{padding:16px}.block-editor-inserter__panel-title,.block-editor-inserter__panel-title button{margin:0 0 0 12px;color:#757575;text-transform:uppercase;font-size:11px;font-weight:500}.block-editor-inserter__panel-dropdown select.components-select-control__input.components-select-control__input.components-select-control__input{height:36px;line-height:36px}.block-editor-inserter__panel-dropdown select{border:none}.block-editor-inserter__block-list{flex-grow:1;position:relative}.block-editor-inserter__reusable-blocks-panel{position:relative;text-align:left}.block-editor-inserter__manage-reusable-blocks{display:inline-block;margin:16px}.block-editor-inserter__no-results{padding:32px;text-align:center}.block-editor-inserter__no-results-icon{fill:#949494}.block-editor-inserter__child-blocks{padding:0 16px}.block-editor-inserter__parent-block-header{display:flex;align-items:center}.block-editor-inserter__parent-block-header h2{font-size:13px}.block-editor-inserter__parent-block-header .block-editor-block-icon{margin-left:8px}.block-editor-inserter__preview-container{display:none;width:300px;background:#fff;border-radius:2px;border:1px solid #ddd;position:absolute;top:16px;right:calc(100% + 16px);max-height:calc(100% - 32px);overflow-y:hidden}@media (min-width:782px){.block-editor-inserter__preview-container{display:block}}.block-editor-inserter__preview-container .block-editor-block-card{padding:16px}.block-editor-inserter__preview-container .block-editor-block-card__title{font-size:13px}.block-editor-inserter__preview-content{min-height:144px;background:#f0f0f0;display:grid;flex-grow:1;align-items:center}.block-editor-inserter__preview-content-missing{flex:1;display:flex;justify-content:center;align-items:center;min-height:144px;color:#757575;background:#f0f0f0}.block-editor-inserter__tips{border-top:1px solid #ddd;padding:16px;flex-shrink:0;position:relative}.block-editor-inserter__manage-reusable-blocks-container{padding:16px}.block-editor-inserter__quick-inserter{width:100%;max-width:100%}@media (min-width:782px){.block-editor-inserter__quick-inserter{width:350px}}.block-editor-inserter__quick-inserter-results .block-editor-inserter__panel-header{height:0;padding:0;float:right}.block-editor-inserter__quick-inserter.has-expand .block-editor-inserter__panel-content,.block-editor-inserter__quick-inserter.has-search .block-editor-inserter__panel-content{padding:16px}.block-editor-inserter__quick-inserter-patterns .block-editor-block-patterns-list{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px}.block-editor-inserter__quick-inserter-patterns .block-editor-block-patterns-list .block-editor-block-patterns-list__list-item{margin-bottom:0}.block-editor-inserter__quick-inserter-patterns .block-editor-block-patterns-list .block-editor-block-preview__container{min-height:100px}.block-editor-inserter__quick-inserter-separator{border-top:1px solid #ddd}.block-editor-inserter__popover.is-quick>.components-popover__content>div{padding:0}.block-editor-inserter__quick-inserter-expand.components-button{display:block;background:#1e1e1e;color:#fff;width:100%;height:44px;border-radius:0}.block-editor-inserter__quick-inserter-expand.components-button:hover{color:#fff}.block-editor-inserter__quick-inserter-expand.components-button:active{color:#ccc}.block-editor-inserter__quick-inserter-expand.components-button.components-button:focus:not(:disabled){box-shadow:none;background:var(--wp-admin-theme-color);border-color:var(--wp-admin-theme-color)}.block-editor-block-patterns-explorer__sidebar{position:absolute;top:60px;right:0;bottom:0;width:280px;padding:24px 32px 32px;overflow-x:visible;overflow-y:scroll}.block-editor-block-patterns-explorer__sidebar__categories-list__item{display:block;width:100%;height:48px;text-align:right}.block-editor-block-patterns-explorer__search{margin-bottom:32px}.block-editor-block-patterns-explorer__search-results-count{padding-bottom:32px}.block-editor-block-patterns-explorer__list{margin-right:248px}.block-editor-block-patterns-explorer .block-editor-block-patterns-list{display:grid;grid-gap:32px;grid-template-columns:repeat(1,1fr)}@media (min-width:1080px){.block-editor-block-patterns-explorer .block-editor-block-patterns-list{grid-template-columns:repeat(2,1fr)}}@media (min-width:1440px){.block-editor-block-patterns-explorer .block-editor-block-patterns-list{grid-template-columns:repeat(3,1fr)}}.block-editor-block-patterns-explorer .block-editor-block-patterns-list .block-editor-block-patterns-list__list-item{min-height:240px}.block-editor-block-patterns-explorer .block-editor-block-patterns-list .block-editor-block-preview__container{height:inherit;min-height:100px;max-height:800px}.block-editor-post-preview__dropdown{padding:0}.block-editor-post-preview__button-resize.block-editor-post-preview__button-resize{padding-right:40px}.block-editor-post-preview__button-resize.block-editor-post-preview__button-resize.has-icon{padding-right:8px}.block-editor-post-preview__dropdown-content .components-popover__content{overflow-y:visible}.block-editor-post-preview__dropdown-content.edit-post-post-preview-dropdown .components-menu-group:first-child{padding-bottom:8px}.block-editor-post-preview__dropdown-content.edit-post-post-preview-dropdown .components-menu-group:last-child{margin-bottom:0}.block-editor-post-preview__dropdown-content .components-menu-group+.components-menu-group{padding:8px}@media (min-width:600px){.edit-post-header__settings .editor-post-preview,.edit-site-header__actions .editor-post-preview{display:none}}@media (min-width:600px){.edit-post-header.has-reduced-ui .edit-post-header__settings .block-editor-post-preview__button-toggle,.edit-post-header.has-reduced-ui .edit-post-header__settings .editor-post-save-draft,.edit-post-header.has-reduced-ui .edit-post-header__settings .editor-post-saved-state{transition:opacity .1s linear}}@media (min-width:600px) and (prefers-reduced-motion:reduce){.edit-post-header.has-reduced-ui .edit-post-header__settings .block-editor-post-preview__button-toggle,.edit-post-header.has-reduced-ui .edit-post-header__settings .editor-post-save-draft,.edit-post-header.has-reduced-ui .edit-post-header__settings .editor-post-saved-state{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.edit-post-header.has-reduced-ui:not(:hover) .edit-post-header__settings .block-editor-post-preview__button-toggle,.edit-post-header.has-reduced-ui:not(:hover) .edit-post-header__settings .editor-post-save-draft,.edit-post-header.has-reduced-ui:not(:hover) .edit-post-header__settings .editor-post-saved-state{opacity:0}.edit-post-header.has-reduced-ui:not(:hover) .edit-post-header__settings .block-editor-post-preview__button-toggle.is-opened{opacity:1}}body.admin-color-light{--wp-admin-theme-color:#0085ba;--wp-admin-theme-color--rgb:0,133,186;--wp-admin-theme-color-darker-10:#0073a1;--wp-admin-theme-color-darker-10--rgb:0,115,161;--wp-admin-theme-color-darker-20:#006187;--wp-admin-theme-color-darker-20--rgb:0,97,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-light{--wp-admin-border-width-focus:1.5px}}body.admin-color-modern{--wp-admin-theme-color:#3858e9;--wp-admin-theme-color--rgb:56,88,233;--wp-admin-theme-color-darker-10:#2145e6;--wp-admin-theme-color-darker-10--rgb:33,69,230;--wp-admin-theme-color-darker-20:#183ad6;--wp-admin-theme-color-darker-20--rgb:24,58,214;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-modern{--wp-admin-border-width-focus:1.5px}}body.admin-color-blue{--wp-admin-theme-color:#096484;--wp-admin-theme-color--rgb:9,100,132;--wp-admin-theme-color-darker-10:#07526c;--wp-admin-theme-color-darker-10--rgb:7,82,108;--wp-admin-theme-color-darker-20:#064054;--wp-admin-theme-color-darker-20--rgb:6,64,84;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-blue{--wp-admin-border-width-focus:1.5px}}body.admin-color-coffee{--wp-admin-theme-color:#46403c;--wp-admin-theme-color--rgb:70,64,60;--wp-admin-theme-color-darker-10:#383330;--wp-admin-theme-color-darker-10--rgb:56,51,48;--wp-admin-theme-color-darker-20:#2b2724;--wp-admin-theme-color-darker-20--rgb:43,39,36;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-coffee{--wp-admin-border-width-focus:1.5px}}body.admin-color-ectoplasm{--wp-admin-theme-color:#523f6d;--wp-admin-theme-color--rgb:82,63,109;--wp-admin-theme-color-darker-10:#46365d;--wp-admin-theme-color-darker-10--rgb:70,54,93;--wp-admin-theme-color-darker-20:#3a2c4d;--wp-admin-theme-color-darker-20--rgb:58,44,77;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-ectoplasm{--wp-admin-border-width-focus:1.5px}}body.admin-color-midnight{--wp-admin-theme-color:#e14d43;--wp-admin-theme-color--rgb:225,77,67;--wp-admin-theme-color-darker-10:#dd382d;--wp-admin-theme-color-darker-10--rgb:221,56,45;--wp-admin-theme-color-darker-20:#d02c21;--wp-admin-theme-color-darker-20--rgb:208,44,33;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-midnight{--wp-admin-border-width-focus:1.5px}}body.admin-color-ocean{--wp-admin-theme-color:#627c83;--wp-admin-theme-color--rgb:98,124,131;--wp-admin-theme-color-darker-10:#576e74;--wp-admin-theme-color-darker-10--rgb:87,110,116;--wp-admin-theme-color-darker-20:#4c6066;--wp-admin-theme-color-darker-20--rgb:76,96,102;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-ocean{--wp-admin-border-width-focus:1.5px}}body.admin-color-sunrise{--wp-admin-theme-color:#dd823b;--wp-admin-theme-color--rgb:221,130,59;--wp-admin-theme-color-darker-10:#d97426;--wp-admin-theme-color-darker-10--rgb:217,116,38;--wp-admin-theme-color-darker-20:#c36922;--wp-admin-theme-color-darker-20--rgb:195,105,34;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-sunrise{--wp-admin-border-width-focus:1.5px}}PKj l\7css/dist/block-editor/default-editor-styles-rtl.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:18px;line-height:1.5;--wp--style--block-gap:2em}p{line-height:1.8}.editor-post-title__block{margin-top:2em;margin-bottom:1em;font-size:2.5em;font-weight:800}PKj l\6Cjj#css/dist/block-editor/style-rtl.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .block-editor-autocompleters__block { white-space: nowrap; } .block-editor-autocompleters__block .block-editor-block-icon { margin-left: 8px; } .block-editor-block-alignment-control__menu-group .components-menu-item__info { margin-top: 0; } .block-editor-block-alignment-matrix-control__popover .components-popover__content { min-width: 0; width: auto; } .block-editor-block-alignment-matrix-control__popover .components-popover__content > div { padding: 8px; } .block-editor-block-icon { display: flex; align-items: center; justify-content: center; width: 24px; height: 24px; } .block-editor-block-icon.has-colors svg { fill: currentColor; } @media (forced-colors: active) { .block-editor-block-icon.has-colors svg { fill: CanvasText; } } .block-editor-block-icon svg { min-width: 20px; min-height: 20px; max-width: 24px; max-height: 24px; } .block-editor-block-inspector p { margin-top: 0; } .block-editor-block-inspector h2, .block-editor-block-inspector h3 { font-size: 13px; color: #1e1e1e; margin-bottom: 1.5em; } .block-editor-block-inspector .components-base-control { margin-bottom: 24px; } .block-editor-block-inspector .components-base-control:last-child { margin-bottom: 8px; } .block-editor-block-inspector .components-panel__body { border: none; border-top: 1px solid #e0e0e0; } .block-editor-block-inspector .block-editor-block-card { padding: 16px; } .block-editor-block-inspector__no-blocks { display: block; font-size: 13px; background: #fff; padding: 32px 16px; text-align: center; } .block-editor-block-styles .block-editor-block-list__block { margin: 0; } /** * Notices & Block Selected/Hover Styles. */ /** * Cross-Block Selection */ .block-editor-block-list__layout { position: relative; } .block-editor-block-list__layout.is-navigate-mode { cursor: default; } .block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-selected::after, .block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-hovered::after, .block-editor-block-list__layout .block-editor-block-list__block.is-highlighted::after, .block-editor-block-list__layout .block-editor-block-list__block.is-multi-selected::after { position: absolute; z-index: 1; pointer-events: none; content: ""; top: 1px; bottom: 1px; right: 1px; left: 1px; box-shadow: 0 0 0 1px var(--wp-admin-theme-color); border-radius: 1px; outline: 2px solid transparent; } .is-dark-theme .block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-selected::after, .is-dark-theme .block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-hovered::after, .is-dark-theme .block-editor-block-list__layout .block-editor-block-list__block.is-highlighted::after, .is-dark-theme .block-editor-block-list__layout .block-editor-block-list__block.is-multi-selected::after { box-shadow: 0 0 0 1px #fff; } .block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-selected .components-placeholder ::selection, .block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-hovered .components-placeholder ::selection, .block-editor-block-list__layout .block-editor-block-list__block.is-highlighted .components-placeholder ::selection, .block-editor-block-list__layout .block-editor-block-list__block.is-multi-selected .components-placeholder ::selection { background: transparent; } .block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-hovered:not(.is-selected)::after { box-shadow: 0 0 0 1px var(--wp-admin-theme-color); } .block-editor-block-list__layout .block-editor-block-list__block.is-highlighted::after { box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 1px solid transparent; } .block-editor-block-list__layout .block-editor-block-list__block.is-multi-selected::after, .block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-selected::after, .block-editor-block-list__layout .is-block-moving-mode.block-editor-block-list__block.has-child-selected { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); outline: 2px solid transparent; } .block-editor-block-list__layout .is-block-moving-mode.block-editor-block-list__block.is-selected::before { content: ""; position: absolute; z-index: 0; pointer-events: none; transition: border-color 0.1s linear, border-style 0.1s linear, box-shadow 0.1s linear; left: 0; right: 0; top: -14px; border-radius: 2px; border-top: 4px solid #ccc; } .block-editor-block-list__layout .is-block-moving-mode.block-editor-block-list__block.is-selected::after { content: none; } .block-editor-block-list__layout .is-block-moving-mode.can-insert-moving-block.block-editor-block-list__block.is-selected::before { border-color: var(--wp-admin-theme-color); } .is-block-moving-mode.block-editor-block-list__block-selection-button { opacity: 0; font-size: 1px; height: 1px; padding: 0; } .block-editor-block-list__layout .block-editor-block-list__block { position: relative; overflow-wrap: break-word; /** * Notices */ /** * Block Layout */ /** * Block styles and alignments */ } .block-editor-block-list__layout .block-editor-block-list__block .reusable-block-edit-panel * { z-index: 1; } .block-editor-block-list__layout .block-editor-block-list__block .components-placeholder .components-with-notices-ui { margin: -10px 0 12px 0; } .block-editor-block-list__layout .block-editor-block-list__block .components-with-notices-ui { margin: 0 0 12px 0; width: 100%; } .block-editor-block-list__layout .block-editor-block-list__block .components-with-notices-ui .components-notice { margin-right: 0; margin-left: 0; } .block-editor-block-list__layout .block-editor-block-list__block .components-with-notices-ui .components-notice .components-notice__content { font-size: 13px; } .block-editor-block-list__layout .block-editor-block-list__block:not([contenteditable]):focus { outline: none; } .block-editor-block-list__layout .block-editor-block-list__block:not([contenteditable]):focus::after { position: absolute; z-index: 1; pointer-events: none; content: ""; top: 1px; bottom: 1px; right: 1px; left: 1px; box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); border-radius: 1px; outline: 2px solid transparent; } .is-dark-theme .block-editor-block-list__layout .block-editor-block-list__block:not([contenteditable]):focus::after { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) #fff; } .block-editor-block-list__layout .block-editor-block-list__block::after { content: ""; pointer-events: none; position: absolute; top: 0; left: 0; bottom: 0; right: 0; border-radius: 2px; box-shadow: 0 0 0 var(--wp-admin-border-width-focus) transparent; } .block-editor-block-list__layout .block-editor-block-list__block.has-warning { min-height: 48px; } .block-editor-block-list__layout .block-editor-block-list__block.has-warning > * { pointer-events: none; -webkit-user-select: none; user-select: none; } .block-editor-block-list__layout .block-editor-block-list__block.has-warning .block-editor-warning { pointer-events: all; } .block-editor-block-list__layout .block-editor-block-list__block.has-warning::after { content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; border-radius: 2px; background-color: rgba(255, 255, 255, 0.4); } .block-editor-block-list__layout .block-editor-block-list__block.has-warning.is-multi-selected::after { background-color: transparent; } .block-editor-block-list__layout .block-editor-block-list__block.is-reusable > .block-editor-inner-blocks > .block-editor-block-list__layout.has-overlay::after { display: none; } .block-editor-block-list__layout .block-editor-block-list__block.is-reusable > .block-editor-inner-blocks > .block-editor-block-list__layout.has-overlay .block-editor-block-list__layout.has-overlay::after { display: block; } .block-editor-block-list__layout .block-editor-block-list__block.is-reusable.has-child-selected::after { box-shadow: 0 0 0 1px var(--wp-admin-theme-color); } .block-editor-block-list__layout .block-editor-block-list__block[data-clear=true] { float: none; } .is-outline-mode .block-editor-block-list__block:not(.remove-outline).is-hovered { cursor: default; } .is-outline-mode .block-editor-block-list__block:not(.remove-outline).is-hovered::after { top: 1px; right: 1px; left: 1px; bottom: 1px; box-shadow: 0 0 0 1px var(--wp-admin-theme-color); border-radius: 1px; } .is-outline-mode .block-editor-block-list__block:not(.remove-outline).is-selected { cursor: unset; } .is-outline-mode .block-editor-block-list__block:not(.remove-outline).is-selected::after { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); top: 1px; right: 1px; left: 1px; bottom: 1px; border-radius: 1px; } .is-outline-mode .block-editor-block-list__block:not(.remove-outline).is-selected:focus::after { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .is-focus-mode .block-editor-block-list__block:not(.has-child-selected) { opacity: 0.5; transition: opacity 0.1s linear; } @media (prefers-reduced-motion: reduce) { .is-focus-mode .block-editor-block-list__block:not(.has-child-selected) { transition-duration: 0s; transition-delay: 0s; } } .is-focus-mode .block-editor-block-list__block:not(.has-child-selected) .block-editor-block-list__block, .is-focus-mode .block-editor-block-list__block:not(.has-child-selected).is-selected, .is-focus-mode .block-editor-block-list__block:not(.has-child-selected).is-multi-selected { opacity: 1; } .is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity { opacity: 0.5; transition: opacity 0.1s linear; } @media (prefers-reduced-motion: reduce) { .is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity { transition-duration: 0s; transition-delay: 0s; } } .is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity.is-active-entity, .is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity.has-child-selected, .is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity:not(.has-child-selected) .block-editor-block-list__block, .is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity.is-active-entity .block-editor-block-list__block, .is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity .is-active-entity .block-editor-block-list__block { opacity: 1; } .wp-block[data-align=left] > *, .wp-block[data-align=right] > * { z-index: 21; } .wp-site-blocks > [data-align=left] { float: right; margin-left: 2em; } .wp-site-blocks > [data-align=right] { float: left; margin-right: 2em; } .wp-site-blocks > [data-align=center] { justify-content: center; margin-right: auto; margin-left: auto; } /** * In-Canvas Inserter */ .block-editor-block-list .block-editor-inserter { margin: 8px; cursor: move; cursor: grab; } @keyframes block-editor-inserter__toggle__fade-in-animation { from { opacity: 0; } to { opacity: 1; } } .wp-block .block-list-appender .block-editor-inserter__toggle { animation: block-editor-inserter__toggle__fade-in-animation 0.1s ease; animation-fill-mode: forwards; } @media (prefers-reduced-motion: reduce) { .wp-block .block-list-appender .block-editor-inserter__toggle { animation-duration: 1ms; animation-delay: 0s; } } .block-editor-block-list__block:not(.is-selected):not(.has-child-selected) .block-editor-default-block-appender { display: none; } .block-editor-block-list__block:not(.is-selected):not(.has-child-selected) .block-editor-default-block-appender .block-editor-inserter__toggle { opacity: 0; transform: scale(0); } .block-editor-block-list__block .block-editor-block-list__block-html-textarea { display: block; margin: 0; padding: 12px; width: 100%; border: none; outline: none; border-radius: 2px; box-shadow: inset 0 0 0 1px #1e1e1e; resize: none; overflow: hidden; font-family: Menlo, Consolas, monaco, monospace; font-size: 15px; line-height: 1.5; transition: padding 0.2s linear; } @media (prefers-reduced-motion: reduce) { .block-editor-block-list__block .block-editor-block-list__block-html-textarea { transition-duration: 0s; transition-delay: 0s; } } .block-editor-block-list__block .block-editor-block-list__block-html-textarea:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } /** * Warnings. */ .block-editor-block-list__block .block-editor-warning { z-index: 5; position: relative; } .block-editor-block-list__block .block-editor-warning.block-editor-block-list__block-crash-warning { margin-bottom: auto; } /** * Insertion Point. */ .block-editor-block-list__insertion-point { position: absolute; } .block-editor-block-list__insertion-point-indicator { position: absolute; background: var(--wp-admin-theme-color); } .block-editor-block-list__insertion-point.is-vertical > .block-editor-block-list__insertion-point-indicator { top: 50%; height: 1px; } .block-editor-block-list__insertion-point.is-horizontal > .block-editor-block-list__insertion-point-indicator { top: 0; left: 0; right: 50%; width: 1px; } .block-editor-block-list__insertion-point-inserter { display: none; position: absolute; justify-content: center; top: calc(50% - 12px); right: calc(50% - 12px); } @media (min-width: 480px) { .block-editor-block-list__insertion-point-inserter { display: flex; } } .block-editor-block-list__block-popover-inserter { position: absolute; top: -9999em; margin-bottom: 14px; } .block-editor-block-list__block-popover-inserter.is-visible { position: static; } .block-editor-block-list__empty-block-inserter .block-editor-inserter__toggle.components-button.has-icon, .block-editor-default-block-appender .block-editor-inserter__toggle.components-button.has-icon, .block-editor-block-list__insertion-point-inserter .block-editor-inserter__toggle.components-button.has-icon, .block-editor-block-list__block-popover-inserter .block-editor-inserter__toggle.components-button.has-icon { background: #1e1e1e; border-radius: 2px; color: #fff; padding: 0; min-width: 24px; height: 24px; } .block-editor-block-list__empty-block-inserter .block-editor-inserter__toggle.components-button.has-icon:hover, .block-editor-default-block-appender .block-editor-inserter__toggle.components-button.has-icon:hover, .block-editor-block-list__insertion-point-inserter .block-editor-inserter__toggle.components-button.has-icon:hover, .block-editor-block-list__block-popover-inserter .block-editor-inserter__toggle.components-button.has-icon:hover { color: #fff; background: var(--wp-admin-theme-color); } .block-editor-block-list__insertion-point-inserter .block-editor-inserter__toggle.components-button.has-icon { background: var(--wp-admin-theme-color); } .block-editor-block-list__insertion-point-inserter .block-editor-inserter__toggle.components-button.has-icon:hover { background: #1e1e1e; } /** * Block Toolbar when contextual. */ .block-editor-block-contextual-toolbar { display: inline-flex; border: 1px solid #1e1e1e; border-radius: 2px; background-color: #fff; } .block-editor-block-contextual-toolbar .block-editor-block-toolbar .components-toolbar-group, .block-editor-block-contextual-toolbar .block-editor-block-toolbar .components-toolbar { border-left-color: #1e1e1e; } .block-editor-block-contextual-toolbar.is-fixed { position: sticky; top: 0; width: 100%; z-index: 31; min-height: 48px; display: block; border: none; border-bottom: 1px solid #e0e0e0; border-radius: 0; } .block-editor-block-contextual-toolbar.is-fixed .block-editor-block-toolbar .components-toolbar-group, .block-editor-block-contextual-toolbar.is-fixed .block-editor-block-toolbar .components-toolbar { border-left-color: #e0e0e0; } .block-editor-block-contextual-toolbar .block-editor-block-mover-button { overflow: hidden; } .block-editor-block-contextual-toolbar .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.block-editor-block-mover-button { min-width: 24px; width: 24px; } .block-editor-block-contextual-toolbar .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.block-editor-block-mover-button svg { min-width: 24px; } .block-editor-block-contextual-toolbar .block-editor-block-mover:not(.is-horizontal) .block-editor-block-mover-button:focus::before { right: 0 !important; min-width: 0; width: 100%; } @media (min-width: 600px) { .block-editor-block-contextual-toolbar .block-editor-block-mover:not(.is-horizontal) .block-editor-block-mover-button.is-up-button svg { top: 5px; } .block-editor-block-contextual-toolbar .block-editor-block-mover:not(.is-horizontal) .block-editor-block-mover-button.is-down-button svg { bottom: 5px; } } /** * Block Label for Navigation/Selection Mode */ .block-editor-block-list__block-selection-button { display: inline-flex; padding: 0 12px; z-index: 22; border-radius: 2px; background-color: #1e1e1e; font-size: 13px; height: 48px; } .block-editor-block-list__block-selection-button .block-editor-block-list__block-selection-button__content { margin: auto; display: inline-flex; align-items: center; } .block-editor-block-list__block-selection-button .block-editor-block-list__block-selection-button__content > .components-flex__item { margin-left: 6px; } .block-editor-block-list__block-selection-button .components-button.has-icon.block-selection-button_drag-handle { cursor: grab; padding: 0; height: 24px; min-width: 24px; margin-right: -2px; } .block-editor-block-list__block-selection-button .components-button.has-icon.block-selection-button_drag-handle svg { min-width: 18px; min-height: 18px; } .block-editor-block-list__block-selection-button .block-editor-block-icon { font-size: 13px; color: #fff; height: 48px; } .block-editor-block-list__block-selection-button .components-button { min-width: 36px; color: #fff; height: 48px; display: flex; } .block-editor-block-list__block-selection-button .components-button:focus { box-shadow: none; border: none; } .block-editor-block-list__block-selection-button .components-button:active { color: #fff; } .block-editor-block-list__block-selection-button .block-selection-button_select-button.components-button { padding: 0; } /** * Popovers. */ .block-editor-block-list__insertion-point-popover.is-without-arrow { z-index: 28; position: absolute; pointer-events: none; } .block-editor-block-list__insertion-point-popover.is-without-arrow * { pointer-events: none; } .block-editor-block-list__insertion-point-popover.is-without-arrow .is-with-inserter { pointer-events: all; } .block-editor-block-list__insertion-point-popover.is-without-arrow .is-with-inserter * { pointer-events: all; } .block-editor-block-list__insertion-point-popover.is-without-arrow .components-popover__content.components-popover__content { background: none; border: none; box-shadow: none; overflow-y: visible; margin-right: 0; } @keyframes hide-during-dragging { to { position: fixed; transform: translate(-9999px, 9999px); } } .components-popover.block-editor-block-list__block-popover { z-index: 31; position: absolute; } .components-popover.block-editor-block-list__block-popover .components-popover__content { margin: 0 !important; min-width: auto; width: max-content; background: none; border: none; box-shadow: none; overflow-y: visible; pointer-events: none; } .components-popover.block-editor-block-list__block-popover .components-popover__content .block-editor-block-list__block-selection-button, .components-popover.block-editor-block-list__block-popover .components-popover__content .block-editor-block-contextual-toolbar, .components-popover.block-editor-block-list__block-popover .components-popover__content .block-editor-block-list__empty-block-inserter { pointer-events: all; } .components-popover.block-editor-block-list__block-popover .components-popover__content .block-editor-block-list__block-selection-button, .components-popover.block-editor-block-list__block-popover .components-popover__content .block-editor-block-contextual-toolbar { margin-top: 12px; margin-bottom: 12px; } .components-popover.block-editor-block-list__block-popover.is-insertion-point-visible { visibility: hidden; } .is-dragging-components-draggable .components-popover.block-editor-block-list__block-popover { opacity: 0; animation: hide-during-dragging 1ms linear forwards; } .is-dragging-components-draggable .components-tooltip { display: none; } .is-vertical .block-list-appender { width: 24px; margin-left: auto; margin-top: 12px; margin-right: 12px; } .block-list-appender > .block-editor-inserter { display: block; } .block-editor-block-list__block:not(.is-selected):not(.has-child-selected):not(.block-editor-block-list__layout) .block-editor-block-list__layout > .block-list-appender .block-list-appender__toggle { opacity: 0; transform: scale(0); } .block-editor-block-breadcrumb { list-style: none; padding: 0; margin: 0; } .block-editor-block-breadcrumb li { display: inline-flex; margin: 0; } .block-editor-block-breadcrumb li .block-editor-block-breadcrumb__separator { fill: currentColor; margin-right: -4px; margin-left: -4px; transform: scaleX(-1);; } .block-editor-block-breadcrumb li:last-child .block-editor-block-breadcrumb__separator { display: none; } .block-editor-block-breadcrumb__button.components-button { height: 24px; line-height: 24px; padding: 0; position: relative; } .block-editor-block-breadcrumb__button.components-button:hover:not(:disabled) { text-decoration: underline; box-shadow: none; } .block-editor-block-breadcrumb__button.components-button:focus { box-shadow: none; } .block-editor-block-breadcrumb__button.components-button:focus::before { content: ""; display: block; position: absolute; border-radius: 2px; top: 1px; left: 1px; bottom: 1px; right: 1px; box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .block-editor-block-breadcrumb__current { cursor: default; } .block-editor-block-breadcrumb__button.components-button, .block-editor-block-breadcrumb__current { color: #1e1e1e; padding: 0 8px; font-size: inherit; } .block-editor-block-card { display: flex; align-items: flex-start; } .block-editor-block-card__content { flex-grow: 1; margin-bottom: 4px; } .block-editor-block-card__title { font-weight: 500; } .block-editor-block-card__title.block-editor-block-card__title { line-height: 24px; margin: 0 0 4px; } .block-editor-block-card__description { font-size: 13px; } .block-editor-block-card .block-editor-block-icon { flex: 0 0 24px; margin-right: 0; margin-left: 12px; width: 24px; height: 24px; } /** * Invalid block comparison */ .block-editor-block-compare { height: auto; } .block-editor-block-compare__wrapper { display: flex; padding-bottom: 16px; } .block-editor-block-compare__wrapper > div { display: flex; justify-content: space-between; flex-direction: column; width: 50%; padding: 0 0 0 16px; min-width: 200px; max-width: 600px; } .block-editor-block-compare__wrapper > div button { float: left; } .block-editor-block-compare__wrapper .block-editor-block-compare__converted { border-right: 1px solid #ddd; padding-right: 15px; padding-left: 0; } .block-editor-block-compare__wrapper .block-editor-block-compare__html { font-family: Menlo, Consolas, monaco, monospace; font-size: 12px; color: #1e1e1e; border-bottom: 1px solid #ddd; padding-bottom: 15px; line-height: 1.7; } .block-editor-block-compare__wrapper .block-editor-block-compare__html span { background-color: #e6ffed; padding-top: 3px; padding-bottom: 3px; } .block-editor-block-compare__wrapper .block-editor-block-compare__html span.block-editor-block-compare__added { background-color: #acf2bd; } .block-editor-block-compare__wrapper .block-editor-block-compare__html span.block-editor-block-compare__removed { background-color: #cc1818; } .block-editor-block-compare__wrapper .block-editor-block-compare__preview { padding: 0; padding-top: 16px; } .block-editor-block-compare__wrapper .block-editor-block-compare__preview p { font-size: 12px; margin-top: 0; } .block-editor-block-compare__wrapper .block-editor-block-compare__action { margin-top: 16px; } .block-editor-block-compare__wrapper .block-editor-block-compare__heading { font-size: 1em; font-weight: 400; margin: 0.67em 0; } .block-editor-block-content-overlay.overlay-active::before { content: ""; position: absolute; top: 0; right: 0; width: 100%; height: 100%; background: transparent; border: none; border-radius: 2px; z-index: 10; pointer-events: none; } .block-editor-block-content-overlay:hover:not(.is-dragging-blocks).overlay-active::before, .block-editor-block-content-overlay.parent-highlighted.overlay-active::before { background: rgba(var(--wp-admin-theme-color--rgb), 0.1); box-shadow: 0 0 0 1px var(--wp-admin-theme-color) inset; } .block-editor-block-content-overlay.overlay-active:not(.is-dragging-blocks) * { pointer-events: none; } .block-editor-block-content-overlay.is-dragging-blocks { box-shadow: 0 0 0 1px var(--wp-admin-theme-color); } .block-editor-block-draggable-chip-wrapper { position: absolute; top: -24px; right: 0; } .block-editor-block-draggable-chip { background-color: #1e1e1e; border-radius: 2px; box-shadow: 0 6px 8px rgba(0, 0, 0, 0.3); color: #fff; cursor: grabbing; display: inline-flex; height: 48px; padding: 0 13px; -webkit-user-select: none; user-select: none; } .block-editor-block-draggable-chip svg { fill: currentColor; } .block-editor-block-draggable-chip .block-editor-block-draggable-chip__content { margin: auto; justify-content: flex-start; } .block-editor-block-draggable-chip .block-editor-block-draggable-chip__content > .components-flex__item { margin-left: 6px; } .block-editor-block-draggable-chip .block-editor-block-draggable-chip__content > .components-flex__item:last-child { margin-left: 0; } .block-editor-block-draggable-chip .block-editor-block-draggable-chip__content .block-editor-block-icon svg { min-width: 18px; min-height: 18px; } .block-editor-block-draggable-chip .components-flex__item { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; } .block-editor-block-list__layout .is-dragging { background-color: currentColor !important; opacity: 0.05 !important; border-radius: 2px !important; pointer-events: none !important; } .block-editor-block-list__layout .is-dragging::selection { background: transparent !important; } .block-editor-block-list__layout .is-dragging::after { content: none !important; } .block-editor-block-mobile-toolbar { display: flex; flex-direction: row; border-left: 1px solid #ddd; } .block-editor-block-mobile-toolbar .block-editor-block-mover-button { width: 36px; height: 36px; border-radius: 2px; padding: 3px; margin: 0; justify-content: center; align-items: center; } .block-editor-block-mobile-toolbar .block-editor-block-mover-button .dashicon { margin: auto; } .block-editor-block-mobile-toolbar .block-editor-block-mover { display: flex; margin-left: auto; } .block-editor-block-mobile-toolbar .block-editor-block-mover .block-editor-block-mover-button { float: right; } .block-editor-block-mover-button__description { display: none; } .block-editor-block-mover-button.has-icon { padding: 0; } .block-editor-block-mover { display: inline-flex; flex-direction: row; } .block-editor-block-mover .block-editor-block-mover__move-button-container, .block-editor-block-mover .components-toolbar { flex: 1; flex-direction: row; border-left: none !important; } @media (min-width: 600px) { .block-editor-block-mover .block-editor-block-mover__move-button-container, .block-editor-block-mover .components-toolbar { flex-direction: column; } } .block-editor-block-mover.is-horizontal .block-editor-block-mover__move-button-container, .block-editor-block-mover.is-horizontal .components-toolbar { flex-direction: row; } .block-editor-block-mover .block-editor-block-mover-button.block-editor-block-mover-button { padding-left: 0; padding-right: 0; min-width: 36px; } @media (min-width: 600px) { .block-editor-block-mover .block-editor-block-mover-button { height: 24px; width: 42px; padding-left: 11px !important; padding-right: 6px !important; } .block-editor-block-mover .block-editor-block-mover-button.block-editor-block-mover-button { min-width: 42px; } } @media (min-width: 600px) { .block-editor-block-mover .block-editor-block-mover-button::before { right: 8px !important; left: 8px !important; } } .block-editor-block-mover .block-editor-block-mover__drag-handle { width: 24px; cursor: grab; min-width: 24px !important; padding: 0 !important; } .block-editor-block-mover .block-editor-block-mover__drag-handle:focus::before { right: 0 !important; left: 0 !important; } @media (min-width: 600px) { .block-editor-block-mover .components-toolbar-group .block-editor-block-mover-button, .block-editor-block-mover .components-toolbar .block-editor-block-mover-button { margin: 0 0 0 auto; } .block-editor-block-mover .components-toolbar-group .block-editor-block-mover-button.is-up-button::before, .block-editor-block-mover .components-toolbar .block-editor-block-mover-button.is-up-button::before { bottom: 0; height: calc(100% - 1px); } .block-editor-block-mover .components-toolbar-group .block-editor-block-mover-button.is-down-button::before, .block-editor-block-mover .components-toolbar .block-editor-block-mover-button.is-down-button::before { top: 0; height: calc(100% - 1px); } } .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.has-icon { height: 48px; width: 24px; padding-right: 0; padding-left: 0; } .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.has-icon::before { top: 1px; bottom: 1px; min-width: 0; width: auto; height: auto; } .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.is-up-button.has-icon svg { margin-right: 0; margin-left: -8px; margin-bottom: 0; } .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.is-up-button.has-icon::before { right: 0 !important; left: 0 !important; } .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.is-down-button.has-icon svg { margin-right: -8px; margin-left: 0; margin-top: 0; } .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.is-down-button.has-icon::before { right: 0 !important; left: 0 !important; width: calc(100% + 1px); } .block-editor-block-navigation__container { min-width: 280px; } .block-editor-block-navigation__label { margin: 0 0 12px; color: #757575; text-transform: uppercase; font-size: 11px; font-weight: 500; } .block-editor-block-parent-selector { background: #fff; border-radius: 2px; } .block-editor-block-parent-selector .block-editor-block-parent-selector__button { width: 48px; height: 48px; border: 1px solid #1e1e1e; border-radius: 2px; } .block-editor-block-patterns-list__list-item { cursor: pointer; margin-bottom: 24px; } .block-editor-block-patterns-list__list-item.is-placeholder { min-height: 100px; } .block-editor-block-patterns-list__list-item[draggable=true] .block-editor-block-preview__container { cursor: grab; } .block-editor-block-patterns-list__item { height: 100%; } .block-editor-block-patterns-list__item .block-editor-block-preview__container { display: flex; align-items: center; overflow: hidden; border-radius: 2px; border: 1px solid #f0f0f0; } .block-editor-block-patterns-list__item .block-editor-block-patterns-list__item-title { padding-top: 8px; font-size: 12px; text-align: center; } .block-editor-block-patterns-list__item:hover .block-editor-block-preview__container { border: 1px solid var(--wp-admin-theme-color); } .block-editor-block-patterns-list__item:focus .block-editor-block-preview__container { box-shadow: inset 0 0 0 1px #fff, 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); outline: 2px solid transparent; } .block-editor-block-patterns-list__item:hover .block-editor-block-patterns-list__item-title, .block-editor-block-patterns-list__item:focus .block-editor-block-patterns-list__item-title { color: var(--wp-admin-theme-color); } .block-editor-block-preview__container { position: relative; width: 100%; overflow: hidden; } .block-editor-block-preview__container .block-editor-block-preview__content { top: 0; right: 0; transform-origin: top right; text-align: initial; margin: 0; overflow: visible; min-height: auto; } .block-editor-block-preview__container .block-editor-block-preview__content .block-editor-block-list__insertion-point, .block-editor-block-preview__container .block-editor-block-preview__content .block-editor-block-drop-zone, .block-editor-block-preview__container .block-editor-block-preview__content .reusable-block-indicator, .block-editor-block-preview__container .block-editor-block-preview__content .block-list-appender { display: none; } .block-editor-block-preview__content-iframe .block-list-appender { display: none; } .block-editor-block-preview__live-content * { pointer-events: none; } .block-editor-block-preview__live-content .block-list-appender { display: none; } .block-editor-block-preview__live-content .components-button:disabled { opacity: initial; } .block-editor-block-preview__live-content .components-placeholder, .block-editor-block-preview__live-content .block-editor-block-list__block[data-empty=true] { display: none; } .block-editor-block-settings-menu__popover .components-dropdown-menu__menu { padding: 0; } .block-editor-block-styles { display: flex; flex-wrap: wrap; justify-content: space-between; } .block-editor-block-styles__item { width: calc(50% - 4px); margin: 4px 0; flex-shrink: 0; cursor: pointer; overflow: hidden; border-radius: 2px; padding: 6px; display: flex; flex-direction: column; } .block-editor-block-styles__item:focus { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); outline: 2px solid transparent; } .block-editor-block-styles__item:hover .block-editor-block-styles__item-preview { border-color: var(--wp-admin-theme-color); } .block-editor-block-styles__item.is-active .block-editor-block-styles__item-label { font-weight: bold; } .block-editor-block-styles__item.is-active .block-editor-block-styles__item-preview { margin: 0; border: 2px solid #1e1e1e; } .block-editor-block-styles__item .block-editor-block-preview__container { cursor: inherit; } .block-editor-block-styles__item-preview { outline: 1px solid transparent; padding: 0; margin: 2px; border-radius: 2px; display: flex; overflow: hidden; background: #fff; align-items: center; flex-grow: 1; min-height: 80px; max-height: 160px; } .block-editor-block-switcher__styles__menugroup { position: relative; } .block-editor-block-styles__item-label { text-align: center; padding: 4px 0; } .block-editor-block-switcher { position: relative; } .block-editor-block-switcher__no-switcher-icon, .block-editor-block-switcher__toggle { position: relative; } .components-button.block-editor-block-switcher__toggle, .components-button.block-editor-block-switcher__no-switcher-icon { margin: 0; display: block; height: 48px; } .components-button.block-editor-block-switcher__toggle .block-editor-block-icon, .components-button.block-editor-block-switcher__no-switcher-icon .block-editor-block-icon { margin: auto; } .block-editor-block-switcher__toggle-text { margin-right: 8px; } .show-icon-labels .block-editor-block-switcher__toggle-text { display: none; } .show-icon-labels .block-editor-block-toolbar .block-editor-block-switcher .components-button.has-icon::after { font-size: 14px; } .block-editor-block-switcher__popover { margin-right: 6px; } .components-button.block-editor-block-switcher__no-switcher-icon { width: 48px; } .components-button.block-editor-block-switcher__no-switcher-icon .block-editor-blocks-icon { margin-left: auto; margin-right: auto; } .components-button.block-editor-block-switcher__no-switcher-icon:disabled { opacity: 1; } .components-button.block-editor-block-switcher__no-switcher-icon:disabled, .components-button.block-editor-block-switcher__no-switcher-icon:disabled .block-editor-block-icon.has-colors { color: #1e1e1e; } .block-editor-block-toolbar .components-toolbar-group .components-button.block-editor-block-switcher__no-switcher-icon.has-icon.has-icon .block-editor-block-icon, .block-editor-block-toolbar .components-toolbar .components-button.block-editor-block-switcher__no-switcher-icon.has-icon.has-icon .block-editor-block-icon, .block-editor-block-toolbar .components-toolbar-group .components-button.block-editor-block-switcher__toggle.has-icon.has-icon .block-editor-block-icon, .block-editor-block-toolbar .components-toolbar .components-button.block-editor-block-switcher__toggle.has-icon.has-icon .block-editor-block-icon { height: 100%; position: relative; margin: 0 auto; display: flex; align-items: center; min-width: 100%; } .block-editor-block-toolbar .components-toolbar-group .components-button.block-editor-block-switcher__no-switcher-icon.has-icon.has-icon::before, .block-editor-block-toolbar .components-toolbar .components-button.block-editor-block-switcher__no-switcher-icon.has-icon.has-icon::before, .block-editor-block-toolbar .components-toolbar-group .components-button.block-editor-block-switcher__toggle.has-icon.has-icon::before, .block-editor-block-toolbar .components-toolbar .components-button.block-editor-block-switcher__toggle.has-icon.has-icon::before { top: 8px; left: 8px; bottom: 8px; right: 8px; } .components-popover.block-editor-block-switcher__popover .components-popover__content { min-width: 300px; } .components-popover.block-editor-block-switcher__popover .components-popover__content > div { min-width: auto; display: flex; background: #fff; padding: 0; } .components-popover.block-editor-block-switcher__popover .components-popover__content > div .components-menu-group { margin: 0; } .block-editor-block-switcher__popover .components-popover__content .block-editor-block-styles { margin: 0 -3px; } .block-editor-block-switcher__popover .components-popover__content .components-panel__body { border: 0; position: relative; z-index: 1; } .block-editor-block-switcher__popover .components-popover__content .components-panel__body + .components-panel__body { border-top: 1px solid #e0e0e0; } .block-editor-block-switcher__popover__preview__parent .block-editor-block-switcher__popover__preview__container { position: absolute; top: -12px; right: calc(100% + 32px); } .block-editor-block-switcher__preview__popover { display: none; } .block-editor-block-switcher__preview__popover.components-popover { margin-right: 4px; margin-top: 11px; } @media (min-width: 782px) { .block-editor-block-switcher__preview__popover { display: block; } } .block-editor-block-switcher__preview__popover .components-popover__content { box-shadow: none; border: 1px solid #1e1e1e; background: #fff; border-radius: 2px; } .block-editor-block-switcher__preview__popover .block-editor-block-switcher__preview { width: 300px; height: auto; max-height: 500px; padding: 16px; } .block-editor-block-switcher__preview-title { margin-bottom: 12px; color: #757575; text-transform: uppercase; font-size: 11px; font-weight: 500; } .block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__no-switcher-icon { width: 48px; } .block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__no-switcher-icon, .block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__toggle { height: 48px; } .block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__no-switcher-icon .block-editor-block-icon, .block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__no-switcher-icon .block-editor-block-switcher__transform, .block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__toggle .block-editor-block-icon, .block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__toggle .block-editor-block-switcher__transform { width: 48px; height: 48px; } .block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__no-switcher-icon .block-editor-block-switcher__transform, .block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__toggle .block-editor-block-switcher__transform { padding: 12px; } .block-editor-block-switcher__preview-patterns-container { padding-bottom: 16px; } .block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item { margin-top: 16px; } .block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-preview__container { cursor: pointer; } .block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-switcher__preview-patterns-container-list__item { height: 100%; border-radius: 2px; transition: all 0.05s ease-in-out; position: relative; border: 1px solid transparent; } .block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-switcher__preview-patterns-container-list__item:hover, .block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-switcher__preview-patterns-container-list__item:focus { box-shadow: inset 0 0 0 1px #fff, 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); outline: 2px solid transparent; } .block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-switcher__preview-patterns-container-list__item:hover { box-shadow: inset 0 0 0 1px #fff, 0 0 0 var(--wp-admin-border-width-focus) #1e1e1e; } .block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-switcher__preview-patterns-container-list__item .block-editor-block-switcher__preview-patterns-container-list__item-title { padding: 4px; font-size: 12px; text-align: center; cursor: pointer; } .block-editor-block-types-list > [role=presentation] { overflow: hidden; display: flex; flex-wrap: wrap; } .block-editor-block-variation-picker .components-placeholder__instructions { margin-bottom: 0; } .block-editor-block-variation-picker .components-placeholder__fieldset { flex-direction: column; } .block-editor-block-variation-picker.has-many-variations .components-placeholder__fieldset { max-width: 90%; } .block-editor-block-variation-picker__variations.block-editor-block-variation-picker__variations { display: flex; justify-content: flex-start; flex-direction: row; flex-wrap: wrap; width: 100%; margin: 16px 0; padding: 0; list-style: none; } .block-editor-block-variation-picker__variations.block-editor-block-variation-picker__variations > li { list-style: none; margin: 8px 0 0 20px; flex-shrink: 1; width: 75px; text-align: center; } .block-editor-block-variation-picker__variations.block-editor-block-variation-picker__variations > li button { display: inline-flex; margin-left: 0; } .block-editor-block-variation-picker__variations.block-editor-block-variation-picker__variations .block-editor-block-variation-picker__variation { padding: 8px; } .block-editor-block-variation-picker__variations.block-editor-block-variation-picker__variations .block-editor-block-variation-picker__variation-label { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 12px; display: block; line-height: 1.4; } .block-editor-block-variation-picker__variation { width: 100%; } .block-editor-block-variation-picker__variation.components-button.has-icon { justify-content: center; width: auto; } .block-editor-block-variation-picker__variation.components-button.has-icon.is-secondary { background-color: #fff; } .block-editor-block-variation-picker__variation.components-button { height: auto; padding: 0; } .block-editor-block-variation-picker__variation::before { content: ""; padding-bottom: 100%; } .block-editor-block-variation-picker__variation:first-child { margin-right: 0; } .block-editor-block-variation-picker__variation:last-child { margin-left: 0; } .block-editor-block-pattern-setup { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; width: 100%; border-radius: 2px; box-shadow: inset 0 0 0 1px #1e1e1e; outline: 1px solid transparent; } .block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__toolbar { justify-content: center; } .block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__container { display: grid; grid-template-columns: 1fr 1fr; grid-gap: 16px; padding: 16px; max-height: 550px; overflow: auto; margin: 0 1px 1px 1px; width: calc(100% - 2px); background: #fff; } .block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__container .block-editor-block-preview__container, .block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__container div[role=button] { cursor: pointer; } .block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__container .block-editor-block-pattern-setup-list__item-title { padding: 4px; font-size: 12px; text-align: center; } .block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__container .block-editor-block-preview__container { border-radius: 2px; border: 1px solid #ddd; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__toolbar { box-sizing: border-box; position: relative; padding: 16px; width: 100%; text-align: right; margin: 0; color: #1e1e1e; border-radius: 2px 2px 0 0; background-color: #fff; box-shadow: inset 0 0 0 1px #1e1e1e; outline: 1px solid transparent; display: flex; flex-direction: row; align-items: center; justify-content: space-between; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__toolbar .block-editor-block-pattern-setup__display-controls { display: flex; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__toolbar .block-editor-block-pattern-setup__navigation, .block-editor-block-pattern-setup .block-editor-block-pattern-setup__toolbar .block-editor-block-pattern-setup__actions { width: calc(50% - 36px); display: flex; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__toolbar .block-editor-block-pattern-setup__actions { justify-content: flex-end; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__container { display: flex; flex-direction: column; width: 100%; box-sizing: border-box; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container { overflow: hidden; position: relative; padding: 0; margin: 0; list-style: none; transform-style: preserve-3d; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container * { box-sizing: border-box; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container .pattern-slide { opacity: 0; position: absolute; top: 0; width: 100%; margin: auto; padding: 16px; transition: transform 0.5s, opacity 0.5s, z-index 0.5s; z-index: 100; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container .pattern-slide.active-slide { opacity: 1; position: relative; z-index: 102; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container .pattern-slide.previous-slide { transform: translateX(100%); z-index: 101; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container .pattern-slide.next-slide { transform: translateX(-100%); z-index: 101; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .block-list-appender { display: none; } .block-editor-block-variation-transforms { padding: 0 56px 16px 16px; width: 100%; } .block-editor-block-variation-transforms .components-dropdown-menu__toggle { border: 1px solid #757575; border-radius: 2px; min-height: 30px; width: 100%; position: relative; text-align: right; justify-content: left; padding: 6px 12px; } .block-editor-block-variation-transforms .components-dropdown-menu__toggle.components-dropdown-menu__toggle { padding-left: 24px; } .block-editor-block-variation-transforms .components-dropdown-menu__toggle:focus:not(:disabled) { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 calc(var(--wp-admin-border-width-focus) - 1px) var(--wp-admin-theme-color); } .block-editor-block-variation-transforms .components-dropdown-menu__toggle svg { height: 100%; padding: 0; position: absolute; left: 0; top: 0; } .block-editor-block-variation-transforms__popover .components-popover__content { min-width: 230px; } .components-border-radius-control { margin-bottom: 12px; } .components-border-radius-control legend { padding-bottom: 4px; } .components-border-radius-control .components-border-radius-control__wrapper { display: flex; justify-content: space-between; align-items: flex-start; } .components-border-radius-control .components-border-radius-control__wrapper > .components-unit-control-wrapper { width: calc(50% - 26px); margin-bottom: 0; } .components-border-radius-control .components-border-radius-control__wrapper .components-range-control { width: calc(50% - 26px); margin-bottom: 0; } .components-border-radius-control .components-border-radius-control__wrapper .components-range-control .components-base-control__field { margin-bottom: 0; height: 30px; } .components-border-radius-control .components-border-radius-control__wrapper .components-range-control .components-range-control__wrapper { margin-left: 10px; } .components-border-radius-control .components-border-radius-control__wrapper > span { flex: 0 0 auto; } .components-border-radius-control .components-border-radius-control__input-controls-wrapper { display: flex; width: 70%; flex-wrap: wrap; } .components-border-radius-control .components-border-radius-control__input-controls-wrapper .components-unit-control-wrapper { width: calc(50% - 8px); margin-bottom: 8px; margin-left: 8px; } .components-border-radius-control .component-border-radius-control__linked-button.has-icon { display: flex; justify-content: center; } .components-border-radius-control .component-border-radius-control__linked-button.has-icon svg { margin-left: 0; } .components-border-style-control legend { line-height: 1.4; margin-bottom: 8px; padding: 0; } .components-border-style-control .components-border-style-control__buttons { display: inline-flex; margin-bottom: 24px; } .components-border-style-control .components-border-style-control__buttons .components-button.has-icon { min-width: 30px; height: 30px; padding: 3px; margin-left: 4px; } .block-editor-button-block-appender { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 8px; width: 100%; height: auto; color: #1e1e1e; box-shadow: inset 0 0 0 1px #1e1e1e; } .is-dark-theme .block-editor-button-block-appender { color: rgba(255, 255, 255, 0.65); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.65); } .block-editor-button-block-appender:hover { color: var(--wp-admin-theme-color); box-shadow: inset 0 0 0 1px var(--wp-admin-theme-color); } .block-editor-button-block-appender:focus { box-shadow: inset 0 0 0 2px var(--wp-admin-theme-color); } .block-editor-button-block-appender:active { color: #000; } .block-editor-color-gradient-control .block-editor-color-gradient-control__color-indicator { margin-bottom: 12px; } .block-editor-panel-color-gradient-settings .component-color-indicator { vertical-align: text-bottom; } .block-editor-panel-color-gradient-settings__panel-title .component-color-indicator { display: inline-block; } .block-editor-panel-color-gradient-settings.is-opened .block-editor-panel-color-gradient-settings__panel-title .component-color-indicator { display: none; } @media screen and (min-width: 782px) { .block-editor-panel-color-gradient-settings .components-circular-option-picker__swatches { display: grid; grid-template-columns: repeat(6, 28px); justify-content: space-between; } } .block-editor-block-inspector .block-editor-panel-color-gradient-settings .components-base-control { margin-bottom: inherit; } .block-editor-panel-color-gradient-settings .block-editor-panel-color-gradient-settings__dropdown { display: block; } .block-editor-panel-color-gradient-settings__dropdown { width: 100%; } .block-editor-panel-color-gradient-settings__dropdown-content .components-popover__content > div { width: 280px; } @media (min-width: 782px) { .block-editor-panel-color-gradient-settings__dropdown-content .components-popover__content { margin-left: 156px !important; } .block-editor-panel-color-gradient-settings__dropdown-content.is-from-top .components-popover__content { margin-top: -60px !important; } .block-editor-panel-color-gradient-settings__dropdown-content.is-from-bottom .components-popover__content { margin-bottom: -60px !important; } } .block-editor-panel-color-gradient-settings__dropdown:last-child > div { border-bottom-width: 0; } .block-editor-panel-color-gradient-settings__item { padding-top: 12px !important; padding-bottom: 12px !important; } .block-editor-panel-color-gradient-settings__item .block-editor-panel-color-gradient-settings__color-indicator { background: linear-gradient(45deg, transparent 48%, #ddd 48%, #ddd 52%, transparent 52%); } .block-editor-panel-color-gradient-settings__item.is-open { background: #f0f0f0; color: var(--wp-admin-theme-color); } .block-editor-contrast-checker > .components-notice { margin: 0; } /** * Default block appender. * * This component shows up in 3 places: * - the black plus that sits at the end of the canvas, if the last block isn't a paragraph * - on the right, inside empty paragraphs * - absolute positioned and blue inside nesting containers */ .block-editor-default-block-appender { clear: both; margin-right: auto; margin-left: auto; position: relative; } .block-editor-default-block-appender[data-root-client-id=""] .block-editor-default-block-appender__content:hover { outline: 1px solid transparent; } .block-editor-default-block-appender .block-editor-default-block-appender__content { opacity: 0.62; } .block-editor-default-block-appender .components-drop-zone__content-icon { display: none; } .block-editor-default-block-appender .block-editor-inserter, .block-editor-block-list__empty-block-inserter.block-editor-block-list__empty-block-inserter { position: absolute; top: 0; left: 0; line-height: 0; } .block-editor-default-block-appender .block-editor-inserter:disabled, .block-editor-block-list__empty-block-inserter.block-editor-block-list__empty-block-inserter:disabled { display: none; } /** * Fixed position appender. * These styles apply to all in-canvas inserters that exist inside nesting containers. */ .block-editor-block-list__block .block-list-appender { position: absolute; list-style: none; padding: 0; z-index: 2; bottom: 0; left: 0; } .block-editor-block-list__block .block-list-appender.block-list-appender { margin: 0; line-height: 0; } .block-editor-block-list__block .block-list-appender .block-editor-default-block-appender { height: 24px; } .block-editor-block-list__block .block-list-appender .block-editor-inserter__toggle.components-button.has-icon, .block-editor-block-list__block .block-list-appender .block-list-appender__toggle { flex-direction: row; box-shadow: none; height: 24px; width: 24px; display: none; padding: 0 !important; background: #1e1e1e; color: #fff; } .block-editor-block-list__block .block-list-appender .block-editor-inserter__toggle.components-button.has-icon:hover, .block-editor-block-list__block .block-list-appender .block-list-appender__toggle:hover { color: #fff; background: var(--wp-admin-theme-color); } .block-editor-block-list__block .block-list-appender .block-editor-default-block-appender__content { display: none; } .block-editor-block-list__block .block-list-appender:only-child { position: relative; left: auto; align-self: center; list-style: none; line-height: inherit; } .block-editor-block-list__block .block-list-appender:only-child .block-editor-default-block-appender__content { display: block; } .block-editor-block-list__block.is-selected .block-editor-block-list__layout > .block-list-appender .block-editor-inserter__toggle.components-button.has-icon, .block-editor-block-list__block.is-selected .block-editor-block-list__layout > .block-list-appender .block-list-appender__toggle, .block-editor-block-list__block.is-selected > .block-list-appender .block-editor-inserter__toggle.components-button.has-icon, .block-editor-block-list__block.is-selected > .block-list-appender .block-list-appender__toggle { display: flex; } .block-editor-duotone-control__popover > .components-popover__content > div { padding: 16px; width: 280px; } .block-editor-duotone-control__popover .components-menu-group__label { padding: 0; } .block-editor-duotone-control__popover .components-custom-gradient-picker__gradient-bar { margin: 16px 0 12px; } .block-editor-duotone-control__popover .components-circular-option-picker__swatches { display: grid; grid-template-columns: repeat(6, 28px); gap: 12px; justify-content: space-between; } .block-editor-duotone-control__description { margin: 16px 0; font-size: 12px; } .block-editor-duotone-control__popover:not([data-y-axis=middle][data-x-axis=right]) > .components-popover__content { margin-right: -14px; } .components-font-appearance-control { margin-bottom: 24px; } .components-font-appearance-control ul li { color: #1e1e1e; text-transform: capitalize; } .items-justified-left { justify-content: flex-start; } .items-justified-center { justify-content: center; } .items-justified-right { justify-content: flex-end; } .items-justified-space-between { justify-content: space-between; } @keyframes loadingpulse { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } } .block-editor-link-control { position: relative; min-width: 360px; } .components-popover__content .block-editor-link-control { min-width: auto; width: 90vw; max-width: 360px; } .block-editor-link-control__search-input-wrapper { position: relative; } .block-editor-link-control__search-input-container { position: relative; } .block-editor-link-control__search-input.has-no-label .block-editor-url-input__input { flex: 1; } .block-editor-link-control__field { margin: 16px; } .block-editor-link-control__field > .components-base-control__field { display: flex; align-items: center; margin: 0; } .block-editor-link-control__field .components-base-control__label { margin-left: 16px; margin-bottom: 0; } .block-editor-link-control__field input[type=text], .block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; width: calc(100% - 32px); display: block; padding: 11px 16px; padding-left: 36px; margin: 0; position: relative; border: 1px solid #ddd; border-radius: 2px; } @media (prefers-reduced-motion: reduce) { .block-editor-link-control__field input[type=text], .block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .block-editor-link-control__field input[type=text], .block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .block-editor-link-control__field input[type=text]:focus, .block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .block-editor-link-control__field input[type=text]::-webkit-input-placeholder, .block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .block-editor-link-control__field input[type=text]::-moz-placeholder, .block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .block-editor-link-control__field input[type=text]:-ms-input-placeholder, .block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .block-editor-link-control__search-error { margin: -8px 16px 16px; } .block-editor-link-control__search-actions { position: absolute; /* * Actions must be positioned on top of URLInput, since the input will grow * when suggestions are rendered. * * Compensate for: * - Border (1px) * - Vertically, for the difference in height between the input (40px) and * the icon buttons. * - Horizontally, pad to the minimum of: default input padding, or the * equivalent of the vertical padding. */ top: 3px; left: 19px; } .components-button .block-editor-link-control__search-submit .has-icon { margin: -1px; } .block-editor-link-control__search-results-wrapper { position: relative; margin-top: -15px; } .block-editor-link-control__search-results-wrapper::before, .block-editor-link-control__search-results-wrapper::after { content: ""; position: absolute; right: -1px; left: 16px; display: block; pointer-events: none; z-index: 100; } .block-editor-link-control__search-results-wrapper::before { height: 8px; top: 0; bottom: auto; } .block-editor-link-control__search-results-wrapper::after { height: 16px; bottom: 0; top: auto; } .block-editor-link-control__search-results-label { padding: 16px 32px 0; display: block; font-weight: 600; } .block-editor-link-control__search-results { margin: 0; padding: 8px 16px 8px; max-height: 200px; overflow-y: auto; } .block-editor-link-control__search-results.is-loading { opacity: 0.2; } .block-editor-link-control__search-item { position: relative; display: flex; align-items: flex-start; font-size: 13px; cursor: pointer; background: #fff; width: 100%; border: none; text-align: right; padding: 12px 16px; border-radius: 2px; height: auto; } .block-editor-link-control__search-item:hover, .block-editor-link-control__search-item:focus { background-color: #f0f0f0; } .block-editor-link-control__search-item:hover .block-editor-link-control__search-item-type, .block-editor-link-control__search-item:focus .block-editor-link-control__search-item-type { background: #fff; } .block-editor-link-control__search-item:focus:not(:disabled) { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color) inset; } .block-editor-link-control__search-item.is-selected { background: #f0f0f0; } .block-editor-link-control__search-item.is-selected .block-editor-link-control__search-item-type { background: #fff; } .block-editor-link-control__search-item.is-current { flex-direction: column; background: transparent; border: 0; width: 100%; cursor: default; padding: 16px; } .block-editor-link-control__search-item .block-editor-link-control__search-item-header { display: block; flex-direction: row; align-items: flex-start; margin-left: 8px; white-space: pre-wrap; overflow-wrap: break-word; } .block-editor-link-control__search-item .block-editor-link-control__search-item-header .block-editor-link-control__search-item-info { word-break: break-all; } .block-editor-link-control__search-item.is-preview .block-editor-link-control__search-item-header { display: flex; flex: 1; } .block-editor-link-control__search-item.is-error .block-editor-link-control__search-item-header { align-items: center; } .block-editor-link-control__search-item .block-editor-link-control__search-item-icon { position: relative; top: 0.2em; margin-left: 8px; max-height: 24px; flex-shrink: 0; width: 24px; display: flex; justify-content: center; } .block-editor-link-control__search-item .block-editor-link-control__search-item-icon img { width: 16px; } .block-editor-link-control__search-item.is-error .block-editor-link-control__search-item-icon { top: 0; width: 32px; max-height: 32px; } .block-editor-link-control__search-item .block-editor-link-control__search-item-info, .block-editor-link-control__search-item .block-editor-link-control__search-item-title { overflow: hidden; text-overflow: ellipsis; } .block-editor-link-control__search-item .block-editor-link-control__search-item-info .components-external-link__icon, .block-editor-link-control__search-item .block-editor-link-control__search-item-title .components-external-link__icon { position: absolute; left: 0; margin-top: 0; } .block-editor-link-control__search-item .block-editor-link-control__search-item-title { display: block; margin-bottom: 0.2em; font-weight: 500; position: relative; } .block-editor-link-control__search-item .block-editor-link-control__search-item-title mark { font-weight: 700; color: inherit; background-color: transparent; } .block-editor-link-control__search-item .block-editor-link-control__search-item-title span { font-weight: normal; } .block-editor-link-control__search-item .block-editor-link-control__search-item-title svg { display: none; } .block-editor-link-control__search-item .block-editor-link-control__search-item-info { display: block; color: #757575; font-size: 0.9em; line-height: 1.3; } .block-editor-link-control__search-item .block-editor-link-control__search-item-error-notice { font-style: italic; font-size: 1.1em; } .block-editor-link-control__search-item .block-editor-link-control__search-item-type { display: block; padding: 3px 6px; margin-right: auto; font-size: 0.9em; background-color: #f0f0f0; border-radius: 2px; } .block-editor-link-control__search-item .block-editor-link-control__search-item-description { padding-top: 12px; margin: 0; } .block-editor-link-control__search-item .block-editor-link-control__search-item-description.is-placeholder { margin-top: 12px; padding-top: 0; height: 28px; display: flex; flex-direction: column; justify-content: space-around; } .block-editor-link-control__search-item .block-editor-link-control__search-item-description.is-placeholder::before, .block-editor-link-control__search-item .block-editor-link-control__search-item-description.is-placeholder::after { display: block; content: ""; height: 0.7em; width: 100%; background-color: #f0f0f0; border-radius: 3px; } .block-editor-link-control__search-item .block-editor-link-control__search-item-description .components-text { font-size: 0.9em; } .block-editor-link-control__search-item .block-editor-link-control__search-item-image { display: flex; width: 100%; background-color: #f0f0f0; justify-content: center; height: 140px; max-height: 140px; overflow: hidden; border-radius: 2px; margin-top: 12px; } .block-editor-link-control__search-item .block-editor-link-control__search-item-image.is-placeholder { background-color: #f0f0f0; border-radius: 3px; } .block-editor-link-control__search-item .block-editor-link-control__search-item-image img { display: block; max-width: 100%; height: 140px; max-height: 140px; } .block-editor-link-control__search-item-top { display: flex; flex-direction: row; width: 100%; } .block-editor-link-control__search-item-bottom { transition: opacity 1.5s; width: 100%; } .block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-description::before, .block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-description::after { animation: loadingpulse 1s linear infinite; animation-delay: 0.5s; } .block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-image { animation: loadingpulse 1s linear infinite; animation-delay: 0.5s; } .block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-icon svg, .block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-icon img { opacity: 0; } .block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-icon::before { content: ""; display: block; background-color: #f0f0f0; position: absolute; top: 0; right: 0; left: 0; bottom: 0; border-radius: 100%; animation: loadingpulse 1s linear infinite; animation-delay: 0.5s; } .block-editor-link-control__loading { margin: 16px; display: flex; align-items: center; } .block-editor-link-control__loading .components-spinner { margin-top: 0; } .components-button + .block-editor-link-control__search-create { overflow: visible; padding: 12px 16px; } .components-button + .block-editor-link-control__search-create::before { content: ""; position: absolute; top: -10px; right: 0; display: block; width: 100%; } .block-editor-link-control__search-create { align-items: center; } .block-editor-link-control__search-create .block-editor-link-control__search-item-title { margin-bottom: 0; } .block-editor-link-control__search-create .block-editor-link-control__search-item-icon { top: 0; } .block-editor-link-control__search-results div[role=menu] > .block-editor-link-control__search-item.block-editor-link-control__search-item { padding: 10px; } .block-editor-link-control__tools { display: flex; align-items: center; border-top: 1px solid #ddd; margin: 0; padding: 16px; } .block-editor-link-control__unlink { padding-right: 16px; padding-left: 16px; } .block-editor-link-control__settings { flex: 1; margin: 0; } .block-editor-link-control__settings :last-child { margin-bottom: 0; } .is-alternate .block-editor-link-control__settings { border-top: 1px solid #1e1e1e; } .block-editor-link-control__setting { margin-bottom: 16px; } .block-editor-link-control__setting :last-child { margin-bottom: 0; } .block-editor-link-control .block-editor-link-control__search-input .components-spinner { display: block; } .block-editor-link-control .block-editor-link-control__search-input .components-spinner.components-spinner { position: absolute; right: auto; bottom: auto; /* * Position spinner to the left of the actions. * * Compensate for: * - Input margin ($grid-unit-20) * - Border (1px) * - Vertically, for the difference in height between the input (40px) * and the spinner. * - Horizontally, adjust for the width occupied by the icon buttons, * then artificially create spacing that mimics as if the spinner * were center-padded to the same width as an icon button. */ top: 28px; left: 62px; } .block-editor-link-control__search-item-action { margin-right: auto; flex-shrink: 0; } .block-editor-line-height-control { margin-bottom: 24px; } .block-editor-line-height-control input { display: block; max-width: 60px; } .block-editor-image-size-control { margin-bottom: 1em; } .block-editor-image-size-control .block-editor-image-size-control__row { display: flex; justify-content: space-between; } .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width, .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height { margin-bottom: 0.5em; } .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width input, .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height input { line-height: 1.25; } .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width { margin-left: 5px; } .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height { margin-right: 5px; } .block-editor-block-list__layout.has-overlay::after { content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 60; } .block-editor-block-types-list__list-item { display: block; width: 33.33%; padding: 0; margin: 0; } .components-button.block-editor-block-types-list__item { display: flex; flex-direction: column; width: 100%; font-size: 13px; color: #1e1e1e; padding: 8px; align-items: stretch; justify-content: center; cursor: pointer; background: transparent; word-break: break-word; border-radius: 2px; transition: all 0.05s ease-in-out; position: relative; height: auto; } @media (prefers-reduced-motion: reduce) { .components-button.block-editor-block-types-list__item { transition-duration: 0s; transition-delay: 0s; } } .components-button.block-editor-block-types-list__item:disabled { opacity: 0.6; cursor: default; } .components-button.block-editor-block-types-list__item:not(:disabled):hover { color: var(--wp-admin-theme-color) !important; } .components-button.block-editor-block-types-list__item:not(:disabled):focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .components-button.block-editor-block-types-list__item:not(:disabled).is-active { color: #fff; background: #1e1e1e; outline: 2px solid transparent; outline-offset: -2px; } .block-editor-block-types-list__item-icon { padding: 12px 20px; border-radius: 2px; color: #1e1e1e; transition: all 0.05s ease-in-out; } @media (prefers-reduced-motion: reduce) { .block-editor-block-types-list__item-icon { transition-duration: 0s; transition-delay: 0s; } } .block-editor-block-types-list__item-icon .block-editor-block-icon { margin-right: auto; margin-left: auto; } .block-editor-block-types-list__item-icon svg { transition: all 0.15s ease-out; } @media (prefers-reduced-motion: reduce) { .block-editor-block-types-list__item-icon svg { transition-duration: 0s; transition-delay: 0s; } } .block-editor-block-types-list__list-item[draggable=true] .block-editor-block-types-list__item-icon { cursor: grab; } .block-editor-block-types-list__item-title { padding: 4px 2px 8px; font-size: 12px; } .block-editor-list-view-tree { width: 100%; border-collapse: collapse; padding: 0; margin: 0; } .components-modal__content .block-editor-list-view-tree { margin: -12px -6px 0; width: calc(100% + 12px); } .block-editor-list-view-leaf { position: relative; } .block-editor-list-view-leaf.is-selected { background: var(--wp-admin-theme-color); } .block-editor-list-view-leaf.is-selected .block-editor-list-view-block-contents, .block-editor-list-view-leaf.is-selected .components-button.has-icon { color: #fff; } .is-dragging-components-draggable .block-editor-list-view-leaf.is-selected .block-editor-list-view-block-contents { background: none; color: #1e1e1e; } .block-editor-list-view-leaf.is-selected .block-editor-list-view-block-contents:focus::after { box-shadow: inset 0 0 0 1px #fff, 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .block-editor-list-view-leaf.is-selected .block-editor-list-view-block__menu:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) #fff; } .block-editor-list-view-leaf.is-branch-selected:not(.is-selected) { background: linear-gradient(rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.9)), linear-gradient(var(--wp-admin-theme-color), var(--wp-admin-theme-color)); } .block-editor-list-view-leaf.is-branch-selected.is-selected .block-editor-list-view-block-contents { border-radius: 2px 2px 0 0; } .block-editor-list-view-leaf[aria-expanded=false].is-branch-selected.is-selected .block-editor-list-view-block-contents { border-radius: 2px; } .block-editor-list-view-leaf.is-branch-selected:not(.is-selected) .block-editor-list-view-block-contents { border-radius: 0; } .block-editor-list-view-leaf.is-dragging { display: none; } .block-editor-list-view-leaf .block-editor-list-view-block-contents { display: flex; align-items: center; width: 100%; height: auto; padding: 6px 0 6px 12px; text-align: right; color: #1e1e1e; border-radius: 2px; position: relative; white-space: nowrap; } .block-editor-list-view-leaf .block-editor-list-view-block-contents.is-dropping-before::before { content: ""; position: absolute; pointer-events: none; transition: border-color 0.1s linear, border-style 0.1s linear, box-shadow 0.1s linear; top: -2px; left: 0; right: 0; border-top: 4px solid var(--wp-admin-theme-color); } .components-modal__content .block-editor-list-view-leaf .block-editor-list-view-block-contents { padding-right: 0; padding-left: 0; } .block-editor-list-view-leaf .block-editor-list-view-block-contents:focus { box-shadow: none; } .block-editor-list-view-leaf .block-editor-list-view-block-contents:focus::after { content: ""; position: absolute; top: 0; left: -29px; bottom: 0; right: 0; border-radius: inherit; box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); z-index: 1; pointer-events: none; } .is-dragging-components-draggable .block-editor-list-view-leaf .block-editor-list-view-block-contents:focus::after { box-shadow: none; } .block-editor-list-view-leaf.has-single-cell .block-editor-list-view-block-contents:focus::after { left: 0; } .block-editor-list-view-leaf .block-editor-list-view-block__menu:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); z-index: 1; } .is-dragging-components-draggable .block-editor-list-view-leaf .block-editor-list-view-block__menu:focus { box-shadow: none; } .block-editor-list-view-leaf.is-visible .block-editor-list-view-block-contents { opacity: 1; animation: edit-post__fade-in-animation 0.2s ease-out 0s; animation-fill-mode: forwards; } @media (prefers-reduced-motion: reduce) { .block-editor-list-view-leaf.is-visible .block-editor-list-view-block-contents { animation-duration: 1ms; animation-delay: 0s; } } .block-editor-list-view-leaf .block-editor-block-icon { align-self: flex-start; margin-left: 8px; width: 24px; } .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell, .block-editor-list-view-leaf .block-editor-list-view-block__mover-cell, .block-editor-list-view-leaf .block-editor-list-view-block__contents-cell { padding-top: 0; padding-bottom: 0; } .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell, .block-editor-list-view-leaf .block-editor-list-view-block__mover-cell { line-height: 0; width: 36px; opacity: 0; vertical-align: middle; } @media (prefers-reduced-motion: reduce) { .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell, .block-editor-list-view-leaf .block-editor-list-view-block__mover-cell { transition-duration: 0s; transition-delay: 0s; } } .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell:hover, .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell.is-visible, .block-editor-list-view-leaf .block-editor-list-view-block__mover-cell:hover, .block-editor-list-view-leaf .block-editor-list-view-block__mover-cell.is-visible { position: relative; z-index: 1; opacity: 1; animation: edit-post__fade-in-animation 0.2s ease-out 0s; animation-fill-mode: forwards; } @media (prefers-reduced-motion: reduce) { .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell:hover, .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell.is-visible, .block-editor-list-view-leaf .block-editor-list-view-block__mover-cell:hover, .block-editor-list-view-leaf .block-editor-list-view-block__mover-cell.is-visible { animation-duration: 1ms; animation-delay: 0s; } } .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell, .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell .components-button.has-icon, .block-editor-list-view-leaf .block-editor-list-view-block__mover-cell, .block-editor-list-view-leaf .block-editor-list-view-block__mover-cell .components-button.has-icon { width: 24px; min-width: 24px; padding: 0; } .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell { padding-left: 5px; } .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell .components-button.has-icon { height: 24px; } .block-editor-list-view-leaf .block-editor-list-view-block__mover-cell-alignment-wrapper { display: flex; height: 100%; flex-direction: column; align-items: center; } .block-editor-list-view-leaf .block-editor-block-mover-button { position: relative; width: 36px; height: 24px; } .block-editor-list-view-leaf .block-editor-block-mover-button svg { position: relative; height: 24px; } .block-editor-list-view-leaf .block-editor-block-mover-button.is-up-button { margin-top: -6px; align-items: flex-end; } .block-editor-list-view-leaf .block-editor-block-mover-button.is-up-button svg { bottom: -4px; } .block-editor-list-view-leaf .block-editor-block-mover-button.is-down-button { margin-bottom: -6px; align-items: flex-start; } .block-editor-list-view-leaf .block-editor-block-mover-button.is-down-button svg { top: -4px; } .block-editor-list-view-leaf .block-editor-block-mover-button:focus:enabled { box-shadow: none; outline: none; } .block-editor-list-view-leaf .block-editor-block-mover-button:focus { box-shadow: none; outline: none; } .block-editor-list-view-leaf .block-editor-block-mover-button:focus::before { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 0 0 4px #fff; outline: 2px solid transparent; } .block-editor-list-view-leaf .block-editor-block-mover-button::before { content: ""; position: absolute; display: block; border-radius: 2px; height: 16px; min-width: 100%; right: 0; left: 0; animation: components-button__appear-animation 0.1s ease; animation-fill-mode: forwards; } @media (prefers-reduced-motion: reduce) { .block-editor-list-view-leaf .block-editor-block-mover-button::before { animation-duration: 1ms; animation-delay: 0s; } } .block-editor-list-view-leaf .block-editor-inserter__toggle { background: #1e1e1e; color: #fff; height: 24px; margin: 6px 1px 6px 6px; min-width: 24px; } .block-editor-list-view-leaf .block-editor-inserter__toggle:active { color: #fff; } .block-editor-list-view-leaf .block-editor-list-view-block-select-button__anchor { background: rgba(0, 0, 0, 0.1); border-radius: 2px; display: inline-block; padding: 2px 6px; margin: 0 8px; max-width: 120px; overflow: hidden; text-overflow: ellipsis; } .block-editor-list-view-leaf.is-selected .block-editor-list-view-block-select-button__anchor { background: rgba(0, 0, 0, 0.3); } .block-editor-list-view-block-select-button__description, .block-editor-list-view-appender__description { display: none; } .block-editor-list-view-block__contents-cell .block-editor-list-view-block__contents-container, .block-editor-list-view-block__contents-cell .block-editor-list-view-appender__container, .block-editor-list-view-appender__cell .block-editor-list-view-block__contents-container, .block-editor-list-view-appender__cell .block-editor-list-view-appender__container { display: flex; } .block-editor-list-view__expander { height: 24px; margin-right: 4px; width: 24px; } .block-editor-list-view-leaf[aria-level] .block-editor-list-view__expander { margin-right: 220px; } .block-editor-list-view-leaf:not([aria-level="1"]) .block-editor-list-view__expander { margin-left: 4px; } .block-editor-list-view-leaf[aria-level="1"] .block-editor-list-view__expander { margin-right: 0px; } .block-editor-list-view-leaf[aria-level="2"] .block-editor-list-view__expander { margin-right: 24px; } .block-editor-list-view-leaf[aria-level="3"] .block-editor-list-view__expander { margin-right: 52px; } .block-editor-list-view-leaf[aria-level="4"] .block-editor-list-view__expander { margin-right: 80px; } .block-editor-list-view-leaf[aria-level="5"] .block-editor-list-view__expander { margin-right: 108px; } .block-editor-list-view-leaf[aria-level="6"] .block-editor-list-view__expander { margin-right: 136px; } .block-editor-list-view-leaf[aria-level="7"] .block-editor-list-view__expander { margin-right: 164px; } .block-editor-list-view-leaf[aria-level="8"] .block-editor-list-view__expander { margin-right: 192px; } .block-editor-list-view-leaf .block-editor-list-view__expander { visibility: hidden; } .block-editor-list-view-leaf[aria-expanded=true] .block-editor-list-view__expander svg { visibility: visible; transition: transform 0.2s ease; transform: rotate(-90deg); } @media (prefers-reduced-motion: reduce) { .block-editor-list-view-leaf[aria-expanded=true] .block-editor-list-view__expander svg { transition-duration: 0s; transition-delay: 0s; } } .block-editor-list-view-leaf[aria-expanded=false] .block-editor-list-view__expander svg { visibility: visible; transform: rotate(0deg); transition: transform 0.2s ease; } @media (prefers-reduced-motion: reduce) { .block-editor-list-view-leaf[aria-expanded=false] .block-editor-list-view__expander svg { transition-duration: 0s; transition-delay: 0s; } } .block-editor-list-view-drop-indicator { pointer-events: none; } .block-editor-list-view-drop-indicator .block-editor-list-view-drop-indicator__line { background: var(--wp-admin-theme-color); height: 1px; } .block-editor-list-view-drop-indicator:not([data-y-axis=middle][data-x-axis=right]) > .components-popover__content { margin-right: 0; border: none; box-shadow: none; } .block-editor-list-view-placeholder { padding: 0; margin: 0; height: 36px; } .modal-open .block-editor-media-replace-flow__options { display: none; } .block-editor-media-replace-flow__indicator { margin-right: 4px; } .block-editor-media-flow__url-input { border-top: 1px solid #1e1e1e; margin-top: 8px; margin-left: -8px; margin-right: -8px; padding: 16px; } .block-editor-media-flow__url-input .block-editor-media-replace-flow__image-url-label { display: block; top: 16px; margin-bottom: 8px; } .block-editor-media-flow__url-input .block-editor-link-control { width: 220px; } .block-editor-media-flow__url-input .block-editor-link-control .block-editor-url-input { padding: 0; } .block-editor-media-flow__url-input .block-editor-link-control .components-base-control .components-base-control__field { margin-bottom: 0; } .block-editor-media-flow__url-input .block-editor-link-control .block-editor-link-control__search-item-title { max-width: 180px; white-space: nowrap; } .block-editor-media-flow__url-input .block-editor-link-control .block-editor-link-control__search-item-info { white-space: nowrap; } .block-editor-media-flow__url-input .block-editor-link-control .block-editor-link-control__search-item.is-current { width: auto; padding: 0; } .block-editor-media-flow__url-input .block-editor-link-control .block-editor-link-control__search-input.block-editor-link-control__search-input input[type=text] { margin: 0; width: 100%; } .block-editor-media-flow__url-input .block-editor-link-control .block-editor-link-control__search-actions { top: 0; left: 4px; } .block-editor-media-flow__error { padding: 0 20px 20px 20px; max-width: 255px; } .block-editor-media-flow__error .components-with-notices-ui { max-width: 255px; } .block-editor-media-flow__error .components-with-notices-ui .components-notice__content { overflow: hidden; word-wrap: break-word; } .block-editor-media-flow__error .components-with-notices-ui .components-notice__dismiss { position: absolute; left: 10px; } .block-editor-media-placeholder__url-input-container .block-editor-media-placeholder__button { margin-bottom: 0; } .block-editor-media-placeholder__url-input-form { display: flex; } .block-editor-media-placeholder__url-input-form input[type=url].block-editor-media-placeholder__url-input-field { width: 100%; min-width: 200px; flex-grow: 1; border: none; border-radius: 0; margin: 2px; } @media (min-width: 600px) { .block-editor-media-placeholder__url-input-form input[type=url].block-editor-media-placeholder__url-input-field { width: 300px; } } .block-editor-media-placeholder__url-input-submit-button { flex-shrink: 1; } .block-editor-media-placeholder__button { margin-bottom: 0.5rem; } .block-editor-media-placeholder__cancel-button.is-link { margin: 1em; display: block; } .block-editor-media-placeholder.is-appender { min-height: 0; } .block-editor-media-placeholder.is-appender:hover { cursor: pointer; box-shadow: 0 0 0 1px var(--wp-admin-theme-color); } .block-editor-multi-selection-inspector__card { display: flex; align-items: flex-start; padding: 16px; } .block-editor-multi-selection-inspector__card-content { flex-grow: 1; } .block-editor-multi-selection-inspector__card-title { font-weight: 500; margin-bottom: 5px; } .block-editor-multi-selection-inspector__card-description { font-size: 13px; } .block-editor-multi-selection-inspector__card .block-editor-block-icon { margin-right: -2px; margin-left: 10px; padding: 0 3px; width: 36px; height: 24px; } .block-editor-plain-text { box-shadow: none; font-family: inherit; font-size: inherit; color: inherit; line-height: inherit; border: none; padding: 0; margin: 0; width: 100%; } .block-editor-responsive-block-control { margin-bottom: 28px; border-bottom: 1px solid #ccc; padding-bottom: 14px; } .block-editor-responsive-block-control:last-child { padding-bottom: 0; border-bottom: 0; } .block-editor-responsive-block-control__title { margin: 0; margin-bottom: 0.6em; margin-right: -3px; } .block-editor-responsive-block-control__label { font-weight: 600; margin-bottom: 0.6em; margin-right: -3px; } .block-editor-responsive-block-control__inner { margin-right: -1px; } .block-editor-responsive-block-control__toggle { margin-right: 1px; } .block-editor-responsive-block-control .components-base-control__help { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important; } .rich-text [data-rich-text-placeholder] { pointer-events: none; } .rich-text [data-rich-text-placeholder]::after { content: attr(data-rich-text-placeholder); opacity: 0.62; } .rich-text:focus { outline: none; } .rich-text:focus [data-rich-text-format-boundary] { border-radius: 2px; } .block-editor-rich-text__editable > p:first-child { margin-top: 0; } figcaption.block-editor-rich-text__editable [data-rich-text-placeholder]::before { opacity: 0.8; } .components-popover.block-editor-rich-text__inline-format-toolbar { z-index: 99998; } .components-popover.block-editor-rich-text__inline-format-toolbar .components-popover__content { width: auto; min-width: auto; margin-bottom: 8px; box-shadow: none; border: 1px solid #1e1e1e; border-radius: 2px; background-color: #fff; } .components-popover.block-editor-rich-text__inline-format-toolbar .components-toolbar-group, .components-popover.block-editor-rich-text__inline-format-toolbar .components-toolbar { border: none; } .components-popover.block-editor-rich-text__inline-format-toolbar .components-toolbar__control, .components-popover.block-editor-rich-text__inline-format-toolbar .components-dropdown-menu__toggle { min-width: 48px; min-height: 48px; padding-right: 12px; padding-left: 12px; } .block-editor-rich-text__inline-format-toolbar-group .components-dropdown-menu__toggle { justify-content: center; } .show-icon-labels .block-editor-rich-text__inline-format-toolbar-group .components-button.has-icon { width: auto; } .show-icon-labels .block-editor-rich-text__inline-format-toolbar-group .components-button.has-icon svg { display: none; } .show-icon-labels .block-editor-rich-text__inline-format-toolbar-group .components-button.has-icon::after { content: attr(aria-label); } [data-rich-text-script] { display: inline; } [data-rich-text-script]::before { content: ""; background: yellow; } .block-editor-skip-to-selected-block { position: absolute; top: -9999em; } .block-editor-skip-to-selected-block:focus { height: auto; width: auto; display: block; font-size: 14px; font-weight: 600; padding: 15px 23px 14px; background: #f1f1f1; color: var(--wp-admin-theme-color); line-height: normal; box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); text-decoration: none; outline: none; z-index: 100000; } .block-editor-text-transform-control { flex: 0 0 50%; } .block-editor-text-transform-control legend { margin-bottom: 8px; } .block-editor-text-transform-control .block-editor-text-transform-control__buttons { display: inline-flex; margin-bottom: 24px; } .block-editor-text-transform-control .block-editor-text-transform-control__buttons .components-button.has-icon { min-width: 24px; padding: 0; margin-left: 4px; } .block-editor-text-decoration-control { flex: 0 0 50%; } .block-editor-text-decoration-control legend { margin-bottom: 8px; } .block-editor-text-decoration-control .block-editor-text-decoration-control__buttons { display: inline-flex; margin-bottom: 24px; } .block-editor-text-decoration-control .block-editor-text-decoration-control__buttons .components-button.has-icon { min-width: 24px; padding: 0; margin-left: 4px; } .block-editor-tool-selector__help { margin-top: 8px; margin-right: -8px; margin-left: -8px; margin-bottom: -8px; padding: 16px; border-top: 1px solid #ddd; color: #757575; min-width: 280px; } .block-editor-block-list__block .block-editor-url-input, .components-popover .block-editor-url-input, .block-editor-url-input { flex-grow: 1; position: relative; padding: 1px; } .block-editor-block-list__block .block-editor-url-input input[type=text], .components-popover .block-editor-url-input input[type=text], .block-editor-url-input input[type=text] { width: 100%; padding: 8px 12px 8px 8px; border: none; border-radius: 0; margin-right: 0; margin-left: 0; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; } @media (min-width: 600px) { .block-editor-block-list__block .block-editor-url-input input[type=text], .components-popover .block-editor-url-input input[type=text], .block-editor-url-input input[type=text] { width: 300px; } } @media (min-width: 600px) { .block-editor-block-list__block .block-editor-url-input input[type=text], .components-popover .block-editor-url-input input[type=text], .block-editor-url-input input[type=text] { font-size: 13px; } } .block-editor-block-list__block .block-editor-url-input input[type=text]::-ms-clear, .components-popover .block-editor-url-input input[type=text]::-ms-clear, .block-editor-url-input input[type=text]::-ms-clear { display: none; } .block-editor-block-list__block .block-editor-url-input.is-full-width, .components-popover .block-editor-url-input.is-full-width, .block-editor-url-input.is-full-width { width: 100%; } .block-editor-block-list__block .block-editor-url-input.is-full-width .block-editor-url-input__input[type=text], .components-popover .block-editor-url-input.is-full-width .block-editor-url-input__input[type=text], .block-editor-url-input.is-full-width .block-editor-url-input__input[type=text] { width: 100%; } .block-editor-block-list__block .block-editor-url-input.is-full-width__suggestions, .components-popover .block-editor-url-input.is-full-width__suggestions, .block-editor-url-input.is-full-width__suggestions { width: 100%; } .block-editor-block-list__block .block-editor-url-input .components-spinner, .components-popover .block-editor-url-input .components-spinner, .block-editor-url-input .components-spinner { position: absolute; left: 8px 8px 8px 12px; bottom: 8px 8px 8px 12px8px1; margin: 0; } .block-editor-url-input__input[type=text] { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; } @media (prefers-reduced-motion: reduce) { .block-editor-url-input__input[type=text] { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .block-editor-url-input__input[type=text] { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .block-editor-url-input__input[type=text]:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .block-editor-url-input__input[type=text]::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .block-editor-url-input__input[type=text]::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .block-editor-url-input__input[type=text]:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .block-editor-url-input__suggestions { max-height: 200px; transition: all 0.15s ease-in-out; padding: 4px 0; width: 302px; overflow-y: auto; } @media (prefers-reduced-motion: reduce) { .block-editor-url-input__suggestions { transition-duration: 0s; transition-delay: 0s; } } .block-editor-url-input__suggestions, .block-editor-url-input .components-spinner { display: none; } @media (min-width: 600px) { .block-editor-url-input__suggestions, .block-editor-url-input .components-spinner { display: inherit; } } .block-editor-url-input__suggestion { padding: 4px 8px 8px 8px 12px; color: #757575; display: block; font-size: 13px; cursor: pointer; background: #fff; width: 100%; border: none; text-align: right; box-shadow: none; } .block-editor-url-input__suggestion:hover { background: #ddd; } .block-editor-url-input__suggestion:focus, .block-editor-url-input__suggestion.is-selected { background: var(--wp-admin-theme-color-darker-20); color: #fff; outline: none; } .components-toolbar-group > .block-editor-url-input__button, .components-toolbar > .block-editor-url-input__button { position: inherit; } .block-editor-url-input__button .block-editor-url-input__back { margin-left: 4px; overflow: visible; } .block-editor-url-input__button .block-editor-url-input__back::after { content: ""; position: absolute; display: block; width: 1px; height: 24px; left: -1px; background: #ddd; } .block-editor-url-input__button-modal { box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05); border: 1px solid #ddd; background: #fff; } .block-editor-url-input__button-modal-line { display: flex; flex-direction: row; flex-grow: 1; flex-shrink: 1; min-width: 0; align-items: flex-start; } .block-editor-url-input__button-modal-line .components-button { flex-shrink: 0; width: 36px; height: 36px; } .block-editor-url-popover__additional-controls { border-top: 1px solid #ddd; } .block-editor-url-popover__additional-controls > div[role=menu] .components-button:not(:disabled):not([aria-disabled=true]):not(.is-secondary) > svg { box-shadow: none; } .block-editor-url-popover__additional-controls div[role=menu] > .components-button { padding-right: 12px; } .block-editor-url-popover__row { display: flex; } .block-editor-url-popover__row > :not(.block-editor-url-popover__settings-toggle) { flex-grow: 1; } .block-editor-url-popover .components-button.has-icon { padding: 3px; } .block-editor-url-popover .components-button.has-icon > svg { padding: 5px; border-radius: 2px; height: 30px; width: 30px; } .block-editor-url-popover .components-button.has-icon:not(:disabled):focus { box-shadow: none; } .block-editor-url-popover .components-button.has-icon:not(:disabled):focus > svg { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 0 0 4px #fff; outline: 2px solid transparent; } .block-editor-url-popover__settings-toggle { flex-shrink: 0; border-radius: 0; border-right: 1px solid #ddd; margin-right: 1px; } .block-editor-url-popover__settings-toggle[aria-expanded=true] .dashicon { transform: rotate(-180deg); } .block-editor-url-popover__input-container .components-base-control:last-child, .block-editor-url-popover__input-container .components-base-control:last-child .components-base-control__field { margin-bottom: 0; } .block-editor-url-popover__settings { display: block; padding: 16px; border-top: 1px solid #ddd; } .block-editor-url-popover__link-editor, .block-editor-url-popover__link-viewer { display: flex; } .block-editor-url-popover__link-editor .block-editor-url-input .components-base-control__field, .block-editor-url-popover__link-viewer .block-editor-url-input .components-base-control__field { margin-bottom: 0; } .block-editor-url-popover__link-editor .block-editor-url-input .components-spinner, .block-editor-url-popover__link-viewer .block-editor-url-input .components-spinner { bottom: 8px 8px 8px 12px1; } .block-editor-url-popover__link-viewer-url { margin: 7px; flex-grow: 1; flex-shrink: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 150px; max-width: 500px; } .block-editor-url-popover__link-viewer-url.has-invalid-link { color: #cc1818; } .block-editor-warning { align-items: center; display: flex; flex-wrap: wrap; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 1em; border: 1px solid #1e1e1e; border-radius: 2px; background-color: #fff; } .block-editor-warning .block-editor-warning__message { line-height: 1.4; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; color: #1e1e1e; margin: 0; } .block-editor-warning p.block-editor-warning__message.block-editor-warning__message { min-height: auto; } .block-editor-warning .block-editor-warning__contents { display: flex; flex-direction: row; justify-content: space-between; flex-wrap: wrap; align-items: baseline; width: 100%; } .block-editor-warning .block-editor-warning__actions { display: flex; margin-top: 1em; } .block-editor-warning .block-editor-warning__action { margin: 0 0 0 8px; } .block-editor-warning__secondary { margin: auto 8px auto 0; } .components-popover.block-editor-warning__dropdown { z-index: 99998; } .html-anchor-control .components-external-link { display: block; margin-top: 8px; } .block-editor-hooks__layout-controls { display: flex; margin-bottom: 16px; } .block-editor-hooks__layout-controls .block-editor-hooks__layout-controls-unit { display: flex; margin-left: 24px; } .block-editor-hooks__layout-controls .block-editor-hooks__layout-controls-unit svg { margin: auto 8px 4px 0; } .block-editor-hooks__layout-controls-reset { display: flex; justify-content: flex-end; margin-bottom: 24px; } .block-editor-hooks__layout-controls-helptext { font-size: 12px; } .block-editor-hooks__flex-layout-justification-controls, .block-editor-hooks__flex-layout-orientation-controls { margin-bottom: 12px; } .block-editor-hooks__flex-layout-justification-controls legend, .block-editor-hooks__flex-layout-orientation-controls legend { margin-bottom: 8px; } .block-editor-hooks__border-controls .block-editor-hooks__border-controls-row { display: flex; justify-content: space-between; } .block-editor-hooks__border-controls .block-editor-hooks__border-controls-row > * { width: calc(50% - 8px); } .block-editor-hooks__border-controls .components-unit-control-wrapper { margin-bottom: 24px; } .block-editor-hooks__border-controls .components-unit-control-wrapper:last-child { margin-bottom: 8px; } .dimensions-block-support-panel .single-column { grid-column: span 1; } .typography-block-support-panel .components-font-appearance-control, .typography-block-support-panel .components-font-size-picker__controls, .typography-block-support-panel .block-editor-text-decoration-control__buttons, .typography-block-support-panel .block-editor-text-transform-control__buttons { margin-bottom: 0; } .typography-block-support-panel .block-editor-line-height-control input { max-width: 100%; } .typography-block-support-panel .single-column { grid-column: span 1; } /** * Block Toolbar */ .block-editor-block-toolbar { display: flex; flex-grow: 1; width: 100%; position: relative; overflow-y: hidden; overflow-x: auto; transition: border-color 0.1s linear, box-shadow 0.1s linear; } @media (prefers-reduced-motion: reduce) { .block-editor-block-toolbar { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .block-editor-block-toolbar { overflow: inherit; } } .block-editor-block-toolbar .components-toolbar-group, .block-editor-block-toolbar .components-toolbar { background: none; line-height: 0; margin-top: -1px; margin-bottom: -1px; border: 0; border-left: 1px solid #ddd; } .block-editor-block-toolbar > :last-child, .block-editor-block-toolbar > :last-child .components-toolbar-group, .block-editor-block-toolbar > :last-child .components-toolbar { border-left: none; } .block-editor-block-contextual-toolbar.has-parent:not(.is-fixed) { margin-right: calc(48px + 8px); } .show-icon-labels .block-editor-block-contextual-toolbar.has-parent:not(.is-fixed) { margin-right: 0; } .block-editor-block-parent-selector { position: absolute; top: -1px; right: calc(-48px - 8px - 1px); } .show-icon-labels .block-editor-block-parent-selector { position: relative; right: auto; top: auto; margin-top: -1px; margin-right: -1px; margin-bottom: -1px; } .block-editor-block-toolbar__block-controls { height: auto !important; padding: 0 !important; margin-right: -1px; } .block-editor-block-toolbar__block-controls .block-editor-block-switcher .components-dropdown-menu__toggle .block-editor-block-icon, .block-editor-block-toolbar__block-controls .block-editor-block-switcher__no-switcher-icon .block-editor-block-icon { width: 24px !important; margin: 0 !important; } .block-editor-block-toolbar__block-controls .block-editor-block-mover { margin-right: -6px; } .block-editor-block-toolbar .components-toolbar-group, .block-editor-block-toolbar .components-toolbar, .block-editor-rich-text__inline-format-toolbar-group .components-toolbar-group, .block-editor-rich-text__inline-format-toolbar-group .components-toolbar { display: flex; flex-wrap: nowrap; } .block-editor-block-toolbar__slot { display: inline-block; line-height: 0; } @supports (position: sticky) { .block-editor-block-toolbar__slot { display: inline-flex; } } .show-icon-labels .block-editor-block-toolbar .components-button.has-icon { width: auto; } .show-icon-labels .block-editor-block-toolbar .components-button.has-icon svg { display: none; } .show-icon-labels .block-editor-block-toolbar .components-button.has-icon::after { content: attr(aria-label); font-size: 12px; } .show-icon-labels .components-accessible-toolbar .components-toolbar-group > div:first-child:last-child > .components-button.has-icon { padding-right: 6px; padding-left: 6px; } .show-icon-labels .block-editor-block-switcher { border-left: 1px solid #1e1e1e; } .show-icon-labels .block-editor-block-switcher .components-dropdown-menu__toggle { margin-right: 0; } .show-icon-labels .block-editor-block-switcher .components-dropdown-menu__toggle .block-editor-block-icon, .show-icon-labels .block-editor-block-switcher__no-switcher-icon .block-editor-block-icon { width: 0 !important; height: 0 !important; } .show-icon-labels .block-editor-block-parent-selector__button .block-editor-block-icon { width: 0; } .show-icon-labels .block-editor-block-toolbar__block-controls .block-editor-block-mover { margin-right: 0; white-space: nowrap; } .show-icon-labels .block-editor-block-mover-button { padding-right: 8px !important; padding-left: 8px !important; } .show-icon-labels .block-editor-block-mover__drag-handle.has-icon { padding-right: 6px !important; padding-left: 6px !important; border-left: 1px solid #1e1e1e; } @media (min-width: 600px) { .show-icon-labels .is-up-button.is-up-button.is-up-button { border-bottom: 1px solid #1e1e1e; margin-left: 0; border-radius: 0; } } .show-icon-labels .block-editor-block-contextual-toolbar .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.block-editor-block-mover-button { width: auto; } .show-icon-labels .components-toolbar, .show-icon-labels .components-toolbar-group { flex-shrink: 1; } .show-icon-labels .block-editor-rich-text__inline-format-toolbar-group .components-button + .components-button { margin-right: 6px; } .block-editor-inserter { display: inline-block; background: none; border: none; padding: 0; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; line-height: 0; } @media (min-width: 782px) { .block-editor-inserter { position: relative; } } .block-editor-inserter__content { position: relative; } .block-editor-inserter__popover.is-quick .components-popover__content { border: none; } .block-editor-inserter__popover.is-quick .components-popover__content .block-editor-inserter__quick-inserter > * { border-right: 1px solid #ccc; border-left: 1px solid #ccc; } .block-editor-inserter__popover.is-quick .components-popover__content .block-editor-inserter__quick-inserter > *:first-child { border-top: 1px solid #ccc; } .block-editor-inserter__popover.is-quick .components-popover__content .block-editor-inserter__quick-inserter > *:last-child { border-bottom: 1px solid #ccc; } .block-editor-inserter__popover.is-quick .components-popover__content .block-editor-inserter__quick-inserter > *.components-button { border: 1px solid #1e1e1e; } .block-editor-inserter__popover .block-editor-inserter__menu { margin: -12px; } .block-editor-inserter__popover .block-editor-inserter__menu .block-editor-inserter__tabs .components-tab-panel__tabs { top: 60px; } .block-editor-inserter__popover .block-editor-inserter__menu .block-editor-inserter__main-area { overflow: visible; height: auto; } .block-editor-inserter__popover .block-editor-inserter__menu .block-editor-inserter__preview-container { display: none; } .block-editor-inserter__toggle.components-button { display: inline-flex; align-items: center; cursor: pointer; border: none; outline: none; padding: 0; transition: color 0.2s ease; } @media (prefers-reduced-motion: reduce) { .block-editor-inserter__toggle.components-button { transition-duration: 0s; transition-delay: 0s; } } .block-editor-inserter__menu { height: 100%; position: relative; overflow: visible; } .block-editor-inserter__main-area { width: auto; overflow-y: auto; height: 100%; } @media (min-width: 782px) { .block-editor-inserter__main-area { width: 350px; } } .block-editor-inserter__inline-elements { margin-top: -1px; } .block-editor-inserter__menu.is-bottom::after { border-bottom-color: #fff; } .components-popover.block-editor-inserter__popover { z-index: 99999; } .block-editor-inserter__search { background: #fff; padding: 16px 16px 0 16px; position: sticky; top: 0; z-index: 1; } .block-editor-inserter__search .components-search-control__icon { left: 20px; } .block-editor-inserter__search .components-base-control__field { margin-bottom: 0; } .block-editor-inserter__tabs { display: flex; flex-direction: column; } .block-editor-inserter__tabs .components-tab-panel__tabs { position: sticky; top: 64px; background: #fff; z-index: 1; border-bottom: 1px solid #ddd; } .block-editor-inserter__tabs .components-tab-panel__tabs .components-tab-panel__tabs-item { flex-grow: 1; margin-bottom: -1px; } .block-editor-inserter__tabs .components-tab-panel__tab-content { display: flex; flex-grow: 1; flex-direction: column; position: relative; z-index: 0; } .block-editor-inserter__panel-header { display: inline-flex; align-items: center; padding: 16px 16px 0; } .block-editor-inserter__panel-header-patterns { padding: 16px 16px 0; } .block-editor-inserter__panel-content { padding: 16px; } .block-editor-inserter__panel-title, .block-editor-inserter__panel-title button { margin: 0 0 0 12px; color: #757575; text-transform: uppercase; font-size: 11px; font-weight: 500; } .block-editor-inserter__panel-dropdown select.components-select-control__input.components-select-control__input.components-select-control__input { height: 36px; line-height: 36px; } .block-editor-inserter__panel-dropdown select { border: none; } .block-editor-inserter__block-list { flex-grow: 1; position: relative; } .block-editor-inserter__reusable-blocks-panel { position: relative; text-align: left; } .block-editor-inserter__manage-reusable-blocks { display: inline-block; margin: 16px; } .block-editor-inserter__no-results { padding: 32px; text-align: center; } .block-editor-inserter__no-results-icon { fill: #949494; } .block-editor-inserter__child-blocks { padding: 0 16px; } .block-editor-inserter__parent-block-header { display: flex; align-items: center; } .block-editor-inserter__parent-block-header h2 { font-size: 13px; } .block-editor-inserter__parent-block-header .block-editor-block-icon { margin-left: 8px; } .block-editor-inserter__preview-container { display: none; width: 300px; background: #fff; border-radius: 2px; border: 1px solid #ddd; position: absolute; top: 16px; right: calc(100% + 16px); max-height: calc(100% - 32px); overflow-y: hidden; } @media (min-width: 782px) { .block-editor-inserter__preview-container { display: block; } } .block-editor-inserter__preview-container .block-editor-block-card { padding: 16px; } .block-editor-inserter__preview-container .block-editor-block-card__title { font-size: 13px; } .block-editor-inserter__preview-content { min-height: 144px; background: #f0f0f0; display: grid; flex-grow: 1; align-items: center; } .block-editor-inserter__preview-content-missing { flex: 1; display: flex; justify-content: center; align-items: center; min-height: 144px; color: #757575; background: #f0f0f0; } .block-editor-inserter__tips { border-top: 1px solid #ddd; padding: 16px; flex-shrink: 0; position: relative; } .block-editor-inserter__manage-reusable-blocks-container { padding: 16px; } .block-editor-inserter__quick-inserter { width: 100%; max-width: 100%; } @media (min-width: 782px) { .block-editor-inserter__quick-inserter { width: 350px; } } .block-editor-inserter__quick-inserter-results .block-editor-inserter__panel-header { height: 0; padding: 0; float: right; } .block-editor-inserter__quick-inserter.has-search .block-editor-inserter__panel-content, .block-editor-inserter__quick-inserter.has-expand .block-editor-inserter__panel-content { padding: 16px; } .block-editor-inserter__quick-inserter-patterns .block-editor-block-patterns-list { display: grid; grid-template-columns: 1fr 1fr; grid-gap: 8px; } .block-editor-inserter__quick-inserter-patterns .block-editor-block-patterns-list .block-editor-block-patterns-list__list-item { margin-bottom: 0; } .block-editor-inserter__quick-inserter-patterns .block-editor-block-patterns-list .block-editor-block-preview__container { min-height: 100px; } .block-editor-inserter__quick-inserter-separator { border-top: 1px solid #ddd; } .block-editor-inserter__popover.is-quick > .components-popover__content > div { padding: 0; } .block-editor-inserter__quick-inserter-expand.components-button { display: block; background: #1e1e1e; color: #fff; width: 100%; height: 44px; border-radius: 0; } .block-editor-inserter__quick-inserter-expand.components-button:hover { color: #fff; } .block-editor-inserter__quick-inserter-expand.components-button:active { color: #ccc; } .block-editor-inserter__quick-inserter-expand.components-button.components-button:focus:not(:disabled) { box-shadow: none; background: var(--wp-admin-theme-color); border-color: var(--wp-admin-theme-color); } .block-editor-block-patterns-explorer__sidebar { position: absolute; top: 60px; right: 0; bottom: 0; width: 280px; padding: 24px 32px 32px; overflow-x: visible; overflow-y: scroll; } .block-editor-block-patterns-explorer__sidebar__categories-list__item { display: block; width: 100%; height: 48px; text-align: right; } .block-editor-block-patterns-explorer__search { margin-bottom: 32px; } .block-editor-block-patterns-explorer__search-results-count { padding-bottom: 32px; } .block-editor-block-patterns-explorer__list { margin-right: 248px; } .block-editor-block-patterns-explorer .block-editor-block-patterns-list { display: grid; grid-gap: 32px; grid-template-columns: repeat(1, 1fr); } @media (min-width: 1080px) { .block-editor-block-patterns-explorer .block-editor-block-patterns-list { grid-template-columns: repeat(2, 1fr); } } @media (min-width: 1440px) { .block-editor-block-patterns-explorer .block-editor-block-patterns-list { grid-template-columns: repeat(3, 1fr); } } .block-editor-block-patterns-explorer .block-editor-block-patterns-list .block-editor-block-patterns-list__list-item { min-height: 240px; } .block-editor-block-patterns-explorer .block-editor-block-patterns-list .block-editor-block-preview__container { height: inherit; min-height: 100px; max-height: 800px; } .block-editor-post-preview__dropdown { padding: 0; } .block-editor-post-preview__button-resize.block-editor-post-preview__button-resize { padding-right: 40px; } .block-editor-post-preview__button-resize.block-editor-post-preview__button-resize.has-icon { padding-right: 8px; } .block-editor-post-preview__dropdown-content .components-popover__content { overflow-y: visible; } .block-editor-post-preview__dropdown-content.edit-post-post-preview-dropdown .components-menu-group:first-child { padding-bottom: 8px; } .block-editor-post-preview__dropdown-content.edit-post-post-preview-dropdown .components-menu-group:last-child { margin-bottom: 0; } .block-editor-post-preview__dropdown-content .components-menu-group + .components-menu-group { padding: 8px; } @media (min-width: 600px) { .edit-post-header__settings .editor-post-preview, .edit-site-header__actions .editor-post-preview { display: none; } } @media (min-width: 600px) { .edit-post-header.has-reduced-ui .edit-post-header__settings .editor-post-save-draft, .edit-post-header.has-reduced-ui .edit-post-header__settings .editor-post-saved-state, .edit-post-header.has-reduced-ui .edit-post-header__settings .block-editor-post-preview__button-toggle { transition: opacity 0.1s linear; } } @media (min-width: 600px) and (prefers-reduced-motion: reduce) { .edit-post-header.has-reduced-ui .edit-post-header__settings .editor-post-save-draft, .edit-post-header.has-reduced-ui .edit-post-header__settings .editor-post-saved-state, .edit-post-header.has-reduced-ui .edit-post-header__settings .block-editor-post-preview__button-toggle { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .edit-post-header.has-reduced-ui:not(:hover) .edit-post-header__settings .editor-post-save-draft, .edit-post-header.has-reduced-ui:not(:hover) .edit-post-header__settings .editor-post-saved-state, .edit-post-header.has-reduced-ui:not(:hover) .edit-post-header__settings .block-editor-post-preview__button-toggle { opacity: 0; } .edit-post-header.has-reduced-ui:not(:hover) .edit-post-header__settings .block-editor-post-preview__button-toggle.is-opened { opacity: 1; } } body.admin-color-light { --wp-admin-theme-color: #0085ba; --wp-admin-theme-color--rgb: 0, 133, 186; --wp-admin-theme-color-darker-10: #0073a1; --wp-admin-theme-color-darker-10--rgb: 0, 115, 161; --wp-admin-theme-color-darker-20: #006187; --wp-admin-theme-color-darker-20--rgb: 0, 97, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-light { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-modern { --wp-admin-theme-color: #3858e9; --wp-admin-theme-color--rgb: 56, 88, 233; --wp-admin-theme-color-darker-10: #2145e6; --wp-admin-theme-color-darker-10--rgb: 33, 69, 230; --wp-admin-theme-color-darker-20: #183ad6; --wp-admin-theme-color-darker-20--rgb: 24, 58, 214; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-modern { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-blue { --wp-admin-theme-color: #096484; --wp-admin-theme-color--rgb: 9, 100, 132; --wp-admin-theme-color-darker-10: #07526c; --wp-admin-theme-color-darker-10--rgb: 7, 82, 108; --wp-admin-theme-color-darker-20: #064054; --wp-admin-theme-color-darker-20--rgb: 6, 64, 84; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-blue { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-coffee { --wp-admin-theme-color: #46403c; --wp-admin-theme-color--rgb: 70, 64, 60; --wp-admin-theme-color-darker-10: #383330; --wp-admin-theme-color-darker-10--rgb: 56, 51, 48; --wp-admin-theme-color-darker-20: #2b2724; --wp-admin-theme-color-darker-20--rgb: 43, 39, 36; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-coffee { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-ectoplasm { --wp-admin-theme-color: #523f6d; --wp-admin-theme-color--rgb: 82, 63, 109; --wp-admin-theme-color-darker-10: #46365d; --wp-admin-theme-color-darker-10--rgb: 70, 54, 93; --wp-admin-theme-color-darker-20: #3a2c4d; --wp-admin-theme-color-darker-20--rgb: 58, 44, 77; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-ectoplasm { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-midnight { --wp-admin-theme-color: #e14d43; --wp-admin-theme-color--rgb: 225, 77, 67; --wp-admin-theme-color-darker-10: #dd382d; --wp-admin-theme-color-darker-10--rgb: 221, 56, 45; --wp-admin-theme-color-darker-20: #d02c21; --wp-admin-theme-color-darker-20--rgb: 208, 44, 33; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-midnight { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-ocean { --wp-admin-theme-color: #627c83; --wp-admin-theme-color--rgb: 98, 124, 131; --wp-admin-theme-color-darker-10: #576e74; --wp-admin-theme-color-darker-10--rgb: 87, 110, 116; --wp-admin-theme-color-darker-20: #4c6066; --wp-admin-theme-color-darker-20--rgb: 76, 96, 102; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-ocean { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-sunrise { --wp-admin-theme-color: #dd823b; --wp-admin-theme-color--rgb: 221, 130, 59; --wp-admin-theme-color-darker-10: #d97426; --wp-admin-theme-color-darker-10--rgb: 217, 116, 38; --wp-admin-theme-color-darker-20: #c36922; --wp-admin-theme-color-darker-20--rgb: 195, 105, 34; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-sunrise { --wp-admin-border-width-focus: 1.5px; } }PKj l\Mnncss/dist/block-editor/style.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .block-editor-autocompleters__block { white-space: nowrap; } .block-editor-autocompleters__block .block-editor-block-icon { margin-right: 8px; } .block-editor-block-alignment-control__menu-group .components-menu-item__info { margin-top: 0; } .block-editor-block-alignment-matrix-control__popover .components-popover__content { min-width: 0; width: auto; } .block-editor-block-alignment-matrix-control__popover .components-popover__content > div { padding: 8px; } .block-editor-block-icon { display: flex; align-items: center; justify-content: center; width: 24px; height: 24px; } .block-editor-block-icon.has-colors svg { fill: currentColor; } @media (forced-colors: active) { .block-editor-block-icon.has-colors svg { fill: CanvasText; } } .block-editor-block-icon svg { min-width: 20px; min-height: 20px; max-width: 24px; max-height: 24px; } .block-editor-block-inspector p { margin-top: 0; } .block-editor-block-inspector h2, .block-editor-block-inspector h3 { font-size: 13px; color: #1e1e1e; margin-bottom: 1.5em; } .block-editor-block-inspector .components-base-control { margin-bottom: 24px; } .block-editor-block-inspector .components-base-control:last-child { margin-bottom: 8px; } .block-editor-block-inspector .components-panel__body { border: none; border-top: 1px solid #e0e0e0; } .block-editor-block-inspector .block-editor-block-card { padding: 16px; } .block-editor-block-inspector__no-blocks { display: block; font-size: 13px; background: #fff; padding: 32px 16px; text-align: center; } .block-editor-block-styles .block-editor-block-list__block { margin: 0; } /** * Notices & Block Selected/Hover Styles. */ /** * Cross-Block Selection */ .block-editor-block-list__layout { position: relative; } .block-editor-block-list__layout.is-navigate-mode { cursor: default; } .block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-selected::after, .block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-hovered::after, .block-editor-block-list__layout .block-editor-block-list__block.is-highlighted::after, .block-editor-block-list__layout .block-editor-block-list__block.is-multi-selected::after { position: absolute; z-index: 1; pointer-events: none; content: ""; top: 1px; bottom: 1px; left: 1px; right: 1px; box-shadow: 0 0 0 1px var(--wp-admin-theme-color); border-radius: 1px; outline: 2px solid transparent; } .is-dark-theme .block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-selected::after, .is-dark-theme .block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-hovered::after, .is-dark-theme .block-editor-block-list__layout .block-editor-block-list__block.is-highlighted::after, .is-dark-theme .block-editor-block-list__layout .block-editor-block-list__block.is-multi-selected::after { box-shadow: 0 0 0 1px #fff; } .block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-selected .components-placeholder ::selection, .block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-hovered .components-placeholder ::selection, .block-editor-block-list__layout .block-editor-block-list__block.is-highlighted .components-placeholder ::selection, .block-editor-block-list__layout .block-editor-block-list__block.is-multi-selected .components-placeholder ::selection { background: transparent; } .block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-hovered:not(.is-selected)::after { box-shadow: 0 0 0 1px var(--wp-admin-theme-color); } .block-editor-block-list__layout .block-editor-block-list__block.is-highlighted::after { box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 1px solid transparent; } .block-editor-block-list__layout .block-editor-block-list__block.is-multi-selected::after, .block-editor-block-list__layout.is-navigate-mode .block-editor-block-list__block.is-selected::after, .block-editor-block-list__layout .is-block-moving-mode.block-editor-block-list__block.has-child-selected { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); outline: 2px solid transparent; } .block-editor-block-list__layout .is-block-moving-mode.block-editor-block-list__block.is-selected::before { content: ""; position: absolute; z-index: 0; pointer-events: none; transition: border-color 0.1s linear, border-style 0.1s linear, box-shadow 0.1s linear; right: 0; left: 0; top: -14px; border-radius: 2px; border-top: 4px solid #ccc; } .block-editor-block-list__layout .is-block-moving-mode.block-editor-block-list__block.is-selected::after { content: none; } .block-editor-block-list__layout .is-block-moving-mode.can-insert-moving-block.block-editor-block-list__block.is-selected::before { border-color: var(--wp-admin-theme-color); } .is-block-moving-mode.block-editor-block-list__block-selection-button { opacity: 0; font-size: 1px; height: 1px; padding: 0; } .block-editor-block-list__layout .block-editor-block-list__block { position: relative; overflow-wrap: break-word; /** * Notices */ /** * Block Layout */ /** * Block styles and alignments */ } .block-editor-block-list__layout .block-editor-block-list__block .reusable-block-edit-panel * { z-index: 1; } .block-editor-block-list__layout .block-editor-block-list__block .components-placeholder .components-with-notices-ui { margin: -10px 0 12px 0; } .block-editor-block-list__layout .block-editor-block-list__block .components-with-notices-ui { margin: 0 0 12px 0; width: 100%; } .block-editor-block-list__layout .block-editor-block-list__block .components-with-notices-ui .components-notice { margin-left: 0; margin-right: 0; } .block-editor-block-list__layout .block-editor-block-list__block .components-with-notices-ui .components-notice .components-notice__content { font-size: 13px; } .block-editor-block-list__layout .block-editor-block-list__block:not([contenteditable]):focus { outline: none; } .block-editor-block-list__layout .block-editor-block-list__block:not([contenteditable]):focus::after { position: absolute; z-index: 1; pointer-events: none; content: ""; top: 1px; bottom: 1px; left: 1px; right: 1px; box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); border-radius: 1px; outline: 2px solid transparent; } .is-dark-theme .block-editor-block-list__layout .block-editor-block-list__block:not([contenteditable]):focus::after { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) #fff; } .block-editor-block-list__layout .block-editor-block-list__block::after { content: ""; pointer-events: none; position: absolute; top: 0; right: 0; bottom: 0; left: 0; border-radius: 2px; box-shadow: 0 0 0 var(--wp-admin-border-width-focus) transparent; } .block-editor-block-list__layout .block-editor-block-list__block.has-warning { min-height: 48px; } .block-editor-block-list__layout .block-editor-block-list__block.has-warning > * { pointer-events: none; -webkit-user-select: none; user-select: none; } .block-editor-block-list__layout .block-editor-block-list__block.has-warning .block-editor-warning { pointer-events: all; } .block-editor-block-list__layout .block-editor-block-list__block.has-warning::after { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: 0; border-radius: 2px; background-color: rgba(255, 255, 255, 0.4); } .block-editor-block-list__layout .block-editor-block-list__block.has-warning.is-multi-selected::after { background-color: transparent; } .block-editor-block-list__layout .block-editor-block-list__block.is-reusable > .block-editor-inner-blocks > .block-editor-block-list__layout.has-overlay::after { display: none; } .block-editor-block-list__layout .block-editor-block-list__block.is-reusable > .block-editor-inner-blocks > .block-editor-block-list__layout.has-overlay .block-editor-block-list__layout.has-overlay::after { display: block; } .block-editor-block-list__layout .block-editor-block-list__block.is-reusable.has-child-selected::after { box-shadow: 0 0 0 1px var(--wp-admin-theme-color); } .block-editor-block-list__layout .block-editor-block-list__block[data-clear=true] { float: none; } .is-outline-mode .block-editor-block-list__block:not(.remove-outline).is-hovered { cursor: default; } .is-outline-mode .block-editor-block-list__block:not(.remove-outline).is-hovered::after { top: 1px; left: 1px; right: 1px; bottom: 1px; box-shadow: 0 0 0 1px var(--wp-admin-theme-color); border-radius: 1px; } .is-outline-mode .block-editor-block-list__block:not(.remove-outline).is-selected { cursor: unset; } .is-outline-mode .block-editor-block-list__block:not(.remove-outline).is-selected::after { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); top: 1px; left: 1px; right: 1px; bottom: 1px; border-radius: 1px; } .is-outline-mode .block-editor-block-list__block:not(.remove-outline).is-selected:focus::after { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .is-focus-mode .block-editor-block-list__block:not(.has-child-selected) { opacity: 0.5; transition: opacity 0.1s linear; } @media (prefers-reduced-motion: reduce) { .is-focus-mode .block-editor-block-list__block:not(.has-child-selected) { transition-duration: 0s; transition-delay: 0s; } } .is-focus-mode .block-editor-block-list__block:not(.has-child-selected) .block-editor-block-list__block, .is-focus-mode .block-editor-block-list__block:not(.has-child-selected).is-selected, .is-focus-mode .block-editor-block-list__block:not(.has-child-selected).is-multi-selected { opacity: 1; } .is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity { opacity: 0.5; transition: opacity 0.1s linear; } @media (prefers-reduced-motion: reduce) { .is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity { transition-duration: 0s; transition-delay: 0s; } } .is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity.is-active-entity, .is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity.has-child-selected, .is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity:not(.has-child-selected) .block-editor-block-list__block, .is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity.is-active-entity .block-editor-block-list__block, .is-root-container:not(.is-focus-mode) .block-editor-block-list__block.has-active-entity .is-active-entity .block-editor-block-list__block { opacity: 1; } .wp-block[data-align=left] > *, .wp-block[data-align=right] > * { z-index: 21; } .wp-site-blocks > [data-align=left] { float: left; margin-right: 2em; } .wp-site-blocks > [data-align=right] { float: right; margin-left: 2em; } .wp-site-blocks > [data-align=center] { justify-content: center; margin-left: auto; margin-right: auto; } /** * In-Canvas Inserter */ .block-editor-block-list .block-editor-inserter { margin: 8px; cursor: move; cursor: grab; } @keyframes block-editor-inserter__toggle__fade-in-animation { from { opacity: 0; } to { opacity: 1; } } .wp-block .block-list-appender .block-editor-inserter__toggle { animation: block-editor-inserter__toggle__fade-in-animation 0.1s ease; animation-fill-mode: forwards; } @media (prefers-reduced-motion: reduce) { .wp-block .block-list-appender .block-editor-inserter__toggle { animation-duration: 1ms; animation-delay: 0s; } } .block-editor-block-list__block:not(.is-selected):not(.has-child-selected) .block-editor-default-block-appender { display: none; } .block-editor-block-list__block:not(.is-selected):not(.has-child-selected) .block-editor-default-block-appender .block-editor-inserter__toggle { opacity: 0; transform: scale(0); } .block-editor-block-list__block .block-editor-block-list__block-html-textarea { display: block; margin: 0; padding: 12px; width: 100%; border: none; outline: none; border-radius: 2px; box-shadow: inset 0 0 0 1px #1e1e1e; resize: none; overflow: hidden; font-family: Menlo, Consolas, monaco, monospace; font-size: 15px; line-height: 1.5; transition: padding 0.2s linear; } @media (prefers-reduced-motion: reduce) { .block-editor-block-list__block .block-editor-block-list__block-html-textarea { transition-duration: 0s; transition-delay: 0s; } } .block-editor-block-list__block .block-editor-block-list__block-html-textarea:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } /** * Warnings. */ .block-editor-block-list__block .block-editor-warning { z-index: 5; position: relative; } .block-editor-block-list__block .block-editor-warning.block-editor-block-list__block-crash-warning { margin-bottom: auto; } /** * Insertion Point. */ .block-editor-block-list__insertion-point { position: absolute; } .block-editor-block-list__insertion-point-indicator { position: absolute; background: var(--wp-admin-theme-color); } .block-editor-block-list__insertion-point.is-vertical > .block-editor-block-list__insertion-point-indicator { top: 50%; height: 1px; } .block-editor-block-list__insertion-point.is-horizontal > .block-editor-block-list__insertion-point-indicator { top: 0; right: 0; left: 50%; width: 1px; } .block-editor-block-list__insertion-point-inserter { display: none; position: absolute; justify-content: center; top: calc(50% - 12px); left: calc(50% - 12px); } @media (min-width: 480px) { .block-editor-block-list__insertion-point-inserter { display: flex; } } .block-editor-block-list__block-popover-inserter { position: absolute; top: -9999em; margin-bottom: 14px; } .block-editor-block-list__block-popover-inserter.is-visible { position: static; } .block-editor-block-list__empty-block-inserter .block-editor-inserter__toggle.components-button.has-icon, .block-editor-default-block-appender .block-editor-inserter__toggle.components-button.has-icon, .block-editor-block-list__insertion-point-inserter .block-editor-inserter__toggle.components-button.has-icon, .block-editor-block-list__block-popover-inserter .block-editor-inserter__toggle.components-button.has-icon { background: #1e1e1e; border-radius: 2px; color: #fff; padding: 0; min-width: 24px; height: 24px; } .block-editor-block-list__empty-block-inserter .block-editor-inserter__toggle.components-button.has-icon:hover, .block-editor-default-block-appender .block-editor-inserter__toggle.components-button.has-icon:hover, .block-editor-block-list__insertion-point-inserter .block-editor-inserter__toggle.components-button.has-icon:hover, .block-editor-block-list__block-popover-inserter .block-editor-inserter__toggle.components-button.has-icon:hover { color: #fff; background: var(--wp-admin-theme-color); } .block-editor-block-list__insertion-point-inserter .block-editor-inserter__toggle.components-button.has-icon { background: var(--wp-admin-theme-color); } .block-editor-block-list__insertion-point-inserter .block-editor-inserter__toggle.components-button.has-icon:hover { background: #1e1e1e; } /** * Block Toolbar when contextual. */ .block-editor-block-contextual-toolbar { display: inline-flex; border: 1px solid #1e1e1e; border-radius: 2px; background-color: #fff; } .block-editor-block-contextual-toolbar .block-editor-block-toolbar .components-toolbar-group, .block-editor-block-contextual-toolbar .block-editor-block-toolbar .components-toolbar { border-right-color: #1e1e1e; } .block-editor-block-contextual-toolbar.is-fixed { position: sticky; top: 0; width: 100%; z-index: 31; min-height: 48px; display: block; border: none; border-bottom: 1px solid #e0e0e0; border-radius: 0; } .block-editor-block-contextual-toolbar.is-fixed .block-editor-block-toolbar .components-toolbar-group, .block-editor-block-contextual-toolbar.is-fixed .block-editor-block-toolbar .components-toolbar { border-right-color: #e0e0e0; } .block-editor-block-contextual-toolbar .block-editor-block-mover-button { overflow: hidden; } .block-editor-block-contextual-toolbar .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.block-editor-block-mover-button { min-width: 24px; width: 24px; } .block-editor-block-contextual-toolbar .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.block-editor-block-mover-button svg { min-width: 24px; } .block-editor-block-contextual-toolbar .block-editor-block-mover:not(.is-horizontal) .block-editor-block-mover-button:focus::before { left: 0 !important; min-width: 0; width: 100%; } @media (min-width: 600px) { .block-editor-block-contextual-toolbar .block-editor-block-mover:not(.is-horizontal) .block-editor-block-mover-button.is-up-button svg { top: 5px; } .block-editor-block-contextual-toolbar .block-editor-block-mover:not(.is-horizontal) .block-editor-block-mover-button.is-down-button svg { bottom: 5px; } } /** * Block Label for Navigation/Selection Mode */ .block-editor-block-list__block-selection-button { display: inline-flex; padding: 0 12px; z-index: 22; border-radius: 2px; background-color: #1e1e1e; font-size: 13px; height: 48px; } .block-editor-block-list__block-selection-button .block-editor-block-list__block-selection-button__content { margin: auto; display: inline-flex; align-items: center; } .block-editor-block-list__block-selection-button .block-editor-block-list__block-selection-button__content > .components-flex__item { margin-right: 6px; } .block-editor-block-list__block-selection-button .components-button.has-icon.block-selection-button_drag-handle { cursor: grab; padding: 0; height: 24px; min-width: 24px; margin-left: -2px; } .block-editor-block-list__block-selection-button .components-button.has-icon.block-selection-button_drag-handle svg { min-width: 18px; min-height: 18px; } .block-editor-block-list__block-selection-button .block-editor-block-icon { font-size: 13px; color: #fff; height: 48px; } .block-editor-block-list__block-selection-button .components-button { min-width: 36px; color: #fff; height: 48px; display: flex; } .block-editor-block-list__block-selection-button .components-button:focus { box-shadow: none; border: none; } .block-editor-block-list__block-selection-button .components-button:active { color: #fff; } .block-editor-block-list__block-selection-button .block-selection-button_select-button.components-button { padding: 0; } /** * Popovers. */ .block-editor-block-list__insertion-point-popover.is-without-arrow { z-index: 28; position: absolute; pointer-events: none; } .block-editor-block-list__insertion-point-popover.is-without-arrow * { pointer-events: none; } .block-editor-block-list__insertion-point-popover.is-without-arrow .is-with-inserter { pointer-events: all; } .block-editor-block-list__insertion-point-popover.is-without-arrow .is-with-inserter * { pointer-events: all; } .block-editor-block-list__insertion-point-popover.is-without-arrow .components-popover__content.components-popover__content { background: none; border: none; box-shadow: none; overflow-y: visible; margin-left: 0; } @keyframes hide-during-dragging { to { position: fixed; transform: translate(9999px, 9999px); } } .components-popover.block-editor-block-list__block-popover { z-index: 31; position: absolute; } .components-popover.block-editor-block-list__block-popover .components-popover__content { margin: 0 !important; min-width: auto; width: max-content; background: none; border: none; box-shadow: none; overflow-y: visible; pointer-events: none; } .components-popover.block-editor-block-list__block-popover .components-popover__content .block-editor-block-list__block-selection-button, .components-popover.block-editor-block-list__block-popover .components-popover__content .block-editor-block-contextual-toolbar, .components-popover.block-editor-block-list__block-popover .components-popover__content .block-editor-block-list__empty-block-inserter { pointer-events: all; } .components-popover.block-editor-block-list__block-popover .components-popover__content .block-editor-block-list__block-selection-button, .components-popover.block-editor-block-list__block-popover .components-popover__content .block-editor-block-contextual-toolbar { margin-top: 12px; margin-bottom: 12px; } .components-popover.block-editor-block-list__block-popover.is-insertion-point-visible { visibility: hidden; } .is-dragging-components-draggable .components-popover.block-editor-block-list__block-popover { opacity: 0; animation: hide-during-dragging 1ms linear forwards; } .is-dragging-components-draggable .components-tooltip { display: none; } .is-vertical .block-list-appender { width: 24px; margin-right: auto; margin-top: 12px; margin-left: 12px; } .block-list-appender > .block-editor-inserter { display: block; } .block-editor-block-list__block:not(.is-selected):not(.has-child-selected):not(.block-editor-block-list__layout) .block-editor-block-list__layout > .block-list-appender .block-list-appender__toggle { opacity: 0; transform: scale(0); } .block-editor-block-breadcrumb { list-style: none; padding: 0; margin: 0; } .block-editor-block-breadcrumb li { display: inline-flex; margin: 0; } .block-editor-block-breadcrumb li .block-editor-block-breadcrumb__separator { fill: currentColor; margin-left: -4px; margin-right: -4px; transform: scaleX(1) /*rtl:scaleX(-1);*/; } .block-editor-block-breadcrumb li:last-child .block-editor-block-breadcrumb__separator { display: none; } .block-editor-block-breadcrumb__button.components-button { height: 24px; line-height: 24px; padding: 0; position: relative; } .block-editor-block-breadcrumb__button.components-button:hover:not(:disabled) { text-decoration: underline; box-shadow: none; } .block-editor-block-breadcrumb__button.components-button:focus { box-shadow: none; } .block-editor-block-breadcrumb__button.components-button:focus::before { content: ""; display: block; position: absolute; border-radius: 2px; top: 1px; right: 1px; bottom: 1px; left: 1px; box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .block-editor-block-breadcrumb__current { cursor: default; } .block-editor-block-breadcrumb__button.components-button, .block-editor-block-breadcrumb__current { color: #1e1e1e; padding: 0 8px; font-size: inherit; } .block-editor-block-card { display: flex; align-items: flex-start; } .block-editor-block-card__content { flex-grow: 1; margin-bottom: 4px; } .block-editor-block-card__title { font-weight: 500; } .block-editor-block-card__title.block-editor-block-card__title { line-height: 24px; margin: 0 0 4px; } .block-editor-block-card__description { font-size: 13px; } .block-editor-block-card .block-editor-block-icon { flex: 0 0 24px; margin-left: 0; margin-right: 12px; width: 24px; height: 24px; } /** * Invalid block comparison */ .block-editor-block-compare { height: auto; } .block-editor-block-compare__wrapper { display: flex; padding-bottom: 16px; } .block-editor-block-compare__wrapper > div { display: flex; justify-content: space-between; flex-direction: column; width: 50%; padding: 0 16px 0 0; min-width: 200px; max-width: 600px; } .block-editor-block-compare__wrapper > div button { float: right; } .block-editor-block-compare__wrapper .block-editor-block-compare__converted { border-left: 1px solid #ddd; padding-left: 15px; padding-right: 0; } .block-editor-block-compare__wrapper .block-editor-block-compare__html { font-family: Menlo, Consolas, monaco, monospace; font-size: 12px; color: #1e1e1e; border-bottom: 1px solid #ddd; padding-bottom: 15px; line-height: 1.7; } .block-editor-block-compare__wrapper .block-editor-block-compare__html span { background-color: #e6ffed; padding-top: 3px; padding-bottom: 3px; } .block-editor-block-compare__wrapper .block-editor-block-compare__html span.block-editor-block-compare__added { background-color: #acf2bd; } .block-editor-block-compare__wrapper .block-editor-block-compare__html span.block-editor-block-compare__removed { background-color: #cc1818; } .block-editor-block-compare__wrapper .block-editor-block-compare__preview { padding: 0; padding-top: 16px; } .block-editor-block-compare__wrapper .block-editor-block-compare__preview p { font-size: 12px; margin-top: 0; } .block-editor-block-compare__wrapper .block-editor-block-compare__action { margin-top: 16px; } .block-editor-block-compare__wrapper .block-editor-block-compare__heading { font-size: 1em; font-weight: 400; margin: 0.67em 0; } .block-editor-block-content-overlay.overlay-active::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: transparent; border: none; border-radius: 2px; z-index: 10; pointer-events: none; } .block-editor-block-content-overlay:hover:not(.is-dragging-blocks).overlay-active::before, .block-editor-block-content-overlay.parent-highlighted.overlay-active::before { background: rgba(var(--wp-admin-theme-color--rgb), 0.1); box-shadow: 0 0 0 1px var(--wp-admin-theme-color) inset; } .block-editor-block-content-overlay.overlay-active:not(.is-dragging-blocks) * { pointer-events: none; } .block-editor-block-content-overlay.is-dragging-blocks { box-shadow: 0 0 0 1px var(--wp-admin-theme-color); } .block-editor-block-draggable-chip-wrapper { position: absolute; top: -24px; left: 0; } .block-editor-block-draggable-chip { background-color: #1e1e1e; border-radius: 2px; box-shadow: 0 6px 8px rgba(0, 0, 0, 0.3); color: #fff; cursor: grabbing; display: inline-flex; height: 48px; padding: 0 13px; -webkit-user-select: none; user-select: none; } .block-editor-block-draggable-chip svg { fill: currentColor; } .block-editor-block-draggable-chip .block-editor-block-draggable-chip__content { margin: auto; justify-content: flex-start; } .block-editor-block-draggable-chip .block-editor-block-draggable-chip__content > .components-flex__item { margin-right: 6px; } .block-editor-block-draggable-chip .block-editor-block-draggable-chip__content > .components-flex__item:last-child { margin-right: 0; } .block-editor-block-draggable-chip .block-editor-block-draggable-chip__content .block-editor-block-icon svg { min-width: 18px; min-height: 18px; } .block-editor-block-draggable-chip .components-flex__item { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; } .block-editor-block-list__layout .is-dragging { background-color: currentColor !important; opacity: 0.05 !important; border-radius: 2px !important; pointer-events: none !important; } .block-editor-block-list__layout .is-dragging::selection { background: transparent !important; } .block-editor-block-list__layout .is-dragging::after { content: none !important; } .block-editor-block-mobile-toolbar { display: flex; flex-direction: row; border-right: 1px solid #ddd; } .block-editor-block-mobile-toolbar .block-editor-block-mover-button { width: 36px; height: 36px; border-radius: 2px; padding: 3px; margin: 0; justify-content: center; align-items: center; } .block-editor-block-mobile-toolbar .block-editor-block-mover-button .dashicon { margin: auto; } .block-editor-block-mobile-toolbar .block-editor-block-mover { display: flex; margin-right: auto; } .block-editor-block-mobile-toolbar .block-editor-block-mover .block-editor-block-mover-button { float: left; } .block-editor-block-mover-button__description { display: none; } .block-editor-block-mover-button.has-icon { padding: 0; } .block-editor-block-mover { display: inline-flex; flex-direction: row; } .block-editor-block-mover .block-editor-block-mover__move-button-container, .block-editor-block-mover .components-toolbar { flex: 1; flex-direction: row; border-right: none !important; } @media (min-width: 600px) { .block-editor-block-mover .block-editor-block-mover__move-button-container, .block-editor-block-mover .components-toolbar { flex-direction: column; } } .block-editor-block-mover.is-horizontal .block-editor-block-mover__move-button-container, .block-editor-block-mover.is-horizontal .components-toolbar { flex-direction: row; } .block-editor-block-mover .block-editor-block-mover-button.block-editor-block-mover-button { padding-right: 0; padding-left: 0; min-width: 36px; } @media (min-width: 600px) { .block-editor-block-mover .block-editor-block-mover-button { height: 24px; width: 42px; padding-right: 11px !important; padding-left: 6px !important; } .block-editor-block-mover .block-editor-block-mover-button.block-editor-block-mover-button { min-width: 42px; } } @media (min-width: 600px) { .block-editor-block-mover .block-editor-block-mover-button::before { left: 8px !important; right: 8px !important; } } .block-editor-block-mover .block-editor-block-mover__drag-handle { width: 24px; cursor: grab; min-width: 24px !important; padding: 0 !important; } .block-editor-block-mover .block-editor-block-mover__drag-handle:focus::before { left: 0 !important; right: 0 !important; } @media (min-width: 600px) { .block-editor-block-mover .components-toolbar-group .block-editor-block-mover-button, .block-editor-block-mover .components-toolbar .block-editor-block-mover-button { margin: 0 auto 0 0; } .block-editor-block-mover .components-toolbar-group .block-editor-block-mover-button.is-up-button::before, .block-editor-block-mover .components-toolbar .block-editor-block-mover-button.is-up-button::before { bottom: 0; height: calc(100% - 1px); } .block-editor-block-mover .components-toolbar-group .block-editor-block-mover-button.is-down-button::before, .block-editor-block-mover .components-toolbar .block-editor-block-mover-button.is-down-button::before { top: 0; height: calc(100% - 1px); } } .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.has-icon { height: 48px; width: 24px; padding-left: 0; padding-right: 0; } .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.has-icon::before { top: 1px; bottom: 1px; min-width: 0; width: auto; height: auto; } .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.is-up-button.has-icon svg { margin-left: 0; margin-right: -8px; margin-bottom: 0; } .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.is-up-button.has-icon::before { left: 0 !important; right: 0 !important; } .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.is-down-button.has-icon svg { margin-left: -8px; margin-right: 0; margin-top: 0; } .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.is-down-button.has-icon::before { left: 0 !important; right: 0 !important; width: calc(100% + 1px); } .block-editor-block-navigation__container { min-width: 280px; } .block-editor-block-navigation__label { margin: 0 0 12px; color: #757575; text-transform: uppercase; font-size: 11px; font-weight: 500; } .block-editor-block-parent-selector { background: #fff; border-radius: 2px; } .block-editor-block-parent-selector .block-editor-block-parent-selector__button { width: 48px; height: 48px; border: 1px solid #1e1e1e; border-radius: 2px; } .block-editor-block-patterns-list__list-item { cursor: pointer; margin-bottom: 24px; } .block-editor-block-patterns-list__list-item.is-placeholder { min-height: 100px; } .block-editor-block-patterns-list__list-item[draggable=true] .block-editor-block-preview__container { cursor: grab; } .block-editor-block-patterns-list__item { height: 100%; } .block-editor-block-patterns-list__item .block-editor-block-preview__container { display: flex; align-items: center; overflow: hidden; border-radius: 2px; border: 1px solid #f0f0f0; } .block-editor-block-patterns-list__item .block-editor-block-patterns-list__item-title { padding-top: 8px; font-size: 12px; text-align: center; } .block-editor-block-patterns-list__item:hover .block-editor-block-preview__container { border: 1px solid var(--wp-admin-theme-color); } .block-editor-block-patterns-list__item:focus .block-editor-block-preview__container { box-shadow: inset 0 0 0 1px #fff, 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); outline: 2px solid transparent; } .block-editor-block-patterns-list__item:hover .block-editor-block-patterns-list__item-title, .block-editor-block-patterns-list__item:focus .block-editor-block-patterns-list__item-title { color: var(--wp-admin-theme-color); } .block-editor-block-preview__container { position: relative; width: 100%; overflow: hidden; } .block-editor-block-preview__container .block-editor-block-preview__content { top: 0; left: 0; transform-origin: top left; text-align: initial; margin: 0; overflow: visible; min-height: auto; } .block-editor-block-preview__container .block-editor-block-preview__content .block-editor-block-list__insertion-point, .block-editor-block-preview__container .block-editor-block-preview__content .block-editor-block-drop-zone, .block-editor-block-preview__container .block-editor-block-preview__content .reusable-block-indicator, .block-editor-block-preview__container .block-editor-block-preview__content .block-list-appender { display: none; } .block-editor-block-preview__content-iframe .block-list-appender { display: none; } .block-editor-block-preview__live-content * { pointer-events: none; } .block-editor-block-preview__live-content .block-list-appender { display: none; } .block-editor-block-preview__live-content .components-button:disabled { opacity: initial; } .block-editor-block-preview__live-content .components-placeholder, .block-editor-block-preview__live-content .block-editor-block-list__block[data-empty=true] { display: none; } .block-editor-block-settings-menu__popover .components-dropdown-menu__menu { padding: 0; } .block-editor-block-styles { display: flex; flex-wrap: wrap; justify-content: space-between; } .block-editor-block-styles__item { width: calc(50% - 4px); margin: 4px 0; flex-shrink: 0; cursor: pointer; overflow: hidden; border-radius: 2px; padding: 6px; display: flex; flex-direction: column; } .block-editor-block-styles__item:focus { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); outline: 2px solid transparent; } .block-editor-block-styles__item:hover .block-editor-block-styles__item-preview { border-color: var(--wp-admin-theme-color); } .block-editor-block-styles__item.is-active .block-editor-block-styles__item-label { font-weight: bold; } .block-editor-block-styles__item.is-active .block-editor-block-styles__item-preview { margin: 0; border: 2px solid #1e1e1e; } .block-editor-block-styles__item .block-editor-block-preview__container { cursor: inherit; } .block-editor-block-styles__item-preview { outline: 1px solid transparent; padding: 0; margin: 2px; border-radius: 2px; display: flex; overflow: hidden; background: #fff; align-items: center; flex-grow: 1; min-height: 80px; max-height: 160px; } .block-editor-block-switcher__styles__menugroup { position: relative; } .block-editor-block-styles__item-label { text-align: center; padding: 4px 0; } .block-editor-block-switcher { position: relative; } .block-editor-block-switcher__no-switcher-icon, .block-editor-block-switcher__toggle { position: relative; } .components-button.block-editor-block-switcher__toggle, .components-button.block-editor-block-switcher__no-switcher-icon { margin: 0; display: block; height: 48px; } .components-button.block-editor-block-switcher__toggle .block-editor-block-icon, .components-button.block-editor-block-switcher__no-switcher-icon .block-editor-block-icon { margin: auto; } .block-editor-block-switcher__toggle-text { margin-left: 8px; } .show-icon-labels .block-editor-block-switcher__toggle-text { display: none; } .show-icon-labels .block-editor-block-toolbar .block-editor-block-switcher .components-button.has-icon::after { font-size: 14px; } .block-editor-block-switcher__popover { margin-left: 6px; } .components-button.block-editor-block-switcher__no-switcher-icon { width: 48px; } .components-button.block-editor-block-switcher__no-switcher-icon .block-editor-blocks-icon { margin-right: auto; margin-left: auto; } .components-button.block-editor-block-switcher__no-switcher-icon:disabled { opacity: 1; } .components-button.block-editor-block-switcher__no-switcher-icon:disabled, .components-button.block-editor-block-switcher__no-switcher-icon:disabled .block-editor-block-icon.has-colors { color: #1e1e1e; } .block-editor-block-toolbar .components-toolbar-group .components-button.block-editor-block-switcher__no-switcher-icon.has-icon.has-icon .block-editor-block-icon, .block-editor-block-toolbar .components-toolbar .components-button.block-editor-block-switcher__no-switcher-icon.has-icon.has-icon .block-editor-block-icon, .block-editor-block-toolbar .components-toolbar-group .components-button.block-editor-block-switcher__toggle.has-icon.has-icon .block-editor-block-icon, .block-editor-block-toolbar .components-toolbar .components-button.block-editor-block-switcher__toggle.has-icon.has-icon .block-editor-block-icon { height: 100%; position: relative; margin: 0 auto; display: flex; align-items: center; min-width: 100%; } .block-editor-block-toolbar .components-toolbar-group .components-button.block-editor-block-switcher__no-switcher-icon.has-icon.has-icon::before, .block-editor-block-toolbar .components-toolbar .components-button.block-editor-block-switcher__no-switcher-icon.has-icon.has-icon::before, .block-editor-block-toolbar .components-toolbar-group .components-button.block-editor-block-switcher__toggle.has-icon.has-icon::before, .block-editor-block-toolbar .components-toolbar .components-button.block-editor-block-switcher__toggle.has-icon.has-icon::before { top: 8px; right: 8px; bottom: 8px; left: 8px; } .components-popover.block-editor-block-switcher__popover .components-popover__content { min-width: 300px; } .components-popover.block-editor-block-switcher__popover .components-popover__content > div { min-width: auto; display: flex; background: #fff; padding: 0; } .components-popover.block-editor-block-switcher__popover .components-popover__content > div .components-menu-group { margin: 0; } .block-editor-block-switcher__popover .components-popover__content .block-editor-block-styles { margin: 0 -3px; } .block-editor-block-switcher__popover .components-popover__content .components-panel__body { border: 0; position: relative; z-index: 1; } .block-editor-block-switcher__popover .components-popover__content .components-panel__body + .components-panel__body { border-top: 1px solid #e0e0e0; } .block-editor-block-switcher__popover__preview__parent .block-editor-block-switcher__popover__preview__container { position: absolute; top: -12px; left: calc(100% + 32px); } .block-editor-block-switcher__preview__popover { display: none; } .block-editor-block-switcher__preview__popover.components-popover { margin-left: 4px; margin-top: 11px; } @media (min-width: 782px) { .block-editor-block-switcher__preview__popover { display: block; } } .block-editor-block-switcher__preview__popover .components-popover__content { box-shadow: none; border: 1px solid #1e1e1e; background: #fff; border-radius: 2px; } .block-editor-block-switcher__preview__popover .block-editor-block-switcher__preview { width: 300px; height: auto; max-height: 500px; padding: 16px; } .block-editor-block-switcher__preview-title { margin-bottom: 12px; color: #757575; text-transform: uppercase; font-size: 11px; font-weight: 500; } .block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__no-switcher-icon { width: 48px; } .block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__no-switcher-icon, .block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__toggle { height: 48px; } .block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__no-switcher-icon .block-editor-block-icon, .block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__no-switcher-icon .block-editor-block-switcher__transform, .block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__toggle .block-editor-block-icon, .block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__toggle .block-editor-block-switcher__transform { width: 48px; height: 48px; } .block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__no-switcher-icon .block-editor-block-switcher__transform, .block-editor-block-contextual-toolbar .components-button.block-editor-block-switcher__toggle .block-editor-block-switcher__transform { padding: 12px; } .block-editor-block-switcher__preview-patterns-container { padding-bottom: 16px; } .block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item { margin-top: 16px; } .block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-preview__container { cursor: pointer; } .block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-switcher__preview-patterns-container-list__item { height: 100%; border-radius: 2px; transition: all 0.05s ease-in-out; position: relative; border: 1px solid transparent; } .block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-switcher__preview-patterns-container-list__item:hover, .block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-switcher__preview-patterns-container-list__item:focus { box-shadow: inset 0 0 0 1px #fff, 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); outline: 2px solid transparent; } .block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-switcher__preview-patterns-container-list__item:hover { box-shadow: inset 0 0 0 1px #fff, 0 0 0 var(--wp-admin-border-width-focus) #1e1e1e; } .block-editor-block-switcher__preview-patterns-container .block-editor-block-switcher__preview-patterns-container-list__list-item .block-editor-block-switcher__preview-patterns-container-list__item .block-editor-block-switcher__preview-patterns-container-list__item-title { padding: 4px; font-size: 12px; text-align: center; cursor: pointer; } .block-editor-block-types-list > [role=presentation] { overflow: hidden; display: flex; flex-wrap: wrap; } .block-editor-block-variation-picker .components-placeholder__instructions { margin-bottom: 0; } .block-editor-block-variation-picker .components-placeholder__fieldset { flex-direction: column; } .block-editor-block-variation-picker.has-many-variations .components-placeholder__fieldset { max-width: 90%; } .block-editor-block-variation-picker__variations.block-editor-block-variation-picker__variations { display: flex; justify-content: flex-start; flex-direction: row; flex-wrap: wrap; width: 100%; margin: 16px 0; padding: 0; list-style: none; } .block-editor-block-variation-picker__variations.block-editor-block-variation-picker__variations > li { list-style: none; margin: 8px 20px 0 0; flex-shrink: 1; width: 75px; text-align: center; } .block-editor-block-variation-picker__variations.block-editor-block-variation-picker__variations > li button { display: inline-flex; margin-right: 0; } .block-editor-block-variation-picker__variations.block-editor-block-variation-picker__variations .block-editor-block-variation-picker__variation { padding: 8px; } .block-editor-block-variation-picker__variations.block-editor-block-variation-picker__variations .block-editor-block-variation-picker__variation-label { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 12px; display: block; line-height: 1.4; } .block-editor-block-variation-picker__variation { width: 100%; } .block-editor-block-variation-picker__variation.components-button.has-icon { justify-content: center; width: auto; } .block-editor-block-variation-picker__variation.components-button.has-icon.is-secondary { background-color: #fff; } .block-editor-block-variation-picker__variation.components-button { height: auto; padding: 0; } .block-editor-block-variation-picker__variation::before { content: ""; padding-bottom: 100%; } .block-editor-block-variation-picker__variation:first-child { margin-left: 0; } .block-editor-block-variation-picker__variation:last-child { margin-right: 0; } .block-editor-block-pattern-setup { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; width: 100%; border-radius: 2px; box-shadow: inset 0 0 0 1px #1e1e1e; outline: 1px solid transparent; } .block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__toolbar { justify-content: center; } .block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__container { display: grid; grid-template-columns: 1fr 1fr; grid-gap: 16px; padding: 16px; max-height: 550px; overflow: auto; margin: 0 1px 1px 1px; width: calc(100% - 2px); background: #fff; } .block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__container .block-editor-block-preview__container, .block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__container div[role=button] { cursor: pointer; } .block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__container .block-editor-block-pattern-setup-list__item-title { padding: 4px; font-size: 12px; text-align: center; } .block-editor-block-pattern-setup.view-mode-grid .block-editor-block-pattern-setup__container .block-editor-block-preview__container { border-radius: 2px; border: 1px solid #ddd; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__toolbar { box-sizing: border-box; position: relative; padding: 16px; width: 100%; text-align: left; margin: 0; color: #1e1e1e; border-radius: 2px 2px 0 0; background-color: #fff; box-shadow: inset 0 0 0 1px #1e1e1e; outline: 1px solid transparent; display: flex; flex-direction: row; align-items: center; justify-content: space-between; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__toolbar .block-editor-block-pattern-setup__display-controls { display: flex; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__toolbar .block-editor-block-pattern-setup__navigation, .block-editor-block-pattern-setup .block-editor-block-pattern-setup__toolbar .block-editor-block-pattern-setup__actions { width: calc(50% - 36px); display: flex; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__toolbar .block-editor-block-pattern-setup__actions { justify-content: flex-end; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__container { display: flex; flex-direction: column; width: 100%; box-sizing: border-box; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container { overflow: hidden; position: relative; padding: 0; margin: 0; list-style: none; transform-style: preserve-3d; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container * { box-sizing: border-box; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container .pattern-slide { opacity: 0; position: absolute; top: 0; width: 100%; margin: auto; padding: 16px; transition: transform 0.5s, opacity 0.5s, z-index 0.5s; z-index: 100; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container .pattern-slide.active-slide { opacity: 1; position: relative; z-index: 102; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container .pattern-slide.previous-slide { transform: translateX(-100%); z-index: 101; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .carousel-container .pattern-slide.next-slide { transform: translateX(100%); z-index: 101; } .block-editor-block-pattern-setup .block-editor-block-pattern-setup__container .block-list-appender { display: none; } .block-editor-block-variation-transforms { padding: 0 16px 16px 56px; width: 100%; } .block-editor-block-variation-transforms .components-dropdown-menu__toggle { border: 1px solid #757575; border-radius: 2px; min-height: 30px; width: 100%; position: relative; text-align: left; justify-content: left; padding: 6px 12px; } .block-editor-block-variation-transforms .components-dropdown-menu__toggle.components-dropdown-menu__toggle { padding-right: 24px; } .block-editor-block-variation-transforms .components-dropdown-menu__toggle:focus:not(:disabled) { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 calc(var(--wp-admin-border-width-focus) - 1px) var(--wp-admin-theme-color); } .block-editor-block-variation-transforms .components-dropdown-menu__toggle svg { height: 100%; padding: 0; position: absolute; right: 0; top: 0; } .block-editor-block-variation-transforms__popover .components-popover__content { min-width: 230px; } .components-border-radius-control { margin-bottom: 12px; } .components-border-radius-control legend { padding-bottom: 4px; } .components-border-radius-control .components-border-radius-control__wrapper { display: flex; justify-content: space-between; align-items: flex-start; } .components-border-radius-control .components-border-radius-control__wrapper > .components-unit-control-wrapper { width: calc(50% - 26px); margin-bottom: 0; } .components-border-radius-control .components-border-radius-control__wrapper .components-range-control { width: calc(50% - 26px); margin-bottom: 0; } .components-border-radius-control .components-border-radius-control__wrapper .components-range-control .components-base-control__field { margin-bottom: 0; height: 30px; } .components-border-radius-control .components-border-radius-control__wrapper .components-range-control .components-range-control__wrapper { margin-right: 10px; } .components-border-radius-control .components-border-radius-control__wrapper > span { flex: 0 0 auto; } .components-border-radius-control .components-border-radius-control__input-controls-wrapper { display: flex; width: 70%; flex-wrap: wrap; } .components-border-radius-control .components-border-radius-control__input-controls-wrapper .components-unit-control-wrapper { width: calc(50% - 8px); margin-bottom: 8px; margin-right: 8px; } .components-border-radius-control .component-border-radius-control__linked-button.has-icon { display: flex; justify-content: center; } .components-border-radius-control .component-border-radius-control__linked-button.has-icon svg { margin-right: 0; } .components-border-style-control legend { line-height: 1.4; margin-bottom: 8px; padding: 0; } .components-border-style-control .components-border-style-control__buttons { display: inline-flex; margin-bottom: 24px; } .components-border-style-control .components-border-style-control__buttons .components-button.has-icon { min-width: 30px; height: 30px; padding: 3px; margin-right: 4px; } .block-editor-button-block-appender { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 8px; width: 100%; height: auto; color: #1e1e1e; box-shadow: inset 0 0 0 1px #1e1e1e; } .is-dark-theme .block-editor-button-block-appender { color: rgba(255, 255, 255, 0.65); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.65); } .block-editor-button-block-appender:hover { color: var(--wp-admin-theme-color); box-shadow: inset 0 0 0 1px var(--wp-admin-theme-color); } .block-editor-button-block-appender:focus { box-shadow: inset 0 0 0 2px var(--wp-admin-theme-color); } .block-editor-button-block-appender:active { color: #000; } .block-editor-color-gradient-control .block-editor-color-gradient-control__color-indicator { margin-bottom: 12px; } .block-editor-panel-color-gradient-settings .component-color-indicator { vertical-align: text-bottom; } .block-editor-panel-color-gradient-settings__panel-title .component-color-indicator { display: inline-block; } .block-editor-panel-color-gradient-settings.is-opened .block-editor-panel-color-gradient-settings__panel-title .component-color-indicator { display: none; } @media screen and (min-width: 782px) { .block-editor-panel-color-gradient-settings .components-circular-option-picker__swatches { display: grid; grid-template-columns: repeat(6, 28px); justify-content: space-between; } } .block-editor-block-inspector .block-editor-panel-color-gradient-settings .components-base-control { margin-bottom: inherit; } .block-editor-panel-color-gradient-settings .block-editor-panel-color-gradient-settings__dropdown { display: block; } .block-editor-panel-color-gradient-settings__dropdown { width: 100%; } .block-editor-panel-color-gradient-settings__dropdown-content .components-popover__content > div { width: 280px; } @media (min-width: 782px) { .block-editor-panel-color-gradient-settings__dropdown-content .components-popover__content { margin-right: 156px !important; } .block-editor-panel-color-gradient-settings__dropdown-content.is-from-top .components-popover__content { margin-top: -60px !important; } .block-editor-panel-color-gradient-settings__dropdown-content.is-from-bottom .components-popover__content { margin-bottom: -60px !important; } } .block-editor-panel-color-gradient-settings__dropdown:last-child > div { border-bottom-width: 0; } .block-editor-panel-color-gradient-settings__item { padding-top: 12px !important; padding-bottom: 12px !important; } .block-editor-panel-color-gradient-settings__item .block-editor-panel-color-gradient-settings__color-indicator { background: linear-gradient(-45deg, transparent 48%, #ddd 48%, #ddd 52%, transparent 52%); } .block-editor-panel-color-gradient-settings__item.is-open { background: #f0f0f0; color: var(--wp-admin-theme-color); } .block-editor-contrast-checker > .components-notice { margin: 0; } /** * Default block appender. * * This component shows up in 3 places: * - the black plus that sits at the end of the canvas, if the last block isn't a paragraph * - on the right, inside empty paragraphs * - absolute positioned and blue inside nesting containers */ .block-editor-default-block-appender { clear: both; margin-left: auto; margin-right: auto; position: relative; } .block-editor-default-block-appender[data-root-client-id=""] .block-editor-default-block-appender__content:hover { outline: 1px solid transparent; } .block-editor-default-block-appender .block-editor-default-block-appender__content { opacity: 0.62; } .block-editor-default-block-appender .components-drop-zone__content-icon { display: none; } .block-editor-default-block-appender .block-editor-inserter, .block-editor-block-list__empty-block-inserter.block-editor-block-list__empty-block-inserter { position: absolute; top: 0; right: 0; line-height: 0; } .block-editor-default-block-appender .block-editor-inserter:disabled, .block-editor-block-list__empty-block-inserter.block-editor-block-list__empty-block-inserter:disabled { display: none; } /** * Fixed position appender. * These styles apply to all in-canvas inserters that exist inside nesting containers. */ .block-editor-block-list__block .block-list-appender { position: absolute; list-style: none; padding: 0; z-index: 2; bottom: 0; right: 0; } .block-editor-block-list__block .block-list-appender.block-list-appender { margin: 0; line-height: 0; } .block-editor-block-list__block .block-list-appender .block-editor-default-block-appender { height: 24px; } .block-editor-block-list__block .block-list-appender .block-editor-inserter__toggle.components-button.has-icon, .block-editor-block-list__block .block-list-appender .block-list-appender__toggle { flex-direction: row; box-shadow: none; height: 24px; width: 24px; display: none; padding: 0 !important; background: #1e1e1e; color: #fff; } .block-editor-block-list__block .block-list-appender .block-editor-inserter__toggle.components-button.has-icon:hover, .block-editor-block-list__block .block-list-appender .block-list-appender__toggle:hover { color: #fff; background: var(--wp-admin-theme-color); } .block-editor-block-list__block .block-list-appender .block-editor-default-block-appender__content { display: none; } .block-editor-block-list__block .block-list-appender:only-child { position: relative; right: auto; align-self: center; list-style: none; line-height: inherit; } .block-editor-block-list__block .block-list-appender:only-child .block-editor-default-block-appender__content { display: block; } .block-editor-block-list__block.is-selected .block-editor-block-list__layout > .block-list-appender .block-editor-inserter__toggle.components-button.has-icon, .block-editor-block-list__block.is-selected .block-editor-block-list__layout > .block-list-appender .block-list-appender__toggle, .block-editor-block-list__block.is-selected > .block-list-appender .block-editor-inserter__toggle.components-button.has-icon, .block-editor-block-list__block.is-selected > .block-list-appender .block-list-appender__toggle { display: flex; } .block-editor-duotone-control__popover > .components-popover__content > div { padding: 16px; width: 280px; } .block-editor-duotone-control__popover .components-menu-group__label { padding: 0; } .block-editor-duotone-control__popover .components-custom-gradient-picker__gradient-bar { margin: 16px 0 12px; } .block-editor-duotone-control__popover .components-circular-option-picker__swatches { display: grid; grid-template-columns: repeat(6, 28px); gap: 12px; justify-content: space-between; } .block-editor-duotone-control__description { margin: 16px 0; font-size: 12px; } .block-editor-duotone-control__popover:not([data-y-axis=middle][data-x-axis=right]) > .components-popover__content { margin-left: -14px; } .components-font-appearance-control { margin-bottom: 24px; } .components-font-appearance-control ul li { color: #1e1e1e; text-transform: capitalize; } .items-justified-left { justify-content: flex-start; } .items-justified-center { justify-content: center; } .items-justified-right { justify-content: flex-end; } .items-justified-space-between { justify-content: space-between; } @keyframes loadingpulse { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } } .block-editor-link-control { position: relative; min-width: 360px; } .components-popover__content .block-editor-link-control { min-width: auto; width: 90vw; max-width: 360px; } .block-editor-link-control__search-input-wrapper { position: relative; } .block-editor-link-control__search-input-container { position: relative; } .block-editor-link-control__search-input.has-no-label .block-editor-url-input__input { flex: 1; } .block-editor-link-control__field { margin: 16px; } .block-editor-link-control__field > .components-base-control__field { display: flex; align-items: center; margin: 0; } .block-editor-link-control__field .components-base-control__label { margin-right: 16px; margin-bottom: 0; } .block-editor-link-control__field input[type=text], .block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; width: calc(100% - 32px); display: block; padding: 11px 16px; padding-right: 36px; margin: 0; position: relative; border: 1px solid #ddd; border-radius: 2px; } @media (prefers-reduced-motion: reduce) { .block-editor-link-control__field input[type=text], .block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .block-editor-link-control__field input[type=text], .block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .block-editor-link-control__field input[type=text]:focus, .block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .block-editor-link-control__field input[type=text]::-webkit-input-placeholder, .block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .block-editor-link-control__field input[type=text]::-moz-placeholder, .block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .block-editor-link-control__field input[type=text]:-ms-input-placeholder, .block-editor-link-control__field.block-editor-url-input input[type=text].block-editor-url-input__input:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .block-editor-link-control__search-error { margin: -8px 16px 16px; } .block-editor-link-control__search-actions { position: absolute; /* * Actions must be positioned on top of URLInput, since the input will grow * when suggestions are rendered. * * Compensate for: * - Border (1px) * - Vertically, for the difference in height between the input (40px) and * the icon buttons. * - Horizontally, pad to the minimum of: default input padding, or the * equivalent of the vertical padding. */ top: 3px; right: 19px; } .components-button .block-editor-link-control__search-submit .has-icon { margin: -1px; } .block-editor-link-control__search-results-wrapper { position: relative; margin-top: -15px; } .block-editor-link-control__search-results-wrapper::before, .block-editor-link-control__search-results-wrapper::after { content: ""; position: absolute; left: -1px; right: 16px; display: block; pointer-events: none; z-index: 100; } .block-editor-link-control__search-results-wrapper::before { height: 8px; top: 0; bottom: auto; } .block-editor-link-control__search-results-wrapper::after { height: 16px; bottom: 0; top: auto; } .block-editor-link-control__search-results-label { padding: 16px 32px 0; display: block; font-weight: 600; } .block-editor-link-control__search-results { margin: 0; padding: 8px 16px 8px; max-height: 200px; overflow-y: auto; } .block-editor-link-control__search-results.is-loading { opacity: 0.2; } .block-editor-link-control__search-item { position: relative; display: flex; align-items: flex-start; font-size: 13px; cursor: pointer; background: #fff; width: 100%; border: none; text-align: left; padding: 12px 16px; border-radius: 2px; height: auto; } .block-editor-link-control__search-item:hover, .block-editor-link-control__search-item:focus { background-color: #f0f0f0; } .block-editor-link-control__search-item:hover .block-editor-link-control__search-item-type, .block-editor-link-control__search-item:focus .block-editor-link-control__search-item-type { background: #fff; } .block-editor-link-control__search-item:focus:not(:disabled) { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color) inset; } .block-editor-link-control__search-item.is-selected { background: #f0f0f0; } .block-editor-link-control__search-item.is-selected .block-editor-link-control__search-item-type { background: #fff; } .block-editor-link-control__search-item.is-current { flex-direction: column; background: transparent; border: 0; width: 100%; cursor: default; padding: 16px; } .block-editor-link-control__search-item .block-editor-link-control__search-item-header { display: block; flex-direction: row; align-items: flex-start; margin-right: 8px; white-space: pre-wrap; overflow-wrap: break-word; } .block-editor-link-control__search-item .block-editor-link-control__search-item-header .block-editor-link-control__search-item-info { word-break: break-all; } .block-editor-link-control__search-item.is-preview .block-editor-link-control__search-item-header { display: flex; flex: 1; } .block-editor-link-control__search-item.is-error .block-editor-link-control__search-item-header { align-items: center; } .block-editor-link-control__search-item .block-editor-link-control__search-item-icon { position: relative; top: 0.2em; margin-right: 8px; max-height: 24px; flex-shrink: 0; width: 24px; display: flex; justify-content: center; } .block-editor-link-control__search-item .block-editor-link-control__search-item-icon img { width: 16px; } .block-editor-link-control__search-item.is-error .block-editor-link-control__search-item-icon { top: 0; width: 32px; max-height: 32px; } .block-editor-link-control__search-item .block-editor-link-control__search-item-info, .block-editor-link-control__search-item .block-editor-link-control__search-item-title { overflow: hidden; text-overflow: ellipsis; } .block-editor-link-control__search-item .block-editor-link-control__search-item-info .components-external-link__icon, .block-editor-link-control__search-item .block-editor-link-control__search-item-title .components-external-link__icon { position: absolute; right: 0; margin-top: 0; } .block-editor-link-control__search-item .block-editor-link-control__search-item-title { display: block; margin-bottom: 0.2em; font-weight: 500; position: relative; } .block-editor-link-control__search-item .block-editor-link-control__search-item-title mark { font-weight: 700; color: inherit; background-color: transparent; } .block-editor-link-control__search-item .block-editor-link-control__search-item-title span { font-weight: normal; } .block-editor-link-control__search-item .block-editor-link-control__search-item-title svg { display: none; } .block-editor-link-control__search-item .block-editor-link-control__search-item-info { display: block; color: #757575; font-size: 0.9em; line-height: 1.3; } .block-editor-link-control__search-item .block-editor-link-control__search-item-error-notice { font-style: italic; font-size: 1.1em; } .block-editor-link-control__search-item .block-editor-link-control__search-item-type { display: block; padding: 3px 6px; margin-left: auto; font-size: 0.9em; background-color: #f0f0f0; border-radius: 2px; } .block-editor-link-control__search-item .block-editor-link-control__search-item-description { padding-top: 12px; margin: 0; } .block-editor-link-control__search-item .block-editor-link-control__search-item-description.is-placeholder { margin-top: 12px; padding-top: 0; height: 28px; display: flex; flex-direction: column; justify-content: space-around; } .block-editor-link-control__search-item .block-editor-link-control__search-item-description.is-placeholder::before, .block-editor-link-control__search-item .block-editor-link-control__search-item-description.is-placeholder::after { display: block; content: ""; height: 0.7em; width: 100%; background-color: #f0f0f0; border-radius: 3px; } .block-editor-link-control__search-item .block-editor-link-control__search-item-description .components-text { font-size: 0.9em; } .block-editor-link-control__search-item .block-editor-link-control__search-item-image { display: flex; width: 100%; background-color: #f0f0f0; justify-content: center; height: 140px; max-height: 140px; overflow: hidden; border-radius: 2px; margin-top: 12px; } .block-editor-link-control__search-item .block-editor-link-control__search-item-image.is-placeholder { background-color: #f0f0f0; border-radius: 3px; } .block-editor-link-control__search-item .block-editor-link-control__search-item-image img { display: block; max-width: 100%; height: 140px; max-height: 140px; } .block-editor-link-control__search-item-top { display: flex; flex-direction: row; width: 100%; } .block-editor-link-control__search-item-bottom { transition: opacity 1.5s; width: 100%; } .block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-description::before, .block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-description::after { animation: loadingpulse 1s linear infinite; animation-delay: 0.5s; } .block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-image { animation: loadingpulse 1s linear infinite; animation-delay: 0.5s; } .block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-icon svg, .block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-icon img { opacity: 0; } .block-editor-link-control__search-item.is-fetching .block-editor-link-control__search-item-icon::before { content: ""; display: block; background-color: #f0f0f0; position: absolute; top: 0; left: 0; right: 0; bottom: 0; border-radius: 100%; animation: loadingpulse 1s linear infinite; animation-delay: 0.5s; } .block-editor-link-control__loading { margin: 16px; display: flex; align-items: center; } .block-editor-link-control__loading .components-spinner { margin-top: 0; } .components-button + .block-editor-link-control__search-create { overflow: visible; padding: 12px 16px; } .components-button + .block-editor-link-control__search-create::before { content: ""; position: absolute; top: -10px; left: 0; display: block; width: 100%; } .block-editor-link-control__search-create { align-items: center; } .block-editor-link-control__search-create .block-editor-link-control__search-item-title { margin-bottom: 0; } .block-editor-link-control__search-create .block-editor-link-control__search-item-icon { top: 0; } .block-editor-link-control__search-results div[role=menu] > .block-editor-link-control__search-item.block-editor-link-control__search-item { padding: 10px; } .block-editor-link-control__tools { display: flex; align-items: center; border-top: 1px solid #ddd; margin: 0; padding: 16px; } .block-editor-link-control__unlink { padding-left: 16px; padding-right: 16px; } .block-editor-link-control__settings { flex: 1; margin: 0; } .block-editor-link-control__settings :last-child { margin-bottom: 0; } .is-alternate .block-editor-link-control__settings { border-top: 1px solid #1e1e1e; } .block-editor-link-control__setting { margin-bottom: 16px; } .block-editor-link-control__setting :last-child { margin-bottom: 0; } .block-editor-link-control .block-editor-link-control__search-input .components-spinner { display: block; } .block-editor-link-control .block-editor-link-control__search-input .components-spinner.components-spinner { position: absolute; left: auto; bottom: auto; /* * Position spinner to the left of the actions. * * Compensate for: * - Input margin ($grid-unit-20) * - Border (1px) * - Vertically, for the difference in height between the input (40px) * and the spinner. * - Horizontally, adjust for the width occupied by the icon buttons, * then artificially create spacing that mimics as if the spinner * were center-padded to the same width as an icon button. */ top: 28px; right: 62px; } .block-editor-link-control__search-item-action { margin-left: auto; flex-shrink: 0; } .block-editor-line-height-control { margin-bottom: 24px; } .block-editor-line-height-control input { display: block; max-width: 60px; } .block-editor-image-size-control { margin-bottom: 1em; } .block-editor-image-size-control .block-editor-image-size-control__row { display: flex; justify-content: space-between; } .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width, .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height { margin-bottom: 0.5em; } .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width input, .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height input { line-height: 1.25; } .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width { margin-right: 5px; } .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height { margin-left: 5px; } .block-editor-block-list__layout.has-overlay::after { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 60; } .block-editor-block-types-list__list-item { display: block; width: 33.33%; padding: 0; margin: 0; } .components-button.block-editor-block-types-list__item { display: flex; flex-direction: column; width: 100%; font-size: 13px; color: #1e1e1e; padding: 8px; align-items: stretch; justify-content: center; cursor: pointer; background: transparent; word-break: break-word; border-radius: 2px; transition: all 0.05s ease-in-out; position: relative; height: auto; } @media (prefers-reduced-motion: reduce) { .components-button.block-editor-block-types-list__item { transition-duration: 0s; transition-delay: 0s; } } .components-button.block-editor-block-types-list__item:disabled { opacity: 0.6; cursor: default; } .components-button.block-editor-block-types-list__item:not(:disabled):hover { color: var(--wp-admin-theme-color) !important; } .components-button.block-editor-block-types-list__item:not(:disabled):focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .components-button.block-editor-block-types-list__item:not(:disabled).is-active { color: #fff; background: #1e1e1e; outline: 2px solid transparent; outline-offset: -2px; } .block-editor-block-types-list__item-icon { padding: 12px 20px; border-radius: 2px; color: #1e1e1e; transition: all 0.05s ease-in-out; } @media (prefers-reduced-motion: reduce) { .block-editor-block-types-list__item-icon { transition-duration: 0s; transition-delay: 0s; } } .block-editor-block-types-list__item-icon .block-editor-block-icon { margin-left: auto; margin-right: auto; } .block-editor-block-types-list__item-icon svg { transition: all 0.15s ease-out; } @media (prefers-reduced-motion: reduce) { .block-editor-block-types-list__item-icon svg { transition-duration: 0s; transition-delay: 0s; } } .block-editor-block-types-list__list-item[draggable=true] .block-editor-block-types-list__item-icon { cursor: grab; } .block-editor-block-types-list__item-title { padding: 4px 2px 8px; font-size: 12px; } .block-editor-list-view-tree { width: 100%; border-collapse: collapse; padding: 0; margin: 0; } .components-modal__content .block-editor-list-view-tree { margin: -12px -6px 0; width: calc(100% + 12px); } .block-editor-list-view-leaf { position: relative; } .block-editor-list-view-leaf.is-selected { background: var(--wp-admin-theme-color); } .block-editor-list-view-leaf.is-selected .block-editor-list-view-block-contents, .block-editor-list-view-leaf.is-selected .components-button.has-icon { color: #fff; } .is-dragging-components-draggable .block-editor-list-view-leaf.is-selected .block-editor-list-view-block-contents { background: none; color: #1e1e1e; } .block-editor-list-view-leaf.is-selected .block-editor-list-view-block-contents:focus::after { box-shadow: inset 0 0 0 1px #fff, 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .block-editor-list-view-leaf.is-selected .block-editor-list-view-block__menu:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) #fff; } .block-editor-list-view-leaf.is-branch-selected:not(.is-selected) { background: linear-gradient(rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.9)), linear-gradient(var(--wp-admin-theme-color), var(--wp-admin-theme-color)); } .block-editor-list-view-leaf.is-branch-selected.is-selected .block-editor-list-view-block-contents { border-radius: 2px 2px 0 0; } .block-editor-list-view-leaf[aria-expanded=false].is-branch-selected.is-selected .block-editor-list-view-block-contents { border-radius: 2px; } .block-editor-list-view-leaf.is-branch-selected:not(.is-selected) .block-editor-list-view-block-contents { border-radius: 0; } .block-editor-list-view-leaf.is-dragging { display: none; } .block-editor-list-view-leaf .block-editor-list-view-block-contents { display: flex; align-items: center; width: 100%; height: auto; padding: 6px 12px 6px 0; text-align: left; color: #1e1e1e; border-radius: 2px; position: relative; white-space: nowrap; } .block-editor-list-view-leaf .block-editor-list-view-block-contents.is-dropping-before::before { content: ""; position: absolute; pointer-events: none; transition: border-color 0.1s linear, border-style 0.1s linear, box-shadow 0.1s linear; top: -2px; right: 0; left: 0; border-top: 4px solid var(--wp-admin-theme-color); } .components-modal__content .block-editor-list-view-leaf .block-editor-list-view-block-contents { padding-left: 0; padding-right: 0; } .block-editor-list-view-leaf .block-editor-list-view-block-contents:focus { box-shadow: none; } .block-editor-list-view-leaf .block-editor-list-view-block-contents:focus::after { content: ""; position: absolute; top: 0; right: -29px; bottom: 0; left: 0; border-radius: inherit; box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); z-index: 1; pointer-events: none; } .is-dragging-components-draggable .block-editor-list-view-leaf .block-editor-list-view-block-contents:focus::after { box-shadow: none; } .block-editor-list-view-leaf.has-single-cell .block-editor-list-view-block-contents:focus::after { right: 0; } .block-editor-list-view-leaf .block-editor-list-view-block__menu:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); z-index: 1; } .is-dragging-components-draggable .block-editor-list-view-leaf .block-editor-list-view-block__menu:focus { box-shadow: none; } .block-editor-list-view-leaf.is-visible .block-editor-list-view-block-contents { opacity: 1; animation: edit-post__fade-in-animation 0.2s ease-out 0s; animation-fill-mode: forwards; } @media (prefers-reduced-motion: reduce) { .block-editor-list-view-leaf.is-visible .block-editor-list-view-block-contents { animation-duration: 1ms; animation-delay: 0s; } } .block-editor-list-view-leaf .block-editor-block-icon { align-self: flex-start; margin-right: 8px; width: 24px; } .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell, .block-editor-list-view-leaf .block-editor-list-view-block__mover-cell, .block-editor-list-view-leaf .block-editor-list-view-block__contents-cell { padding-top: 0; padding-bottom: 0; } .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell, .block-editor-list-view-leaf .block-editor-list-view-block__mover-cell { line-height: 0; width: 36px; opacity: 0; vertical-align: middle; } @media (prefers-reduced-motion: reduce) { .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell, .block-editor-list-view-leaf .block-editor-list-view-block__mover-cell { transition-duration: 0s; transition-delay: 0s; } } .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell:hover, .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell.is-visible, .block-editor-list-view-leaf .block-editor-list-view-block__mover-cell:hover, .block-editor-list-view-leaf .block-editor-list-view-block__mover-cell.is-visible { position: relative; z-index: 1; opacity: 1; animation: edit-post__fade-in-animation 0.2s ease-out 0s; animation-fill-mode: forwards; } @media (prefers-reduced-motion: reduce) { .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell:hover, .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell.is-visible, .block-editor-list-view-leaf .block-editor-list-view-block__mover-cell:hover, .block-editor-list-view-leaf .block-editor-list-view-block__mover-cell.is-visible { animation-duration: 1ms; animation-delay: 0s; } } .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell, .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell .components-button.has-icon, .block-editor-list-view-leaf .block-editor-list-view-block__mover-cell, .block-editor-list-view-leaf .block-editor-list-view-block__mover-cell .components-button.has-icon { width: 24px; min-width: 24px; padding: 0; } .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell { padding-right: 5px; } .block-editor-list-view-leaf .block-editor-list-view-block__menu-cell .components-button.has-icon { height: 24px; } .block-editor-list-view-leaf .block-editor-list-view-block__mover-cell-alignment-wrapper { display: flex; height: 100%; flex-direction: column; align-items: center; } .block-editor-list-view-leaf .block-editor-block-mover-button { position: relative; width: 36px; height: 24px; } .block-editor-list-view-leaf .block-editor-block-mover-button svg { position: relative; height: 24px; } .block-editor-list-view-leaf .block-editor-block-mover-button.is-up-button { margin-top: -6px; align-items: flex-end; } .block-editor-list-view-leaf .block-editor-block-mover-button.is-up-button svg { bottom: -4px; } .block-editor-list-view-leaf .block-editor-block-mover-button.is-down-button { margin-bottom: -6px; align-items: flex-start; } .block-editor-list-view-leaf .block-editor-block-mover-button.is-down-button svg { top: -4px; } .block-editor-list-view-leaf .block-editor-block-mover-button:focus:enabled { box-shadow: none; outline: none; } .block-editor-list-view-leaf .block-editor-block-mover-button:focus { box-shadow: none; outline: none; } .block-editor-list-view-leaf .block-editor-block-mover-button:focus::before { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 0 0 4px #fff; outline: 2px solid transparent; } .block-editor-list-view-leaf .block-editor-block-mover-button::before { content: ""; position: absolute; display: block; border-radius: 2px; height: 16px; min-width: 100%; left: 0; right: 0; animation: components-button__appear-animation 0.1s ease; animation-fill-mode: forwards; } @media (prefers-reduced-motion: reduce) { .block-editor-list-view-leaf .block-editor-block-mover-button::before { animation-duration: 1ms; animation-delay: 0s; } } .block-editor-list-view-leaf .block-editor-inserter__toggle { background: #1e1e1e; color: #fff; height: 24px; margin: 6px 6px 6px 1px; min-width: 24px; } .block-editor-list-view-leaf .block-editor-inserter__toggle:active { color: #fff; } .block-editor-list-view-leaf .block-editor-list-view-block-select-button__anchor { background: rgba(0, 0, 0, 0.1); border-radius: 2px; display: inline-block; padding: 2px 6px; margin: 0 8px; max-width: 120px; overflow: hidden; text-overflow: ellipsis; } .block-editor-list-view-leaf.is-selected .block-editor-list-view-block-select-button__anchor { background: rgba(0, 0, 0, 0.3); } .block-editor-list-view-block-select-button__description, .block-editor-list-view-appender__description { display: none; } .block-editor-list-view-block__contents-cell .block-editor-list-view-block__contents-container, .block-editor-list-view-block__contents-cell .block-editor-list-view-appender__container, .block-editor-list-view-appender__cell .block-editor-list-view-block__contents-container, .block-editor-list-view-appender__cell .block-editor-list-view-appender__container { display: flex; } .block-editor-list-view__expander { height: 24px; margin-left: 4px; width: 24px; } .block-editor-list-view-leaf[aria-level] .block-editor-list-view__expander { margin-left: 220px; } .block-editor-list-view-leaf:not([aria-level="1"]) .block-editor-list-view__expander { margin-right: 4px; } .block-editor-list-view-leaf[aria-level="1"] .block-editor-list-view__expander { margin-left: 0px; } .block-editor-list-view-leaf[aria-level="2"] .block-editor-list-view__expander { margin-left: 24px; } .block-editor-list-view-leaf[aria-level="3"] .block-editor-list-view__expander { margin-left: 52px; } .block-editor-list-view-leaf[aria-level="4"] .block-editor-list-view__expander { margin-left: 80px; } .block-editor-list-view-leaf[aria-level="5"] .block-editor-list-view__expander { margin-left: 108px; } .block-editor-list-view-leaf[aria-level="6"] .block-editor-list-view__expander { margin-left: 136px; } .block-editor-list-view-leaf[aria-level="7"] .block-editor-list-view__expander { margin-left: 164px; } .block-editor-list-view-leaf[aria-level="8"] .block-editor-list-view__expander { margin-left: 192px; } .block-editor-list-view-leaf .block-editor-list-view__expander { visibility: hidden; } .block-editor-list-view-leaf[aria-expanded=true] .block-editor-list-view__expander svg { visibility: visible; transition: transform 0.2s ease; transform: rotate(90deg); } @media (prefers-reduced-motion: reduce) { .block-editor-list-view-leaf[aria-expanded=true] .block-editor-list-view__expander svg { transition-duration: 0s; transition-delay: 0s; } } .block-editor-list-view-leaf[aria-expanded=false] .block-editor-list-view__expander svg { visibility: visible; transform: rotate(0deg); transition: transform 0.2s ease; } @media (prefers-reduced-motion: reduce) { .block-editor-list-view-leaf[aria-expanded=false] .block-editor-list-view__expander svg { transition-duration: 0s; transition-delay: 0s; } } .block-editor-list-view-drop-indicator { pointer-events: none; } .block-editor-list-view-drop-indicator .block-editor-list-view-drop-indicator__line { background: var(--wp-admin-theme-color); height: 1px; } .block-editor-list-view-drop-indicator:not([data-y-axis=middle][data-x-axis=right]) > .components-popover__content { margin-left: 0; border: none; box-shadow: none; } .block-editor-list-view-placeholder { padding: 0; margin: 0; height: 36px; } .modal-open .block-editor-media-replace-flow__options { display: none; } .block-editor-media-replace-flow__indicator { margin-left: 4px; } .block-editor-media-flow__url-input { border-top: 1px solid #1e1e1e; margin-top: 8px; margin-right: -8px; margin-left: -8px; padding: 16px; } .block-editor-media-flow__url-input .block-editor-media-replace-flow__image-url-label { display: block; top: 16px; margin-bottom: 8px; } .block-editor-media-flow__url-input .block-editor-link-control { width: 220px; } .block-editor-media-flow__url-input .block-editor-link-control .block-editor-url-input { padding: 0; } .block-editor-media-flow__url-input .block-editor-link-control .components-base-control .components-base-control__field { margin-bottom: 0; } .block-editor-media-flow__url-input .block-editor-link-control .block-editor-link-control__search-item-title { max-width: 180px; white-space: nowrap; } .block-editor-media-flow__url-input .block-editor-link-control .block-editor-link-control__search-item-info { white-space: nowrap; } .block-editor-media-flow__url-input .block-editor-link-control .block-editor-link-control__search-item.is-current { width: auto; padding: 0; } .block-editor-media-flow__url-input .block-editor-link-control .block-editor-link-control__search-input.block-editor-link-control__search-input input[type=text] { margin: 0; width: 100%; } .block-editor-media-flow__url-input .block-editor-link-control .block-editor-link-control__search-actions { top: 0; right: 4px; } .block-editor-media-flow__error { padding: 0 20px 20px 20px; max-width: 255px; } .block-editor-media-flow__error .components-with-notices-ui { max-width: 255px; } .block-editor-media-flow__error .components-with-notices-ui .components-notice__content { overflow: hidden; word-wrap: break-word; } .block-editor-media-flow__error .components-with-notices-ui .components-notice__dismiss { position: absolute; right: 10px; } .block-editor-media-placeholder__url-input-container .block-editor-media-placeholder__button { margin-bottom: 0; } .block-editor-media-placeholder__url-input-form { display: flex; } .block-editor-media-placeholder__url-input-form input[type=url].block-editor-media-placeholder__url-input-field { width: 100%; min-width: 200px; flex-grow: 1; border: none; border-radius: 0; margin: 2px; } @media (min-width: 600px) { .block-editor-media-placeholder__url-input-form input[type=url].block-editor-media-placeholder__url-input-field { width: 300px; } } .block-editor-media-placeholder__url-input-submit-button { flex-shrink: 1; } .block-editor-media-placeholder__button { margin-bottom: 0.5rem; } .block-editor-media-placeholder__cancel-button.is-link { margin: 1em; display: block; } .block-editor-media-placeholder.is-appender { min-height: 0; } .block-editor-media-placeholder.is-appender:hover { cursor: pointer; box-shadow: 0 0 0 1px var(--wp-admin-theme-color); } .block-editor-multi-selection-inspector__card { display: flex; align-items: flex-start; padding: 16px; } .block-editor-multi-selection-inspector__card-content { flex-grow: 1; } .block-editor-multi-selection-inspector__card-title { font-weight: 500; margin-bottom: 5px; } .block-editor-multi-selection-inspector__card-description { font-size: 13px; } .block-editor-multi-selection-inspector__card .block-editor-block-icon { margin-left: -2px; margin-right: 10px; padding: 0 3px; width: 36px; height: 24px; } .block-editor-plain-text { box-shadow: none; font-family: inherit; font-size: inherit; color: inherit; line-height: inherit; border: none; padding: 0; margin: 0; width: 100%; } .block-editor-responsive-block-control { margin-bottom: 28px; border-bottom: 1px solid #ccc; padding-bottom: 14px; } .block-editor-responsive-block-control:last-child { padding-bottom: 0; border-bottom: 0; } .block-editor-responsive-block-control__title { margin: 0; margin-bottom: 0.6em; margin-left: -3px; } .block-editor-responsive-block-control__label { font-weight: 600; margin-bottom: 0.6em; margin-left: -3px; } .block-editor-responsive-block-control__inner { margin-left: -1px; } .block-editor-responsive-block-control__toggle { margin-left: 1px; } .block-editor-responsive-block-control .components-base-control__help { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important; } .rich-text [data-rich-text-placeholder] { pointer-events: none; } .rich-text [data-rich-text-placeholder]::after { content: attr(data-rich-text-placeholder); opacity: 0.62; } .rich-text:focus { outline: none; } .rich-text:focus [data-rich-text-format-boundary] { border-radius: 2px; } .block-editor-rich-text__editable > p:first-child { margin-top: 0; } figcaption.block-editor-rich-text__editable [data-rich-text-placeholder]::before { opacity: 0.8; } .components-popover.block-editor-rich-text__inline-format-toolbar { z-index: 99998; } .components-popover.block-editor-rich-text__inline-format-toolbar .components-popover__content { width: auto; min-width: auto; margin-bottom: 8px; box-shadow: none; border: 1px solid #1e1e1e; border-radius: 2px; background-color: #fff; } .components-popover.block-editor-rich-text__inline-format-toolbar .components-toolbar-group, .components-popover.block-editor-rich-text__inline-format-toolbar .components-toolbar { border: none; } .components-popover.block-editor-rich-text__inline-format-toolbar .components-toolbar__control, .components-popover.block-editor-rich-text__inline-format-toolbar .components-dropdown-menu__toggle { min-width: 48px; min-height: 48px; padding-left: 12px; padding-right: 12px; } .block-editor-rich-text__inline-format-toolbar-group .components-dropdown-menu__toggle { justify-content: center; } .show-icon-labels .block-editor-rich-text__inline-format-toolbar-group .components-button.has-icon { width: auto; } .show-icon-labels .block-editor-rich-text__inline-format-toolbar-group .components-button.has-icon svg { display: none; } .show-icon-labels .block-editor-rich-text__inline-format-toolbar-group .components-button.has-icon::after { content: attr(aria-label); } [data-rich-text-script] { display: inline; } [data-rich-text-script]::before { content: ""; background: yellow; } .block-editor-skip-to-selected-block { position: absolute; top: -9999em; } .block-editor-skip-to-selected-block:focus { height: auto; width: auto; display: block; font-size: 14px; font-weight: 600; padding: 15px 23px 14px; background: #f1f1f1; color: var(--wp-admin-theme-color); line-height: normal; box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); text-decoration: none; outline: none; z-index: 100000; } .block-editor-text-transform-control { flex: 0 0 50%; } .block-editor-text-transform-control legend { margin-bottom: 8px; } .block-editor-text-transform-control .block-editor-text-transform-control__buttons { display: inline-flex; margin-bottom: 24px; } .block-editor-text-transform-control .block-editor-text-transform-control__buttons .components-button.has-icon { min-width: 24px; padding: 0; margin-right: 4px; } .block-editor-text-decoration-control { flex: 0 0 50%; } .block-editor-text-decoration-control legend { margin-bottom: 8px; } .block-editor-text-decoration-control .block-editor-text-decoration-control__buttons { display: inline-flex; margin-bottom: 24px; } .block-editor-text-decoration-control .block-editor-text-decoration-control__buttons .components-button.has-icon { min-width: 24px; padding: 0; margin-right: 4px; } .block-editor-tool-selector__help { margin-top: 8px; margin-left: -8px; margin-right: -8px; margin-bottom: -8px; padding: 16px; border-top: 1px solid #ddd; color: #757575; min-width: 280px; } .block-editor-block-list__block .block-editor-url-input, .components-popover .block-editor-url-input, .block-editor-url-input { flex-grow: 1; position: relative; padding: 1px; } .block-editor-block-list__block .block-editor-url-input input[type=text], .components-popover .block-editor-url-input input[type=text], .block-editor-url-input input[type=text] { width: 100%; padding: 8px 8px 8px 12px; border: none; border-radius: 0; margin-left: 0; margin-right: 0; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; } @media (min-width: 600px) { .block-editor-block-list__block .block-editor-url-input input[type=text], .components-popover .block-editor-url-input input[type=text], .block-editor-url-input input[type=text] { width: 300px; } } @media (min-width: 600px) { .block-editor-block-list__block .block-editor-url-input input[type=text], .components-popover .block-editor-url-input input[type=text], .block-editor-url-input input[type=text] { font-size: 13px; } } .block-editor-block-list__block .block-editor-url-input input[type=text]::-ms-clear, .components-popover .block-editor-url-input input[type=text]::-ms-clear, .block-editor-url-input input[type=text]::-ms-clear { display: none; } .block-editor-block-list__block .block-editor-url-input.is-full-width, .components-popover .block-editor-url-input.is-full-width, .block-editor-url-input.is-full-width { width: 100%; } .block-editor-block-list__block .block-editor-url-input.is-full-width .block-editor-url-input__input[type=text], .components-popover .block-editor-url-input.is-full-width .block-editor-url-input__input[type=text], .block-editor-url-input.is-full-width .block-editor-url-input__input[type=text] { width: 100%; } .block-editor-block-list__block .block-editor-url-input.is-full-width__suggestions, .components-popover .block-editor-url-input.is-full-width__suggestions, .block-editor-url-input.is-full-width__suggestions { width: 100%; } .block-editor-block-list__block .block-editor-url-input .components-spinner, .components-popover .block-editor-url-input .components-spinner, .block-editor-url-input .components-spinner { position: absolute; right: 8px 8px 8px 12px; bottom: 8px 8px 8px 12px8px1; margin: 0; } .block-editor-url-input__input[type=text] { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; } @media (prefers-reduced-motion: reduce) { .block-editor-url-input__input[type=text] { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .block-editor-url-input__input[type=text] { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .block-editor-url-input__input[type=text]:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .block-editor-url-input__input[type=text]::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .block-editor-url-input__input[type=text]::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .block-editor-url-input__input[type=text]:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .block-editor-url-input__suggestions { max-height: 200px; transition: all 0.15s ease-in-out; padding: 4px 0; width: 302px; overflow-y: auto; } @media (prefers-reduced-motion: reduce) { .block-editor-url-input__suggestions { transition-duration: 0s; transition-delay: 0s; } } .block-editor-url-input__suggestions, .block-editor-url-input .components-spinner { display: none; } @media (min-width: 600px) { .block-editor-url-input__suggestions, .block-editor-url-input .components-spinner { display: inherit; } } .block-editor-url-input__suggestion { padding: 4px 8px 8px 8px 12px; color: #757575; display: block; font-size: 13px; cursor: pointer; background: #fff; width: 100%; border: none; text-align: left; box-shadow: none; } .block-editor-url-input__suggestion:hover { background: #ddd; } .block-editor-url-input__suggestion:focus, .block-editor-url-input__suggestion.is-selected { background: var(--wp-admin-theme-color-darker-20); color: #fff; outline: none; } .components-toolbar-group > .block-editor-url-input__button, .components-toolbar > .block-editor-url-input__button { position: inherit; } .block-editor-url-input__button .block-editor-url-input__back { margin-right: 4px; overflow: visible; } .block-editor-url-input__button .block-editor-url-input__back::after { content: ""; position: absolute; display: block; width: 1px; height: 24px; right: -1px; background: #ddd; } .block-editor-url-input__button-modal { box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05); border: 1px solid #ddd; background: #fff; } .block-editor-url-input__button-modal-line { display: flex; flex-direction: row; flex-grow: 1; flex-shrink: 1; min-width: 0; align-items: flex-start; } .block-editor-url-input__button-modal-line .components-button { flex-shrink: 0; width: 36px; height: 36px; } .block-editor-url-popover__additional-controls { border-top: 1px solid #ddd; } .block-editor-url-popover__additional-controls > div[role=menu] .components-button:not(:disabled):not([aria-disabled=true]):not(.is-secondary) > svg { box-shadow: none; } .block-editor-url-popover__additional-controls div[role=menu] > .components-button { padding-left: 12px; } .block-editor-url-popover__row { display: flex; } .block-editor-url-popover__row > :not(.block-editor-url-popover__settings-toggle) { flex-grow: 1; } .block-editor-url-popover .components-button.has-icon { padding: 3px; } .block-editor-url-popover .components-button.has-icon > svg { padding: 5px; border-radius: 2px; height: 30px; width: 30px; } .block-editor-url-popover .components-button.has-icon:not(:disabled):focus { box-shadow: none; } .block-editor-url-popover .components-button.has-icon:not(:disabled):focus > svg { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 0 0 4px #fff; outline: 2px solid transparent; } .block-editor-url-popover__settings-toggle { flex-shrink: 0; border-radius: 0; border-left: 1px solid #ddd; margin-left: 1px; } .block-editor-url-popover__settings-toggle[aria-expanded=true] .dashicon { transform: rotate(180deg); } .block-editor-url-popover__input-container .components-base-control:last-child, .block-editor-url-popover__input-container .components-base-control:last-child .components-base-control__field { margin-bottom: 0; } .block-editor-url-popover__settings { display: block; padding: 16px; border-top: 1px solid #ddd; } .block-editor-url-popover__link-editor, .block-editor-url-popover__link-viewer { display: flex; } .block-editor-url-popover__link-editor .block-editor-url-input .components-base-control__field, .block-editor-url-popover__link-viewer .block-editor-url-input .components-base-control__field { margin-bottom: 0; } .block-editor-url-popover__link-editor .block-editor-url-input .components-spinner, .block-editor-url-popover__link-viewer .block-editor-url-input .components-spinner { bottom: 8px 8px 8px 12px1; } .block-editor-url-popover__link-viewer-url { margin: 7px; flex-grow: 1; flex-shrink: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 150px; max-width: 500px; } .block-editor-url-popover__link-viewer-url.has-invalid-link { color: #cc1818; } .block-editor-warning { align-items: center; display: flex; flex-wrap: wrap; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 1em; border: 1px solid #1e1e1e; border-radius: 2px; background-color: #fff; } .block-editor-warning .block-editor-warning__message { line-height: 1.4; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; color: #1e1e1e; margin: 0; } .block-editor-warning p.block-editor-warning__message.block-editor-warning__message { min-height: auto; } .block-editor-warning .block-editor-warning__contents { display: flex; flex-direction: row; justify-content: space-between; flex-wrap: wrap; align-items: baseline; width: 100%; } .block-editor-warning .block-editor-warning__actions { display: flex; margin-top: 1em; } .block-editor-warning .block-editor-warning__action { margin: 0 8px 0 0; } .block-editor-warning__secondary { margin: auto 0 auto 8px; } .components-popover.block-editor-warning__dropdown { z-index: 99998; } .html-anchor-control .components-external-link { display: block; margin-top: 8px; } .block-editor-hooks__layout-controls { display: flex; margin-bottom: 16px; } .block-editor-hooks__layout-controls .block-editor-hooks__layout-controls-unit { display: flex; margin-right: 24px; } .block-editor-hooks__layout-controls .block-editor-hooks__layout-controls-unit svg { margin: auto 0 4px 8px; } .block-editor-hooks__layout-controls-reset { display: flex; justify-content: flex-end; margin-bottom: 24px; } .block-editor-hooks__layout-controls-helptext { font-size: 12px; } .block-editor-hooks__flex-layout-justification-controls, .block-editor-hooks__flex-layout-orientation-controls { margin-bottom: 12px; } .block-editor-hooks__flex-layout-justification-controls legend, .block-editor-hooks__flex-layout-orientation-controls legend { margin-bottom: 8px; } .block-editor-hooks__border-controls .block-editor-hooks__border-controls-row { display: flex; justify-content: space-between; } .block-editor-hooks__border-controls .block-editor-hooks__border-controls-row > * { width: calc(50% - 8px); } .block-editor-hooks__border-controls .components-unit-control-wrapper { margin-bottom: 24px; } .block-editor-hooks__border-controls .components-unit-control-wrapper:last-child { margin-bottom: 8px; } .dimensions-block-support-panel .single-column { grid-column: span 1; } .typography-block-support-panel .components-font-appearance-control, .typography-block-support-panel .components-font-size-picker__controls, .typography-block-support-panel .block-editor-text-decoration-control__buttons, .typography-block-support-panel .block-editor-text-transform-control__buttons { margin-bottom: 0; } .typography-block-support-panel .block-editor-line-height-control input { max-width: 100%; } .typography-block-support-panel .single-column { grid-column: span 1; } /** * Block Toolbar */ .block-editor-block-toolbar { display: flex; flex-grow: 1; width: 100%; position: relative; overflow-y: hidden; overflow-x: auto; transition: border-color 0.1s linear, box-shadow 0.1s linear; } @media (prefers-reduced-motion: reduce) { .block-editor-block-toolbar { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .block-editor-block-toolbar { overflow: inherit; } } .block-editor-block-toolbar .components-toolbar-group, .block-editor-block-toolbar .components-toolbar { background: none; line-height: 0; margin-top: -1px; margin-bottom: -1px; border: 0; border-right: 1px solid #ddd; } .block-editor-block-toolbar > :last-child, .block-editor-block-toolbar > :last-child .components-toolbar-group, .block-editor-block-toolbar > :last-child .components-toolbar { border-right: none; } .block-editor-block-contextual-toolbar.has-parent:not(.is-fixed) { margin-left: calc(48px + 8px); } .show-icon-labels .block-editor-block-contextual-toolbar.has-parent:not(.is-fixed) { margin-left: 0; } .block-editor-block-parent-selector { position: absolute; top: -1px; left: calc(-48px - 8px - 1px); } .show-icon-labels .block-editor-block-parent-selector { position: relative; left: auto; top: auto; margin-top: -1px; margin-left: -1px; margin-bottom: -1px; } .block-editor-block-toolbar__block-controls { height: auto !important; padding: 0 !important; margin-left: -1px; } .block-editor-block-toolbar__block-controls .block-editor-block-switcher .components-dropdown-menu__toggle .block-editor-block-icon, .block-editor-block-toolbar__block-controls .block-editor-block-switcher__no-switcher-icon .block-editor-block-icon { width: 24px !important; margin: 0 !important; } .block-editor-block-toolbar__block-controls .block-editor-block-mover { margin-left: -6px; } .block-editor-block-toolbar .components-toolbar-group, .block-editor-block-toolbar .components-toolbar, .block-editor-rich-text__inline-format-toolbar-group .components-toolbar-group, .block-editor-rich-text__inline-format-toolbar-group .components-toolbar { display: flex; flex-wrap: nowrap; } .block-editor-block-toolbar__slot { display: inline-block; line-height: 0; } @supports (position: sticky) { .block-editor-block-toolbar__slot { display: inline-flex; } } .show-icon-labels .block-editor-block-toolbar .components-button.has-icon { width: auto; } .show-icon-labels .block-editor-block-toolbar .components-button.has-icon svg { display: none; } .show-icon-labels .block-editor-block-toolbar .components-button.has-icon::after { content: attr(aria-label); font-size: 12px; } .show-icon-labels .components-accessible-toolbar .components-toolbar-group > div:first-child:last-child > .components-button.has-icon { padding-left: 6px; padding-right: 6px; } .show-icon-labels .block-editor-block-switcher { border-right: 1px solid #1e1e1e; } .show-icon-labels .block-editor-block-switcher .components-dropdown-menu__toggle { margin-left: 0; } .show-icon-labels .block-editor-block-switcher .components-dropdown-menu__toggle .block-editor-block-icon, .show-icon-labels .block-editor-block-switcher__no-switcher-icon .block-editor-block-icon { width: 0 !important; height: 0 !important; } .show-icon-labels .block-editor-block-parent-selector__button .block-editor-block-icon { width: 0; } .show-icon-labels .block-editor-block-toolbar__block-controls .block-editor-block-mover { margin-left: 0; white-space: nowrap; } .show-icon-labels .block-editor-block-mover-button { padding-left: 8px !important; padding-right: 8px !important; } .show-icon-labels .block-editor-block-mover__drag-handle.has-icon { padding-left: 6px !important; padding-right: 6px !important; border-right: 1px solid #1e1e1e; } @media (min-width: 600px) { .show-icon-labels .is-up-button.is-up-button.is-up-button { border-bottom: 1px solid #1e1e1e; margin-right: 0; border-radius: 0; } } .show-icon-labels .block-editor-block-contextual-toolbar .block-editor-block-mover.is-horizontal .block-editor-block-mover-button.block-editor-block-mover-button { width: auto; } .show-icon-labels .components-toolbar, .show-icon-labels .components-toolbar-group { flex-shrink: 1; } .show-icon-labels .block-editor-rich-text__inline-format-toolbar-group .components-button + .components-button { margin-left: 6px; } .block-editor-inserter { display: inline-block; background: none; border: none; padding: 0; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; line-height: 0; } @media (min-width: 782px) { .block-editor-inserter { position: relative; } } .block-editor-inserter__content { position: relative; } .block-editor-inserter__popover.is-quick .components-popover__content { border: none; } .block-editor-inserter__popover.is-quick .components-popover__content .block-editor-inserter__quick-inserter > * { border-left: 1px solid #ccc; border-right: 1px solid #ccc; } .block-editor-inserter__popover.is-quick .components-popover__content .block-editor-inserter__quick-inserter > *:first-child { border-top: 1px solid #ccc; } .block-editor-inserter__popover.is-quick .components-popover__content .block-editor-inserter__quick-inserter > *:last-child { border-bottom: 1px solid #ccc; } .block-editor-inserter__popover.is-quick .components-popover__content .block-editor-inserter__quick-inserter > *.components-button { border: 1px solid #1e1e1e; } .block-editor-inserter__popover .block-editor-inserter__menu { margin: -12px; } .block-editor-inserter__popover .block-editor-inserter__menu .block-editor-inserter__tabs .components-tab-panel__tabs { top: 60px; } .block-editor-inserter__popover .block-editor-inserter__menu .block-editor-inserter__main-area { overflow: visible; height: auto; } .block-editor-inserter__popover .block-editor-inserter__menu .block-editor-inserter__preview-container { display: none; } .block-editor-inserter__toggle.components-button { display: inline-flex; align-items: center; cursor: pointer; border: none; outline: none; padding: 0; transition: color 0.2s ease; } @media (prefers-reduced-motion: reduce) { .block-editor-inserter__toggle.components-button { transition-duration: 0s; transition-delay: 0s; } } .block-editor-inserter__menu { height: 100%; position: relative; overflow: visible; } .block-editor-inserter__main-area { width: auto; overflow-y: auto; height: 100%; } @media (min-width: 782px) { .block-editor-inserter__main-area { width: 350px; } } .block-editor-inserter__inline-elements { margin-top: -1px; } .block-editor-inserter__menu.is-bottom::after { border-bottom-color: #fff; } .components-popover.block-editor-inserter__popover { z-index: 99999; } .block-editor-inserter__search { background: #fff; padding: 16px 16px 0 16px; position: sticky; top: 0; z-index: 1; } .block-editor-inserter__search .components-search-control__icon { right: 20px; } .block-editor-inserter__search .components-base-control__field { margin-bottom: 0; } .block-editor-inserter__tabs { display: flex; flex-direction: column; } .block-editor-inserter__tabs .components-tab-panel__tabs { position: sticky; top: 64px; background: #fff; z-index: 1; border-bottom: 1px solid #ddd; } .block-editor-inserter__tabs .components-tab-panel__tabs .components-tab-panel__tabs-item { flex-grow: 1; margin-bottom: -1px; } .block-editor-inserter__tabs .components-tab-panel__tab-content { display: flex; flex-grow: 1; flex-direction: column; position: relative; z-index: 0; } .block-editor-inserter__panel-header { display: inline-flex; align-items: center; padding: 16px 16px 0; } .block-editor-inserter__panel-header-patterns { padding: 16px 16px 0; } .block-editor-inserter__panel-content { padding: 16px; } .block-editor-inserter__panel-title, .block-editor-inserter__panel-title button { margin: 0 12px 0 0; color: #757575; text-transform: uppercase; font-size: 11px; font-weight: 500; } .block-editor-inserter__panel-dropdown select.components-select-control__input.components-select-control__input.components-select-control__input { height: 36px; line-height: 36px; } .block-editor-inserter__panel-dropdown select { border: none; } .block-editor-inserter__block-list { flex-grow: 1; position: relative; } .block-editor-inserter__reusable-blocks-panel { position: relative; text-align: right; } .block-editor-inserter__manage-reusable-blocks { display: inline-block; margin: 16px; } .block-editor-inserter__no-results { padding: 32px; text-align: center; } .block-editor-inserter__no-results-icon { fill: #949494; } .block-editor-inserter__child-blocks { padding: 0 16px; } .block-editor-inserter__parent-block-header { display: flex; align-items: center; } .block-editor-inserter__parent-block-header h2 { font-size: 13px; } .block-editor-inserter__parent-block-header .block-editor-block-icon { margin-right: 8px; } .block-editor-inserter__preview-container { display: none; width: 300px; background: #fff; border-radius: 2px; border: 1px solid #ddd; position: absolute; top: 16px; left: calc(100% + 16px); max-height: calc(100% - 32px); overflow-y: hidden; } @media (min-width: 782px) { .block-editor-inserter__preview-container { display: block; } } .block-editor-inserter__preview-container .block-editor-block-card { padding: 16px; } .block-editor-inserter__preview-container .block-editor-block-card__title { font-size: 13px; } .block-editor-inserter__preview-content { min-height: 144px; background: #f0f0f0; display: grid; flex-grow: 1; align-items: center; } .block-editor-inserter__preview-content-missing { flex: 1; display: flex; justify-content: center; align-items: center; min-height: 144px; color: #757575; background: #f0f0f0; } .block-editor-inserter__tips { border-top: 1px solid #ddd; padding: 16px; flex-shrink: 0; position: relative; } .block-editor-inserter__manage-reusable-blocks-container { padding: 16px; } .block-editor-inserter__quick-inserter { width: 100%; max-width: 100%; } @media (min-width: 782px) { .block-editor-inserter__quick-inserter { width: 350px; } } .block-editor-inserter__quick-inserter-results .block-editor-inserter__panel-header { height: 0; padding: 0; float: left; } .block-editor-inserter__quick-inserter.has-search .block-editor-inserter__panel-content, .block-editor-inserter__quick-inserter.has-expand .block-editor-inserter__panel-content { padding: 16px; } .block-editor-inserter__quick-inserter-patterns .block-editor-block-patterns-list { display: grid; grid-template-columns: 1fr 1fr; grid-gap: 8px; } .block-editor-inserter__quick-inserter-patterns .block-editor-block-patterns-list .block-editor-block-patterns-list__list-item { margin-bottom: 0; } .block-editor-inserter__quick-inserter-patterns .block-editor-block-patterns-list .block-editor-block-preview__container { min-height: 100px; } .block-editor-inserter__quick-inserter-separator { border-top: 1px solid #ddd; } .block-editor-inserter__popover.is-quick > .components-popover__content > div { padding: 0; } .block-editor-inserter__quick-inserter-expand.components-button { display: block; background: #1e1e1e; color: #fff; width: 100%; height: 44px; border-radius: 0; } .block-editor-inserter__quick-inserter-expand.components-button:hover { color: #fff; } .block-editor-inserter__quick-inserter-expand.components-button:active { color: #ccc; } .block-editor-inserter__quick-inserter-expand.components-button.components-button:focus:not(:disabled) { box-shadow: none; background: var(--wp-admin-theme-color); border-color: var(--wp-admin-theme-color); } .block-editor-block-patterns-explorer__sidebar { position: absolute; top: 60px; left: 0; bottom: 0; width: 280px; padding: 24px 32px 32px; overflow-x: visible; overflow-y: scroll; } .block-editor-block-patterns-explorer__sidebar__categories-list__item { display: block; width: 100%; height: 48px; text-align: left; } .block-editor-block-patterns-explorer__search { margin-bottom: 32px; } .block-editor-block-patterns-explorer__search-results-count { padding-bottom: 32px; } .block-editor-block-patterns-explorer__list { margin-left: 248px; } .block-editor-block-patterns-explorer .block-editor-block-patterns-list { display: grid; grid-gap: 32px; grid-template-columns: repeat(1, 1fr); } @media (min-width: 1080px) { .block-editor-block-patterns-explorer .block-editor-block-patterns-list { grid-template-columns: repeat(2, 1fr); } } @media (min-width: 1440px) { .block-editor-block-patterns-explorer .block-editor-block-patterns-list { grid-template-columns: repeat(3, 1fr); } } .block-editor-block-patterns-explorer .block-editor-block-patterns-list .block-editor-block-patterns-list__list-item { min-height: 240px; } .block-editor-block-patterns-explorer .block-editor-block-patterns-list .block-editor-block-preview__container { height: inherit; min-height: 100px; max-height: 800px; } .block-editor-post-preview__dropdown { padding: 0; } .block-editor-post-preview__button-resize.block-editor-post-preview__button-resize { padding-left: 40px; } .block-editor-post-preview__button-resize.block-editor-post-preview__button-resize.has-icon { padding-left: 8px; } .block-editor-post-preview__dropdown-content .components-popover__content { overflow-y: visible; } .block-editor-post-preview__dropdown-content.edit-post-post-preview-dropdown .components-menu-group:first-child { padding-bottom: 8px; } .block-editor-post-preview__dropdown-content.edit-post-post-preview-dropdown .components-menu-group:last-child { margin-bottom: 0; } .block-editor-post-preview__dropdown-content .components-menu-group + .components-menu-group { padding: 8px; } @media (min-width: 600px) { .edit-post-header__settings .editor-post-preview, .edit-site-header__actions .editor-post-preview { display: none; } } @media (min-width: 600px) { .edit-post-header.has-reduced-ui .edit-post-header__settings .editor-post-save-draft, .edit-post-header.has-reduced-ui .edit-post-header__settings .editor-post-saved-state, .edit-post-header.has-reduced-ui .edit-post-header__settings .block-editor-post-preview__button-toggle { transition: opacity 0.1s linear; } } @media (min-width: 600px) and (prefers-reduced-motion: reduce) { .edit-post-header.has-reduced-ui .edit-post-header__settings .editor-post-save-draft, .edit-post-header.has-reduced-ui .edit-post-header__settings .editor-post-saved-state, .edit-post-header.has-reduced-ui .edit-post-header__settings .block-editor-post-preview__button-toggle { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .edit-post-header.has-reduced-ui:not(:hover) .edit-post-header__settings .editor-post-save-draft, .edit-post-header.has-reduced-ui:not(:hover) .edit-post-header__settings .editor-post-saved-state, .edit-post-header.has-reduced-ui:not(:hover) .edit-post-header__settings .block-editor-post-preview__button-toggle { opacity: 0; } .edit-post-header.has-reduced-ui:not(:hover) .edit-post-header__settings .block-editor-post-preview__button-toggle.is-opened { opacity: 1; } } body.admin-color-light { --wp-admin-theme-color: #0085ba; --wp-admin-theme-color--rgb: 0, 133, 186; --wp-admin-theme-color-darker-10: #0073a1; --wp-admin-theme-color-darker-10--rgb: 0, 115, 161; --wp-admin-theme-color-darker-20: #006187; --wp-admin-theme-color-darker-20--rgb: 0, 97, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-light { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-modern { --wp-admin-theme-color: #3858e9; --wp-admin-theme-color--rgb: 56, 88, 233; --wp-admin-theme-color-darker-10: #2145e6; --wp-admin-theme-color-darker-10--rgb: 33, 69, 230; --wp-admin-theme-color-darker-20: #183ad6; --wp-admin-theme-color-darker-20--rgb: 24, 58, 214; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-modern { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-blue { --wp-admin-theme-color: #096484; --wp-admin-theme-color--rgb: 9, 100, 132; --wp-admin-theme-color-darker-10: #07526c; --wp-admin-theme-color-darker-10--rgb: 7, 82, 108; --wp-admin-theme-color-darker-20: #064054; --wp-admin-theme-color-darker-20--rgb: 6, 64, 84; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-blue { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-coffee { --wp-admin-theme-color: #46403c; --wp-admin-theme-color--rgb: 70, 64, 60; --wp-admin-theme-color-darker-10: #383330; --wp-admin-theme-color-darker-10--rgb: 56, 51, 48; --wp-admin-theme-color-darker-20: #2b2724; --wp-admin-theme-color-darker-20--rgb: 43, 39, 36; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-coffee { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-ectoplasm { --wp-admin-theme-color: #523f6d; --wp-admin-theme-color--rgb: 82, 63, 109; --wp-admin-theme-color-darker-10: #46365d; --wp-admin-theme-color-darker-10--rgb: 70, 54, 93; --wp-admin-theme-color-darker-20: #3a2c4d; --wp-admin-theme-color-darker-20--rgb: 58, 44, 77; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-ectoplasm { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-midnight { --wp-admin-theme-color: #e14d43; --wp-admin-theme-color--rgb: 225, 77, 67; --wp-admin-theme-color-darker-10: #dd382d; --wp-admin-theme-color-darker-10--rgb: 221, 56, 45; --wp-admin-theme-color-darker-20: #d02c21; --wp-admin-theme-color-darker-20--rgb: 208, 44, 33; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-midnight { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-ocean { --wp-admin-theme-color: #627c83; --wp-admin-theme-color--rgb: 98, 124, 131; --wp-admin-theme-color-darker-10: #576e74; --wp-admin-theme-color-darker-10--rgb: 87, 110, 116; --wp-admin-theme-color-darker-20: #4c6066; --wp-admin-theme-color-darker-20--rgb: 76, 96, 102; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-ocean { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-sunrise { --wp-admin-theme-color: #dd823b; --wp-admin-theme-color--rgb: 221, 130, 59; --wp-admin-theme-color-darker-10: #d97426; --wp-admin-theme-color-darker-10--rgb: 217, 116, 38; --wp-admin-theme-color-darker-20: #c36922; --wp-admin-theme-color-darker-20--rgb: 195, 105, 34; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-sunrise { --wp-admin-border-width-focus: 1.5px; } }PKj l\3css/dist/block-editor/default-editor-styles.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:18px;line-height:1.5;--wp--style--block-gap:2em}p{line-height:1.8}.editor-post-title__block{margin-top:2em;margin-bottom:1em;font-size:2.5em;font-weight:800}PKj l\H! 3css/dist/block-editor/default-editor-styles-rtl.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } /** * Default editor styles. * * These styles are shown if a theme does not register its own editor style, * a theme.json file, or has toggled off "Use theme styles" in preferences. */ body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 18px; line-height: 1.5; --wp--style--block-gap: 2em; } p { line-height: 1.8; } .editor-post-title__block { margin-top: 2em; margin-bottom: 1em; font-size: 2.5em; font-weight: 800; }PKj l\ css/dist/nux/style.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.nux-dot-tip:after,.nux-dot-tip:before{border-radius:100%;content:" ";pointer-events:none;position:absolute}.nux-dot-tip:before{animation:nux-pulse 1.6s cubic-bezier(.17,.67,.92,.62) infinite;background:rgba(0,115,156,.9);opacity:.9;height:24px;left:-12px;top:-12px;transform:scale(.3333333333);width:24px}.nux-dot-tip:after{background:#00739c;height:8px;left:-4px;top:-4px;width:8px}@keyframes nux-pulse{to{background:rgba(0,115,156,0);transform:scale(1)}}.nux-dot-tip .components-popover__content{width:350px}.nux-dot-tip .components-popover__content>div{padding:20px 18px}@media (min-width:600px){.nux-dot-tip .components-popover__content{width:450px}}.nux-dot-tip .components-popover__content .nux-dot-tip__disable{position:absolute;right:0;top:0}.nux-dot-tip[data-y-axis=top]{margin-top:-4px}.nux-dot-tip[data-y-axis=bottom]{margin-top:4px}.nux-dot-tip[data-y-axis=middle][data-y-axis=left]{margin-left:-4px}.nux-dot-tip[data-y-axis=middle][data-y-axis=right]{margin-left:4px}.nux-dot-tip[data-y-axis=top] .components-popover__content{margin-bottom:20px}.nux-dot-tip[data-y-axis=bottom] .components-popover__content{margin-top:20px}.nux-dot-tip[data-y-axis=middle][data-y-axis=left] .components-popover__content{margin-right:20px}.nux-dot-tip[data-y-axis=middle][data-y-axis=right] .components-popover__content{margin-left:20px}.nux-dot-tip[data-y-axis=center],.nux-dot-tip[data-y-axis=left],.nux-dot-tip[data-y-axis=right]{z-index:1000001}@media (max-width:600px){.nux-dot-tip[data-y-axis=center] .components-popover__content,.nux-dot-tip[data-y-axis=left] .components-popover__content,.nux-dot-tip[data-y-axis=right] .components-popover__content{align-self:end;left:5px;margin:20px 0 0;max-width:none!important;position:fixed;right:5px;width:auto}}.nux-dot-tip.components-popover:not([data-y-axis=middle])[data-y-axis=right] .components-popover__content{ /*!rtl:ignore*/margin-left:0}.nux-dot-tip.components-popover:not([data-y-axis=middle])[data-y-axis=left] .components-popover__content{ /*!rtl:ignore*/margin-right:0}.nux-dot-tip.components-popover.edit-post-more-menu__content:not([data-y-axis=middle])[data-y-axis=right] .components-popover__content{ /*!rtl:ignore*/margin-left:-12px}.nux-dot-tip.components-popover.edit-post-more-menu__content:not([data-y-axis=middle])[data-y-axis=left] .components-popover__content{ /*!rtl:ignore*/margin-right:-12px}PKj l\pV css/dist/nux/style-rtl.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.nux-dot-tip:after,.nux-dot-tip:before{border-radius:100%;content:" ";pointer-events:none;position:absolute}.nux-dot-tip:before{animation:nux-pulse 1.6s cubic-bezier(.17,.67,.92,.62) infinite;background:rgba(0,115,156,.9);opacity:.9;height:24px;right:-12px;top:-12px;transform:scale(.3333333333);width:24px}.nux-dot-tip:after{background:#00739c;height:8px;right:-4px;top:-4px;width:8px}@keyframes nux-pulse{to{background:rgba(0,115,156,0);transform:scale(1)}}.nux-dot-tip .components-popover__content{width:350px}.nux-dot-tip .components-popover__content>div{padding:20px 18px}@media (min-width:600px){.nux-dot-tip .components-popover__content{width:450px}}.nux-dot-tip .components-popover__content .nux-dot-tip__disable{position:absolute;left:0;top:0}.nux-dot-tip[data-y-axis=top]{margin-top:-4px}.nux-dot-tip[data-y-axis=bottom]{margin-top:4px}.nux-dot-tip[data-y-axis=middle][data-y-axis=left]{margin-right:-4px}.nux-dot-tip[data-y-axis=middle][data-y-axis=right]{margin-right:4px}.nux-dot-tip[data-y-axis=top] .components-popover__content{margin-bottom:20px}.nux-dot-tip[data-y-axis=bottom] .components-popover__content{margin-top:20px}.nux-dot-tip[data-y-axis=middle][data-y-axis=left] .components-popover__content{margin-left:20px}.nux-dot-tip[data-y-axis=middle][data-y-axis=right] .components-popover__content{margin-right:20px}.nux-dot-tip[data-y-axis=center],.nux-dot-tip[data-y-axis=left],.nux-dot-tip[data-y-axis=right]{z-index:1000001}@media (max-width:600px){.nux-dot-tip[data-y-axis=center] .components-popover__content,.nux-dot-tip[data-y-axis=left] .components-popover__content,.nux-dot-tip[data-y-axis=right] .components-popover__content{align-self:end;right:5px;margin:20px 0 0;max-width:none!important;position:fixed;left:5px;width:auto}}.nux-dot-tip.components-popover:not([data-y-axis=middle])[data-y-axis=right] .components-popover__content{margin-left:0}.nux-dot-tip.components-popover:not([data-y-axis=middle])[data-y-axis=left] .components-popover__content{margin-right:0}.nux-dot-tip.components-popover.edit-post-more-menu__content:not([data-y-axis=middle])[data-y-axis=right] .components-popover__content{margin-left:-12px}.nux-dot-tip.components-popover.edit-post-more-menu__content:not([data-y-axis=middle])[data-y-axis=left] .components-popover__content{margin-right:-12px}PKj l\$css/dist/nux/style-rtl.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .nux-dot-tip::before, .nux-dot-tip::after { border-radius: 100%; content: " "; pointer-events: none; position: absolute; } .nux-dot-tip::before { animation: nux-pulse 1.6s infinite cubic-bezier(0.17, 0.67, 0.92, 0.62); background: rgba(0, 115, 156, 0.9); opacity: 0.9; height: 24px; right: -12px; top: -12px; transform: scale(0.3333333333); width: 24px; } .nux-dot-tip::after { background: #00739c; height: 8px; right: -4px; top: -4px; width: 8px; } @keyframes nux-pulse { 100% { background: rgba(0, 115, 156, 0); transform: scale(1); } } .nux-dot-tip .components-popover__content { width: 350px; } .nux-dot-tip .components-popover__content > div { padding: 20px 18px; } @media (min-width: 600px) { .nux-dot-tip .components-popover__content { width: 450px; } } .nux-dot-tip .components-popover__content .nux-dot-tip__disable { position: absolute; left: 0; top: 0; } .nux-dot-tip[data-y-axis=top] { margin-top: -4px; } .nux-dot-tip[data-y-axis=bottom] { margin-top: 4px; } .nux-dot-tip[data-y-axis=middle][data-y-axis=left] { margin-right: -4px; } .nux-dot-tip[data-y-axis=middle][data-y-axis=right] { margin-right: 4px; } .nux-dot-tip[data-y-axis=top] .components-popover__content { margin-bottom: 20px; } .nux-dot-tip[data-y-axis=bottom] .components-popover__content { margin-top: 20px; } .nux-dot-tip[data-y-axis=middle][data-y-axis=left] .components-popover__content { margin-left: 20px; } .nux-dot-tip[data-y-axis=middle][data-y-axis=right] .components-popover__content { margin-right: 20px; } .nux-dot-tip[data-y-axis=left], .nux-dot-tip[data-y-axis=center], .nux-dot-tip[data-y-axis=right] { z-index: 1000001; } @media (max-width: 600px) { .nux-dot-tip[data-y-axis=left] .components-popover__content, .nux-dot-tip[data-y-axis=center] .components-popover__content, .nux-dot-tip[data-y-axis=right] .components-popover__content { align-self: end; right: 5px; margin: 20px 0 0 0; max-width: none !important; position: fixed; left: 5px; width: auto; } } .nux-dot-tip.components-popover:not([data-y-axis=middle])[data-y-axis=right] .components-popover__content { margin-left: 0; } .nux-dot-tip.components-popover:not([data-y-axis=middle])[data-y-axis=left] .components-popover__content { margin-right: 0; } .nux-dot-tip.components-popover.edit-post-more-menu__content:not([data-y-axis=middle])[data-y-axis=right] .components-popover__content { margin-left: -12px; } .nux-dot-tip.components-popover.edit-post-more-menu__content:not([data-y-axis=middle])[data-y-axis=left] .components-popover__content { margin-right: -12px; }PKj l\Hqcss/dist/nux/style.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .nux-dot-tip::before, .nux-dot-tip::after { border-radius: 100%; content: " "; pointer-events: none; position: absolute; } .nux-dot-tip::before { animation: nux-pulse 1.6s infinite cubic-bezier(0.17, 0.67, 0.92, 0.62); background: rgba(0, 115, 156, 0.9); opacity: 0.9; height: 24px; left: -12px; top: -12px; transform: scale(0.3333333333); width: 24px; } .nux-dot-tip::after { background: #00739c; height: 8px; left: -4px; top: -4px; width: 8px; } @keyframes nux-pulse { 100% { background: rgba(0, 115, 156, 0); transform: scale(1); } } .nux-dot-tip .components-popover__content { width: 350px; } .nux-dot-tip .components-popover__content > div { padding: 20px 18px; } @media (min-width: 600px) { .nux-dot-tip .components-popover__content { width: 450px; } } .nux-dot-tip .components-popover__content .nux-dot-tip__disable { position: absolute; right: 0; top: 0; } .nux-dot-tip[data-y-axis=top] { margin-top: -4px; } .nux-dot-tip[data-y-axis=bottom] { margin-top: 4px; } .nux-dot-tip[data-y-axis=middle][data-y-axis=left] { margin-left: -4px; } .nux-dot-tip[data-y-axis=middle][data-y-axis=right] { margin-left: 4px; } .nux-dot-tip[data-y-axis=top] .components-popover__content { margin-bottom: 20px; } .nux-dot-tip[data-y-axis=bottom] .components-popover__content { margin-top: 20px; } .nux-dot-tip[data-y-axis=middle][data-y-axis=left] .components-popover__content { margin-right: 20px; } .nux-dot-tip[data-y-axis=middle][data-y-axis=right] .components-popover__content { margin-left: 20px; } .nux-dot-tip[data-y-axis=left], .nux-dot-tip[data-y-axis=center], .nux-dot-tip[data-y-axis=right] { z-index: 1000001; } @media (max-width: 600px) { .nux-dot-tip[data-y-axis=left] .components-popover__content, .nux-dot-tip[data-y-axis=center] .components-popover__content, .nux-dot-tip[data-y-axis=right] .components-popover__content { align-self: end; left: 5px; margin: 20px 0 0 0; max-width: none !important; position: fixed; right: 5px; width: auto; } } .nux-dot-tip.components-popover:not([data-y-axis=middle])[data-y-axis=right] .components-popover__content { /*!rtl:ignore*/ margin-left: 0; } .nux-dot-tip.components-popover:not([data-y-axis=middle])[data-y-axis=left] .components-popover__content { /*!rtl:ignore*/ margin-right: 0; } .nux-dot-tip.components-popover.edit-post-more-menu__content:not([data-y-axis=middle])[data-y-axis=right] .components-popover__content { /*!rtl:ignore*/ margin-left: -12px; } .nux-dot-tip.components-popover.edit-post-more-menu__content:not([data-y-axis=middle])[data-y-axis=left] .components-popover__content { /*!rtl:ignore*/ margin-right: -12px; }PKj l\ E  &css/dist/reusable-blocks/style.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.reusable-blocks-menu-items__convert-modal{z-index:1000001}.reusable-blocks-menu-items__convert-modal-actions{padding-top:12px}PKj l\ E  *css/dist/reusable-blocks/style-rtl.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.reusable-blocks-menu-items__convert-modal{z-index:1000001}.reusable-blocks-menu-items__convert-modal-actions{padding-top:12px}PKj l\n+&css/dist/reusable-blocks/style-rtl.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .reusable-blocks-menu-items__convert-modal { z-index: 1000001; } .reusable-blocks-menu-items__convert-modal-actions { padding-top: 12px; }PKj l\n+"css/dist/reusable-blocks/style.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .reusable-blocks-menu-items__convert-modal { z-index: 1000001; } .reusable-blocks-menu-items__convert-modal-actions { padding-top: 12px; }PKj l\]@zQzQcss/dist/editor/style.min.cssnu[@charset "UTF-8";:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.editor-autocompleters__user .editor-autocompleters__no-avatar:before{font:normal 20px/1 dashicons;content:"";margin-right:5px;vertical-align:middle}.editor-autocompleters__user .editor-autocompleters__user-avatar{margin-right:8px;flex-grow:0;flex-shrink:0;max-width:none;width:24px;height:24px}.editor-autocompleters__user .editor-autocompleters__user-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:200px;flex-shrink:0;flex-grow:1}.editor-autocompleters__user .editor-autocompleters__user-slug{margin-left:8px;color:#757575;white-space:nowrap;text-overflow:ellipsis;overflow:none;max-width:100px;flex-grow:0;flex-shrink:0}.editor-autocompleters__user:hover .editor-autocompleters__user-slug{color:var(--wp-admin-theme-color)}.document-outline{margin:20px 0}.document-outline ul{margin:0;padding:0}.document-outline__item{display:flex;margin:4px 0}.document-outline__item a{text-decoration:none}.document-outline__item .document-outline__emdash:before{color:#ddd;margin-right:4px}.document-outline__item.is-h2 .document-outline__emdash:before{content:"—"}.document-outline__item.is-h3 .document-outline__emdash:before{content:"——"}.document-outline__item.is-h4 .document-outline__emdash:before{content:"———"}.document-outline__item.is-h5 .document-outline__emdash:before{content:"————"}.document-outline__item.is-h6 .document-outline__emdash:before{content:"—————"}.document-outline__button{cursor:pointer;background:none;border:none;display:flex;align-items:flex-start;margin:0 0 0 -1px;padding:2px 5px 2px 1px;color:#1e1e1e;text-align:left;border-radius:2px}.document-outline__button:disabled{cursor:default}.document-outline__button:focus{box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);outline:2px solid transparent}.document-outline__level{background:#ddd;color:#1e1e1e;border-radius:3px;font-size:13px;padding:1px 6px;margin-right:4px}.is-invalid .document-outline__level{background:#f0b849}.document-outline__item-content{padding:1px 0}.components-editor-notices__dismissible,.components-editor-notices__pinned{position:relative;left:0;top:0;right:0;color:#1e1e1e}.components-editor-notices__dismissible .components-notice,.components-editor-notices__pinned .components-notice{box-sizing:border-box;margin:0;border-bottom:1px solid rgba(0,0,0,.2);padding:0 12px;min-height:60px}.components-editor-notices__dismissible .components-notice .components-notice__dismiss,.components-editor-notices__pinned .components-notice .components-notice__dismiss{margin-top:12px}.entities-saved-states__panel{background:#fff;position:fixed;z-index:100001;top:46px;bottom:0;right:0;left:0;overflow:auto;box-sizing:border-box}.entities-saved-states__panel *,.entities-saved-states__panel :after,.entities-saved-states__panel :before{box-sizing:inherit}.entities-saved-states__panel .entities-saved-states__find-entity{display:none}.entities-saved-states__panel .entities-saved-states__find-entity-small{display:block}@media (min-width:782px){.entities-saved-states__panel{top:32px;left:auto;width:280px;border-left:1px solid #ddd}body.is-fullscreen-mode .entities-saved-states__panel{top:0}.entities-saved-states__panel .entities-saved-states__find-entity{display:block}.entities-saved-states__panel .entities-saved-states__find-entity-small{display:none}}.entities-saved-states__panel .entities-saved-states__panel-header{background:#fff;padding-left:8px;padding-right:8px;height:61px;border-bottom:1px solid #ddd;display:flex;align-items:center;align-content:space-between}.entities-saved-states__panel .entities-saved-states__panel-header .editor-entities-saved-states__save-button{margin:auto}.entities-saved-states__panel .entities-saved-states__panel-header .components-button.has-icon{position:absolute;right:8px}.entities-saved-states__panel .entities-saved-states__text-prompt{padding:16px 16px 4px}.editor-error-boundary{max-width:780px;padding:20px;margin:60px auto auto;box-shadow:0 10px 10px rgba(0,0,0,.25)}.editor-page-attributes__order{width:100%}.editor-page-attributes__order .components-base-control__field{display:flex;justify-content:space-between;align-items:center}.editor-page-attributes__order input{width:66px}.editor-post-excerpt__textarea{width:100%;margin-bottom:10px}.editor-post-featured-image{padding:0}.editor-post-featured-image__container{margin-bottom:1em;position:relative}.editor-post-featured-image .components-spinner{position:absolute;top:50%;left:50%;margin-top:-9px;margin-left:-9px}.editor-post-featured-image .components-button+.components-button{display:block;margin-top:1em}.editor-post-featured-image .components-responsive-wrapper__content{max-width:100%;width:auto}.editor-post-featured-image__preview,.editor-post-featured-image__toggle{display:block;width:100%;padding:0;transition:all .1s ease-out;box-shadow:0 0 0 0 var(--wp-admin-theme-color)}@media (prefers-reduced-motion:reduce){.editor-post-featured-image__preview,.editor-post-featured-image__toggle{transition-duration:0s;transition-delay:0s}}.editor-post-featured-image__preview{height:auto}.editor-post-featured-image__preview:not(:disabled):not([aria-disabled=true]):focus{box-shadow:0 0 0 4px var(--wp-admin-theme-color)}.editor-post-featured-image__toggle{border-radius:2px;background-color:#f0f0f0;min-height:90px;line-height:20px;padding:8px 0;text-align:center}.editor-post-featured-image__toggle:hover{background:#ddd;color:#1e1e1e}.editor-post-format{flex-direction:column;align-items:stretch;width:100%}.editor-post-format__content{display:inline-flex;justify-content:space-between;align-items:center;width:100%}.editor-post-format__suggestion{padding:6px;text-align:right;font-size:13px}.editor-post-last-revision__title{width:100%;font-weight:600}.editor-post-last-revision__title .dashicon{margin-right:5px}.components-button.editor-post-last-revision__title{height:100%}.components-button.editor-post-last-revision__title:active,.components-button.editor-post-last-revision__title:hover{background:#f0f0f0}.components-button.editor-post-last-revision__title:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);border-radius:0}.editor-post-locked-modal{height:auto;padding-right:10px;padding-left:10px;padding-top:10px;max-width:480px}.editor-post-locked-modal .components-modal__header{height:36px}.editor-post-locked-modal .components-modal__content{height:auto}.editor-post-locked-modal__buttons{margin-top:10px}.editor-post-locked-modal__buttons .components-button{margin-right:5px}.editor-post-locked-modal__avatar{float:left;margin:5px 15px 5px 5px}.editor-post-publish-button__button.has-changes-dot:before{background:currentcolor;border-radius:4px;content:"";height:8px;margin:auto 5px auto -3px;width:8px}.editor-post-publish-panel{background:#fff}.editor-post-publish-panel__content{min-height:calc(100% - 144px)}.editor-post-publish-panel__content .components-spinner{display:block;margin:100px auto 0}.editor-post-publish-panel__header{background:#fff;padding-left:16px;padding-right:16px;height:61px;border-bottom:1px solid #ddd;display:flex;align-items:center;align-content:space-between}.editor-post-publish-panel__header .components-button{width:100%;justify-content:center}.editor-post-publish-panel__header .has-icon{margin-left:auto;width:auto}.components-site-card{display:flex;align-items:center;margin:16px 0}.components-site-icon{border:none;border-radius:2px;margin-right:12px;height:36px;width:36px}.components-site-name{display:block;font-size:14px}.components-site-home{display:block;color:#757575;font-size:12px}.editor-post-publish-panel__header-cancel-button,.editor-post-publish-panel__header-publish-button{flex-grow:1}@media (min-width:480px){.editor-post-publish-panel__header-cancel-button,.editor-post-publish-panel__header-publish-button{max-width:160px}}.editor-post-publish-panel__header-publish-button{padding-right:4px}.editor-post-publish-panel__header-cancel-button{padding-left:4px}.editor-post-publish-panel__header-published{flex-grow:1}.editor-post-publish-panel__footer{padding:16px}.components-button.editor-post-publish-panel__toggle.is-primary{display:inline-flex;align-items:center}.components-button.editor-post-publish-panel__toggle.is-primary.is-busy .dashicon{display:none}.components-button.editor-post-publish-panel__toggle.is-primary .dashicon{margin-right:-4px}.editor-post-publish-panel__link{font-weight:400;padding-left:4px}.editor-post-publish-panel__prepublish{padding:16px}.editor-post-publish-panel__prepublish strong{color:#1e1e1e}.editor-post-publish-panel__prepublish .components-panel__body{background:#fff;margin-left:-16px;margin-right:-16px}.editor-post-publish-panel__prepublish .editor-post-visibility__dialog-legend{display:none}.post-publish-panel__postpublish .components-panel__body{border-bottom:1px solid #e0e0e0;border-top:none}.post-publish-panel__postpublish-buttons{display:flex;align-content:space-between;flex-wrap:wrap;margin:-5px}.post-publish-panel__postpublish-buttons>*{flex-grow:1;margin:5px}.post-publish-panel__postpublish-buttons .components-button{height:auto;justify-content:center;padding:3px 10px 4px;flex:1;line-height:1.6;text-align:center;white-space:normal}.post-publish-panel__postpublish-buttons .components-clipboard-button{width:100%}.post-publish-panel__postpublish-post-address-container{display:flex;align-items:flex-end;margin-bottom:16px}.post-publish-panel__postpublish-post-address-container .components-base-control__field{margin-bottom:0}.post-publish-panel__postpublish-post-address-container .post-publish-panel__postpublish-post-address{flex:1}.post-publish-panel__postpublish-post-address-container input[readonly]{padding:10px;background:#ddd;overflow:hidden;text-overflow:ellipsis}.post-publish-panel__postpublish-post-address__copy-button-wrap{flex-shrink:0;margin-left:8px}.post-publish-panel__postpublish-post-address__copy-button-wrap .components-button{height:38px}.post-publish-panel__postpublish-header{font-weight:500}.post-publish-panel__postpublish-subheader{margin:0 0 8px}.post-publish-panel__tip{color:#f0b849}@media screen and (max-width:782px){.post-publish-panel__postpublish-post-address__button-wrap .components-button{height:40px}}.editor-post-saved-state{display:flex;align-items:center;width:28px;padding:12px 4px;color:#757575;overflow:hidden;white-space:nowrap}.editor-post-saved-state.is-saved[aria-disabled=true],.editor-post-saved-state.is-saved[aria-disabled=true]:hover,.editor-post-saved-state.is-saving[aria-disabled=true],.editor-post-saved-state.is-saving[aria-disabled=true]:hover{background:transparent;color:#757575}.editor-post-saved-state svg{display:inline-block;flex:0 0 auto;fill:currentColor;margin-right:8px}@media (min-width:600px){.editor-post-saved-state{width:auto;padding:8px 12px;text-indent:inherit}.editor-post-saved-state svg{margin-right:0}}.editor-post-taxonomies__hierarchical-terms-list{max-height:14em;overflow:auto;margin-left:-6px;padding-left:6px;margin-top:-6px;padding-top:6px}.editor-post-taxonomies__hierarchical-terms-choice{margin-bottom:8px}.editor-post-taxonomies__hierarchical-terms-subchoices{margin-top:8px;margin-left:16px}.components-button.editor-post-taxonomies__hierarchical-terms-add,.components-button.editor-post-taxonomies__hierarchical-terms-submit{margin-top:12px}.editor-post-taxonomies__hierarchical-terms-label{display:inline-block;margin-top:12px}.editor-post-taxonomies__hierarchical-terms-input{margin-top:8px}.editor-post-taxonomies__hierarchical-terms-filter{margin-bottom:8px;width:100%}.editor-post-taxonomies__flat-term-most-used .editor-post-taxonomies__flat-term-most-used-label{font-weight:400;margin-bottom:12px}.editor-post-taxonomies__flat-term-most-used-list{margin:0}.editor-post-taxonomies__flat-term-most-used-list li{display:inline-block;margin-right:8px}.editor-post-taxonomies__flat-term-most-used-list .components-button{font-size:12px}.edit-post-text-editor__body textarea.editor-post-text-editor{border:1px solid #949494;border-radius:0;display:block;margin:0;width:100%;box-shadow:none;resize:none;overflow:hidden;font-family:Menlo,Consolas,monaco,monospace;line-height:2.4;min-height:200px;transition:border .1s ease-out,box-shadow .1s linear;padding:16px;font-size:16px!important}@media (prefers-reduced-motion:reduce){.edit-post-text-editor__body textarea.editor-post-text-editor{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.edit-post-text-editor__body textarea.editor-post-text-editor{padding:24px;font-size:15px!important}}.edit-post-text-editor__body textarea.editor-post-text-editor:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);position:relative}.edit-post-text-editor__body textarea.editor-post-text-editor::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.edit-post-text-editor__body textarea.editor-post-text-editor::-moz-placeholder{color:rgba(30,30,30,.62);opacity:1}.edit-post-text-editor__body textarea.editor-post-text-editor:-ms-input-placeholder{color:rgba(30,30,30,.62)}.edit-post-post-visibility__dialog,.editor-post-visibility__dialog-fieldset{padding:0 4px 4px}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-legend,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-legend{font-weight:600;margin-bottom:1em;margin-top:.5em;padding:0}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio],.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;padding:6px 8px;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;font-size:16px;line-height:normal;border:1px solid #1e1e1e;margin-right:12px;transition:none;border-radius:50%;width:24px;height:24px;margin-top:2px}@media (prefers-reduced-motion:reduce){.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio],.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio],.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]{font-size:13px;line-height:normal}}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:focus,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color)}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]::-webkit-input-placeholder,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]::-moz-placeholder,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:-ms-input-placeholder,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:-ms-input-placeholder{color:rgba(30,30,30,.62)}@media (min-width:600px){.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio],.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]{height:20px;width:20px}}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:checked:before,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:checked:before{box-sizing:inherit;width:8px;height:8px;transform:translate(7px,7px);margin:0;background-color:#fff;border:4px solid #fff}@media (min-width:600px){.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:checked:before,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:checked:before{transform:translate(5px,5px)}}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:focus,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:focus{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--wp-admin-theme-color);outline:2px solid transparent}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:checked,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:checked{background:var(--wp-admin-theme-color);border-color:var(--wp-admin-theme-color)}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-label,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-label{font-weight:600}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-info,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-info{margin-top:0;margin-left:32px}.edit-post-post-visibility__dialog .editor-post-visibility__choice:last-child .editor-post-visibility__dialog-info,.editor-post-visibility__dialog-fieldset .editor-post-visibility__choice:last-child .editor-post-visibility__dialog-info{margin-bottom:0}.editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;padding:6px 8px;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;border:1px solid #757575;font-size:16px;line-height:normal;margin-left:36px;margin-top:8px}@media (prefers-reduced-motion:reduce){.editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]{font-size:13px;line-height:normal}}.editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]:-ms-input-placeholder{color:rgba(30,30,30,.62)}.editor-post-title{position:relative}.editor-post-title.is-focus-mode{opacity:.5;transition:opacity .1s linear}@media (prefers-reduced-motion:reduce){.editor-post-title.is-focus-mode{transition-duration:0s;transition-delay:0s}}.editor-post-title.is-focus-mode:focus{opacity:1}.editor-post-trash.components-button{margin-top:4px}.table-of-contents__popover.components-popover .components-popover__content{min-width:380px}.components-popover.table-of-contents__popover{z-index:99998}.table-of-contents__popover .components-popover__content>div{padding:16px}@media (min-width:600px){.table-of-contents__popover .components-popover__content{max-height:calc(100vh - 120px);overflow-y:auto}}.table-of-contents__popover hr{margin:10px -16px 0}.table-of-contents__wrapper:focus:before{content:"";display:block;position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);pointer-events:none}.table-of-contents__counts{display:flex;flex-wrap:wrap;margin:-8px 0 0}.table-of-contents__count{flex-basis:33%;display:flex;flex-direction:column;font-size:13px;color:#1e1e1e;padding-right:8px;margin-bottom:0;margin-top:8px}.table-of-contents__count:nth-child(4n){padding-right:0}.table-of-contents__number,.table-of-contents__popover .word-count{font-size:21px;font-weight:400;line-height:30px;color:#1e1e1e}.table-of-contents__title{display:block;margin-top:20px;font-size:15px;font-weight:600}.editor-template-validation-notice{display:flex;justify-content:space-between;align-items:center}.editor-template-validation-notice .components-button{margin-left:5px}PKj l\'|Q|Q!css/dist/editor/style-rtl.min.cssnu[@charset "UTF-8";:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.editor-autocompleters__user .editor-autocompleters__no-avatar:before{font:normal 20px/1 dashicons;content:"";margin-left:5px;vertical-align:middle}.editor-autocompleters__user .editor-autocompleters__user-avatar{margin-left:8px;flex-grow:0;flex-shrink:0;max-width:none;width:24px;height:24px}.editor-autocompleters__user .editor-autocompleters__user-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:200px;flex-shrink:0;flex-grow:1}.editor-autocompleters__user .editor-autocompleters__user-slug{margin-right:8px;color:#757575;white-space:nowrap;text-overflow:ellipsis;overflow:none;max-width:100px;flex-grow:0;flex-shrink:0}.editor-autocompleters__user:hover .editor-autocompleters__user-slug{color:var(--wp-admin-theme-color)}.document-outline{margin:20px 0}.document-outline ul{margin:0;padding:0}.document-outline__item{display:flex;margin:4px 0}.document-outline__item a{text-decoration:none}.document-outline__item .document-outline__emdash:before{color:#ddd;margin-left:4px}.document-outline__item.is-h2 .document-outline__emdash:before{content:"—"}.document-outline__item.is-h3 .document-outline__emdash:before{content:"——"}.document-outline__item.is-h4 .document-outline__emdash:before{content:"———"}.document-outline__item.is-h5 .document-outline__emdash:before{content:"————"}.document-outline__item.is-h6 .document-outline__emdash:before{content:"—————"}.document-outline__button{cursor:pointer;background:none;border:none;display:flex;align-items:flex-start;margin:0 -1px 0 0;padding:2px 1px 2px 5px;color:#1e1e1e;text-align:right;border-radius:2px}.document-outline__button:disabled{cursor:default}.document-outline__button:focus{box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);outline:2px solid transparent}.document-outline__level{background:#ddd;color:#1e1e1e;border-radius:3px;font-size:13px;padding:1px 6px;margin-left:4px}.is-invalid .document-outline__level{background:#f0b849}.document-outline__item-content{padding:1px 0}.components-editor-notices__dismissible,.components-editor-notices__pinned{position:relative;right:0;top:0;left:0;color:#1e1e1e}.components-editor-notices__dismissible .components-notice,.components-editor-notices__pinned .components-notice{box-sizing:border-box;margin:0;border-bottom:1px solid rgba(0,0,0,.2);padding:0 12px;min-height:60px}.components-editor-notices__dismissible .components-notice .components-notice__dismiss,.components-editor-notices__pinned .components-notice .components-notice__dismiss{margin-top:12px}.entities-saved-states__panel{background:#fff;position:fixed;z-index:100001;top:46px;bottom:0;left:0;right:0;overflow:auto;box-sizing:border-box}.entities-saved-states__panel *,.entities-saved-states__panel :after,.entities-saved-states__panel :before{box-sizing:inherit}.entities-saved-states__panel .entities-saved-states__find-entity{display:none}.entities-saved-states__panel .entities-saved-states__find-entity-small{display:block}@media (min-width:782px){.entities-saved-states__panel{top:32px;right:auto;width:280px;border-right:1px solid #ddd}body.is-fullscreen-mode .entities-saved-states__panel{top:0}.entities-saved-states__panel .entities-saved-states__find-entity{display:block}.entities-saved-states__panel .entities-saved-states__find-entity-small{display:none}}.entities-saved-states__panel .entities-saved-states__panel-header{background:#fff;padding-right:8px;padding-left:8px;height:61px;border-bottom:1px solid #ddd;display:flex;align-items:center;align-content:space-between}.entities-saved-states__panel .entities-saved-states__panel-header .editor-entities-saved-states__save-button{margin:auto}.entities-saved-states__panel .entities-saved-states__panel-header .components-button.has-icon{position:absolute;left:8px}.entities-saved-states__panel .entities-saved-states__text-prompt{padding:16px 16px 4px}.editor-error-boundary{max-width:780px;padding:20px;margin:60px auto auto;box-shadow:0 10px 10px rgba(0,0,0,.25)}.editor-page-attributes__order{width:100%}.editor-page-attributes__order .components-base-control__field{display:flex;justify-content:space-between;align-items:center}.editor-page-attributes__order input{width:66px}.editor-post-excerpt__textarea{width:100%;margin-bottom:10px}.editor-post-featured-image{padding:0}.editor-post-featured-image__container{margin-bottom:1em;position:relative}.editor-post-featured-image .components-spinner{position:absolute;top:50%;right:50%;margin-top:-9px;margin-right:-9px}.editor-post-featured-image .components-button+.components-button{display:block;margin-top:1em}.editor-post-featured-image .components-responsive-wrapper__content{max-width:100%;width:auto}.editor-post-featured-image__preview,.editor-post-featured-image__toggle{display:block;width:100%;padding:0;transition:all .1s ease-out;box-shadow:0 0 0 0 var(--wp-admin-theme-color)}@media (prefers-reduced-motion:reduce){.editor-post-featured-image__preview,.editor-post-featured-image__toggle{transition-duration:0s;transition-delay:0s}}.editor-post-featured-image__preview{height:auto}.editor-post-featured-image__preview:not(:disabled):not([aria-disabled=true]):focus{box-shadow:0 0 0 4px var(--wp-admin-theme-color)}.editor-post-featured-image__toggle{border-radius:2px;background-color:#f0f0f0;min-height:90px;line-height:20px;padding:8px 0;text-align:center}.editor-post-featured-image__toggle:hover{background:#ddd;color:#1e1e1e}.editor-post-format{flex-direction:column;align-items:stretch;width:100%}.editor-post-format__content{display:inline-flex;justify-content:space-between;align-items:center;width:100%}.editor-post-format__suggestion{padding:6px;text-align:left;font-size:13px}.editor-post-last-revision__title{width:100%;font-weight:600}.editor-post-last-revision__title .dashicon{margin-left:5px}.components-button.editor-post-last-revision__title{height:100%}.components-button.editor-post-last-revision__title:active,.components-button.editor-post-last-revision__title:hover{background:#f0f0f0}.components-button.editor-post-last-revision__title:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);border-radius:0}.editor-post-locked-modal{height:auto;padding-left:10px;padding-right:10px;padding-top:10px;max-width:480px}.editor-post-locked-modal .components-modal__header{height:36px}.editor-post-locked-modal .components-modal__content{height:auto}.editor-post-locked-modal__buttons{margin-top:10px}.editor-post-locked-modal__buttons .components-button{margin-left:5px}.editor-post-locked-modal__avatar{float:right;margin:5px 5px 5px 15px}.editor-post-publish-button__button.has-changes-dot:before{background:currentcolor;border-radius:4px;content:"";height:8px;margin:auto -3px auto 5px;width:8px}.editor-post-publish-panel{background:#fff}.editor-post-publish-panel__content{min-height:calc(100% - 144px)}.editor-post-publish-panel__content .components-spinner{display:block;margin:100px auto 0}.editor-post-publish-panel__header{background:#fff;padding-right:16px;padding-left:16px;height:61px;border-bottom:1px solid #ddd;display:flex;align-items:center;align-content:space-between}.editor-post-publish-panel__header .components-button{width:100%;justify-content:center}.editor-post-publish-panel__header .has-icon{margin-right:auto;width:auto}.components-site-card{display:flex;align-items:center;margin:16px 0}.components-site-icon{border:none;border-radius:2px;margin-left:12px;height:36px;width:36px}.components-site-name{display:block;font-size:14px}.components-site-home{display:block;color:#757575;font-size:12px}.editor-post-publish-panel__header-cancel-button,.editor-post-publish-panel__header-publish-button{flex-grow:1}@media (min-width:480px){.editor-post-publish-panel__header-cancel-button,.editor-post-publish-panel__header-publish-button{max-width:160px}}.editor-post-publish-panel__header-publish-button{padding-left:4px}.editor-post-publish-panel__header-cancel-button{padding-right:4px}.editor-post-publish-panel__header-published{flex-grow:1}.editor-post-publish-panel__footer{padding:16px}.components-button.editor-post-publish-panel__toggle.is-primary{display:inline-flex;align-items:center}.components-button.editor-post-publish-panel__toggle.is-primary.is-busy .dashicon{display:none}.components-button.editor-post-publish-panel__toggle.is-primary .dashicon{margin-left:-4px}.editor-post-publish-panel__link{font-weight:400;padding-right:4px}.editor-post-publish-panel__prepublish{padding:16px}.editor-post-publish-panel__prepublish strong{color:#1e1e1e}.editor-post-publish-panel__prepublish .components-panel__body{background:#fff;margin-right:-16px;margin-left:-16px}.editor-post-publish-panel__prepublish .editor-post-visibility__dialog-legend{display:none}.post-publish-panel__postpublish .components-panel__body{border-bottom:1px solid #e0e0e0;border-top:none}.post-publish-panel__postpublish-buttons{display:flex;align-content:space-between;flex-wrap:wrap;margin:-5px}.post-publish-panel__postpublish-buttons>*{flex-grow:1;margin:5px}.post-publish-panel__postpublish-buttons .components-button{height:auto;justify-content:center;padding:3px 10px 4px;flex:1;line-height:1.6;text-align:center;white-space:normal}.post-publish-panel__postpublish-buttons .components-clipboard-button{width:100%}.post-publish-panel__postpublish-post-address-container{display:flex;align-items:flex-end;margin-bottom:16px}.post-publish-panel__postpublish-post-address-container .components-base-control__field{margin-bottom:0}.post-publish-panel__postpublish-post-address-container .post-publish-panel__postpublish-post-address{flex:1}.post-publish-panel__postpublish-post-address-container input[readonly]{padding:10px;background:#ddd;overflow:hidden;text-overflow:ellipsis}.post-publish-panel__postpublish-post-address__copy-button-wrap{flex-shrink:0;margin-right:8px}.post-publish-panel__postpublish-post-address__copy-button-wrap .components-button{height:38px}.post-publish-panel__postpublish-header{font-weight:500}.post-publish-panel__postpublish-subheader{margin:0 0 8px}.post-publish-panel__tip{color:#f0b849}@media screen and (max-width:782px){.post-publish-panel__postpublish-post-address__button-wrap .components-button{height:40px}}.editor-post-saved-state{display:flex;align-items:center;width:28px;padding:12px 4px;color:#757575;overflow:hidden;white-space:nowrap}.editor-post-saved-state.is-saved[aria-disabled=true],.editor-post-saved-state.is-saved[aria-disabled=true]:hover,.editor-post-saved-state.is-saving[aria-disabled=true],.editor-post-saved-state.is-saving[aria-disabled=true]:hover{background:transparent;color:#757575}.editor-post-saved-state svg{display:inline-block;flex:0 0 auto;fill:currentColor;margin-left:8px}@media (min-width:600px){.editor-post-saved-state{width:auto;padding:8px 12px;text-indent:inherit}.editor-post-saved-state svg{margin-left:0}}.editor-post-taxonomies__hierarchical-terms-list{max-height:14em;overflow:auto;margin-right:-6px;padding-right:6px;margin-top:-6px;padding-top:6px}.editor-post-taxonomies__hierarchical-terms-choice{margin-bottom:8px}.editor-post-taxonomies__hierarchical-terms-subchoices{margin-top:8px;margin-right:16px}.components-button.editor-post-taxonomies__hierarchical-terms-add,.components-button.editor-post-taxonomies__hierarchical-terms-submit{margin-top:12px}.editor-post-taxonomies__hierarchical-terms-label{display:inline-block;margin-top:12px}.editor-post-taxonomies__hierarchical-terms-input{margin-top:8px}.editor-post-taxonomies__hierarchical-terms-filter{margin-bottom:8px;width:100%}.editor-post-taxonomies__flat-term-most-used .editor-post-taxonomies__flat-term-most-used-label{font-weight:400;margin-bottom:12px}.editor-post-taxonomies__flat-term-most-used-list{margin:0}.editor-post-taxonomies__flat-term-most-used-list li{display:inline-block;margin-left:8px}.editor-post-taxonomies__flat-term-most-used-list .components-button{font-size:12px}.edit-post-text-editor__body textarea.editor-post-text-editor{border:1px solid #949494;border-radius:0;display:block;margin:0;width:100%;box-shadow:none;resize:none;overflow:hidden;font-family:Menlo,Consolas,monaco,monospace;line-height:2.4;min-height:200px;transition:border .1s ease-out,box-shadow .1s linear;padding:16px;font-size:16px!important}@media (prefers-reduced-motion:reduce){.edit-post-text-editor__body textarea.editor-post-text-editor{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.edit-post-text-editor__body textarea.editor-post-text-editor{padding:24px;font-size:15px!important}}.edit-post-text-editor__body textarea.editor-post-text-editor:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);position:relative}.edit-post-text-editor__body textarea.editor-post-text-editor::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.edit-post-text-editor__body textarea.editor-post-text-editor::-moz-placeholder{color:rgba(30,30,30,.62);opacity:1}.edit-post-text-editor__body textarea.editor-post-text-editor:-ms-input-placeholder{color:rgba(30,30,30,.62)}.edit-post-post-visibility__dialog,.editor-post-visibility__dialog-fieldset{padding:0 4px 4px}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-legend,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-legend{font-weight:600;margin-bottom:1em;margin-top:.5em;padding:0}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio],.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;padding:6px 8px;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;font-size:16px;line-height:normal;border:1px solid #1e1e1e;margin-left:12px;transition:none;border-radius:50%;width:24px;height:24px;margin-top:2px}@media (prefers-reduced-motion:reduce){.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio],.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio],.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]{font-size:13px;line-height:normal}}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:focus,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color)}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]::-webkit-input-placeholder,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]::-moz-placeholder,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:-ms-input-placeholder,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:-ms-input-placeholder{color:rgba(30,30,30,.62)}@media (min-width:600px){.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio],.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]{height:20px;width:20px}}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:checked:before,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:checked:before{box-sizing:inherit;width:8px;height:8px;transform:translate(-7px,7px);margin:0;background-color:#fff;border:4px solid #fff}@media (min-width:600px){.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:checked:before,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:checked:before{transform:translate(-5px,5px)}}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:focus,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:focus{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--wp-admin-theme-color);outline:2px solid transparent}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:checked,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:checked{background:var(--wp-admin-theme-color);border-color:var(--wp-admin-theme-color)}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-label,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-label{font-weight:600}.edit-post-post-visibility__dialog .editor-post-visibility__dialog-info,.editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-info{margin-top:0;margin-right:32px}.edit-post-post-visibility__dialog .editor-post-visibility__choice:last-child .editor-post-visibility__dialog-info,.editor-post-visibility__dialog-fieldset .editor-post-visibility__choice:last-child .editor-post-visibility__dialog-info{margin-bottom:0}.editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;padding:6px 8px;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;border:1px solid #757575;font-size:16px;line-height:normal;margin-right:36px;margin-top:8px}@media (prefers-reduced-motion:reduce){.editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]{font-size:13px;line-height:normal}}.editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]:-ms-input-placeholder{color:rgba(30,30,30,.62)}.editor-post-title{position:relative}.editor-post-title.is-focus-mode{opacity:.5;transition:opacity .1s linear}@media (prefers-reduced-motion:reduce){.editor-post-title.is-focus-mode{transition-duration:0s;transition-delay:0s}}.editor-post-title.is-focus-mode:focus{opacity:1}.editor-post-trash.components-button{margin-top:4px}.table-of-contents__popover.components-popover .components-popover__content{min-width:380px}.components-popover.table-of-contents__popover{z-index:99998}.table-of-contents__popover .components-popover__content>div{padding:16px}@media (min-width:600px){.table-of-contents__popover .components-popover__content{max-height:calc(100vh - 120px);overflow-y:auto}}.table-of-contents__popover hr{margin:10px -16px 0}.table-of-contents__wrapper:focus:before{content:"";display:block;position:absolute;top:0;left:0;bottom:0;right:0;box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);pointer-events:none}.table-of-contents__counts{display:flex;flex-wrap:wrap;margin:-8px 0 0}.table-of-contents__count{flex-basis:33%;display:flex;flex-direction:column;font-size:13px;color:#1e1e1e;padding-left:8px;margin-bottom:0;margin-top:8px}.table-of-contents__count:nth-child(4n){padding-left:0}.table-of-contents__number,.table-of-contents__popover .word-count{font-size:21px;font-weight:400;line-height:30px;color:#1e1e1e}.table-of-contents__title{display:block;margin-top:20px;font-size:15px;font-weight:600}.editor-template-validation-notice{display:flex;justify-content:space-between;align-items:center}.editor-template-validation-notice .components-button{margin-right:5px}PKj l\/.e.ecss/dist/editor/style-rtl.cssnu[@charset "UTF-8"; /** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .editor-autocompleters__user .editor-autocompleters__no-avatar::before { /* stylelint-disable */ font: normal 20px/1 dashicons; /* stylelint-enable */ content: ""; margin-left: 5px; vertical-align: middle; } .editor-autocompleters__user .editor-autocompleters__user-avatar { margin-left: 8px; flex-grow: 0; flex-shrink: 0; max-width: none; width: 24px; height: 24px; } .editor-autocompleters__user .editor-autocompleters__user-name { white-space: nowrap; text-overflow: ellipsis; overflow: hidden; max-width: 200px; flex-shrink: 0; flex-grow: 1; } .editor-autocompleters__user .editor-autocompleters__user-slug { margin-right: 8px; color: #757575; white-space: nowrap; text-overflow: ellipsis; overflow: none; max-width: 100px; flex-grow: 0; flex-shrink: 0; } .editor-autocompleters__user:hover .editor-autocompleters__user-slug { color: var(--wp-admin-theme-color); } .document-outline { margin: 20px 0; } .document-outline ul { margin: 0; padding: 0; } .document-outline__item { display: flex; margin: 4px 0; } .document-outline__item a { text-decoration: none; } .document-outline__item .document-outline__emdash::before { color: #ddd; margin-left: 4px; } .document-outline__item.is-h2 .document-outline__emdash::before { content: "—"; } .document-outline__item.is-h3 .document-outline__emdash::before { content: "——"; } .document-outline__item.is-h4 .document-outline__emdash::before { content: "———"; } .document-outline__item.is-h5 .document-outline__emdash::before { content: "————"; } .document-outline__item.is-h6 .document-outline__emdash::before { content: "—————"; } .document-outline__button { cursor: pointer; background: none; border: none; display: flex; align-items: flex-start; margin: 0 -1px 0 0; padding: 2px 1px 2px 5px; color: #1e1e1e; text-align: right; border-radius: 2px; } .document-outline__button:disabled { cursor: default; } .document-outline__button:focus { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); outline: 2px solid transparent; } .document-outline__level { background: #ddd; color: #1e1e1e; border-radius: 3px; font-size: 13px; padding: 1px 6px; margin-left: 4px; } .is-invalid .document-outline__level { background: #f0b849; } .document-outline__item-content { padding: 1px 0; } .components-editor-notices__dismissible, .components-editor-notices__pinned { position: relative; right: 0; top: 0; left: 0; color: #1e1e1e; } .components-editor-notices__dismissible .components-notice, .components-editor-notices__pinned .components-notice { box-sizing: border-box; margin: 0; border-bottom: 1px solid rgba(0, 0, 0, 0.2); padding: 0 12px; min-height: 60px; } .components-editor-notices__dismissible .components-notice .components-notice__dismiss, .components-editor-notices__pinned .components-notice .components-notice__dismiss { margin-top: 12px; } .entities-saved-states__panel { box-sizing: border-box; background: #fff; position: fixed; z-index: 100001; top: 46px; bottom: 0; left: 0; right: 0; overflow: auto; box-sizing: border-box; } .entities-saved-states__panel *, .entities-saved-states__panel *::before, .entities-saved-states__panel *::after { box-sizing: inherit; } .entities-saved-states__panel .entities-saved-states__find-entity { display: none; } .entities-saved-states__panel .entities-saved-states__find-entity-small { display: block; } @media (min-width: 782px) { .entities-saved-states__panel { top: 32px; right: auto; width: 280px; border-right: 1px solid #ddd; } body.is-fullscreen-mode .entities-saved-states__panel { top: 0; } .entities-saved-states__panel .entities-saved-states__find-entity { display: block; } .entities-saved-states__panel .entities-saved-states__find-entity-small { display: none; } } .entities-saved-states__panel .entities-saved-states__panel-header { background: #fff; padding-right: 8px; padding-left: 8px; height: 61px; border-bottom: 1px solid #ddd; display: flex; align-items: center; align-content: space-between; } .entities-saved-states__panel .entities-saved-states__panel-header .editor-entities-saved-states__save-button { margin: auto; } .entities-saved-states__panel .entities-saved-states__panel-header .components-button.has-icon { position: absolute; left: 8px; } .entities-saved-states__panel .entities-saved-states__text-prompt { padding: 16px; padding-bottom: 4px; } .editor-error-boundary { margin: auto; max-width: 780px; padding: 20px; margin-top: 60px; box-shadow: 0 10px 10px rgba(0, 0, 0, 0.25); } .editor-page-attributes__order { width: 100%; } .editor-page-attributes__order .components-base-control__field { display: flex; justify-content: space-between; align-items: center; } .editor-page-attributes__order input { width: 66px; } .editor-post-excerpt__textarea { width: 100%; margin-bottom: 10px; } .editor-post-featured-image { padding: 0; } .editor-post-featured-image__container { margin-bottom: 1em; position: relative; } .editor-post-featured-image .components-spinner { position: absolute; top: 50%; right: 50%; margin-top: -9px; margin-right: -9px; } .editor-post-featured-image .components-button + .components-button { display: block; margin-top: 1em; } .editor-post-featured-image .components-responsive-wrapper__content { max-width: 100%; width: auto; } .editor-post-featured-image__toggle, .editor-post-featured-image__preview { display: block; width: 100%; padding: 0; transition: all 0.1s ease-out; box-shadow: 0 0 0 0 var(--wp-admin-theme-color); } @media (prefers-reduced-motion: reduce) { .editor-post-featured-image__toggle, .editor-post-featured-image__preview { transition-duration: 0s; transition-delay: 0s; } } .editor-post-featured-image__preview { height: auto; } .editor-post-featured-image__preview:not(:disabled):not([aria-disabled=true]):focus { box-shadow: 0 0 0 4px var(--wp-admin-theme-color); } .editor-post-featured-image__toggle { border-radius: 2px; background-color: #f0f0f0; min-height: 90px; line-height: 20px; padding: 8px 0; text-align: center; } .editor-post-featured-image__toggle:hover { background: #ddd; color: #1e1e1e; } .editor-post-format { flex-direction: column; align-items: stretch; width: 100%; } .editor-post-format__content { display: inline-flex; justify-content: space-between; align-items: center; width: 100%; } .editor-post-format__suggestion { padding: 6px; text-align: left; font-size: 13px; } .editor-post-last-revision__title { width: 100%; font-weight: 600; } .editor-post-last-revision__title .dashicon { margin-left: 5px; } .components-button.editor-post-last-revision__title { height: 100%; } .components-button.editor-post-last-revision__title:hover, .components-button.editor-post-last-revision__title:active { background: #f0f0f0; } .components-button.editor-post-last-revision__title:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); border-radius: 0; } .editor-post-locked-modal { height: auto; padding-left: 10px; padding-right: 10px; padding-top: 10px; max-width: 480px; } .editor-post-locked-modal .components-modal__header { height: 36px; } .editor-post-locked-modal .components-modal__content { height: auto; } .editor-post-locked-modal__buttons { margin-top: 10px; } .editor-post-locked-modal__buttons .components-button { margin-left: 5px; } .editor-post-locked-modal__avatar { float: right; margin: 5px; margin-left: 15px; } .editor-post-publish-button__button.has-changes-dot::before { background: currentcolor; border-radius: 4px; content: ""; height: 8px; margin: auto -3px auto 5px; width: 8px; } .editor-post-publish-panel { background: #fff; } .editor-post-publish-panel__content { min-height: calc(100% - 144px); } .editor-post-publish-panel__content .components-spinner { display: block; margin: 100px auto 0; } .editor-post-publish-panel__header { background: #fff; padding-right: 16px; padding-left: 16px; height: 61px; border-bottom: 1px solid #ddd; display: flex; align-items: center; align-content: space-between; } .editor-post-publish-panel__header .components-button { width: 100%; justify-content: center; } .editor-post-publish-panel__header .has-icon { margin-right: auto; width: auto; } .components-site-card { display: flex; align-items: center; margin: 16px 0; } .components-site-icon { border: none; border-radius: 2px; margin-left: 12px; height: 36px; width: 36px; } .components-site-name { display: block; font-size: 14px; } .components-site-home { display: block; color: #757575; font-size: 12px; } .editor-post-publish-panel__header-publish-button, .editor-post-publish-panel__header-cancel-button { flex-grow: 1; } @media (min-width: 480px) { .editor-post-publish-panel__header-publish-button, .editor-post-publish-panel__header-cancel-button { max-width: 160px; } } .editor-post-publish-panel__header-publish-button { padding-left: 4px; } .editor-post-publish-panel__header-cancel-button { padding-right: 4px; } .editor-post-publish-panel__header-published { flex-grow: 1; } .editor-post-publish-panel__footer { padding: 16px; } .components-button.editor-post-publish-panel__toggle.is-primary { display: inline-flex; align-items: center; } .components-button.editor-post-publish-panel__toggle.is-primary.is-busy .dashicon { display: none; } .components-button.editor-post-publish-panel__toggle.is-primary .dashicon { margin-left: -4px; } .editor-post-publish-panel__link { font-weight: 400; padding-right: 4px; } .editor-post-publish-panel__prepublish { padding: 16px; } .editor-post-publish-panel__prepublish strong { color: #1e1e1e; } .editor-post-publish-panel__prepublish .components-panel__body { background: #fff; margin-right: -16px; margin-left: -16px; } .editor-post-publish-panel__prepublish .editor-post-visibility__dialog-legend { display: none; } .post-publish-panel__postpublish .components-panel__body { border-bottom: 1px solid #e0e0e0; border-top: none; } .post-publish-panel__postpublish-buttons { display: flex; align-content: space-between; flex-wrap: wrap; margin: -5px; } .post-publish-panel__postpublish-buttons > * { flex-grow: 1; margin: 5px; } .post-publish-panel__postpublish-buttons .components-button { height: auto; justify-content: center; padding: 3px 10px 4px; flex: 1; line-height: 1.6; text-align: center; white-space: normal; } .post-publish-panel__postpublish-buttons .components-clipboard-button { width: 100%; } .post-publish-panel__postpublish-post-address-container { display: flex; align-items: flex-end; margin-bottom: 16px; } .post-publish-panel__postpublish-post-address-container .components-base-control__field { margin-bottom: 0; } .post-publish-panel__postpublish-post-address-container .post-publish-panel__postpublish-post-address { flex: 1; } .post-publish-panel__postpublish-post-address-container input[readonly] { padding: 10px; background: #ddd; overflow: hidden; text-overflow: ellipsis; } .post-publish-panel__postpublish-post-address__copy-button-wrap { flex-shrink: 0; margin-right: 8px; } .post-publish-panel__postpublish-post-address__copy-button-wrap .components-button { height: 38px; } .post-publish-panel__postpublish-header { font-weight: 500; } .post-publish-panel__postpublish-subheader { margin: 0 0 8px; } .post-publish-panel__tip { color: #f0b849; } @media screen and (max-width: 782px) { .post-publish-panel__postpublish-post-address__button-wrap .components-button { height: 40px; } } .editor-post-saved-state { display: flex; align-items: center; width: 28px; padding: 12px 4px; color: #757575; overflow: hidden; white-space: nowrap; } .editor-post-saved-state.is-saving[aria-disabled=true], .editor-post-saved-state.is-saving[aria-disabled=true]:hover, .editor-post-saved-state.is-saved[aria-disabled=true], .editor-post-saved-state.is-saved[aria-disabled=true]:hover { background: transparent; color: #757575; } .editor-post-saved-state svg { display: inline-block; flex: 0 0 auto; fill: currentColor; margin-left: 8px; } @media (min-width: 600px) { .editor-post-saved-state { width: auto; padding: 8px 12px; text-indent: inherit; } .editor-post-saved-state svg { margin-left: 0; } } .editor-post-taxonomies__hierarchical-terms-list { max-height: 14em; overflow: auto; margin-right: -6px; padding-right: 6px; margin-top: -6px; padding-top: 6px; } .editor-post-taxonomies__hierarchical-terms-choice { margin-bottom: 8px; } .editor-post-taxonomies__hierarchical-terms-subchoices { margin-top: 8px; margin-right: 16px; } .components-button.editor-post-taxonomies__hierarchical-terms-submit, .components-button.editor-post-taxonomies__hierarchical-terms-add { margin-top: 12px; } .editor-post-taxonomies__hierarchical-terms-label { display: inline-block; margin-top: 12px; } .editor-post-taxonomies__hierarchical-terms-input { margin-top: 8px; } .editor-post-taxonomies__hierarchical-terms-filter { margin-bottom: 8px; width: 100%; } .editor-post-taxonomies__flat-term-most-used .editor-post-taxonomies__flat-term-most-used-label { font-weight: 400; margin-bottom: 12px; } .editor-post-taxonomies__flat-term-most-used-list { margin: 0; } .editor-post-taxonomies__flat-term-most-used-list li { display: inline-block; margin-left: 8px; } .editor-post-taxonomies__flat-term-most-used-list .components-button { font-size: 12px; } .edit-post-text-editor__body textarea.editor-post-text-editor { border: 1px solid #949494; border-radius: 0; display: block; margin: 0; width: 100%; box-shadow: none; resize: none; overflow: hidden; font-family: Menlo, Consolas, monaco, monospace; line-height: 2.4; min-height: 200px; transition: border 0.1s ease-out, box-shadow 0.1s linear; padding: 16px; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px !important; } @media (prefers-reduced-motion: reduce) { .edit-post-text-editor__body textarea.editor-post-text-editor { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .edit-post-text-editor__body textarea.editor-post-text-editor { padding: 24px; } } @media (min-width: 600px) { .edit-post-text-editor__body textarea.editor-post-text-editor { font-size: 15px !important; } } .edit-post-text-editor__body textarea.editor-post-text-editor:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); position: relative; } .edit-post-text-editor__body textarea.editor-post-text-editor::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .edit-post-text-editor__body textarea.editor-post-text-editor::-moz-placeholder { color: rgba(30, 30, 30, 0.62); opacity: 1; } .edit-post-text-editor__body textarea.editor-post-text-editor:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .edit-post-post-visibility__dialog, .editor-post-visibility__dialog-fieldset { padding: 4px; padding-top: 0; } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-legend, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-legend { font-weight: 600; margin-bottom: 1em; margin-top: 0.5em; padding: 0; } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio], .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio] { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; border: 1px solid #1e1e1e; margin-left: 12px; transition: none; border-radius: 50%; width: 24px; height: 24px; margin-top: 2px; } @media (prefers-reduced-motion: reduce) { .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio], .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio] { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio], .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio] { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:focus, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]::-webkit-input-placeholder, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]::-moz-placeholder, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:-ms-input-placeholder, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } @media (min-width: 600px) { .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio], .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio] { height: 20px; width: 20px; } } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:checked::before, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:checked::before { box-sizing: inherit; width: 8px; height: 8px; transform: translate(-7px, 7px); margin: 0; background-color: #fff; border: 4px solid #fff; } @media (min-width: 600px) { .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:checked::before, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:checked::before { transform: translate(-5px, 5px); } } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:focus, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:focus { box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--wp-admin-theme-color); outline: 2px solid transparent; } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:checked, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:checked { background: var(--wp-admin-theme-color); border-color: var(--wp-admin-theme-color); } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-label, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-label { font-weight: 600; } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-info, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-info { margin-top: 0; margin-right: 32px; } .edit-post-post-visibility__dialog .editor-post-visibility__choice:last-child .editor-post-visibility__dialog-info, .editor-post-visibility__dialog-fieldset .editor-post-visibility__choice:last-child .editor-post-visibility__dialog-info { margin-bottom: 0; } .editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text] { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; margin-right: 36px; margin-top: 8px; } @media (prefers-reduced-motion: reduce) { .editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text] { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text] { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .editor-post-title { position: relative; } .editor-post-title.is-focus-mode { opacity: 0.5; transition: opacity 0.1s linear; } @media (prefers-reduced-motion: reduce) { .editor-post-title.is-focus-mode { transition-duration: 0s; transition-delay: 0s; } } .editor-post-title.is-focus-mode:focus { opacity: 1; } .editor-post-trash.components-button { margin-top: 4px; } .table-of-contents__popover.components-popover .components-popover__content { min-width: 380px; } .components-popover.table-of-contents__popover { z-index: 99998; } .table-of-contents__popover .components-popover__content > div { padding: 16px; } @media (min-width: 600px) { .table-of-contents__popover .components-popover__content { max-height: calc(100vh - 120px); overflow-y: auto; } } .table-of-contents__popover hr { margin: 10px -16px 0; } .table-of-contents__wrapper:focus::before { content: ""; display: block; position: absolute; top: 0; left: 0; bottom: 0; right: 0; box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); pointer-events: none; } .table-of-contents__counts { display: flex; flex-wrap: wrap; margin: 0; margin-top: -8px; } .table-of-contents__count { flex-basis: 33%; display: flex; flex-direction: column; font-size: 13px; color: #1e1e1e; padding-left: 8px; margin-bottom: 0; margin-top: 8px; } .table-of-contents__count:nth-child(4n) { padding-left: 0; } .table-of-contents__number, .table-of-contents__popover .word-count { font-size: 21px; font-weight: 400; line-height: 30px; color: #1e1e1e; } .table-of-contents__title { display: block; margin-top: 20px; font-size: 15px; font-weight: 600; } .editor-template-validation-notice { display: flex; justify-content: space-between; align-items: center; } .editor-template-validation-notice .components-button { margin-right: 5px; }PKj l\|-e-ecss/dist/editor/style.cssnu[@charset "UTF-8"; /** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .editor-autocompleters__user .editor-autocompleters__no-avatar::before { /* stylelint-disable */ font: normal 20px/1 dashicons; /* stylelint-enable */ content: ""; margin-right: 5px; vertical-align: middle; } .editor-autocompleters__user .editor-autocompleters__user-avatar { margin-right: 8px; flex-grow: 0; flex-shrink: 0; max-width: none; width: 24px; height: 24px; } .editor-autocompleters__user .editor-autocompleters__user-name { white-space: nowrap; text-overflow: ellipsis; overflow: hidden; max-width: 200px; flex-shrink: 0; flex-grow: 1; } .editor-autocompleters__user .editor-autocompleters__user-slug { margin-left: 8px; color: #757575; white-space: nowrap; text-overflow: ellipsis; overflow: none; max-width: 100px; flex-grow: 0; flex-shrink: 0; } .editor-autocompleters__user:hover .editor-autocompleters__user-slug { color: var(--wp-admin-theme-color); } .document-outline { margin: 20px 0; } .document-outline ul { margin: 0; padding: 0; } .document-outline__item { display: flex; margin: 4px 0; } .document-outline__item a { text-decoration: none; } .document-outline__item .document-outline__emdash::before { color: #ddd; margin-right: 4px; } .document-outline__item.is-h2 .document-outline__emdash::before { content: "—"; } .document-outline__item.is-h3 .document-outline__emdash::before { content: "——"; } .document-outline__item.is-h4 .document-outline__emdash::before { content: "———"; } .document-outline__item.is-h5 .document-outline__emdash::before { content: "————"; } .document-outline__item.is-h6 .document-outline__emdash::before { content: "—————"; } .document-outline__button { cursor: pointer; background: none; border: none; display: flex; align-items: flex-start; margin: 0 0 0 -1px; padding: 2px 5px 2px 1px; color: #1e1e1e; text-align: left; border-radius: 2px; } .document-outline__button:disabled { cursor: default; } .document-outline__button:focus { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); outline: 2px solid transparent; } .document-outline__level { background: #ddd; color: #1e1e1e; border-radius: 3px; font-size: 13px; padding: 1px 6px; margin-right: 4px; } .is-invalid .document-outline__level { background: #f0b849; } .document-outline__item-content { padding: 1px 0; } .components-editor-notices__dismissible, .components-editor-notices__pinned { position: relative; left: 0; top: 0; right: 0; color: #1e1e1e; } .components-editor-notices__dismissible .components-notice, .components-editor-notices__pinned .components-notice { box-sizing: border-box; margin: 0; border-bottom: 1px solid rgba(0, 0, 0, 0.2); padding: 0 12px; min-height: 60px; } .components-editor-notices__dismissible .components-notice .components-notice__dismiss, .components-editor-notices__pinned .components-notice .components-notice__dismiss { margin-top: 12px; } .entities-saved-states__panel { box-sizing: border-box; background: #fff; position: fixed; z-index: 100001; top: 46px; bottom: 0; right: 0; left: 0; overflow: auto; box-sizing: border-box; } .entities-saved-states__panel *, .entities-saved-states__panel *::before, .entities-saved-states__panel *::after { box-sizing: inherit; } .entities-saved-states__panel .entities-saved-states__find-entity { display: none; } .entities-saved-states__panel .entities-saved-states__find-entity-small { display: block; } @media (min-width: 782px) { .entities-saved-states__panel { top: 32px; left: auto; width: 280px; border-left: 1px solid #ddd; } body.is-fullscreen-mode .entities-saved-states__panel { top: 0; } .entities-saved-states__panel .entities-saved-states__find-entity { display: block; } .entities-saved-states__panel .entities-saved-states__find-entity-small { display: none; } } .entities-saved-states__panel .entities-saved-states__panel-header { background: #fff; padding-left: 8px; padding-right: 8px; height: 61px; border-bottom: 1px solid #ddd; display: flex; align-items: center; align-content: space-between; } .entities-saved-states__panel .entities-saved-states__panel-header .editor-entities-saved-states__save-button { margin: auto; } .entities-saved-states__panel .entities-saved-states__panel-header .components-button.has-icon { position: absolute; right: 8px; } .entities-saved-states__panel .entities-saved-states__text-prompt { padding: 16px; padding-bottom: 4px; } .editor-error-boundary { margin: auto; max-width: 780px; padding: 20px; margin-top: 60px; box-shadow: 0 10px 10px rgba(0, 0, 0, 0.25); } .editor-page-attributes__order { width: 100%; } .editor-page-attributes__order .components-base-control__field { display: flex; justify-content: space-between; align-items: center; } .editor-page-attributes__order input { width: 66px; } .editor-post-excerpt__textarea { width: 100%; margin-bottom: 10px; } .editor-post-featured-image { padding: 0; } .editor-post-featured-image__container { margin-bottom: 1em; position: relative; } .editor-post-featured-image .components-spinner { position: absolute; top: 50%; left: 50%; margin-top: -9px; margin-left: -9px; } .editor-post-featured-image .components-button + .components-button { display: block; margin-top: 1em; } .editor-post-featured-image .components-responsive-wrapper__content { max-width: 100%; width: auto; } .editor-post-featured-image__toggle, .editor-post-featured-image__preview { display: block; width: 100%; padding: 0; transition: all 0.1s ease-out; box-shadow: 0 0 0 0 var(--wp-admin-theme-color); } @media (prefers-reduced-motion: reduce) { .editor-post-featured-image__toggle, .editor-post-featured-image__preview { transition-duration: 0s; transition-delay: 0s; } } .editor-post-featured-image__preview { height: auto; } .editor-post-featured-image__preview:not(:disabled):not([aria-disabled=true]):focus { box-shadow: 0 0 0 4px var(--wp-admin-theme-color); } .editor-post-featured-image__toggle { border-radius: 2px; background-color: #f0f0f0; min-height: 90px; line-height: 20px; padding: 8px 0; text-align: center; } .editor-post-featured-image__toggle:hover { background: #ddd; color: #1e1e1e; } .editor-post-format { flex-direction: column; align-items: stretch; width: 100%; } .editor-post-format__content { display: inline-flex; justify-content: space-between; align-items: center; width: 100%; } .editor-post-format__suggestion { padding: 6px; text-align: right; font-size: 13px; } .editor-post-last-revision__title { width: 100%; font-weight: 600; } .editor-post-last-revision__title .dashicon { margin-right: 5px; } .components-button.editor-post-last-revision__title { height: 100%; } .components-button.editor-post-last-revision__title:hover, .components-button.editor-post-last-revision__title:active { background: #f0f0f0; } .components-button.editor-post-last-revision__title:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); border-radius: 0; } .editor-post-locked-modal { height: auto; padding-right: 10px; padding-left: 10px; padding-top: 10px; max-width: 480px; } .editor-post-locked-modal .components-modal__header { height: 36px; } .editor-post-locked-modal .components-modal__content { height: auto; } .editor-post-locked-modal__buttons { margin-top: 10px; } .editor-post-locked-modal__buttons .components-button { margin-right: 5px; } .editor-post-locked-modal__avatar { float: left; margin: 5px; margin-right: 15px; } .editor-post-publish-button__button.has-changes-dot::before { background: currentcolor; border-radius: 4px; content: ""; height: 8px; margin: auto 5px auto -3px; width: 8px; } .editor-post-publish-panel { background: #fff; } .editor-post-publish-panel__content { min-height: calc(100% - 144px); } .editor-post-publish-panel__content .components-spinner { display: block; margin: 100px auto 0; } .editor-post-publish-panel__header { background: #fff; padding-left: 16px; padding-right: 16px; height: 61px; border-bottom: 1px solid #ddd; display: flex; align-items: center; align-content: space-between; } .editor-post-publish-panel__header .components-button { width: 100%; justify-content: center; } .editor-post-publish-panel__header .has-icon { margin-left: auto; width: auto; } .components-site-card { display: flex; align-items: center; margin: 16px 0; } .components-site-icon { border: none; border-radius: 2px; margin-right: 12px; height: 36px; width: 36px; } .components-site-name { display: block; font-size: 14px; } .components-site-home { display: block; color: #757575; font-size: 12px; } .editor-post-publish-panel__header-publish-button, .editor-post-publish-panel__header-cancel-button { flex-grow: 1; } @media (min-width: 480px) { .editor-post-publish-panel__header-publish-button, .editor-post-publish-panel__header-cancel-button { max-width: 160px; } } .editor-post-publish-panel__header-publish-button { padding-right: 4px; } .editor-post-publish-panel__header-cancel-button { padding-left: 4px; } .editor-post-publish-panel__header-published { flex-grow: 1; } .editor-post-publish-panel__footer { padding: 16px; } .components-button.editor-post-publish-panel__toggle.is-primary { display: inline-flex; align-items: center; } .components-button.editor-post-publish-panel__toggle.is-primary.is-busy .dashicon { display: none; } .components-button.editor-post-publish-panel__toggle.is-primary .dashicon { margin-right: -4px; } .editor-post-publish-panel__link { font-weight: 400; padding-left: 4px; } .editor-post-publish-panel__prepublish { padding: 16px; } .editor-post-publish-panel__prepublish strong { color: #1e1e1e; } .editor-post-publish-panel__prepublish .components-panel__body { background: #fff; margin-left: -16px; margin-right: -16px; } .editor-post-publish-panel__prepublish .editor-post-visibility__dialog-legend { display: none; } .post-publish-panel__postpublish .components-panel__body { border-bottom: 1px solid #e0e0e0; border-top: none; } .post-publish-panel__postpublish-buttons { display: flex; align-content: space-between; flex-wrap: wrap; margin: -5px; } .post-publish-panel__postpublish-buttons > * { flex-grow: 1; margin: 5px; } .post-publish-panel__postpublish-buttons .components-button { height: auto; justify-content: center; padding: 3px 10px 4px; flex: 1; line-height: 1.6; text-align: center; white-space: normal; } .post-publish-panel__postpublish-buttons .components-clipboard-button { width: 100%; } .post-publish-panel__postpublish-post-address-container { display: flex; align-items: flex-end; margin-bottom: 16px; } .post-publish-panel__postpublish-post-address-container .components-base-control__field { margin-bottom: 0; } .post-publish-panel__postpublish-post-address-container .post-publish-panel__postpublish-post-address { flex: 1; } .post-publish-panel__postpublish-post-address-container input[readonly] { padding: 10px; background: #ddd; overflow: hidden; text-overflow: ellipsis; } .post-publish-panel__postpublish-post-address__copy-button-wrap { flex-shrink: 0; margin-left: 8px; } .post-publish-panel__postpublish-post-address__copy-button-wrap .components-button { height: 38px; } .post-publish-panel__postpublish-header { font-weight: 500; } .post-publish-panel__postpublish-subheader { margin: 0 0 8px; } .post-publish-panel__tip { color: #f0b849; } @media screen and (max-width: 782px) { .post-publish-panel__postpublish-post-address__button-wrap .components-button { height: 40px; } } .editor-post-saved-state { display: flex; align-items: center; width: 28px; padding: 12px 4px; color: #757575; overflow: hidden; white-space: nowrap; } .editor-post-saved-state.is-saving[aria-disabled=true], .editor-post-saved-state.is-saving[aria-disabled=true]:hover, .editor-post-saved-state.is-saved[aria-disabled=true], .editor-post-saved-state.is-saved[aria-disabled=true]:hover { background: transparent; color: #757575; } .editor-post-saved-state svg { display: inline-block; flex: 0 0 auto; fill: currentColor; margin-right: 8px; } @media (min-width: 600px) { .editor-post-saved-state { width: auto; padding: 8px 12px; text-indent: inherit; } .editor-post-saved-state svg { margin-right: 0; } } .editor-post-taxonomies__hierarchical-terms-list { max-height: 14em; overflow: auto; margin-left: -6px; padding-left: 6px; margin-top: -6px; padding-top: 6px; } .editor-post-taxonomies__hierarchical-terms-choice { margin-bottom: 8px; } .editor-post-taxonomies__hierarchical-terms-subchoices { margin-top: 8px; margin-left: 16px; } .components-button.editor-post-taxonomies__hierarchical-terms-submit, .components-button.editor-post-taxonomies__hierarchical-terms-add { margin-top: 12px; } .editor-post-taxonomies__hierarchical-terms-label { display: inline-block; margin-top: 12px; } .editor-post-taxonomies__hierarchical-terms-input { margin-top: 8px; } .editor-post-taxonomies__hierarchical-terms-filter { margin-bottom: 8px; width: 100%; } .editor-post-taxonomies__flat-term-most-used .editor-post-taxonomies__flat-term-most-used-label { font-weight: 400; margin-bottom: 12px; } .editor-post-taxonomies__flat-term-most-used-list { margin: 0; } .editor-post-taxonomies__flat-term-most-used-list li { display: inline-block; margin-right: 8px; } .editor-post-taxonomies__flat-term-most-used-list .components-button { font-size: 12px; } .edit-post-text-editor__body textarea.editor-post-text-editor { border: 1px solid #949494; border-radius: 0; display: block; margin: 0; width: 100%; box-shadow: none; resize: none; overflow: hidden; font-family: Menlo, Consolas, monaco, monospace; line-height: 2.4; min-height: 200px; transition: border 0.1s ease-out, box-shadow 0.1s linear; padding: 16px; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px !important; } @media (prefers-reduced-motion: reduce) { .edit-post-text-editor__body textarea.editor-post-text-editor { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .edit-post-text-editor__body textarea.editor-post-text-editor { padding: 24px; } } @media (min-width: 600px) { .edit-post-text-editor__body textarea.editor-post-text-editor { font-size: 15px !important; } } .edit-post-text-editor__body textarea.editor-post-text-editor:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); position: relative; } .edit-post-text-editor__body textarea.editor-post-text-editor::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .edit-post-text-editor__body textarea.editor-post-text-editor::-moz-placeholder { color: rgba(30, 30, 30, 0.62); opacity: 1; } .edit-post-text-editor__body textarea.editor-post-text-editor:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .edit-post-post-visibility__dialog, .editor-post-visibility__dialog-fieldset { padding: 4px; padding-top: 0; } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-legend, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-legend { font-weight: 600; margin-bottom: 1em; margin-top: 0.5em; padding: 0; } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio], .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio] { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; border: 1px solid #1e1e1e; margin-right: 12px; transition: none; border-radius: 50%; width: 24px; height: 24px; margin-top: 2px; } @media (prefers-reduced-motion: reduce) { .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio], .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio] { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio], .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio] { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:focus, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]::-webkit-input-placeholder, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]::-moz-placeholder, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:-ms-input-placeholder, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } @media (min-width: 600px) { .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio], .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio] { height: 20px; width: 20px; } } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:checked::before, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:checked::before { box-sizing: inherit; width: 8px; height: 8px; transform: translate(7px, 7px); margin: 0; background-color: #fff; border: 4px solid #fff; } @media (min-width: 600px) { .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:checked::before, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:checked::before { transform: translate(5px, 5px); } } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:focus, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:focus { box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--wp-admin-theme-color); outline: 2px solid transparent; } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-radio[type=radio]:checked, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-radio[type=radio]:checked { background: var(--wp-admin-theme-color); border-color: var(--wp-admin-theme-color); } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-label, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-label { font-weight: 600; } .edit-post-post-visibility__dialog .editor-post-visibility__dialog-info, .editor-post-visibility__dialog-fieldset .editor-post-visibility__dialog-info { margin-top: 0; margin-left: 32px; } .edit-post-post-visibility__dialog .editor-post-visibility__choice:last-child .editor-post-visibility__dialog-info, .editor-post-visibility__dialog-fieldset .editor-post-visibility__choice:last-child .editor-post-visibility__dialog-info { margin-bottom: 0; } .editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text] { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; margin-left: 36px; margin-top: 8px; } @media (prefers-reduced-motion: reduce) { .editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text] { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text] { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .editor-post-visibility__dialog-password .editor-post-visibility__dialog-password-input[type=text]:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .editor-post-title { position: relative; } .editor-post-title.is-focus-mode { opacity: 0.5; transition: opacity 0.1s linear; } @media (prefers-reduced-motion: reduce) { .editor-post-title.is-focus-mode { transition-duration: 0s; transition-delay: 0s; } } .editor-post-title.is-focus-mode:focus { opacity: 1; } .editor-post-trash.components-button { margin-top: 4px; } .table-of-contents__popover.components-popover .components-popover__content { min-width: 380px; } .components-popover.table-of-contents__popover { z-index: 99998; } .table-of-contents__popover .components-popover__content > div { padding: 16px; } @media (min-width: 600px) { .table-of-contents__popover .components-popover__content { max-height: calc(100vh - 120px); overflow-y: auto; } } .table-of-contents__popover hr { margin: 10px -16px 0; } .table-of-contents__wrapper:focus::before { content: ""; display: block; position: absolute; top: 0; right: 0; bottom: 0; left: 0; box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); pointer-events: none; } .table-of-contents__counts { display: flex; flex-wrap: wrap; margin: 0; margin-top: -8px; } .table-of-contents__count { flex-basis: 33%; display: flex; flex-direction: column; font-size: 13px; color: #1e1e1e; padding-right: 8px; margin-bottom: 0; margin-top: 8px; } .table-of-contents__count:nth-child(4n) { padding-right: 0; } .table-of-contents__number, .table-of-contents__popover .word-count { font-size: 21px; font-weight: 400; line-height: 30px; color: #1e1e1e; } .table-of-contents__title { display: block; margin-top: 20px; font-size: 15px; font-weight: 600; } .editor-template-validation-notice { display: flex; justify-content: space-between; align-items: center; } .editor-template-validation-notice .components-button { margin-left: 5px; }PKj l\YY#css/dist/edit-widgets/style.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.components-panel__header.interface-complementary-area-header__small{background:#fff;padding-right:4px}.components-panel__header.interface-complementary-area-header__small .interface-complementary-area-header__small-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}@media (min-width:782px){.components-panel__header.interface-complementary-area-header__small{display:none}}.interface-complementary-area-header{background:#fff;padding-right:4px}.interface-complementary-area-header .components-button.has-icon{display:none;margin-left:auto}.interface-complementary-area-header .components-button.has-icon~.components-button{margin-left:0}@media (min-width:782px){.interface-complementary-area-header .components-button.has-icon{display:flex}}@media (min-width:782px){.components-panel__header+.interface-complementary-area-header{margin-top:0}}.interface-complementary-area{background:#fff;color:#1e1e1e}@media (min-width:600px){.interface-complementary-area{-webkit-overflow-scrolling:touch}}@media (min-width:782px){.interface-complementary-area{width:280px}}.interface-complementary-area .components-panel{border:none;position:relative;z-index:0}.interface-complementary-area .components-panel__header{position:sticky;top:0;z-index:1}.interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs{top:48px}@media (min-width:782px){.interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs{top:0}}.interface-complementary-area p{margin-top:0}.interface-complementary-area h2{font-size:13px;color:#1e1e1e;margin-bottom:1.5em}.interface-complementary-area h3{font-size:11px;text-transform:uppercase;font-weight:500;color:#1e1e1e;margin-bottom:1.5em}.interface-complementary-area hr{border-top:none;border-bottom:1px solid #f0f0f0;margin:1.5em 0}.interface-complementary-area div.components-toolbar,.interface-complementary-area div.components-toolbar-group{box-shadow:none;margin-bottom:1.5em}.interface-complementary-area div.components-toolbar-group:last-child,.interface-complementary-area div.components-toolbar:last-child{margin-bottom:0}.interface-complementary-area .block-editor-skip-to-selected-block:focus{top:auto;right:10px;bottom:10px;left:auto}@media (min-width:782px){body.js.is-fullscreen-mode{margin-top:-32px;height:calc(100% + 32px)}body.js.is-fullscreen-mode #adminmenumain,body.js.is-fullscreen-mode #wpadminbar{display:none}body.js.is-fullscreen-mode #wpcontent,body.js.is-fullscreen-mode #wpfooter{margin-left:0}}html.interface-interface-skeleton__html-container{position:fixed;width:100%}@media (min-width:782px){html.interface-interface-skeleton__html-container{position:static;width:auto}}.interface-interface-skeleton{display:flex;flex-direction:row;height:auto;max-height:100%;position:fixed;top:46px;right:0;bottom:0}@media (min-width:783px){.interface-interface-skeleton{top:32px}.is-fullscreen-mode .interface-interface-skeleton{top:0}}.interface-interface-skeleton__editor{display:flex;flex-direction:column;flex:0 1 100%;overflow:hidden}.interface-interface-skeleton{left:0}@media (min-width:783px){.interface-interface-skeleton{left:160px}}@media (min-width:783px){.auto-fold .interface-interface-skeleton{left:36px}}@media (min-width:961px){.auto-fold .interface-interface-skeleton{left:160px}}.folded .interface-interface-skeleton{left:0}@media (min-width:783px){.folded .interface-interface-skeleton{left:36px}}body.is-fullscreen-mode .interface-interface-skeleton{left:0!important}.interface-interface-skeleton__body{flex-grow:1;display:flex;overflow:auto;overscroll-behavior-y:none}@media (min-width:782px){.has-footer .interface-interface-skeleton__body{padding-bottom:25px}}.interface-interface-skeleton__content{flex-grow:1;display:flex;flex-direction:column;overflow:auto;z-index:20}.interface-interface-skeleton__secondary-sidebar,.interface-interface-skeleton__sidebar{display:block;flex-shrink:0;position:absolute;z-index:100000;top:0;right:0;bottom:0;left:0;background:#fff;color:#1e1e1e}@media (min-width:782px){.interface-interface-skeleton__secondary-sidebar,.interface-interface-skeleton__sidebar{position:relative!important;z-index:90;width:auto}}.interface-interface-skeleton__sidebar{overflow:auto}@media (min-width:782px){.interface-interface-skeleton__sidebar{border-left:1px solid #e0e0e0}}@media (min-width:782px){.interface-interface-skeleton__secondary-sidebar{border-right:1px solid #e0e0e0}}.interface-interface-skeleton__header{flex-shrink:0;height:auto;border-bottom:1px solid #e0e0e0;z-index:30;color:#1e1e1e}.interface-interface-skeleton__footer{height:auto;flex-shrink:0;border-top:1px solid #e0e0e0;color:#1e1e1e;position:absolute;bottom:0;left:0;width:100%;background-color:#fff;z-index:90;display:none}@media (min-width:782px){.interface-interface-skeleton__footer{display:flex}}.interface-interface-skeleton__footer .block-editor-block-breadcrumb{z-index:30;display:flex;background:#fff;height:24px;align-items:center;font-size:13px;padding:0 18px}.interface-interface-skeleton__actions{z-index:100000;position:fixed!important;top:-9999em;bottom:auto;left:auto;right:0;width:280px;color:#1e1e1e}.interface-interface-skeleton__actions:focus{top:auto;bottom:0}.interface-more-menu-dropdown{margin-left:-4px}.interface-more-menu-dropdown .components-button{width:auto;padding:0 2px}@media (min-width:600px){.interface-more-menu-dropdown{margin-left:0}.interface-more-menu-dropdown .components-button{padding:0 4px}}.interface-more-menu-dropdown__content .components-popover__content{min-width:280px}@media (min-width:480px){.interface-more-menu-dropdown__content .components-popover__content{width:auto;max-width:480px}}.interface-more-menu-dropdown__content .components-popover__content .components-dropdown-menu__menu{padding:0}.components-popover.interface-more-menu-dropdown__content{z-index:99998}.interface-pinned-items{display:flex}.interface-pinned-items .components-button:not(:first-child){display:none}@media (min-width:600px){.interface-pinned-items .components-button:not(:first-child){display:flex}}.interface-pinned-items .components-button{margin-left:4px}.interface-pinned-items .components-button svg{max-width:24px;max-height:24px}.wp-block[data-type="core/widget-area"]{max-width:700px;margin-left:auto;margin-right:auto}.wp-block[data-type="core/widget-area"] .components-panel__body>.components-panel__body-title{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;margin:0;height:48px;position:relative;z-index:1;background:#fff;transform:translateZ(0)}.wp-block[data-type="core/widget-area"] .components-panel__body>.components-panel__body-title:hover{background:#fff}.wp-block[data-type="core/widget-area"] .block-list-appender.wp-block{width:auto}.wp-block[data-type="core/widget-area"] .editor-styles-wrapper .wp-block.wp-block.wp-block.wp-block.wp-block{max-width:100%}.wp-block[data-type="core/widget-area"] .components-panel__body.is-opened{padding:0}.blocks-widgets-container .wp-block-widget-area__inner-blocks.editor-styles-wrapper{margin:0;padding:0}.blocks-widgets-container .wp-block-widget-area__inner-blocks.editor-styles-wrapper>.block-editor-block-list__layout{margin-top:-48px;padding:72px 16px 16px;min-height:32px}.wp-block-widget-area__highlight-drop-zone{outline:var(--wp-admin-border-width-focus) solid var(--wp-admin-theme-color)}body.is-dragging-components-draggable .wp-block[data-type="core/widget-area"] .components-panel__body>.components-panel__body-title,body.is-dragging-components-draggable .wp-block[data-type="core/widget-area"] .components-panel__body>.components-panel__body-title *{pointer-events:none}.edit-widgets-error-boundary{max-width:780px;padding:20px;margin:60px auto auto;box-shadow:0 10px 10px rgba(0,0,0,.25)}.edit-widgets-header{display:flex;align-items:center;justify-content:space-between;height:60px;padding:0 16px;overflow:auto}@media (min-width:600px){.edit-widgets-header{overflow:visible}}.edit-widgets-header__navigable-toolbar-wrapper{display:flex;align-items:center;justify-content:center}.edit-widgets-header__title{font-size:20px;padding:0;margin:0 20px 0 0}.edit-widgets-header__actions{display:flex}.edit-widgets-header__actions .components-button{margin-right:4px}@media (min-width:600px){.edit-widgets-header__actions .components-button{margin-right:12px}}.edit-widgets-header__actions .edit-widgets-more-menu .components-button,.edit-widgets-header__actions .interface-pinned-items .components-button{margin-right:0}.edit-widgets-header-toolbar{border:none}.edit-widgets-header-toolbar>.components-button.has-icon.has-icon.has-icon,.edit-widgets-header-toolbar>.components-dropdown>.components-button.has-icon.has-icon{height:36px;min-width:36px;padding:6px}.edit-widgets-header-toolbar>.components-button.has-icon.has-icon.has-icon.is-pressed,.edit-widgets-header-toolbar>.components-dropdown>.components-button.has-icon.has-icon.is-pressed{background:#1e1e1e}.edit-widgets-header-toolbar>.components-button.has-icon.has-icon.has-icon:focus:not(:disabled),.edit-widgets-header-toolbar>.components-dropdown>.components-button.has-icon.has-icon:focus:not(:disabled){box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 0 0 1px #fff;outline:1px solid transparent}.edit-widgets-header-toolbar>.components-button.has-icon.has-icon.has-icon:before,.edit-widgets-header-toolbar>.components-dropdown>.components-button.has-icon.has-icon:before{display:none}.edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle{padding-left:8px;padding-right:8px}@media (min-width:600px){.edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle{padding-left:12px;padding-right:12px}}.edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle:after{content:none}.edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle svg{transition:transform .2s cubic-bezier(.165,.84,.44,1)}@media (prefers-reduced-motion:reduce){.edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle svg{transition-duration:0s;transition-delay:0s}}.edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle.is-pressed svg{transform:rotate(45deg)}.edit-widgets-keyboard-shortcut-help-modal__section{margin:0 0 2rem}.edit-widgets-keyboard-shortcut-help-modal__main-shortcuts .edit-widgets-keyboard-shortcut-help-modal__shortcut-list{margin-top:-25px}.edit-widgets-keyboard-shortcut-help-modal__section-title{font-size:.9rem;font-weight:600}.edit-widgets-keyboard-shortcut-help-modal__shortcut{display:flex;align-items:baseline;padding:.6rem 0;border-top:1px solid #ddd;margin-bottom:0}.edit-widgets-keyboard-shortcut-help-modal__shortcut:last-child{border-bottom:1px solid #ddd}.edit-widgets-keyboard-shortcut-help-modal__shortcut:empty{display:none}.edit-widgets-keyboard-shortcut-help-modal__shortcut-term{font-weight:600;margin:0 0 0 1rem;text-align:right}.edit-widgets-keyboard-shortcut-help-modal__shortcut-description{flex:1;margin:0;flex-basis:auto}.edit-widgets-keyboard-shortcut-help-modal__shortcut-key-combination{display:block;background:none;margin:0;padding:0}.edit-widgets-keyboard-shortcut-help-modal__shortcut-key-combination+.edit-widgets-keyboard-shortcut-help-modal__shortcut-key-combination{margin-top:10px}.edit-widgets-keyboard-shortcut-help-modal__shortcut-key{padding:.25rem .5rem;border-radius:8%;margin:0 .2rem}.edit-widgets-keyboard-shortcut-help-modal__shortcut-key:last-child{margin:0 0 0 .2rem}.edit-widgets-more-menu{margin-left:-4px}.edit-widgets-more-menu .components-button{width:auto;padding:0 2px}@media (min-width:600px){.edit-widgets-more-menu{margin-left:0}.edit-widgets-more-menu .components-button{padding:0 4px}}.edit-widgets-more-menu__content .components-popover__content{min-width:280px}@media (min-width:480px){.edit-widgets-more-menu__content .components-popover__content{width:auto;max-width:480px}}.edit-widgets-more-menu__content .components-popover__content .components-dropdown-menu__menu{padding:0}.components-popover.edit-widgets-more-menu__content{z-index:99998}.components-panel__header.edit-widgets-sidebar__panel-tabs{justify-content:flex-start;padding-left:0;padding-right:4px;border-top:0;margin-top:0}.components-panel__header.edit-widgets-sidebar__panel-tabs ul{display:flex}.components-panel__header.edit-widgets-sidebar__panel-tabs li{margin:0}.components-panel__header.edit-widgets-sidebar__panel-tabs .components-button.has-icon{display:none;margin-left:auto}@media (min-width:782px){.components-panel__header.edit-widgets-sidebar__panel-tabs .components-button.has-icon{display:flex}}.components-button.edit-widgets-sidebar__panel-tab{border-radius:0;height:49px;background:transparent;border:none;box-shadow:none;cursor:pointer;display:inline-block;padding:3px 15px;margin-left:0;font-weight:400;color:#1e1e1e}.components-button.edit-widgets-sidebar__panel-tab:after{content:attr(data-label);display:block;font-weight:600;height:0;overflow:hidden;speak:none;visibility:hidden}.components-button.edit-widgets-sidebar__panel-tab.is-active{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) transparent,inset 0 -4px 0 0 var(--wp-admin-theme-color);font-weight:600;position:relative}.components-button.edit-widgets-sidebar__panel-tab.is-active:before{content:"";position:absolute;top:0;bottom:1px;right:0;left:0;border-bottom:4px solid transparent}.components-button.edit-widgets-sidebar__panel-tab:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.components-button.edit-widgets-sidebar__panel-tab.is-active:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 -4px 0 0 var(--wp-admin-theme-color)}.edit-widgets-widget-areas__top-container{display:flex;padding:16px}.edit-widgets-widget-areas__top-container .block-editor-block-icon{margin-right:16px}.edit-widgets-notices__snackbar{position:fixed;right:0;bottom:20px;padding-left:16px;padding-right:16px;left:0}@media (min-width:783px){.edit-widgets-notices__snackbar{left:160px}}@media (min-width:783px){.auto-fold .edit-widgets-notices__snackbar{left:36px}}@media (min-width:961px){.auto-fold .edit-widgets-notices__snackbar{left:160px}}.folded .edit-widgets-notices__snackbar{left:0}@media (min-width:783px){.folded .edit-widgets-notices__snackbar{left:36px}}body.is-fullscreen-mode .edit-widgets-notices__snackbar{left:0!important}.edit-widgets-notices__dismissible .components-notice,.edit-widgets-notices__pinned .components-notice{box-sizing:border-box;margin:0;border-bottom:1px solid rgba(0,0,0,.2);padding:0 12px;min-height:60px}.edit-widgets-notices__dismissible .components-notice .components-notice__dismiss,.edit-widgets-notices__pinned .components-notice .components-notice__dismiss{margin-top:12px}.edit-widgets-layout__inserter-panel{height:100%;display:flex;flex-direction:column}.edit-widgets-layout__inserter-panel .block-editor-inserter__menu{overflow:hidden}.edit-widgets-layout__inserter-panel-header{padding-top:8px;padding-right:8px;display:flex;justify-content:flex-end}@media (min-width:782px){.edit-widgets-layout__inserter-panel-header{display:none}}.edit-widgets-layout__inserter-panel-content{height:calc(100% - 44px)}@media (min-width:782px){.edit-widgets-layout__inserter-panel-content{height:100%}}.edit-widgets-welcome-guide{width:312px}.edit-widgets-welcome-guide__image{background:#00a0d2;margin:0 0 16px}.edit-widgets-welcome-guide__image>img{display:block;max-width:100%;-o-object-fit:cover;object-fit:cover}.edit-widgets-welcome-guide__heading{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:24px;line-height:1.4;margin:16px 0;padding:0 32px}.edit-widgets-welcome-guide__text{font-size:13px;line-height:1.4;margin:0 0 24px;padding:0 32px}.edit-widgets-welcome-guide__inserter-icon{margin:0 4px;vertical-align:text-top}.edit-widgets-block-editor{position:relative;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.edit-widgets-block-editor,.edit-widgets-block-editor .block-editor-writing-flow,.edit-widgets-block-editor .block-editor-writing-flow>div,.edit-widgets-block-editor>div:last-of-type{display:flex;flex-direction:column;flex-grow:1}.edit-widgets-block-editor .edit-widgets-main-block-list{height:100%}.edit-widgets-block-editor .components-button{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px}.edit-widgets-block-editor .components-button.has-icon,.edit-widgets-block-editor .components-button.is-tertiary{padding:6px}.edit-widgets-editor__list-view-panel{height:100%;display:flex;flex-direction:column;min-width:350px}.edit-widgets-editor__list-view-panel-content{height:calc(100% - 44px);overflow-y:auto;padding:8px}.edit-widgets-editor__list-view-panel-header{align-items:center;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;height:48px;padding-left:16px;padding-right:4px}body.appearance_page_gutenberg-widgets,body.widgets-php,html.wp-toolbar{background:#fff}body.appearance_page_gutenberg-widgets #wpcontent,body.widgets-php #wpcontent{padding-left:0}body.appearance_page_gutenberg-widgets #wpbody-content,body.widgets-php #wpbody-content{padding-bottom:0}body.appearance_page_gutenberg-widgets #wpbody-content>div:not(.blocks-widgets-container):not(#screen-meta),body.appearance_page_gutenberg-widgets #wpfooter,body.widgets-php #wpbody-content>div:not(.blocks-widgets-container):not(#screen-meta),body.widgets-php #wpfooter{display:none}body.appearance_page_gutenberg-widgets .a11y-speak-region,body.widgets-php .a11y-speak-region{left:-1px;top:-1px}body.appearance_page_gutenberg-widgets ul#adminmenu>li.current>a.current:after,body.appearance_page_gutenberg-widgets ul#adminmenu a.wp-has-current-submenu:after,body.widgets-php ul#adminmenu>li.current>a.current:after,body.widgets-php ul#adminmenu a.wp-has-current-submenu:after{border-right-color:#fff}body.appearance_page_gutenberg-widgets .media-frame select.attachment-filters:last-of-type,body.widgets-php .media-frame select.attachment-filters:last-of-type{width:auto;max-width:100%}.blocks-widgets-container,.components-modal__frame{box-sizing:border-box}.blocks-widgets-container *,.blocks-widgets-container :after,.blocks-widgets-container :before,.components-modal__frame *,.components-modal__frame :after,.components-modal__frame :before{box-sizing:inherit}@media (min-width:600px){.blocks-widgets-container{position:absolute;top:0;right:0;bottom:0;left:0;min-height:calc(100vh - 46px)}}@media (min-width:782px){.blocks-widgets-container{min-height:calc(100vh - 32px)}}.blocks-widgets-container .interface-interface-skeleton__content{background-color:#f0f0f0}.blocks-widgets-container .editor-styles-wrapper{max-width:700px;margin:auto}.edit-widgets-sidebar .components-button.interface-complementary-area__pin-unpin-item{display:none}.widgets-php .notice{display:none!important}body.admin-color-light{--wp-admin-theme-color:#0085ba;--wp-admin-theme-color--rgb:0,133,186;--wp-admin-theme-color-darker-10:#0073a1;--wp-admin-theme-color-darker-10--rgb:0,115,161;--wp-admin-theme-color-darker-20:#006187;--wp-admin-theme-color-darker-20--rgb:0,97,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-light{--wp-admin-border-width-focus:1.5px}}body.admin-color-modern{--wp-admin-theme-color:#3858e9;--wp-admin-theme-color--rgb:56,88,233;--wp-admin-theme-color-darker-10:#2145e6;--wp-admin-theme-color-darker-10--rgb:33,69,230;--wp-admin-theme-color-darker-20:#183ad6;--wp-admin-theme-color-darker-20--rgb:24,58,214;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-modern{--wp-admin-border-width-focus:1.5px}}body.admin-color-blue{--wp-admin-theme-color:#096484;--wp-admin-theme-color--rgb:9,100,132;--wp-admin-theme-color-darker-10:#07526c;--wp-admin-theme-color-darker-10--rgb:7,82,108;--wp-admin-theme-color-darker-20:#064054;--wp-admin-theme-color-darker-20--rgb:6,64,84;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-blue{--wp-admin-border-width-focus:1.5px}}body.admin-color-coffee{--wp-admin-theme-color:#46403c;--wp-admin-theme-color--rgb:70,64,60;--wp-admin-theme-color-darker-10:#383330;--wp-admin-theme-color-darker-10--rgb:56,51,48;--wp-admin-theme-color-darker-20:#2b2724;--wp-admin-theme-color-darker-20--rgb:43,39,36;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-coffee{--wp-admin-border-width-focus:1.5px}}body.admin-color-ectoplasm{--wp-admin-theme-color:#523f6d;--wp-admin-theme-color--rgb:82,63,109;--wp-admin-theme-color-darker-10:#46365d;--wp-admin-theme-color-darker-10--rgb:70,54,93;--wp-admin-theme-color-darker-20:#3a2c4d;--wp-admin-theme-color-darker-20--rgb:58,44,77;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-ectoplasm{--wp-admin-border-width-focus:1.5px}}body.admin-color-midnight{--wp-admin-theme-color:#e14d43;--wp-admin-theme-color--rgb:225,77,67;--wp-admin-theme-color-darker-10:#dd382d;--wp-admin-theme-color-darker-10--rgb:221,56,45;--wp-admin-theme-color-darker-20:#d02c21;--wp-admin-theme-color-darker-20--rgb:208,44,33;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-midnight{--wp-admin-border-width-focus:1.5px}}body.admin-color-ocean{--wp-admin-theme-color:#627c83;--wp-admin-theme-color--rgb:98,124,131;--wp-admin-theme-color-darker-10:#576e74;--wp-admin-theme-color-darker-10--rgb:87,110,116;--wp-admin-theme-color-darker-20:#4c6066;--wp-admin-theme-color-darker-20--rgb:76,96,102;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-ocean{--wp-admin-border-width-focus:1.5px}}body.admin-color-sunrise{--wp-admin-theme-color:#dd823b;--wp-admin-theme-color--rgb:221,130,59;--wp-admin-theme-color-darker-10:#d97426;--wp-admin-theme-color-darker-10--rgb:217,116,38;--wp-admin-theme-color-darker-20:#c36922;--wp-admin-theme-color-darker-20--rgb:195,105,34;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-sunrise{--wp-admin-border-width-focus:1.5px}}PKj l\p2YY'css/dist/edit-widgets/style-rtl.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.components-panel__header.interface-complementary-area-header__small{background:#fff;padding-left:4px}.components-panel__header.interface-complementary-area-header__small .interface-complementary-area-header__small-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}@media (min-width:782px){.components-panel__header.interface-complementary-area-header__small{display:none}}.interface-complementary-area-header{background:#fff;padding-left:4px}.interface-complementary-area-header .components-button.has-icon{display:none;margin-right:auto}.interface-complementary-area-header .components-button.has-icon~.components-button{margin-right:0}@media (min-width:782px){.interface-complementary-area-header .components-button.has-icon{display:flex}}@media (min-width:782px){.components-panel__header+.interface-complementary-area-header{margin-top:0}}.interface-complementary-area{background:#fff;color:#1e1e1e}@media (min-width:600px){.interface-complementary-area{-webkit-overflow-scrolling:touch}}@media (min-width:782px){.interface-complementary-area{width:280px}}.interface-complementary-area .components-panel{border:none;position:relative;z-index:0}.interface-complementary-area .components-panel__header{position:sticky;top:0;z-index:1}.interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs{top:48px}@media (min-width:782px){.interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs{top:0}}.interface-complementary-area p{margin-top:0}.interface-complementary-area h2{font-size:13px;color:#1e1e1e;margin-bottom:1.5em}.interface-complementary-area h3{font-size:11px;text-transform:uppercase;font-weight:500;color:#1e1e1e;margin-bottom:1.5em}.interface-complementary-area hr{border-top:none;border-bottom:1px solid #f0f0f0;margin:1.5em 0}.interface-complementary-area div.components-toolbar,.interface-complementary-area div.components-toolbar-group{box-shadow:none;margin-bottom:1.5em}.interface-complementary-area div.components-toolbar-group:last-child,.interface-complementary-area div.components-toolbar:last-child{margin-bottom:0}.interface-complementary-area .block-editor-skip-to-selected-block:focus{top:auto;left:10px;bottom:10px;right:auto}@media (min-width:782px){body.js.is-fullscreen-mode{margin-top:-32px;height:calc(100% + 32px)}body.js.is-fullscreen-mode #adminmenumain,body.js.is-fullscreen-mode #wpadminbar{display:none}body.js.is-fullscreen-mode #wpcontent,body.js.is-fullscreen-mode #wpfooter{margin-right:0}}html.interface-interface-skeleton__html-container{position:fixed;width:100%}@media (min-width:782px){html.interface-interface-skeleton__html-container{position:static;width:auto}}.interface-interface-skeleton{display:flex;flex-direction:row;height:auto;max-height:100%;position:fixed;top:46px;left:0;bottom:0}@media (min-width:783px){.interface-interface-skeleton{top:32px}.is-fullscreen-mode .interface-interface-skeleton{top:0}}.interface-interface-skeleton__editor{display:flex;flex-direction:column;flex:0 1 100%;overflow:hidden}.interface-interface-skeleton{right:0}@media (min-width:783px){.interface-interface-skeleton{right:160px}}@media (min-width:783px){.auto-fold .interface-interface-skeleton{right:36px}}@media (min-width:961px){.auto-fold .interface-interface-skeleton{right:160px}}.folded .interface-interface-skeleton{right:0}@media (min-width:783px){.folded .interface-interface-skeleton{right:36px}}body.is-fullscreen-mode .interface-interface-skeleton{right:0!important}.interface-interface-skeleton__body{flex-grow:1;display:flex;overflow:auto;overscroll-behavior-y:none}@media (min-width:782px){.has-footer .interface-interface-skeleton__body{padding-bottom:25px}}.interface-interface-skeleton__content{flex-grow:1;display:flex;flex-direction:column;overflow:auto;z-index:20}.interface-interface-skeleton__secondary-sidebar,.interface-interface-skeleton__sidebar{display:block;flex-shrink:0;position:absolute;z-index:100000;top:0;left:0;bottom:0;right:0;background:#fff;color:#1e1e1e}@media (min-width:782px){.interface-interface-skeleton__secondary-sidebar,.interface-interface-skeleton__sidebar{position:relative!important;z-index:90;width:auto}}.interface-interface-skeleton__sidebar{overflow:auto}@media (min-width:782px){.interface-interface-skeleton__sidebar{border-right:1px solid #e0e0e0}}@media (min-width:782px){.interface-interface-skeleton__secondary-sidebar{border-left:1px solid #e0e0e0}}.interface-interface-skeleton__header{flex-shrink:0;height:auto;border-bottom:1px solid #e0e0e0;z-index:30;color:#1e1e1e}.interface-interface-skeleton__footer{height:auto;flex-shrink:0;border-top:1px solid #e0e0e0;color:#1e1e1e;position:absolute;bottom:0;right:0;width:100%;background-color:#fff;z-index:90;display:none}@media (min-width:782px){.interface-interface-skeleton__footer{display:flex}}.interface-interface-skeleton__footer .block-editor-block-breadcrumb{z-index:30;display:flex;background:#fff;height:24px;align-items:center;font-size:13px;padding:0 18px}.interface-interface-skeleton__actions{z-index:100000;position:fixed!important;top:-9999em;bottom:auto;right:auto;left:0;width:280px;color:#1e1e1e}.interface-interface-skeleton__actions:focus{top:auto;bottom:0}.interface-more-menu-dropdown{margin-right:-4px}.interface-more-menu-dropdown .components-button{width:auto;padding:0 2px}@media (min-width:600px){.interface-more-menu-dropdown{margin-right:0}.interface-more-menu-dropdown .components-button{padding:0 4px}}.interface-more-menu-dropdown__content .components-popover__content{min-width:280px}@media (min-width:480px){.interface-more-menu-dropdown__content .components-popover__content{width:auto;max-width:480px}}.interface-more-menu-dropdown__content .components-popover__content .components-dropdown-menu__menu{padding:0}.components-popover.interface-more-menu-dropdown__content{z-index:99998}.interface-pinned-items{display:flex}.interface-pinned-items .components-button:not(:first-child){display:none}@media (min-width:600px){.interface-pinned-items .components-button:not(:first-child){display:flex}}.interface-pinned-items .components-button{margin-right:4px}.interface-pinned-items .components-button svg{max-width:24px;max-height:24px}.wp-block[data-type="core/widget-area"]{max-width:700px;margin-right:auto;margin-left:auto}.wp-block[data-type="core/widget-area"] .components-panel__body>.components-panel__body-title{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;margin:0;height:48px;position:relative;z-index:1;background:#fff;transform:translateZ(0)}.wp-block[data-type="core/widget-area"] .components-panel__body>.components-panel__body-title:hover{background:#fff}.wp-block[data-type="core/widget-area"] .block-list-appender.wp-block{width:auto}.wp-block[data-type="core/widget-area"] .editor-styles-wrapper .wp-block.wp-block.wp-block.wp-block.wp-block{max-width:100%}.wp-block[data-type="core/widget-area"] .components-panel__body.is-opened{padding:0}.blocks-widgets-container .wp-block-widget-area__inner-blocks.editor-styles-wrapper{margin:0;padding:0}.blocks-widgets-container .wp-block-widget-area__inner-blocks.editor-styles-wrapper>.block-editor-block-list__layout{margin-top:-48px;padding:72px 16px 16px;min-height:32px}.wp-block-widget-area__highlight-drop-zone{outline:var(--wp-admin-border-width-focus) solid var(--wp-admin-theme-color)}body.is-dragging-components-draggable .wp-block[data-type="core/widget-area"] .components-panel__body>.components-panel__body-title,body.is-dragging-components-draggable .wp-block[data-type="core/widget-area"] .components-panel__body>.components-panel__body-title *{pointer-events:none}.edit-widgets-error-boundary{max-width:780px;padding:20px;margin:60px auto auto;box-shadow:0 10px 10px rgba(0,0,0,.25)}.edit-widgets-header{display:flex;align-items:center;justify-content:space-between;height:60px;padding:0 16px;overflow:auto}@media (min-width:600px){.edit-widgets-header{overflow:visible}}.edit-widgets-header__navigable-toolbar-wrapper{display:flex;align-items:center;justify-content:center}.edit-widgets-header__title{font-size:20px;padding:0;margin:0 0 0 20px}.edit-widgets-header__actions{display:flex}.edit-widgets-header__actions .components-button{margin-left:4px}@media (min-width:600px){.edit-widgets-header__actions .components-button{margin-left:12px}}.edit-widgets-header__actions .edit-widgets-more-menu .components-button,.edit-widgets-header__actions .interface-pinned-items .components-button{margin-left:0}.edit-widgets-header-toolbar{border:none}.edit-widgets-header-toolbar>.components-button.has-icon.has-icon.has-icon,.edit-widgets-header-toolbar>.components-dropdown>.components-button.has-icon.has-icon{height:36px;min-width:36px;padding:6px}.edit-widgets-header-toolbar>.components-button.has-icon.has-icon.has-icon.is-pressed,.edit-widgets-header-toolbar>.components-dropdown>.components-button.has-icon.has-icon.is-pressed{background:#1e1e1e}.edit-widgets-header-toolbar>.components-button.has-icon.has-icon.has-icon:focus:not(:disabled),.edit-widgets-header-toolbar>.components-dropdown>.components-button.has-icon.has-icon:focus:not(:disabled){box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 0 0 1px #fff;outline:1px solid transparent}.edit-widgets-header-toolbar>.components-button.has-icon.has-icon.has-icon:before,.edit-widgets-header-toolbar>.components-dropdown>.components-button.has-icon.has-icon:before{display:none}.edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle{padding-right:8px;padding-left:8px}@media (min-width:600px){.edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle{padding-right:12px;padding-left:12px}}.edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle:after{content:none}.edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle svg{transition:transform .2s cubic-bezier(.165,.84,.44,1)}@media (prefers-reduced-motion:reduce){.edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle svg{transition-duration:0s;transition-delay:0s}}.edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle.is-pressed svg{transform:rotate(-45deg)}.edit-widgets-keyboard-shortcut-help-modal__section{margin:0 0 2rem}.edit-widgets-keyboard-shortcut-help-modal__main-shortcuts .edit-widgets-keyboard-shortcut-help-modal__shortcut-list{margin-top:-25px}.edit-widgets-keyboard-shortcut-help-modal__section-title{font-size:.9rem;font-weight:600}.edit-widgets-keyboard-shortcut-help-modal__shortcut{display:flex;align-items:baseline;padding:.6rem 0;border-top:1px solid #ddd;margin-bottom:0}.edit-widgets-keyboard-shortcut-help-modal__shortcut:last-child{border-bottom:1px solid #ddd}.edit-widgets-keyboard-shortcut-help-modal__shortcut:empty{display:none}.edit-widgets-keyboard-shortcut-help-modal__shortcut-term{font-weight:600;margin:0 1rem 0 0;text-align:left}.edit-widgets-keyboard-shortcut-help-modal__shortcut-description{flex:1;margin:0;flex-basis:auto}.edit-widgets-keyboard-shortcut-help-modal__shortcut-key-combination{display:block;background:none;margin:0;padding:0}.edit-widgets-keyboard-shortcut-help-modal__shortcut-key-combination+.edit-widgets-keyboard-shortcut-help-modal__shortcut-key-combination{margin-top:10px}.edit-widgets-keyboard-shortcut-help-modal__shortcut-key{padding:.25rem .5rem;border-radius:8%;margin:0 .2rem}.edit-widgets-keyboard-shortcut-help-modal__shortcut-key:last-child{margin:0 .2rem 0 0}.edit-widgets-more-menu{margin-right:-4px}.edit-widgets-more-menu .components-button{width:auto;padding:0 2px}@media (min-width:600px){.edit-widgets-more-menu{margin-right:0}.edit-widgets-more-menu .components-button{padding:0 4px}}.edit-widgets-more-menu__content .components-popover__content{min-width:280px}@media (min-width:480px){.edit-widgets-more-menu__content .components-popover__content{width:auto;max-width:480px}}.edit-widgets-more-menu__content .components-popover__content .components-dropdown-menu__menu{padding:0}.components-popover.edit-widgets-more-menu__content{z-index:99998}.components-panel__header.edit-widgets-sidebar__panel-tabs{justify-content:flex-start;padding-right:0;padding-left:4px;border-top:0;margin-top:0}.components-panel__header.edit-widgets-sidebar__panel-tabs ul{display:flex}.components-panel__header.edit-widgets-sidebar__panel-tabs li{margin:0}.components-panel__header.edit-widgets-sidebar__panel-tabs .components-button.has-icon{display:none;margin-right:auto}@media (min-width:782px){.components-panel__header.edit-widgets-sidebar__panel-tabs .components-button.has-icon{display:flex}}.components-button.edit-widgets-sidebar__panel-tab{border-radius:0;height:49px;background:transparent;border:none;box-shadow:none;cursor:pointer;display:inline-block;padding:3px 15px;margin-right:0;font-weight:400;color:#1e1e1e}.components-button.edit-widgets-sidebar__panel-tab:after{content:attr(data-label);display:block;font-weight:600;height:0;overflow:hidden;speak:none;visibility:hidden}.components-button.edit-widgets-sidebar__panel-tab.is-active{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) transparent,inset 0 -4px 0 0 var(--wp-admin-theme-color);font-weight:600;position:relative}.components-button.edit-widgets-sidebar__panel-tab.is-active:before{content:"";position:absolute;top:0;bottom:1px;left:0;right:0;border-bottom:4px solid transparent}.components-button.edit-widgets-sidebar__panel-tab:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.components-button.edit-widgets-sidebar__panel-tab.is-active:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 -4px 0 0 var(--wp-admin-theme-color)}.edit-widgets-widget-areas__top-container{display:flex;padding:16px}.edit-widgets-widget-areas__top-container .block-editor-block-icon{margin-left:16px}.edit-widgets-notices__snackbar{position:fixed;left:0;bottom:20px;padding-right:16px;padding-left:16px;right:0}@media (min-width:783px){.edit-widgets-notices__snackbar{right:160px}}@media (min-width:783px){.auto-fold .edit-widgets-notices__snackbar{right:36px}}@media (min-width:961px){.auto-fold .edit-widgets-notices__snackbar{right:160px}}.folded .edit-widgets-notices__snackbar{right:0}@media (min-width:783px){.folded .edit-widgets-notices__snackbar{right:36px}}body.is-fullscreen-mode .edit-widgets-notices__snackbar{right:0!important}.edit-widgets-notices__dismissible .components-notice,.edit-widgets-notices__pinned .components-notice{box-sizing:border-box;margin:0;border-bottom:1px solid rgba(0,0,0,.2);padding:0 12px;min-height:60px}.edit-widgets-notices__dismissible .components-notice .components-notice__dismiss,.edit-widgets-notices__pinned .components-notice .components-notice__dismiss{margin-top:12px}.edit-widgets-layout__inserter-panel{height:100%;display:flex;flex-direction:column}.edit-widgets-layout__inserter-panel .block-editor-inserter__menu{overflow:hidden}.edit-widgets-layout__inserter-panel-header{padding-top:8px;padding-left:8px;display:flex;justify-content:flex-end}@media (min-width:782px){.edit-widgets-layout__inserter-panel-header{display:none}}.edit-widgets-layout__inserter-panel-content{height:calc(100% - 44px)}@media (min-width:782px){.edit-widgets-layout__inserter-panel-content{height:100%}}.edit-widgets-welcome-guide{width:312px}.edit-widgets-welcome-guide__image{background:#00a0d2;margin:0 0 16px}.edit-widgets-welcome-guide__image>img{display:block;max-width:100%;-o-object-fit:cover;object-fit:cover}.edit-widgets-welcome-guide__heading{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:24px;line-height:1.4;margin:16px 0;padding:0 32px}.edit-widgets-welcome-guide__text{font-size:13px;line-height:1.4;margin:0 0 24px;padding:0 32px}.edit-widgets-welcome-guide__inserter-icon{margin:0 4px;vertical-align:text-top}.edit-widgets-block-editor{position:relative;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.edit-widgets-block-editor,.edit-widgets-block-editor .block-editor-writing-flow,.edit-widgets-block-editor .block-editor-writing-flow>div,.edit-widgets-block-editor>div:last-of-type{display:flex;flex-direction:column;flex-grow:1}.edit-widgets-block-editor .edit-widgets-main-block-list{height:100%}.edit-widgets-block-editor .components-button{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px}.edit-widgets-block-editor .components-button.has-icon,.edit-widgets-block-editor .components-button.is-tertiary{padding:6px}.edit-widgets-editor__list-view-panel{height:100%;display:flex;flex-direction:column;min-width:350px}.edit-widgets-editor__list-view-panel-content{height:calc(100% - 44px);overflow-y:auto;padding:8px}.edit-widgets-editor__list-view-panel-header{align-items:center;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;height:48px;padding-right:16px;padding-left:4px}body.appearance_page_gutenberg-widgets,body.widgets-php,html.wp-toolbar{background:#fff}body.appearance_page_gutenberg-widgets #wpcontent,body.widgets-php #wpcontent{padding-right:0}body.appearance_page_gutenberg-widgets #wpbody-content,body.widgets-php #wpbody-content{padding-bottom:0}body.appearance_page_gutenberg-widgets #wpbody-content>div:not(.blocks-widgets-container):not(#screen-meta),body.appearance_page_gutenberg-widgets #wpfooter,body.widgets-php #wpbody-content>div:not(.blocks-widgets-container):not(#screen-meta),body.widgets-php #wpfooter{display:none}body.appearance_page_gutenberg-widgets .a11y-speak-region,body.widgets-php .a11y-speak-region{right:-1px;top:-1px}body.appearance_page_gutenberg-widgets ul#adminmenu>li.current>a.current:after,body.appearance_page_gutenberg-widgets ul#adminmenu a.wp-has-current-submenu:after,body.widgets-php ul#adminmenu>li.current>a.current:after,body.widgets-php ul#adminmenu a.wp-has-current-submenu:after{border-left-color:#fff}body.appearance_page_gutenberg-widgets .media-frame select.attachment-filters:last-of-type,body.widgets-php .media-frame select.attachment-filters:last-of-type{width:auto;max-width:100%}.blocks-widgets-container,.components-modal__frame{box-sizing:border-box}.blocks-widgets-container *,.blocks-widgets-container :after,.blocks-widgets-container :before,.components-modal__frame *,.components-modal__frame :after,.components-modal__frame :before{box-sizing:inherit}@media (min-width:600px){.blocks-widgets-container{position:absolute;top:0;left:0;bottom:0;right:0;min-height:calc(100vh - 46px)}}@media (min-width:782px){.blocks-widgets-container{min-height:calc(100vh - 32px)}}.blocks-widgets-container .interface-interface-skeleton__content{background-color:#f0f0f0}.blocks-widgets-container .editor-styles-wrapper{max-width:700px;margin:auto}.edit-widgets-sidebar .components-button.interface-complementary-area__pin-unpin-item{display:none}.widgets-php .notice{display:none!important}body.admin-color-light{--wp-admin-theme-color:#0085ba;--wp-admin-theme-color--rgb:0,133,186;--wp-admin-theme-color-darker-10:#0073a1;--wp-admin-theme-color-darker-10--rgb:0,115,161;--wp-admin-theme-color-darker-20:#006187;--wp-admin-theme-color-darker-20--rgb:0,97,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-light{--wp-admin-border-width-focus:1.5px}}body.admin-color-modern{--wp-admin-theme-color:#3858e9;--wp-admin-theme-color--rgb:56,88,233;--wp-admin-theme-color-darker-10:#2145e6;--wp-admin-theme-color-darker-10--rgb:33,69,230;--wp-admin-theme-color-darker-20:#183ad6;--wp-admin-theme-color-darker-20--rgb:24,58,214;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-modern{--wp-admin-border-width-focus:1.5px}}body.admin-color-blue{--wp-admin-theme-color:#096484;--wp-admin-theme-color--rgb:9,100,132;--wp-admin-theme-color-darker-10:#07526c;--wp-admin-theme-color-darker-10--rgb:7,82,108;--wp-admin-theme-color-darker-20:#064054;--wp-admin-theme-color-darker-20--rgb:6,64,84;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-blue{--wp-admin-border-width-focus:1.5px}}body.admin-color-coffee{--wp-admin-theme-color:#46403c;--wp-admin-theme-color--rgb:70,64,60;--wp-admin-theme-color-darker-10:#383330;--wp-admin-theme-color-darker-10--rgb:56,51,48;--wp-admin-theme-color-darker-20:#2b2724;--wp-admin-theme-color-darker-20--rgb:43,39,36;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-coffee{--wp-admin-border-width-focus:1.5px}}body.admin-color-ectoplasm{--wp-admin-theme-color:#523f6d;--wp-admin-theme-color--rgb:82,63,109;--wp-admin-theme-color-darker-10:#46365d;--wp-admin-theme-color-darker-10--rgb:70,54,93;--wp-admin-theme-color-darker-20:#3a2c4d;--wp-admin-theme-color-darker-20--rgb:58,44,77;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-ectoplasm{--wp-admin-border-width-focus:1.5px}}body.admin-color-midnight{--wp-admin-theme-color:#e14d43;--wp-admin-theme-color--rgb:225,77,67;--wp-admin-theme-color-darker-10:#dd382d;--wp-admin-theme-color-darker-10--rgb:221,56,45;--wp-admin-theme-color-darker-20:#d02c21;--wp-admin-theme-color-darker-20--rgb:208,44,33;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-midnight{--wp-admin-border-width-focus:1.5px}}body.admin-color-ocean{--wp-admin-theme-color:#627c83;--wp-admin-theme-color--rgb:98,124,131;--wp-admin-theme-color-darker-10:#576e74;--wp-admin-theme-color-darker-10--rgb:87,110,116;--wp-admin-theme-color-darker-20:#4c6066;--wp-admin-theme-color-darker-20--rgb:76,96,102;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-ocean{--wp-admin-border-width-focus:1.5px}}body.admin-color-sunrise{--wp-admin-theme-color:#dd823b;--wp-admin-theme-color--rgb:221,130,59;--wp-admin-theme-color-darker-10:#d97426;--wp-admin-theme-color-darker-10--rgb:217,116,38;--wp-admin-theme-color-darker-20:#c36922;--wp-admin-theme-color-darker-20--rgb:195,105,34;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-sunrise{--wp-admin-border-width-focus:1.5px}}PKj l\a)?EIpIp#css/dist/edit-widgets/style-rtl.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .components-panel__header.interface-complementary-area-header__small { background: #fff; padding-left: 4px; } .components-panel__header.interface-complementary-area-header__small .interface-complementary-area-header__small-title { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; width: 100%; } @media (min-width: 782px) { .components-panel__header.interface-complementary-area-header__small { display: none; } } .interface-complementary-area-header { background: #fff; padding-left: 4px; } .interface-complementary-area-header .components-button.has-icon { display: none; margin-right: auto; } .interface-complementary-area-header .components-button.has-icon ~ .components-button { margin-right: 0; } @media (min-width: 782px) { .interface-complementary-area-header .components-button.has-icon { display: flex; } } @media (min-width: 782px) { .components-panel__header + .interface-complementary-area-header { margin-top: 0; } } .interface-complementary-area { background: #fff; color: #1e1e1e; } @media (min-width: 600px) { .interface-complementary-area { -webkit-overflow-scrolling: touch; } } @media (min-width: 782px) { .interface-complementary-area { width: 280px; } } .interface-complementary-area .components-panel { border: none; position: relative; z-index: 0; } .interface-complementary-area .components-panel__header { position: sticky; top: 0; z-index: 1; } .interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs { top: 48px; } @media (min-width: 782px) { .interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs { top: 0; } } .interface-complementary-area p { margin-top: 0; } .interface-complementary-area h2 { font-size: 13px; color: #1e1e1e; margin-bottom: 1.5em; } .interface-complementary-area h3 { font-size: 11px; text-transform: uppercase; font-weight: 500; color: #1e1e1e; margin-bottom: 1.5em; } .interface-complementary-area hr { border-top: none; border-bottom: 1px solid #f0f0f0; margin: 1.5em 0; } .interface-complementary-area div.components-toolbar-group, .interface-complementary-area div.components-toolbar { box-shadow: none; margin-bottom: 1.5em; } .interface-complementary-area div.components-toolbar-group:last-child, .interface-complementary-area div.components-toolbar:last-child { margin-bottom: 0; } .interface-complementary-area .block-editor-skip-to-selected-block:focus { top: auto; left: 10px; bottom: 10px; right: auto; } @media (min-width: 782px) { body.js.is-fullscreen-mode { margin-top: -32px; height: calc(100% + 32px); } body.js.is-fullscreen-mode #adminmenumain, body.js.is-fullscreen-mode #wpadminbar { display: none; } body.js.is-fullscreen-mode #wpcontent, body.js.is-fullscreen-mode #wpfooter { margin-right: 0; } } html.interface-interface-skeleton__html-container { position: fixed; width: 100%; } @media (min-width: 782px) { html.interface-interface-skeleton__html-container { position: initial; width: initial; } } .interface-interface-skeleton { display: flex; flex-direction: row; height: auto; max-height: 100%; position: fixed; top: 46px; right: 0; left: 0; bottom: 0; } @media (min-width: 783px) { .interface-interface-skeleton { top: 32px; } .is-fullscreen-mode .interface-interface-skeleton { top: 0; } } .interface-interface-skeleton__editor { display: flex; flex-direction: column; flex: 0 1 100%; overflow: hidden; } .interface-interface-skeleton { /* Set left position when auto-fold is not on the body element. */ right: 0; } @media (min-width: 783px) { .interface-interface-skeleton { right: 160px; } } .auto-fold .interface-interface-skeleton { /* Auto fold is when on smaller breakpoints, nav menu auto collapses. */ } @media (min-width: 783px) { .auto-fold .interface-interface-skeleton { right: 36px; } } @media (min-width: 961px) { .auto-fold .interface-interface-skeleton { right: 160px; } } /* Sidebar manually collapsed. */ .folded .interface-interface-skeleton { right: 0; } @media (min-width: 783px) { .folded .interface-interface-skeleton { right: 36px; } } body.is-fullscreen-mode .interface-interface-skeleton { right: 0 !important; } .interface-interface-skeleton__body { flex-grow: 1; display: flex; overflow: auto; overscroll-behavior-y: none; } @media (min-width: 782px) { .has-footer .interface-interface-skeleton__body { padding-bottom: 25px; } } .interface-interface-skeleton__content { flex-grow: 1; display: flex; flex-direction: column; overflow: auto; z-index: 20; } .interface-interface-skeleton__secondary-sidebar, .interface-interface-skeleton__sidebar { display: block; flex-shrink: 0; position: absolute; z-index: 100000; top: 0; left: 0; bottom: 0; right: 0; background: #fff; color: #1e1e1e; } @media (min-width: 782px) { .interface-interface-skeleton__secondary-sidebar, .interface-interface-skeleton__sidebar { position: relative !important; z-index: 90; width: auto; } } .interface-interface-skeleton__sidebar { overflow: auto; } @media (min-width: 782px) { .interface-interface-skeleton__sidebar { border-right: 1px solid #e0e0e0; } } @media (min-width: 782px) { .interface-interface-skeleton__secondary-sidebar { border-left: 1px solid #e0e0e0; } } .interface-interface-skeleton__header { flex-shrink: 0; height: auto; border-bottom: 1px solid #e0e0e0; z-index: 30; color: #1e1e1e; } .interface-interface-skeleton__footer { height: auto; flex-shrink: 0; border-top: 1px solid #e0e0e0; color: #1e1e1e; position: absolute; bottom: 0; right: 0; width: 100%; background-color: #fff; z-index: 90; display: none; } @media (min-width: 782px) { .interface-interface-skeleton__footer { display: flex; } } .interface-interface-skeleton__footer .block-editor-block-breadcrumb { z-index: 30; display: flex; background: #fff; height: 24px; align-items: center; font-size: 13px; padding: 0 18px; } .interface-interface-skeleton__actions { z-index: 100000; position: fixed !important; top: -9999em; bottom: auto; right: auto; left: 0; width: 280px; color: #1e1e1e; } .interface-interface-skeleton__actions:focus { top: auto; bottom: 0; } .interface-more-menu-dropdown { margin-right: -4px; } .interface-more-menu-dropdown .components-button { width: auto; padding: 0 2px; } @media (min-width: 600px) { .interface-more-menu-dropdown { margin-right: 0; } .interface-more-menu-dropdown .components-button { padding: 0 4px; } } .interface-more-menu-dropdown__content .components-popover__content { min-width: 280px; } @media (min-width: 480px) { .interface-more-menu-dropdown__content .components-popover__content { width: auto; max-width: 480px; } } .interface-more-menu-dropdown__content .components-popover__content .components-dropdown-menu__menu { padding: 0; } .components-popover.interface-more-menu-dropdown__content { z-index: 99998; } .interface-pinned-items { display: flex; } .interface-pinned-items .components-button:not(:first-child) { display: none; } @media (min-width: 600px) { .interface-pinned-items .components-button:not(:first-child) { display: flex; } } .interface-pinned-items .components-button { margin-right: 4px; } .interface-pinned-items .components-button svg { max-width: 24px; max-height: 24px; } .wp-block[data-type="core/widget-area"] { max-width: 700px; margin-right: auto; margin-left: auto; } .wp-block[data-type="core/widget-area"] .components-panel__body > .components-panel__body-title { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; margin: 0; height: 48px; position: relative; z-index: 1; background: #fff; transform: translateZ(0); } .wp-block[data-type="core/widget-area"] .components-panel__body > .components-panel__body-title:hover { background: #fff; } .wp-block[data-type="core/widget-area"] .block-list-appender.wp-block { width: initial; } .wp-block[data-type="core/widget-area"] .editor-styles-wrapper .wp-block.wp-block.wp-block.wp-block.wp-block { max-width: 100%; } .wp-block[data-type="core/widget-area"] .components-panel__body.is-opened { padding: 0; } .blocks-widgets-container .wp-block-widget-area__inner-blocks.editor-styles-wrapper { margin: 0; padding: 0; } .blocks-widgets-container .wp-block-widget-area__inner-blocks.editor-styles-wrapper > .block-editor-block-list__layout { margin-top: -48px; padding: 72px 16px 16px; min-height: 32px; } .wp-block-widget-area__highlight-drop-zone { outline: var(--wp-admin-border-width-focus) solid var(--wp-admin-theme-color); } body.is-dragging-components-draggable .wp-block[data-type="core/widget-area"] .components-panel__body > .components-panel__body-title, body.is-dragging-components-draggable .wp-block[data-type="core/widget-area"] .components-panel__body > .components-panel__body-title * { pointer-events: none; } .edit-widgets-error-boundary { margin: auto; max-width: 780px; padding: 20px; margin-top: 60px; box-shadow: 0 10px 10px rgba(0, 0, 0, 0.25); } .edit-widgets-header { display: flex; align-items: center; justify-content: space-between; height: 60px; padding: 0 16px; overflow: auto; } @media (min-width: 600px) { .edit-widgets-header { overflow: visible; } } .edit-widgets-header__navigable-toolbar-wrapper { display: flex; align-items: center; justify-content: center; } .edit-widgets-header__title { font-size: 20px; padding: 0; margin: 0 0 0 20px; } .edit-widgets-header__actions { display: flex; } .edit-widgets-header__actions .components-button { margin-left: 4px; } @media (min-width: 600px) { .edit-widgets-header__actions .components-button { margin-left: 12px; } } .edit-widgets-header__actions .edit-widgets-more-menu .components-button, .edit-widgets-header__actions .interface-pinned-items .components-button { margin-left: 0; } .edit-widgets-header-toolbar { border: none; } .edit-widgets-header-toolbar > .components-button.has-icon.has-icon.has-icon, .edit-widgets-header-toolbar > .components-dropdown > .components-button.has-icon.has-icon { height: 36px; min-width: 36px; padding: 6px; } .edit-widgets-header-toolbar > .components-button.has-icon.has-icon.has-icon.is-pressed, .edit-widgets-header-toolbar > .components-dropdown > .components-button.has-icon.has-icon.is-pressed { background: #1e1e1e; } .edit-widgets-header-toolbar > .components-button.has-icon.has-icon.has-icon:focus:not(:disabled), .edit-widgets-header-toolbar > .components-dropdown > .components-button.has-icon.has-icon:focus:not(:disabled) { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 0 0 1px #fff; outline: 1px solid transparent; } .edit-widgets-header-toolbar > .components-button.has-icon.has-icon.has-icon::before, .edit-widgets-header-toolbar > .components-dropdown > .components-button.has-icon.has-icon::before { display: none; } .edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle { padding-right: 8px; padding-left: 8px; } @media (min-width: 600px) { .edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle { padding-right: 12px; padding-left: 12px; } } .edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle::after { content: none; } .edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle svg { transition: transform cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s; } @media (prefers-reduced-motion: reduce) { .edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle svg { transition-duration: 0s; transition-delay: 0s; } } .edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle.is-pressed svg { transform: rotate(-45deg); } .edit-widgets-keyboard-shortcut-help-modal__section { margin: 0 0 2rem 0; } .edit-widgets-keyboard-shortcut-help-modal__main-shortcuts .edit-widgets-keyboard-shortcut-help-modal__shortcut-list { margin-top: -25px; } .edit-widgets-keyboard-shortcut-help-modal__section-title { font-size: 0.9rem; font-weight: 600; } .edit-widgets-keyboard-shortcut-help-modal__shortcut { display: flex; align-items: baseline; padding: 0.6rem 0; border-top: 1px solid #ddd; margin-bottom: 0; } .edit-widgets-keyboard-shortcut-help-modal__shortcut:last-child { border-bottom: 1px solid #ddd; } .edit-widgets-keyboard-shortcut-help-modal__shortcut:empty { display: none; } .edit-widgets-keyboard-shortcut-help-modal__shortcut-term { font-weight: 600; margin: 0 1rem 0 0; text-align: left; } .edit-widgets-keyboard-shortcut-help-modal__shortcut-description { flex: 1; margin: 0; flex-basis: auto; } .edit-widgets-keyboard-shortcut-help-modal__shortcut-key-combination { display: block; background: none; margin: 0; padding: 0; } .edit-widgets-keyboard-shortcut-help-modal__shortcut-key-combination + .edit-widgets-keyboard-shortcut-help-modal__shortcut-key-combination { margin-top: 10px; } .edit-widgets-keyboard-shortcut-help-modal__shortcut-key { padding: 0.25rem 0.5rem; border-radius: 8%; margin: 0 0.2rem 0 0.2rem; } .edit-widgets-keyboard-shortcut-help-modal__shortcut-key:last-child { margin: 0 0.2rem 0 0; } .edit-widgets-more-menu { margin-right: -4px; } .edit-widgets-more-menu .components-button { width: auto; padding: 0 2px; } @media (min-width: 600px) { .edit-widgets-more-menu { margin-right: 0; } .edit-widgets-more-menu .components-button { padding: 0 4px; } } .edit-widgets-more-menu__content .components-popover__content { min-width: 280px; } @media (min-width: 480px) { .edit-widgets-more-menu__content .components-popover__content { width: auto; max-width: 480px; } } .edit-widgets-more-menu__content .components-popover__content .components-dropdown-menu__menu { padding: 0; } .components-popover.edit-widgets-more-menu__content { z-index: 99998; } .components-panel__header.edit-widgets-sidebar__panel-tabs { justify-content: flex-start; padding-right: 0; padding-left: 4px; border-top: 0; margin-top: 0; } .components-panel__header.edit-widgets-sidebar__panel-tabs ul { display: flex; } .components-panel__header.edit-widgets-sidebar__panel-tabs li { margin: 0; } .components-panel__header.edit-widgets-sidebar__panel-tabs .components-button.has-icon { display: none; margin-right: auto; } @media (min-width: 782px) { .components-panel__header.edit-widgets-sidebar__panel-tabs .components-button.has-icon { display: flex; } } .components-button.edit-widgets-sidebar__panel-tab { border-radius: 0; height: 49px; background: transparent; border: none; box-shadow: none; cursor: pointer; display: inline-block; padding: 3px 15px; margin-right: 0; font-weight: 400; color: #1e1e1e; } .components-button.edit-widgets-sidebar__panel-tab::after { content: attr(data-label); display: block; font-weight: 600; height: 0; overflow: hidden; speak: none; visibility: hidden; } .components-button.edit-widgets-sidebar__panel-tab.is-active { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) transparent, inset 0 -4px 0 0 var(--wp-admin-theme-color); font-weight: 600; position: relative; } .components-button.edit-widgets-sidebar__panel-tab.is-active::before { content: ""; position: absolute; top: 0; bottom: 1px; left: 0; right: 0; border-bottom: 4px solid transparent; } .components-button.edit-widgets-sidebar__panel-tab:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .components-button.edit-widgets-sidebar__panel-tab.is-active:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 -4px 0 0 var(--wp-admin-theme-color); } .edit-widgets-widget-areas__top-container { display: flex; padding: 16px; } .edit-widgets-widget-areas__top-container .block-editor-block-icon { margin-left: 16px; } .edit-widgets-notices__snackbar { position: fixed; left: 0; bottom: 20px; padding-right: 16px; padding-left: 16px; } .edit-widgets-notices__snackbar { /* Set left position when auto-fold is not on the body element. */ right: 0; } @media (min-width: 783px) { .edit-widgets-notices__snackbar { right: 160px; } } .auto-fold .edit-widgets-notices__snackbar { /* Auto fold is when on smaller breakpoints, nav menu auto collapses. */ } @media (min-width: 783px) { .auto-fold .edit-widgets-notices__snackbar { right: 36px; } } @media (min-width: 961px) { .auto-fold .edit-widgets-notices__snackbar { right: 160px; } } /* Sidebar manually collapsed. */ .folded .edit-widgets-notices__snackbar { right: 0; } @media (min-width: 783px) { .folded .edit-widgets-notices__snackbar { right: 36px; } } body.is-fullscreen-mode .edit-widgets-notices__snackbar { right: 0 !important; } .edit-widgets-notices__dismissible .components-notice, .edit-widgets-notices__pinned .components-notice { box-sizing: border-box; margin: 0; border-bottom: 1px solid rgba(0, 0, 0, 0.2); padding: 0 12px; min-height: 60px; } .edit-widgets-notices__dismissible .components-notice .components-notice__dismiss, .edit-widgets-notices__pinned .components-notice .components-notice__dismiss { margin-top: 12px; } .edit-widgets-layout__inserter-panel { height: 100%; display: flex; flex-direction: column; } .edit-widgets-layout__inserter-panel .block-editor-inserter__menu { overflow: hidden; } .edit-widgets-layout__inserter-panel-header { padding-top: 8px; padding-left: 8px; display: flex; justify-content: flex-end; } @media (min-width: 782px) { .edit-widgets-layout__inserter-panel-header { display: none; } } .edit-widgets-layout__inserter-panel-content { height: calc(100% - 36px - 8px); } @media (min-width: 782px) { .edit-widgets-layout__inserter-panel-content { height: 100%; } } .edit-widgets-welcome-guide { width: 312px; } .edit-widgets-welcome-guide__image { background: #00a0d2; margin: 0 0 16px; } .edit-widgets-welcome-guide__image > img { display: block; max-width: 100%; -o-object-fit: cover; object-fit: cover; } .edit-widgets-welcome-guide__heading { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 24px; line-height: 1.4; margin: 16px 0 16px 0; padding: 0 32px; } .edit-widgets-welcome-guide__text { font-size: 13px; line-height: 1.4; margin: 0 0 24px 0; padding: 0 32px; } .edit-widgets-welcome-guide__inserter-icon { margin: 0 4px; vertical-align: text-top; } .edit-widgets-block-editor { position: relative; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; display: flex; flex-direction: column; flex-grow: 1; } .edit-widgets-block-editor > div:last-of-type, .edit-widgets-block-editor .block-editor-writing-flow, .edit-widgets-block-editor .block-editor-writing-flow > div { display: flex; flex-direction: column; flex-grow: 1; } .edit-widgets-block-editor .edit-widgets-main-block-list { height: 100%; } .edit-widgets-block-editor .components-button { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; } .edit-widgets-block-editor .components-button.is-tertiary, .edit-widgets-block-editor .components-button.has-icon { padding: 6px; } .edit-widgets-editor__list-view-panel { height: 100%; display: flex; flex-direction: column; min-width: 350px; } .edit-widgets-editor__list-view-panel-content { height: calc(100% - 36px - 8px); overflow-y: auto; padding: 8px; } .edit-widgets-editor__list-view-panel-header { align-items: center; border-bottom: 1px solid #ddd; display: flex; justify-content: space-between; height: 48px; padding-right: 16px; padding-left: 4px; } html.wp-toolbar { background: #fff; } body.appearance_page_gutenberg-widgets, body.widgets-php { background: #fff; /* We hide legacy notices in Gutenberg Based Pages, because they were not designed in a way that scaled well. Plugins can use Gutenberg notices if they need to pass on information to the user when they are editing. */ } body.appearance_page_gutenberg-widgets #wpcontent, body.widgets-php #wpcontent { padding-right: 0; } body.appearance_page_gutenberg-widgets #wpbody-content, body.widgets-php #wpbody-content { padding-bottom: 0; } body.appearance_page_gutenberg-widgets #wpbody-content > div:not(.blocks-widgets-container):not(#screen-meta), body.widgets-php #wpbody-content > div:not(.blocks-widgets-container):not(#screen-meta) { display: none; } body.appearance_page_gutenberg-widgets #wpfooter, body.widgets-php #wpfooter { display: none; } body.appearance_page_gutenberg-widgets .a11y-speak-region, body.widgets-php .a11y-speak-region { right: -1px; top: -1px; } body.appearance_page_gutenberg-widgets ul#adminmenu a.wp-has-current-submenu::after, body.appearance_page_gutenberg-widgets ul#adminmenu > li.current > a.current::after, body.widgets-php ul#adminmenu a.wp-has-current-submenu::after, body.widgets-php ul#adminmenu > li.current > a.current::after { border-left-color: #fff; } body.appearance_page_gutenberg-widgets .media-frame select.attachment-filters:last-of-type, body.widgets-php .media-frame select.attachment-filters:last-of-type { width: auto; max-width: 100%; } .blocks-widgets-container, .components-modal__frame { box-sizing: border-box; } .blocks-widgets-container *, .blocks-widgets-container *::before, .blocks-widgets-container *::after, .components-modal__frame *, .components-modal__frame *::before, .components-modal__frame *::after { box-sizing: inherit; } @media (min-width: 600px) { .blocks-widgets-container { position: absolute; top: 0; left: 0; bottom: 0; right: 0; min-height: calc(100vh - 46px); } } @media (min-width: 782px) { .blocks-widgets-container { min-height: calc(100vh - 32px); } } .blocks-widgets-container .interface-interface-skeleton__content { background-color: #f0f0f0; } .blocks-widgets-container .editor-styles-wrapper { max-width: 700px; margin: auto; } .edit-widgets-sidebar .components-button.interface-complementary-area__pin-unpin-item { display: none; } .widgets-php .notice { display: none !important; } body.admin-color-light { --wp-admin-theme-color: #0085ba; --wp-admin-theme-color--rgb: 0, 133, 186; --wp-admin-theme-color-darker-10: #0073a1; --wp-admin-theme-color-darker-10--rgb: 0, 115, 161; --wp-admin-theme-color-darker-20: #006187; --wp-admin-theme-color-darker-20--rgb: 0, 97, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-light { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-modern { --wp-admin-theme-color: #3858e9; --wp-admin-theme-color--rgb: 56, 88, 233; --wp-admin-theme-color-darker-10: #2145e6; --wp-admin-theme-color-darker-10--rgb: 33, 69, 230; --wp-admin-theme-color-darker-20: #183ad6; --wp-admin-theme-color-darker-20--rgb: 24, 58, 214; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-modern { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-blue { --wp-admin-theme-color: #096484; --wp-admin-theme-color--rgb: 9, 100, 132; --wp-admin-theme-color-darker-10: #07526c; --wp-admin-theme-color-darker-10--rgb: 7, 82, 108; --wp-admin-theme-color-darker-20: #064054; --wp-admin-theme-color-darker-20--rgb: 6, 64, 84; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-blue { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-coffee { --wp-admin-theme-color: #46403c; --wp-admin-theme-color--rgb: 70, 64, 60; --wp-admin-theme-color-darker-10: #383330; --wp-admin-theme-color-darker-10--rgb: 56, 51, 48; --wp-admin-theme-color-darker-20: #2b2724; --wp-admin-theme-color-darker-20--rgb: 43, 39, 36; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-coffee { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-ectoplasm { --wp-admin-theme-color: #523f6d; --wp-admin-theme-color--rgb: 82, 63, 109; --wp-admin-theme-color-darker-10: #46365d; --wp-admin-theme-color-darker-10--rgb: 70, 54, 93; --wp-admin-theme-color-darker-20: #3a2c4d; --wp-admin-theme-color-darker-20--rgb: 58, 44, 77; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-ectoplasm { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-midnight { --wp-admin-theme-color: #e14d43; --wp-admin-theme-color--rgb: 225, 77, 67; --wp-admin-theme-color-darker-10: #dd382d; --wp-admin-theme-color-darker-10--rgb: 221, 56, 45; --wp-admin-theme-color-darker-20: #d02c21; --wp-admin-theme-color-darker-20--rgb: 208, 44, 33; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-midnight { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-ocean { --wp-admin-theme-color: #627c83; --wp-admin-theme-color--rgb: 98, 124, 131; --wp-admin-theme-color-darker-10: #576e74; --wp-admin-theme-color-darker-10--rgb: 87, 110, 116; --wp-admin-theme-color-darker-20: #4c6066; --wp-admin-theme-color-darker-20--rgb: 76, 96, 102; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-ocean { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-sunrise { --wp-admin-theme-color: #dd823b; --wp-admin-theme-color--rgb: 221, 130, 59; --wp-admin-theme-color-darker-10: #d97426; --wp-admin-theme-color-darker-10--rgb: 217, 116, 38; --wp-admin-theme-color-darker-20: #c36922; --wp-admin-theme-color-darker-20--rgb: 195, 105, 34; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-sunrise { --wp-admin-border-width-focus: 1.5px; } }PKj l\N7p7pcss/dist/edit-widgets/style.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .components-panel__header.interface-complementary-area-header__small { background: #fff; padding-right: 4px; } .components-panel__header.interface-complementary-area-header__small .interface-complementary-area-header__small-title { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; width: 100%; } @media (min-width: 782px) { .components-panel__header.interface-complementary-area-header__small { display: none; } } .interface-complementary-area-header { background: #fff; padding-right: 4px; } .interface-complementary-area-header .components-button.has-icon { display: none; margin-left: auto; } .interface-complementary-area-header .components-button.has-icon ~ .components-button { margin-left: 0; } @media (min-width: 782px) { .interface-complementary-area-header .components-button.has-icon { display: flex; } } @media (min-width: 782px) { .components-panel__header + .interface-complementary-area-header { margin-top: 0; } } .interface-complementary-area { background: #fff; color: #1e1e1e; } @media (min-width: 600px) { .interface-complementary-area { -webkit-overflow-scrolling: touch; } } @media (min-width: 782px) { .interface-complementary-area { width: 280px; } } .interface-complementary-area .components-panel { border: none; position: relative; z-index: 0; } .interface-complementary-area .components-panel__header { position: sticky; top: 0; z-index: 1; } .interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs { top: 48px; } @media (min-width: 782px) { .interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs { top: 0; } } .interface-complementary-area p { margin-top: 0; } .interface-complementary-area h2 { font-size: 13px; color: #1e1e1e; margin-bottom: 1.5em; } .interface-complementary-area h3 { font-size: 11px; text-transform: uppercase; font-weight: 500; color: #1e1e1e; margin-bottom: 1.5em; } .interface-complementary-area hr { border-top: none; border-bottom: 1px solid #f0f0f0; margin: 1.5em 0; } .interface-complementary-area div.components-toolbar-group, .interface-complementary-area div.components-toolbar { box-shadow: none; margin-bottom: 1.5em; } .interface-complementary-area div.components-toolbar-group:last-child, .interface-complementary-area div.components-toolbar:last-child { margin-bottom: 0; } .interface-complementary-area .block-editor-skip-to-selected-block:focus { top: auto; right: 10px; bottom: 10px; left: auto; } @media (min-width: 782px) { body.js.is-fullscreen-mode { margin-top: -32px; height: calc(100% + 32px); } body.js.is-fullscreen-mode #adminmenumain, body.js.is-fullscreen-mode #wpadminbar { display: none; } body.js.is-fullscreen-mode #wpcontent, body.js.is-fullscreen-mode #wpfooter { margin-left: 0; } } html.interface-interface-skeleton__html-container { position: fixed; width: 100%; } @media (min-width: 782px) { html.interface-interface-skeleton__html-container { position: initial; width: initial; } } .interface-interface-skeleton { display: flex; flex-direction: row; height: auto; max-height: 100%; position: fixed; top: 46px; left: 0; right: 0; bottom: 0; } @media (min-width: 783px) { .interface-interface-skeleton { top: 32px; } .is-fullscreen-mode .interface-interface-skeleton { top: 0; } } .interface-interface-skeleton__editor { display: flex; flex-direction: column; flex: 0 1 100%; overflow: hidden; } .interface-interface-skeleton { /* Set left position when auto-fold is not on the body element. */ left: 0; } @media (min-width: 783px) { .interface-interface-skeleton { left: 160px; } } .auto-fold .interface-interface-skeleton { /* Auto fold is when on smaller breakpoints, nav menu auto collapses. */ } @media (min-width: 783px) { .auto-fold .interface-interface-skeleton { left: 36px; } } @media (min-width: 961px) { .auto-fold .interface-interface-skeleton { left: 160px; } } /* Sidebar manually collapsed. */ .folded .interface-interface-skeleton { left: 0; } @media (min-width: 783px) { .folded .interface-interface-skeleton { left: 36px; } } body.is-fullscreen-mode .interface-interface-skeleton { left: 0 !important; } .interface-interface-skeleton__body { flex-grow: 1; display: flex; overflow: auto; overscroll-behavior-y: none; } @media (min-width: 782px) { .has-footer .interface-interface-skeleton__body { padding-bottom: 25px; } } .interface-interface-skeleton__content { flex-grow: 1; display: flex; flex-direction: column; overflow: auto; z-index: 20; } .interface-interface-skeleton__secondary-sidebar, .interface-interface-skeleton__sidebar { display: block; flex-shrink: 0; position: absolute; z-index: 100000; top: 0; right: 0; bottom: 0; left: 0; background: #fff; color: #1e1e1e; } @media (min-width: 782px) { .interface-interface-skeleton__secondary-sidebar, .interface-interface-skeleton__sidebar { position: relative !important; z-index: 90; width: auto; } } .interface-interface-skeleton__sidebar { overflow: auto; } @media (min-width: 782px) { .interface-interface-skeleton__sidebar { border-left: 1px solid #e0e0e0; } } @media (min-width: 782px) { .interface-interface-skeleton__secondary-sidebar { border-right: 1px solid #e0e0e0; } } .interface-interface-skeleton__header { flex-shrink: 0; height: auto; border-bottom: 1px solid #e0e0e0; z-index: 30; color: #1e1e1e; } .interface-interface-skeleton__footer { height: auto; flex-shrink: 0; border-top: 1px solid #e0e0e0; color: #1e1e1e; position: absolute; bottom: 0; left: 0; width: 100%; background-color: #fff; z-index: 90; display: none; } @media (min-width: 782px) { .interface-interface-skeleton__footer { display: flex; } } .interface-interface-skeleton__footer .block-editor-block-breadcrumb { z-index: 30; display: flex; background: #fff; height: 24px; align-items: center; font-size: 13px; padding: 0 18px; } .interface-interface-skeleton__actions { z-index: 100000; position: fixed !important; top: -9999em; bottom: auto; left: auto; right: 0; width: 280px; color: #1e1e1e; } .interface-interface-skeleton__actions:focus { top: auto; bottom: 0; } .interface-more-menu-dropdown { margin-left: -4px; } .interface-more-menu-dropdown .components-button { width: auto; padding: 0 2px; } @media (min-width: 600px) { .interface-more-menu-dropdown { margin-left: 0; } .interface-more-menu-dropdown .components-button { padding: 0 4px; } } .interface-more-menu-dropdown__content .components-popover__content { min-width: 280px; } @media (min-width: 480px) { .interface-more-menu-dropdown__content .components-popover__content { width: auto; max-width: 480px; } } .interface-more-menu-dropdown__content .components-popover__content .components-dropdown-menu__menu { padding: 0; } .components-popover.interface-more-menu-dropdown__content { z-index: 99998; } .interface-pinned-items { display: flex; } .interface-pinned-items .components-button:not(:first-child) { display: none; } @media (min-width: 600px) { .interface-pinned-items .components-button:not(:first-child) { display: flex; } } .interface-pinned-items .components-button { margin-left: 4px; } .interface-pinned-items .components-button svg { max-width: 24px; max-height: 24px; } .wp-block[data-type="core/widget-area"] { max-width: 700px; margin-left: auto; margin-right: auto; } .wp-block[data-type="core/widget-area"] .components-panel__body > .components-panel__body-title { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; margin: 0; height: 48px; position: relative; z-index: 1; background: #fff; transform: translateZ(0); } .wp-block[data-type="core/widget-area"] .components-panel__body > .components-panel__body-title:hover { background: #fff; } .wp-block[data-type="core/widget-area"] .block-list-appender.wp-block { width: initial; } .wp-block[data-type="core/widget-area"] .editor-styles-wrapper .wp-block.wp-block.wp-block.wp-block.wp-block { max-width: 100%; } .wp-block[data-type="core/widget-area"] .components-panel__body.is-opened { padding: 0; } .blocks-widgets-container .wp-block-widget-area__inner-blocks.editor-styles-wrapper { margin: 0; padding: 0; } .blocks-widgets-container .wp-block-widget-area__inner-blocks.editor-styles-wrapper > .block-editor-block-list__layout { margin-top: -48px; padding: 72px 16px 16px; min-height: 32px; } .wp-block-widget-area__highlight-drop-zone { outline: var(--wp-admin-border-width-focus) solid var(--wp-admin-theme-color); } body.is-dragging-components-draggable .wp-block[data-type="core/widget-area"] .components-panel__body > .components-panel__body-title, body.is-dragging-components-draggable .wp-block[data-type="core/widget-area"] .components-panel__body > .components-panel__body-title * { pointer-events: none; } .edit-widgets-error-boundary { margin: auto; max-width: 780px; padding: 20px; margin-top: 60px; box-shadow: 0 10px 10px rgba(0, 0, 0, 0.25); } .edit-widgets-header { display: flex; align-items: center; justify-content: space-between; height: 60px; padding: 0 16px; overflow: auto; } @media (min-width: 600px) { .edit-widgets-header { overflow: visible; } } .edit-widgets-header__navigable-toolbar-wrapper { display: flex; align-items: center; justify-content: center; } .edit-widgets-header__title { font-size: 20px; padding: 0; margin: 0 20px 0 0; } .edit-widgets-header__actions { display: flex; } .edit-widgets-header__actions .components-button { margin-right: 4px; } @media (min-width: 600px) { .edit-widgets-header__actions .components-button { margin-right: 12px; } } .edit-widgets-header__actions .edit-widgets-more-menu .components-button, .edit-widgets-header__actions .interface-pinned-items .components-button { margin-right: 0; } .edit-widgets-header-toolbar { border: none; } .edit-widgets-header-toolbar > .components-button.has-icon.has-icon.has-icon, .edit-widgets-header-toolbar > .components-dropdown > .components-button.has-icon.has-icon { height: 36px; min-width: 36px; padding: 6px; } .edit-widgets-header-toolbar > .components-button.has-icon.has-icon.has-icon.is-pressed, .edit-widgets-header-toolbar > .components-dropdown > .components-button.has-icon.has-icon.is-pressed { background: #1e1e1e; } .edit-widgets-header-toolbar > .components-button.has-icon.has-icon.has-icon:focus:not(:disabled), .edit-widgets-header-toolbar > .components-dropdown > .components-button.has-icon.has-icon:focus:not(:disabled) { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 0 0 1px #fff; outline: 1px solid transparent; } .edit-widgets-header-toolbar > .components-button.has-icon.has-icon.has-icon::before, .edit-widgets-header-toolbar > .components-dropdown > .components-button.has-icon.has-icon::before { display: none; } .edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle { padding-left: 8px; padding-right: 8px; } @media (min-width: 600px) { .edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle { padding-left: 12px; padding-right: 12px; } } .edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle::after { content: none; } .edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle svg { transition: transform cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s; } @media (prefers-reduced-motion: reduce) { .edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle svg { transition-duration: 0s; transition-delay: 0s; } } .edit-widgets-header-toolbar__inserter-toggle.edit-widgets-header-toolbar__inserter-toggle.is-pressed svg { transform: rotate(45deg); } .edit-widgets-keyboard-shortcut-help-modal__section { margin: 0 0 2rem 0; } .edit-widgets-keyboard-shortcut-help-modal__main-shortcuts .edit-widgets-keyboard-shortcut-help-modal__shortcut-list { margin-top: -25px; } .edit-widgets-keyboard-shortcut-help-modal__section-title { font-size: 0.9rem; font-weight: 600; } .edit-widgets-keyboard-shortcut-help-modal__shortcut { display: flex; align-items: baseline; padding: 0.6rem 0; border-top: 1px solid #ddd; margin-bottom: 0; } .edit-widgets-keyboard-shortcut-help-modal__shortcut:last-child { border-bottom: 1px solid #ddd; } .edit-widgets-keyboard-shortcut-help-modal__shortcut:empty { display: none; } .edit-widgets-keyboard-shortcut-help-modal__shortcut-term { font-weight: 600; margin: 0 0 0 1rem; text-align: right; } .edit-widgets-keyboard-shortcut-help-modal__shortcut-description { flex: 1; margin: 0; flex-basis: auto; } .edit-widgets-keyboard-shortcut-help-modal__shortcut-key-combination { display: block; background: none; margin: 0; padding: 0; } .edit-widgets-keyboard-shortcut-help-modal__shortcut-key-combination + .edit-widgets-keyboard-shortcut-help-modal__shortcut-key-combination { margin-top: 10px; } .edit-widgets-keyboard-shortcut-help-modal__shortcut-key { padding: 0.25rem 0.5rem; border-radius: 8%; margin: 0 0.2rem 0 0.2rem; } .edit-widgets-keyboard-shortcut-help-modal__shortcut-key:last-child { margin: 0 0 0 0.2rem; } .edit-widgets-more-menu { margin-left: -4px; } .edit-widgets-more-menu .components-button { width: auto; padding: 0 2px; } @media (min-width: 600px) { .edit-widgets-more-menu { margin-left: 0; } .edit-widgets-more-menu .components-button { padding: 0 4px; } } .edit-widgets-more-menu__content .components-popover__content { min-width: 280px; } @media (min-width: 480px) { .edit-widgets-more-menu__content .components-popover__content { width: auto; max-width: 480px; } } .edit-widgets-more-menu__content .components-popover__content .components-dropdown-menu__menu { padding: 0; } .components-popover.edit-widgets-more-menu__content { z-index: 99998; } .components-panel__header.edit-widgets-sidebar__panel-tabs { justify-content: flex-start; padding-left: 0; padding-right: 4px; border-top: 0; margin-top: 0; } .components-panel__header.edit-widgets-sidebar__panel-tabs ul { display: flex; } .components-panel__header.edit-widgets-sidebar__panel-tabs li { margin: 0; } .components-panel__header.edit-widgets-sidebar__panel-tabs .components-button.has-icon { display: none; margin-left: auto; } @media (min-width: 782px) { .components-panel__header.edit-widgets-sidebar__panel-tabs .components-button.has-icon { display: flex; } } .components-button.edit-widgets-sidebar__panel-tab { border-radius: 0; height: 49px; background: transparent; border: none; box-shadow: none; cursor: pointer; display: inline-block; padding: 3px 15px; margin-left: 0; font-weight: 400; color: #1e1e1e; } .components-button.edit-widgets-sidebar__panel-tab::after { content: attr(data-label); display: block; font-weight: 600; height: 0; overflow: hidden; speak: none; visibility: hidden; } .components-button.edit-widgets-sidebar__panel-tab.is-active { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) transparent, inset 0 -4px 0 0 var(--wp-admin-theme-color); font-weight: 600; position: relative; } .components-button.edit-widgets-sidebar__panel-tab.is-active::before { content: ""; position: absolute; top: 0; bottom: 1px; right: 0; left: 0; border-bottom: 4px solid transparent; } .components-button.edit-widgets-sidebar__panel-tab:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .components-button.edit-widgets-sidebar__panel-tab.is-active:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 -4px 0 0 var(--wp-admin-theme-color); } .edit-widgets-widget-areas__top-container { display: flex; padding: 16px; } .edit-widgets-widget-areas__top-container .block-editor-block-icon { margin-right: 16px; } .edit-widgets-notices__snackbar { position: fixed; right: 0; bottom: 20px; padding-left: 16px; padding-right: 16px; } .edit-widgets-notices__snackbar { /* Set left position when auto-fold is not on the body element. */ left: 0; } @media (min-width: 783px) { .edit-widgets-notices__snackbar { left: 160px; } } .auto-fold .edit-widgets-notices__snackbar { /* Auto fold is when on smaller breakpoints, nav menu auto collapses. */ } @media (min-width: 783px) { .auto-fold .edit-widgets-notices__snackbar { left: 36px; } } @media (min-width: 961px) { .auto-fold .edit-widgets-notices__snackbar { left: 160px; } } /* Sidebar manually collapsed. */ .folded .edit-widgets-notices__snackbar { left: 0; } @media (min-width: 783px) { .folded .edit-widgets-notices__snackbar { left: 36px; } } body.is-fullscreen-mode .edit-widgets-notices__snackbar { left: 0 !important; } .edit-widgets-notices__dismissible .components-notice, .edit-widgets-notices__pinned .components-notice { box-sizing: border-box; margin: 0; border-bottom: 1px solid rgba(0, 0, 0, 0.2); padding: 0 12px; min-height: 60px; } .edit-widgets-notices__dismissible .components-notice .components-notice__dismiss, .edit-widgets-notices__pinned .components-notice .components-notice__dismiss { margin-top: 12px; } .edit-widgets-layout__inserter-panel { height: 100%; display: flex; flex-direction: column; } .edit-widgets-layout__inserter-panel .block-editor-inserter__menu { overflow: hidden; } .edit-widgets-layout__inserter-panel-header { padding-top: 8px; padding-right: 8px; display: flex; justify-content: flex-end; } @media (min-width: 782px) { .edit-widgets-layout__inserter-panel-header { display: none; } } .edit-widgets-layout__inserter-panel-content { height: calc(100% - 36px - 8px); } @media (min-width: 782px) { .edit-widgets-layout__inserter-panel-content { height: 100%; } } .edit-widgets-welcome-guide { width: 312px; } .edit-widgets-welcome-guide__image { background: #00a0d2; margin: 0 0 16px; } .edit-widgets-welcome-guide__image > img { display: block; max-width: 100%; -o-object-fit: cover; object-fit: cover; } .edit-widgets-welcome-guide__heading { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 24px; line-height: 1.4; margin: 16px 0 16px 0; padding: 0 32px; } .edit-widgets-welcome-guide__text { font-size: 13px; line-height: 1.4; margin: 0 0 24px 0; padding: 0 32px; } .edit-widgets-welcome-guide__inserter-icon { margin: 0 4px; vertical-align: text-top; } .edit-widgets-block-editor { position: relative; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; display: flex; flex-direction: column; flex-grow: 1; } .edit-widgets-block-editor > div:last-of-type, .edit-widgets-block-editor .block-editor-writing-flow, .edit-widgets-block-editor .block-editor-writing-flow > div { display: flex; flex-direction: column; flex-grow: 1; } .edit-widgets-block-editor .edit-widgets-main-block-list { height: 100%; } .edit-widgets-block-editor .components-button { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; } .edit-widgets-block-editor .components-button.is-tertiary, .edit-widgets-block-editor .components-button.has-icon { padding: 6px; } .edit-widgets-editor__list-view-panel { height: 100%; display: flex; flex-direction: column; min-width: 350px; } .edit-widgets-editor__list-view-panel-content { height: calc(100% - 36px - 8px); overflow-y: auto; padding: 8px; } .edit-widgets-editor__list-view-panel-header { align-items: center; border-bottom: 1px solid #ddd; display: flex; justify-content: space-between; height: 48px; padding-left: 16px; padding-right: 4px; } html.wp-toolbar { background: #fff; } body.appearance_page_gutenberg-widgets, body.widgets-php { background: #fff; /* We hide legacy notices in Gutenberg Based Pages, because they were not designed in a way that scaled well. Plugins can use Gutenberg notices if they need to pass on information to the user when they are editing. */ } body.appearance_page_gutenberg-widgets #wpcontent, body.widgets-php #wpcontent { padding-left: 0; } body.appearance_page_gutenberg-widgets #wpbody-content, body.widgets-php #wpbody-content { padding-bottom: 0; } body.appearance_page_gutenberg-widgets #wpbody-content > div:not(.blocks-widgets-container):not(#screen-meta), body.widgets-php #wpbody-content > div:not(.blocks-widgets-container):not(#screen-meta) { display: none; } body.appearance_page_gutenberg-widgets #wpfooter, body.widgets-php #wpfooter { display: none; } body.appearance_page_gutenberg-widgets .a11y-speak-region, body.widgets-php .a11y-speak-region { left: -1px; top: -1px; } body.appearance_page_gutenberg-widgets ul#adminmenu a.wp-has-current-submenu::after, body.appearance_page_gutenberg-widgets ul#adminmenu > li.current > a.current::after, body.widgets-php ul#adminmenu a.wp-has-current-submenu::after, body.widgets-php ul#adminmenu > li.current > a.current::after { border-right-color: #fff; } body.appearance_page_gutenberg-widgets .media-frame select.attachment-filters:last-of-type, body.widgets-php .media-frame select.attachment-filters:last-of-type { width: auto; max-width: 100%; } .blocks-widgets-container, .components-modal__frame { box-sizing: border-box; } .blocks-widgets-container *, .blocks-widgets-container *::before, .blocks-widgets-container *::after, .components-modal__frame *, .components-modal__frame *::before, .components-modal__frame *::after { box-sizing: inherit; } @media (min-width: 600px) { .blocks-widgets-container { position: absolute; top: 0; right: 0; bottom: 0; left: 0; min-height: calc(100vh - 46px); } } @media (min-width: 782px) { .blocks-widgets-container { min-height: calc(100vh - 32px); } } .blocks-widgets-container .interface-interface-skeleton__content { background-color: #f0f0f0; } .blocks-widgets-container .editor-styles-wrapper { max-width: 700px; margin: auto; } .edit-widgets-sidebar .components-button.interface-complementary-area__pin-unpin-item { display: none; } .widgets-php .notice { display: none !important; } body.admin-color-light { --wp-admin-theme-color: #0085ba; --wp-admin-theme-color--rgb: 0, 133, 186; --wp-admin-theme-color-darker-10: #0073a1; --wp-admin-theme-color-darker-10--rgb: 0, 115, 161; --wp-admin-theme-color-darker-20: #006187; --wp-admin-theme-color-darker-20--rgb: 0, 97, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-light { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-modern { --wp-admin-theme-color: #3858e9; --wp-admin-theme-color--rgb: 56, 88, 233; --wp-admin-theme-color-darker-10: #2145e6; --wp-admin-theme-color-darker-10--rgb: 33, 69, 230; --wp-admin-theme-color-darker-20: #183ad6; --wp-admin-theme-color-darker-20--rgb: 24, 58, 214; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-modern { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-blue { --wp-admin-theme-color: #096484; --wp-admin-theme-color--rgb: 9, 100, 132; --wp-admin-theme-color-darker-10: #07526c; --wp-admin-theme-color-darker-10--rgb: 7, 82, 108; --wp-admin-theme-color-darker-20: #064054; --wp-admin-theme-color-darker-20--rgb: 6, 64, 84; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-blue { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-coffee { --wp-admin-theme-color: #46403c; --wp-admin-theme-color--rgb: 70, 64, 60; --wp-admin-theme-color-darker-10: #383330; --wp-admin-theme-color-darker-10--rgb: 56, 51, 48; --wp-admin-theme-color-darker-20: #2b2724; --wp-admin-theme-color-darker-20--rgb: 43, 39, 36; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-coffee { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-ectoplasm { --wp-admin-theme-color: #523f6d; --wp-admin-theme-color--rgb: 82, 63, 109; --wp-admin-theme-color-darker-10: #46365d; --wp-admin-theme-color-darker-10--rgb: 70, 54, 93; --wp-admin-theme-color-darker-20: #3a2c4d; --wp-admin-theme-color-darker-20--rgb: 58, 44, 77; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-ectoplasm { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-midnight { --wp-admin-theme-color: #e14d43; --wp-admin-theme-color--rgb: 225, 77, 67; --wp-admin-theme-color-darker-10: #dd382d; --wp-admin-theme-color-darker-10--rgb: 221, 56, 45; --wp-admin-theme-color-darker-20: #d02c21; --wp-admin-theme-color-darker-20--rgb: 208, 44, 33; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-midnight { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-ocean { --wp-admin-theme-color: #627c83; --wp-admin-theme-color--rgb: 98, 124, 131; --wp-admin-theme-color-darker-10: #576e74; --wp-admin-theme-color-darker-10--rgb: 87, 110, 116; --wp-admin-theme-color-darker-20: #4c6066; --wp-admin-theme-color-darker-20--rgb: 76, 96, 102; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-ocean { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-sunrise { --wp-admin-theme-color: #dd823b; --wp-admin-theme-color--rgb: 221, 130, 59; --wp-admin-theme-color-darker-10: #d97426; --wp-admin-theme-color-darker-10--rgb: 217, 116, 38; --wp-admin-theme-color-darker-20: #c36922; --wp-admin-theme-color-darker-20--rgb: 195, 105, 34; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-sunrise { --wp-admin-border-width-focus: 1.5px; } }PKj l\pTT css/dist/edit-site/style.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.components-panel__header.interface-complementary-area-header__small{background:#fff;padding-right:4px}.components-panel__header.interface-complementary-area-header__small .interface-complementary-area-header__small-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}@media (min-width:782px){.components-panel__header.interface-complementary-area-header__small{display:none}}.interface-complementary-area-header{background:#fff;padding-right:4px}.interface-complementary-area-header .components-button.has-icon{display:none;margin-left:auto}.interface-complementary-area-header .components-button.has-icon~.components-button{margin-left:0}@media (min-width:782px){.interface-complementary-area-header .components-button.has-icon{display:flex}}@media (min-width:782px){.components-panel__header+.interface-complementary-area-header{margin-top:0}}.interface-complementary-area{background:#fff;color:#1e1e1e}@media (min-width:600px){.interface-complementary-area{-webkit-overflow-scrolling:touch}}@media (min-width:782px){.interface-complementary-area{width:280px}}.interface-complementary-area .components-panel{border:none;position:relative;z-index:0}.interface-complementary-area .components-panel__header{position:sticky;top:0;z-index:1}.interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs{top:48px}@media (min-width:782px){.interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs{top:0}}.interface-complementary-area p{margin-top:0}.interface-complementary-area h2{font-size:13px;color:#1e1e1e;margin-bottom:1.5em}.interface-complementary-area h3{font-size:11px;text-transform:uppercase;font-weight:500;color:#1e1e1e;margin-bottom:1.5em}.interface-complementary-area hr{border-top:none;border-bottom:1px solid #f0f0f0;margin:1.5em 0}.interface-complementary-area div.components-toolbar,.interface-complementary-area div.components-toolbar-group{box-shadow:none;margin-bottom:1.5em}.interface-complementary-area div.components-toolbar-group:last-child,.interface-complementary-area div.components-toolbar:last-child{margin-bottom:0}.interface-complementary-area .block-editor-skip-to-selected-block:focus{top:auto;right:10px;bottom:10px;left:auto}@media (min-width:782px){body.js.is-fullscreen-mode{margin-top:-32px;height:calc(100% + 32px)}body.js.is-fullscreen-mode #adminmenumain,body.js.is-fullscreen-mode #wpadminbar{display:none}body.js.is-fullscreen-mode #wpcontent,body.js.is-fullscreen-mode #wpfooter{margin-left:0}}html.interface-interface-skeleton__html-container{position:fixed;width:100%}@media (min-width:782px){html.interface-interface-skeleton__html-container{position:static;width:auto}}.interface-interface-skeleton{display:flex;flex-direction:row;height:auto;max-height:100%;position:fixed;top:46px;right:0;bottom:0}@media (min-width:783px){.interface-interface-skeleton{top:32px}.is-fullscreen-mode .interface-interface-skeleton{top:0}}.interface-interface-skeleton__editor{display:flex;flex-direction:column;flex:0 1 100%;overflow:hidden}.interface-interface-skeleton{left:0}@media (min-width:783px){.interface-interface-skeleton{left:160px}}@media (min-width:783px){.auto-fold .interface-interface-skeleton{left:36px}}@media (min-width:961px){.auto-fold .interface-interface-skeleton{left:160px}}.folded .interface-interface-skeleton{left:0}@media (min-width:783px){.folded .interface-interface-skeleton{left:36px}}body.is-fullscreen-mode .interface-interface-skeleton{left:0!important}.interface-interface-skeleton__body{flex-grow:1;display:flex;overflow:auto;overscroll-behavior-y:none}@media (min-width:782px){.has-footer .interface-interface-skeleton__body{padding-bottom:25px}}.interface-interface-skeleton__content{flex-grow:1;display:flex;flex-direction:column;overflow:auto;z-index:20}.interface-interface-skeleton__secondary-sidebar,.interface-interface-skeleton__sidebar{display:block;flex-shrink:0;position:absolute;z-index:100000;top:0;right:0;bottom:0;left:0;background:#fff;color:#1e1e1e}@media (min-width:782px){.interface-interface-skeleton__secondary-sidebar,.interface-interface-skeleton__sidebar{position:relative!important;z-index:90;width:auto}}.interface-interface-skeleton__sidebar{overflow:auto}@media (min-width:782px){.interface-interface-skeleton__sidebar{border-left:1px solid #e0e0e0}}@media (min-width:782px){.interface-interface-skeleton__secondary-sidebar{border-right:1px solid #e0e0e0}}.interface-interface-skeleton__header{flex-shrink:0;height:auto;border-bottom:1px solid #e0e0e0;z-index:30;color:#1e1e1e}.interface-interface-skeleton__footer{height:auto;flex-shrink:0;border-top:1px solid #e0e0e0;color:#1e1e1e;position:absolute;bottom:0;left:0;width:100%;background-color:#fff;z-index:90;display:none}@media (min-width:782px){.interface-interface-skeleton__footer{display:flex}}.interface-interface-skeleton__footer .block-editor-block-breadcrumb{z-index:30;display:flex;background:#fff;height:24px;align-items:center;font-size:13px;padding:0 18px}.interface-interface-skeleton__actions{z-index:100000;position:fixed!important;top:-9999em;bottom:auto;left:auto;right:0;width:280px;color:#1e1e1e}.interface-interface-skeleton__actions:focus{top:auto;bottom:0}.interface-more-menu-dropdown{margin-left:-4px}.interface-more-menu-dropdown .components-button{width:auto;padding:0 2px}@media (min-width:600px){.interface-more-menu-dropdown{margin-left:0}.interface-more-menu-dropdown .components-button{padding:0 4px}}.interface-more-menu-dropdown__content .components-popover__content{min-width:280px}@media (min-width:480px){.interface-more-menu-dropdown__content .components-popover__content{width:auto;max-width:480px}}.interface-more-menu-dropdown__content .components-popover__content .components-dropdown-menu__menu{padding:0}.components-popover.interface-more-menu-dropdown__content{z-index:99998}.interface-pinned-items{display:flex}.interface-pinned-items .components-button:not(:first-child){display:none}@media (min-width:600px){.interface-pinned-items .components-button:not(:first-child){display:flex}}.interface-pinned-items .components-button{margin-left:4px}.interface-pinned-items .components-button svg{max-width:24px;max-height:24px}.edit-site-block-editor__editor-styles-wrapper .components-button{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;padding:6px 12px}.edit-site-block-editor__editor-styles-wrapper .components-button.has-icon,.edit-site-block-editor__editor-styles-wrapper .components-button.is-tertiary{padding:6px}.edit-site-visual-editor{background-color:#2f2f2f;align-items:center}.edit-site-visual-editor.is-focus-mode{padding:48px}.edit-site-visual-editor.is-focus-mode .edit-site-visual-editor__editor-canvas{border-radius:2px}.edit-site-visual-editor.is-focus-mode .components-resizable-box__container{overflow:visible}.edit-site-visual-editor .components-resizable-box__container{margin:0 auto;overflow:auto}.edit-site-visual-editor__editor-canvas{border-radius:2px 2px 0 0}.edit-site-visual-editor__back-button{position:absolute;top:8px;left:8px;color:#fff}.edit-site-visual-editor__back-button:active:not([aria-disabled=true]),.edit-site-visual-editor__back-button:focus:not([aria-disabled=true]),.edit-site-visual-editor__back-button:hover{color:#f0f0f0}.resizable-editor__drag-handle{position:absolute;top:0;bottom:0;padding:0;margin:auto 0;width:8px;height:100px;-webkit-appearance:none;appearance:none;cursor:grab;outline:none;background:#757575;border-radius:4px;border:0}.resizable-editor__drag-handle.is-left{left:-28px}.resizable-editor__drag-handle.is-right{right:-28px}.resizable-editor__drag-handle:hover{background:#949494}.resizable-editor__drag-handle:active{cursor:grabbing;background:#949494}.resizable-editor__drag-handle:focus{box-shadow:0 0 0 1px #2f2f2f,0 0 0 calc(var(--wp-admin-border-width-focus) + 1px) var(--wp-admin-theme-color)}.edit-site-global-styles-preview{display:flex;align-items:center;justify-content:center;min-height:152px;line-height:1}.edit-site-global-styles-preview .component-color-indicator{border-radius:50%;border:0;height:36px;width:36px;margin-left:0;padding:0}.edit-site-typography-panel__preview{display:flex;align-items:center;justify-content:center;min-height:100px;margin-bottom:16px;background:#f0f0f0;border-radius:2px}.edit-site-global-styles-screen-typography{margin:16px}.edit-site-global-styles-screen-typography__indicator{height:24px;width:24px;font-size:14px;display:flex!important;align-items:center;justify-content:center;border-radius:2px}.edit-site-global-styles-screen-colors{margin:16px}.edit-site-global-styles-screen-colors .component-color-indicator{margin-left:0;display:block;border-radius:50%;height:24px;width:24px;padding:0;border:1px solid #ddd;background:linear-gradient(-45deg,transparent 48%,#ddd 0,#ddd 52%,transparent 0)}.edit-site-global-styles-header__description{padding:0 16px}.edit-site-global-styles-subtitle{margin-bottom:0!important;text-transform:uppercase;font-weight:500!important;font-size:11px!important}.edit-site-screen-color-palette-toggle.edit-site-screen-color-palette-toggle{margin-right:16px;margin-left:16px;width:unset}.edit-site-screen-color-palette-toggle.edit-site-screen-color-palette-toggle .components-toggle-group-control{min-height:32px}h2.edit-site-global-styles-gradient-palette-panel__duotone-heading.components-heading{text-transform:uppercase;line-height:24px;font-weight:500;font-size:11px;margin-bottom:8px}.edit-site-screen-background-color__control,.edit-site-screen-link-color__control,.edit-site-screen-text-color__control{padding:16px}.edit-site-header{align-items:center;background-color:#fff;display:flex;height:60px;box-sizing:border-box;width:100%;justify-content:space-between}body.is-fullscreen-mode .edit-site-header{padding-left:60px;transition:padding-left 20ms linear;transition-delay:80ms}@media (prefers-reduced-motion:reduce){body.is-fullscreen-mode .edit-site-header{transition-duration:0s;transition-delay:0s}}.edit-site-header .edit-site-header_end,.edit-site-header .edit-site-header_start{display:flex}.edit-site-header .edit-site-header_center{display:flex;align-items:center;height:100%;min-width:0}.edit-site-header .edit-site-header_end{justify-content:flex-end}body.is-navigation-sidebar-open .edit-site-header{padding-left:0;transition:padding-left 20ms linear;transition-delay:0ms}@media (prefers-reduced-motion:reduce){body.is-navigation-sidebar-open .edit-site-header{transition-duration:0s;transition-delay:0s}}@media (max-width:959px){body.is-navigation-sidebar-open .edit-site-header .edit-site-header-toolbar__inserter-toggle~.components-button,body.is-navigation-sidebar-open .edit-site-header .edit-site-header_end .components-button:not(.is-primary){display:none}body.is-navigation-sidebar-open .edit-site-header .edit-site-save-button__button{margin-right:0}}.edit-site-header__toolbar{display:flex;align-items:center;padding-left:8px}@media (min-width:600px){.edit-site-header__toolbar{padding-left:24px}}@media (min-width:1280px){.edit-site-header__toolbar{padding-right:8px}}.edit-site-header__toolbar .edit-site-header-toolbar__inserter-toggle{margin-right:8px;min-width:32px;width:32px;height:32px;padding:0}.edit-site-header__toolbar .edit-site-header-toolbar__inserter-toggle svg{transition:transform .2s cubic-bezier(.165,.84,.44,1)}@media (prefers-reduced-motion:reduce){.edit-site-header__toolbar .edit-site-header-toolbar__inserter-toggle svg{transition-duration:0s;transition-delay:0s}}.edit-site-header__toolbar .edit-site-header-toolbar__inserter-toggle.is-pressed svg{transform:rotate(45deg)}.edit-site-header__toolbar-switchers{align-items:center;display:flex}.edit-site-header__toolbar-switchers-separator{margin:0 -6px}.edit-site-header__actions{display:inline-flex;align-items:center;flex-wrap:wrap;padding-right:4px}.edit-site-header__actions .interface-pinned-items{display:none}@media (min-width:782px){.edit-site-header__actions .interface-pinned-items{display:inline-flex}}.edit-site-header__actions .components-button.components-button,.edit-site-header__actions .editor-post-saved-state{margin-right:4px}@media (min-width:600px){.edit-site-header__actions .components-button.components-button,.edit-site-header__actions .editor-post-saved-state{margin-right:12px}}.edit-site-header__actions .components-button.is-tertiary,.edit-site-header__actions .editor-post-saved-state{padding:0 6px}.edit-site-header__actions .edit-site-more-menu .components-button,.edit-site-header__actions .interface-pinned-items .components-button{margin-right:0}@media (min-width:600px){.edit-site-header__actions{padding-right:16px}}.edit-site-header__actions-more-menu{margin-left:-4px}.edit-site-header__actions-more-menu .components-icon-button{padding:8px 2px;width:auto}@media (min-width:600px){.edit-site-header__actions-more-menu{margin-left:4px}.edit-site-header__actions-more-menu .components-icon-button{padding:8px 4px}}.edit-site-document-actions{display:flex;flex-direction:column;justify-content:center;height:100%;min-width:0}.edit-site-document-actions .edit-site-document-actions__title-wrapper{display:flex;flex-direction:row;justify-content:center;align-items:center;min-width:0}.edit-site-document-actions .edit-site-document-actions__title-wrapper .components-dropdown{display:inline-flex;margin-left:4px}.edit-site-document-actions .edit-site-document-actions__title-wrapper .components-dropdown .components-button{min-width:0;padding:0}.edit-site-document-actions .edit-site-document-actions__title-wrapper>h1{margin:0;min-width:0}.edit-site-document-actions .edit-site-document-actions__title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}@media (min-width:782px){.edit-site-document-actions .edit-site-document-actions__title{max-width:75px}}@media (min-width:1080px){.edit-site-document-actions .edit-site-document-actions__title{max-width:180px}}.edit-site-document-actions .edit-site-document-actions__secondary-item{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:0;opacity:0;padding:0;transition:all .2s ease;background:#e0e0e0;border-radius:2px}@media (prefers-reduced-motion:reduce){.edit-site-document-actions .edit-site-document-actions__secondary-item{transition-duration:0s;transition-delay:0s}}.edit-site-document-actions.has-secondary-label .edit-site-document-actions__secondary-item{opacity:1;padding:0 4px;max-width:180px;margin-left:6px}.edit-site-document-actions__info-dropdown>.components-popover__content>div{padding:0;min-width:240px}.edit-site-more-menu{margin-left:-4px}.edit-site-more-menu .components-button{width:auto;padding:0 2px}@media (min-width:600px){.edit-site-more-menu{margin-left:4px}.edit-site-more-menu .components-button{padding:0 4px}}.edit-site-more-menu__content .components-popover__content{min-width:260px}.edit-site-more-menu__content .components-popover__content .components-dropdown-menu__menu{padding:0}.components-popover.edit-site-more-menu__content{z-index:99998}.edit-site-navigation-toggle{align-items:center;background:#1e1e1e;border-radius:0;display:flex;position:absolute;z-index:31;height:60px;width:60px}.edit-site-navigation-toggle__button{align-items:center;background:#1e1e1e;border-radius:0;color:#fff;height:61px;width:60px;z-index:1;margin-bottom:-1px}.edit-site-navigation-toggle__button.has-icon{min-width:60px}.edit-site-navigation-toggle__button.has-icon:active,.edit-site-navigation-toggle__button.has-icon:hover{color:#fff}.edit-site-navigation-toggle__button.has-icon:focus{box-shadow:none}.edit-site-navigation-toggle__button.has-icon:before{transition:box-shadow .1s ease;content:"";display:block;position:absolute;top:9px;right:9px;bottom:9px;left:9px;border-radius:4px;box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) #1e1e1e}@media (prefers-reduced-motion:reduce){.edit-site-navigation-toggle__button.has-icon:before{transition-duration:0s;transition-delay:0s}}.edit-site-navigation-toggle__button.has-icon:hover:before{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) #757575}.edit-site-navigation-toggle__button.has-icon:focus:before{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) hsla(0,0%,100%,.1),inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.edit-site-navigation-toggle__button .edit-site-navigation-toggle__site-icon{width:36px;height:36px;border-radius:2px;-o-object-fit:cover;object-fit:cover;margin-top:-1px}.edit-site-navigation-panel{height:100%;position:relative;width:0;overflow:hidden;background:#1e1e1e;color:#fff;transition:width .1s linear}@media (prefers-reduced-motion:reduce){.edit-site-navigation-panel{transition-duration:0s;transition-delay:0s}}@media (min-width:782px){.interface-interface-skeleton.has-footer .edit-site-navigation-panel{height:calc(100% - 25px)}}.edit-site-navigation-panel__inner{position:relative;width:300px;height:100%;overflow:hidden;visibility:hidden;transition:visibility .1s linear}@media (prefers-reduced-motion:reduce){.edit-site-navigation-panel__inner{transition-duration:0s;transition-delay:0s}}.edit-site-navigation-panel.is-open{width:300px}.edit-site-navigation-panel.is-open .edit-site-navigation-panel__inner{visibility:visible}.edit-site-navigation-panel__site-title-container{height:60px;padding-left:60px;margin:0 16px 0 8px;display:flex;align-items:center}.edit-site-navigation-panel__site-title{font-style:normal;font-weight:600;font-size:14px;line-height:20px;color:#ddd;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.edit-site-navigation-panel__scroll-container{overflow-x:hidden;overflow-y:auto;height:calc(100% - 60px)}.edit-site-navigation-panel__back-to-dashboard.components-button.is-tertiary{height:36px;margin-top:24px;padding:8px 16px 8px 8px}.edit-site-navigation-panel__back-to-dashboard.components-button.is-tertiary:focus:not(:disabled){border-bottom-color:transparent}.edit-site-navigation-panel__preview{display:none;border:1px solid #ccc;width:300px;padding:16px;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.05);border-radius:2px;position:absolute;top:73px;left:312px;color:#1e1e1e;z-index:32}@media (min-width:782px){.edit-site-navigation-panel__preview{display:block}}.edit-site-navigation-panel__template-item{display:block}.edit-site-navigation-panel__template-item .components-button{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;height:auto;min-height:36px;text-align:left;padding-left:16px;padding-right:16px;color:inherit}.edit-site-navigation-panel__template-item-title{font-size:14px;line-height:20px}.edit-site-navigation-panel__template-item-title em{margin-right:1ch}.edit-site-navigation-panel__template-part-item .components-navigation__item-title,.edit-site-navigation-panel__template-parts .components-navigation__menu-title-heading{text-transform:capitalize}.components-navigation__item+.edit-site-navigation-panel__template-item{margin-top:16px}.edit-site-navigation-panel__template-item+.edit-site-navigation-panel__template-item{margin-top:8px}.edit-site-navigation-panel__info-wrapper{padding:4px 0}.edit-site-navigation-panel__template-item-description{padding-top:8px;font-size:12px;line-height:16px}.edit-site-navigation-panel__new-template-dropdown{margin:0 0 0 12px}.edit-site-navigation-panel__new-template-dropdown button{margin:0}@media (min-width:600px){.edit-site-navigation-panel__new-template-popover{min-width:300px}}.edit-site-list-header{position:relative;align-items:center;background-color:#fff;display:flex;height:60px;box-sizing:border-box;width:100%;justify-content:flex-end;padding-right:16px}body.is-fullscreen-mode .edit-site-list-header{padding-left:60px;transition:padding-left 20ms linear;transition-delay:80ms}@media (prefers-reduced-motion:reduce){body.is-fullscreen-mode .edit-site-list-header{transition-duration:0s;transition-delay:0s}}.edit-site-list-header .edit-site-list-header__title{position:absolute;left:0;width:100%;text-align:center;font-size:20px;padding:0;margin:0}.edit-site-list-header__right{position:relative}.edit-site .edit-site-list .interface-interface-skeleton__editor{min-width:100%}@media (min-width:782px){.edit-site .edit-site-list .interface-interface-skeleton__editor{min-width:0}}.edit-site .edit-site-list .interface-interface-skeleton__content{background:#fff;align-items:center;padding:16px}@media (min-width:782px){.edit-site .edit-site-list .interface-interface-skeleton__content{padding:72px}}.edit-site-list-table{width:100%;border:1px solid #ddd;border-radius:2px;margin:0;overflow:hidden;border-spacing:0;max-width:960px}.edit-site-list-table tr{display:flex;align-items:center;padding:16px;box-sizing:border-box;border-top:1px solid #f0f0f0;margin:0}.edit-site-list-table tr:first-child{border-top:0}@media (min-width:782px){.edit-site-list-table tr{padding:24px 32px}}.edit-site-list-table tr .edit-site-list-table-column:first-child{width:calc(60% - 18px);padding-right:24px}.edit-site-list-table tr .edit-site-list-table-column:first-child a{display:inline-block;text-decoration:none;font-weight:500;margin-bottom:4px}.edit-site-list-table tr .edit-site-list-table-column:nth-child(2){width:calc(40% - 18px)}.edit-site-list-table tr .edit-site-list-table-column:nth-child(3){min-width:36px;flex-shrink:0}.edit-site-list-table tr.edit-site-list-table-head{font-size:16px;font-weight:600;text-align:left;color:#1e1e1e;border-top:none;border-bottom:1px solid #ddd}.edit-site-list-table tr.edit-site-list-table-head th{font-weight:inherit}@media (min-width:782px){.edit-site-list.is-navigation-open .components-snackbar-list{margin-left:300px}}@media (min-width:782px){.edit-site-list__rename-modal .components-base-control{width:320px}}.edit-site-list__rename-modal .components-modal__header{border-bottom:none}.edit-site-list__rename-modal .components-modal__content:before{margin-bottom:4px}.edit-site-list__rename-modal-actions{margin-top:12px}.edit-site-template__actions button:not(:last-child){margin-right:8px}.edit-site-list-added-by__icon{display:flex;flex-shrink:0;position:relative;align-items:center;justify-content:center;width:32px;height:32px;background:#2f2f2f;border-radius:100%}.edit-site-list-added-by__icon svg{fill:#fff}.edit-site-list-added-by__icon.is-customized:after{position:absolute;content:"";background:var(--wp-admin-theme-color);height:8px;width:8px;outline:2px solid #fff;border-radius:100%;top:-1px;right:-1px}.edit-site-list-added-by__avatar{flex-shrink:0;overflow:hidden;border-radius:100%;background:#2f2f2f;width:32px;height:32px}.edit-site-list-added-by__avatar img{width:32px;height:32px;-o-object-fit:cover;object-fit:cover;opacity:0;transition:opacity .1s linear}@media (prefers-reduced-motion:reduce){.edit-site-list-added-by__avatar img{transition-duration:0s;transition-delay:0s}}.edit-site-list-added-by__avatar.is-loaded img{opacity:1}.edit-site-new-template-dropdown .components-dropdown-menu__toggle{padding:6px 12px}@media (min-width:600px){.edit-site-new-template-dropdown .edit-site-new-template-dropdown__popover{min-width:300px}}.edit-site-sidebar{width:280px}.edit-site-sidebar>.components-panel{border-left:0;border-right:0;margin-bottom:-1px;margin-top:-1px}.edit-site-sidebar>.components-panel>.components-panel__header{background:#f0f0f0}.edit-site-sidebar .block-editor-block-inspector__card{margin:0}.edit-site-global-styles-sidebar .interface-complementary-area-header .components-button.has-icon{margin-left:0}.edit-site-global-styles-sidebar__reset-button.components-button{margin-left:auto}.edit-site-global-styles-sidebar__border-controls-row{display:flex;justify-content:space-between;margin-bottom:12px}.edit-site-global-styles-sidebar__border-controls-row>*{width:calc(50% - 8px)}.edit-site-global-styles-sidebar__border-controls-row .components-border-style-control__buttons{margin-bottom:0}.edit-site-global-styles-sidebar .components-navigation__menu-title-heading{font-size:15.6px;font-weight:500}.edit-site-global-styles-sidebar .components-navigation__item>button span{font-weight:500}.edit-site-global-styles-sidebar .block-editor-panel-color-gradient-settings,.edit-site-typography-panel{border:0}.edit-site-global-styles-sidebar__blocks-group{padding-top:24px;border-top:1px solid #e0e0e0}.edit-site-global-styles-sidebar__blocks-group-help{padding:0 16px}.edit-site-global-styles-color-palette-panel,.edit-site-global-styles-gradient-palette-panel{padding:16px}.edit-site-global-styles-sidebar__beta{display:inline-flex;margin-left:8px;padding:0 8px;height:24px;border-radius:2px;background-color:#000;color:#fff;align-items:center;font-size:12px;line-height:1}.components-panel__header.edit-site-sidebar__panel-tabs{justify-content:flex-start;padding-left:0;padding-right:16px;border-top:0;margin-top:0}.components-panel__header.edit-site-sidebar__panel-tabs ul{display:flex}.components-panel__header.edit-site-sidebar__panel-tabs li{margin:0}.components-panel__header.edit-site-sidebar__panel-tabs .components-button.has-icon{display:none;margin:0 0 0 auto;padding:0;min-width:24px;height:24px}@media (min-width:782px){.components-panel__header.edit-site-sidebar__panel-tabs .components-button.has-icon{display:flex}}.components-button.edit-site-sidebar__panel-tab{border-radius:0;height:48px;background:transparent;border:none;box-shadow:none;cursor:pointer;display:inline-block;padding:3px 15px;margin-left:0;font-weight:500}.components-button.edit-site-sidebar__panel-tab:after{content:attr(data-label);display:block;font-weight:600;height:0;overflow:hidden;speak:none;visibility:hidden}.components-button.edit-site-sidebar__panel-tab.is-active{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) transparent,inset 0 -4px 0 0 var(--wp-admin-theme-color);position:relative;z-index:1}.components-button.edit-site-sidebar__panel-tab.is-active:before{content:"";position:absolute;top:0;bottom:1px;right:0;left:0;border-bottom:4px solid transparent}.components-button.edit-site-sidebar__panel-tab:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);position:relative;z-index:1}.components-button.edit-site-sidebar__panel-tab.is-active:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 -4px 0 0 var(--wp-admin-theme-color)}.edit-site-template-card{display:flex;align-items:flex-start}.edit-site-template-card__content{flex-grow:1;margin-bottom:4px}.edit-site-template-card__title{font-weight:500;line-height:24px}.edit-site-template-card__title.edit-site-template-card__title{margin:0 0 4px}.edit-site-template-card__description{font-size:13px;margin:0 0 16px}.edit-site-template-card__icon{flex:0 0 24px;margin-right:12px;width:24px;height:24px}h3.edit-site-template-card__template-areas-title{font-weight:500;margin:0 0 8px}.edit-site-template-card__template-areas-list,.edit-site-template-card__template-areas-list>li{margin:0}.edit-site-template-card__template-areas-item{width:100%}.edit-site-template-card__template-areas-item.components-button.has-icon{padding:0}html #wpadminbar{display:none}html.wp-toolbar{padding-top:0}.edit-site-editor__toggle-save-panel{z-index:100000;position:fixed!important;top:-9999em;bottom:auto;left:auto;right:0;width:280px;background-color:#fff;border:1px dotted #ddd;height:auto!important;padding:24px;display:flex;justify-content:center}.interface-interface-skeleton__actions:focus-within .edit-site-editor__toggle-save-panel,.interface-interface-skeleton__actions:focus .edit-site-editor__toggle-save-panel{top:auto;bottom:0}.edit-site-visual-editor{position:relative;height:100%;display:block}.edit-site-visual-editor iframe{display:block;width:100%;height:100%;background-color:#fff}.edit-site .components-editor-notices__snackbar{position:fixed;right:0;bottom:40px;padding-left:16px;padding-right:16px;left:0}@media (min-width:783px){.edit-site .components-editor-notices__snackbar{left:160px}}@media (min-width:783px){.auto-fold .edit-site .components-editor-notices__snackbar{left:36px}}@media (min-width:961px){.auto-fold .edit-site .components-editor-notices__snackbar{left:160px}}.folded .edit-site .components-editor-notices__snackbar{left:0}@media (min-width:783px){.folded .edit-site .components-editor-notices__snackbar{left:36px}}body.is-fullscreen-mode .edit-site .components-editor-notices__snackbar{left:0!important}.edit-site-template-details .edit-site-template-details__group{margin:0;padding:16px}.edit-site-template-details .edit-site-template-details__group+.edit-site-template-details__group{border-top:1px solid #ccc}.edit-site-template-details .edit-site-template-details__title{margin:0}.edit-site-template-details .edit-site-template-details__description{margin:12px 0 0;color:#757575}.edit-site-template-details .edit-site-template-details__group.edit-site-template-details__template-areas{padding:8px}.edit-site-template-details .edit-site-template-details__template-areas-item{position:relative}.edit-site-template-details .edit-site-template-details__template-areas-item .edit-site-template-details__template-areas-item-more{position:absolute;right:0;top:0;bottom:0;margin:auto 0}.edit-site-template-details .edit-site-template-details__revert{padding:12px 8px}.edit-site-template-details .edit-site-template-details__revert-button{height:auto;padding:4px 8px;text-align:left}.edit-site-template-details .edit-site-template-details__revert-button:focus:not(:disabled){box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 0 0 3px #fff}.edit-site-template-details .edit-site-template-details__show-all-button.components-button{display:flex;justify-content:center;background:#1e1e1e;color:#fff;width:100%;height:44px;border-radius:0}.edit-site-template-details .edit-site-template-details__show-all-button.components-button:hover{color:#fff}.edit-site-template-details .edit-site-template-details__show-all-button.components-button:active{color:#ccc}.edit-site-template-details .edit-site-template-details__show-all-button.components-button:focus:not(:disabled){box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 0 0 3px #fff}.edit-site-create-template-part-modal{z-index:1000001}@media (min-width:600px){.edit-site-create-template-part-modal .components-modal__frame{max-width:500px}}.edit-site-create-template-part-modal__modal-actions{padding-top:12px}.edit-site-create-template-part-modal__area-base-control .components-base-control__label{margin:16px 0 8px;cursor:auto}.edit-site-create-template-part-modal__area-radio-group{width:100%;border:1px solid #757575;border-radius:2px}.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio{display:block;width:100%;height:100%;text-align:left;padding:12px}.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio,.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-primary:hover,.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-secondary:hover{margin:0;background-color:inherit;border-bottom:1px solid #757575;border-radius:0}.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-primary:hover:not(:focus),.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-secondary:hover:not(:focus),.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio:not(:focus){box-shadow:none}.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-primary:hover:focus,.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-secondary:hover:focus,.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio:focus{border-bottom:1px solid #fff}.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-primary:hover:last-of-type,.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-secondary:hover:last-of-type,.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio:last-of-type{border-bottom:none}.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio:not(:hover),.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio[aria-checked=true]{color:#1e1e1e;cursor:auto}.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio:not(:hover) .edit-site-create-template-part-modal__option-label div,.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio[aria-checked=true] .edit-site-create-template-part-modal__option-label div{color:#949494}.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio .edit-site-create-template-part-modal__option-label{padding-top:4px;white-space:normal}.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio .edit-site-create-template-part-modal__option-label div{padding-top:4px;font-size:12px}.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio .edit-site-create-template-part-modal__checkbox{margin-left:auto;min-width:24px}.edit-site-editor__inserter-panel,.edit-site-editor__list-view-panel{height:100%;display:flex;flex-direction:column}.edit-site-editor__list-view-panel{min-width:350px}.edit-site-editor__inserter-panel-header{padding-top:8px;padding-right:8px;display:flex;justify-content:flex-end}@media (min-width:782px){.edit-site-editor__inserter-panel-header{display:none}}.edit-site-editor__inserter-panel-content,.edit-site-editor__list-view-panel-content{height:calc(100% - 44px)}@media (min-width:782px){.edit-site-editor__inserter-panel-content{height:100%}}.edit-site-editor__list-view-panel-header{align-items:center;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;height:48px;padding-left:16px;padding-right:4px}.edit-site-editor__list-view-panel-content{overflow-y:auto;padding:8px}.edit-site-welcome-guide{width:312px}.edit-site-welcome-guide__image{background:#00a0d2;margin:0 0 16px}.edit-site-welcome-guide__image>img{display:block;max-width:100%;-o-object-fit:cover;object-fit:cover}.edit-site-welcome-guide__heading{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:24px;line-height:1.4;margin:16px 0;padding:0 32px}.edit-site-welcome-guide__text{font-size:13px;line-height:1.4;margin:0 0 16px;padding:0 32px}.edit-site-welcome-guide__text img{vertical-align:bottom}.edit-site-welcome-guide__inserter-icon{margin:0 4px;vertical-align:text-top}.edit-site-keyboard-shortcut-help-modal__section{margin:0 0 2rem}.edit-site-keyboard-shortcut-help-modal__main-shortcuts .edit-site-keyboard-shortcut-help-modal__shortcut-list{margin-top:-25px}.edit-site-keyboard-shortcut-help-modal__section-title{font-size:.9rem;font-weight:600}.edit-site-keyboard-shortcut-help-modal__shortcut{display:flex;align-items:baseline;padding:.6rem 0;border-top:1px solid #ddd;margin-bottom:0}.edit-site-keyboard-shortcut-help-modal__shortcut:last-child{border-bottom:1px solid #ddd}.edit-site-keyboard-shortcut-help-modal__shortcut:empty{display:none}.edit-site-keyboard-shortcut-help-modal__shortcut-term{font-weight:600;margin:0 0 0 1rem;text-align:right}.edit-site-keyboard-shortcut-help-modal__shortcut-description{flex:1;margin:0;flex-basis:auto}.edit-site-keyboard-shortcut-help-modal__shortcut-key-combination{display:block;background:none;margin:0;padding:0}.edit-site-keyboard-shortcut-help-modal__shortcut-key-combination+.edit-site-keyboard-shortcut-help-modal__shortcut-key-combination{margin-top:10px}.edit-site-keyboard-shortcut-help-modal__shortcut-key{padding:.25rem .5rem;border-radius:8%;margin:0 .2rem}.edit-site-keyboard-shortcut-help-modal__shortcut-key:last-child{margin:0 0 0 .2rem}body.appearance_page_gutenberg-edit-site,body.site-editor-php,html.wp-toolbar{background:#fff}body.appearance_page_gutenberg-edit-site #wpcontent,body.site-editor-php #wpcontent{padding-left:0}body.appearance_page_gutenberg-edit-site #wpbody-content,body.site-editor-php #wpbody-content{padding-bottom:0}body.appearance_page_gutenberg-edit-site #wpbody-content>div:not(.edit-site):not(#screen-meta),body.appearance_page_gutenberg-edit-site #wpfooter,body.site-editor-php #wpbody-content>div:not(.edit-site):not(#screen-meta),body.site-editor-php #wpfooter{display:none}body.appearance_page_gutenberg-edit-site .a11y-speak-region,body.site-editor-php .a11y-speak-region{left:-1px;top:-1px}body.appearance_page_gutenberg-edit-site ul#adminmenu>li.current>a.current:after,body.appearance_page_gutenberg-edit-site ul#adminmenu a.wp-has-current-submenu:after,body.site-editor-php ul#adminmenu>li.current>a.current:after,body.site-editor-php ul#adminmenu a.wp-has-current-submenu:after{border-right-color:#fff}body.appearance_page_gutenberg-edit-site .media-frame select.attachment-filters:last-of-type,body.site-editor-php .media-frame select.attachment-filters:last-of-type{width:auto;max-width:100%}.components-modal__frame,.edit-site{box-sizing:border-box}.components-modal__frame *,.components-modal__frame :after,.components-modal__frame :before,.edit-site *,.edit-site :after,.edit-site :before{box-sizing:inherit}@media (min-width:600px){.edit-site{bottom:0;left:0;min-height:100vh;position:absolute;right:0;top:0}}.edit-site .interface-interface-skeleton{top:0}.edit-site .interface-complementary-area__pin-unpin-item.components-button{display:none}.edit-site .interface-interface-skeleton__content{background-color:#2f2f2f}@keyframes edit-post__fade-in-animation{0%{opacity:0}to{opacity:1}}body.admin-color-light{--wp-admin-theme-color:#0085ba;--wp-admin-theme-color--rgb:0,133,186;--wp-admin-theme-color-darker-10:#0073a1;--wp-admin-theme-color-darker-10--rgb:0,115,161;--wp-admin-theme-color-darker-20:#006187;--wp-admin-theme-color-darker-20--rgb:0,97,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-light{--wp-admin-border-width-focus:1.5px}}body.admin-color-modern{--wp-admin-theme-color:#3858e9;--wp-admin-theme-color--rgb:56,88,233;--wp-admin-theme-color-darker-10:#2145e6;--wp-admin-theme-color-darker-10--rgb:33,69,230;--wp-admin-theme-color-darker-20:#183ad6;--wp-admin-theme-color-darker-20--rgb:24,58,214;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-modern{--wp-admin-border-width-focus:1.5px}}body.admin-color-blue{--wp-admin-theme-color:#096484;--wp-admin-theme-color--rgb:9,100,132;--wp-admin-theme-color-darker-10:#07526c;--wp-admin-theme-color-darker-10--rgb:7,82,108;--wp-admin-theme-color-darker-20:#064054;--wp-admin-theme-color-darker-20--rgb:6,64,84;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-blue{--wp-admin-border-width-focus:1.5px}}body.admin-color-coffee{--wp-admin-theme-color:#46403c;--wp-admin-theme-color--rgb:70,64,60;--wp-admin-theme-color-darker-10:#383330;--wp-admin-theme-color-darker-10--rgb:56,51,48;--wp-admin-theme-color-darker-20:#2b2724;--wp-admin-theme-color-darker-20--rgb:43,39,36;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-coffee{--wp-admin-border-width-focus:1.5px}}body.admin-color-ectoplasm{--wp-admin-theme-color:#523f6d;--wp-admin-theme-color--rgb:82,63,109;--wp-admin-theme-color-darker-10:#46365d;--wp-admin-theme-color-darker-10--rgb:70,54,93;--wp-admin-theme-color-darker-20:#3a2c4d;--wp-admin-theme-color-darker-20--rgb:58,44,77;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-ectoplasm{--wp-admin-border-width-focus:1.5px}}body.admin-color-midnight{--wp-admin-theme-color:#e14d43;--wp-admin-theme-color--rgb:225,77,67;--wp-admin-theme-color-darker-10:#dd382d;--wp-admin-theme-color-darker-10--rgb:221,56,45;--wp-admin-theme-color-darker-20:#d02c21;--wp-admin-theme-color-darker-20--rgb:208,44,33;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-midnight{--wp-admin-border-width-focus:1.5px}}body.admin-color-ocean{--wp-admin-theme-color:#627c83;--wp-admin-theme-color--rgb:98,124,131;--wp-admin-theme-color-darker-10:#576e74;--wp-admin-theme-color-darker-10--rgb:87,110,116;--wp-admin-theme-color-darker-20:#4c6066;--wp-admin-theme-color-darker-20--rgb:76,96,102;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-ocean{--wp-admin-border-width-focus:1.5px}}body.admin-color-sunrise{--wp-admin-theme-color:#dd823b;--wp-admin-theme-color--rgb:221,130,59;--wp-admin-theme-color-darker-10:#d97426;--wp-admin-theme-color-darker-10--rgb:217,116,38;--wp-admin-theme-color-darker-20:#c36922;--wp-admin-theme-color-darker-20--rgb:195,105,34;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-sunrise{--wp-admin-border-width-focus:1.5px}}PKj l\뗲ss$css/dist/edit-site/style-rtl.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.components-panel__header.interface-complementary-area-header__small{background:#fff;padding-left:4px}.components-panel__header.interface-complementary-area-header__small .interface-complementary-area-header__small-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}@media (min-width:782px){.components-panel__header.interface-complementary-area-header__small{display:none}}.interface-complementary-area-header{background:#fff;padding-left:4px}.interface-complementary-area-header .components-button.has-icon{display:none;margin-right:auto}.interface-complementary-area-header .components-button.has-icon~.components-button{margin-right:0}@media (min-width:782px){.interface-complementary-area-header .components-button.has-icon{display:flex}}@media (min-width:782px){.components-panel__header+.interface-complementary-area-header{margin-top:0}}.interface-complementary-area{background:#fff;color:#1e1e1e}@media (min-width:600px){.interface-complementary-area{-webkit-overflow-scrolling:touch}}@media (min-width:782px){.interface-complementary-area{width:280px}}.interface-complementary-area .components-panel{border:none;position:relative;z-index:0}.interface-complementary-area .components-panel__header{position:sticky;top:0;z-index:1}.interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs{top:48px}@media (min-width:782px){.interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs{top:0}}.interface-complementary-area p{margin-top:0}.interface-complementary-area h2{font-size:13px;color:#1e1e1e;margin-bottom:1.5em}.interface-complementary-area h3{font-size:11px;text-transform:uppercase;font-weight:500;color:#1e1e1e;margin-bottom:1.5em}.interface-complementary-area hr{border-top:none;border-bottom:1px solid #f0f0f0;margin:1.5em 0}.interface-complementary-area div.components-toolbar,.interface-complementary-area div.components-toolbar-group{box-shadow:none;margin-bottom:1.5em}.interface-complementary-area div.components-toolbar-group:last-child,.interface-complementary-area div.components-toolbar:last-child{margin-bottom:0}.interface-complementary-area .block-editor-skip-to-selected-block:focus{top:auto;left:10px;bottom:10px;right:auto}@media (min-width:782px){body.js.is-fullscreen-mode{margin-top:-32px;height:calc(100% + 32px)}body.js.is-fullscreen-mode #adminmenumain,body.js.is-fullscreen-mode #wpadminbar{display:none}body.js.is-fullscreen-mode #wpcontent,body.js.is-fullscreen-mode #wpfooter{margin-right:0}}html.interface-interface-skeleton__html-container{position:fixed;width:100%}@media (min-width:782px){html.interface-interface-skeleton__html-container{position:static;width:auto}}.interface-interface-skeleton{display:flex;flex-direction:row;height:auto;max-height:100%;position:fixed;top:46px;left:0;bottom:0}@media (min-width:783px){.interface-interface-skeleton{top:32px}.is-fullscreen-mode .interface-interface-skeleton{top:0}}.interface-interface-skeleton__editor{display:flex;flex-direction:column;flex:0 1 100%;overflow:hidden}.interface-interface-skeleton{right:0}@media (min-width:783px){.interface-interface-skeleton{right:160px}}@media (min-width:783px){.auto-fold .interface-interface-skeleton{right:36px}}@media (min-width:961px){.auto-fold .interface-interface-skeleton{right:160px}}.folded .interface-interface-skeleton{right:0}@media (min-width:783px){.folded .interface-interface-skeleton{right:36px}}body.is-fullscreen-mode .interface-interface-skeleton{right:0!important}.interface-interface-skeleton__body{flex-grow:1;display:flex;overflow:auto;overscroll-behavior-y:none}@media (min-width:782px){.has-footer .interface-interface-skeleton__body{padding-bottom:25px}}.interface-interface-skeleton__content{flex-grow:1;display:flex;flex-direction:column;overflow:auto;z-index:20}.interface-interface-skeleton__secondary-sidebar,.interface-interface-skeleton__sidebar{display:block;flex-shrink:0;position:absolute;z-index:100000;top:0;left:0;bottom:0;right:0;background:#fff;color:#1e1e1e}@media (min-width:782px){.interface-interface-skeleton__secondary-sidebar,.interface-interface-skeleton__sidebar{position:relative!important;z-index:90;width:auto}}.interface-interface-skeleton__sidebar{overflow:auto}@media (min-width:782px){.interface-interface-skeleton__sidebar{border-right:1px solid #e0e0e0}}@media (min-width:782px){.interface-interface-skeleton__secondary-sidebar{border-left:1px solid #e0e0e0}}.interface-interface-skeleton__header{flex-shrink:0;height:auto;border-bottom:1px solid #e0e0e0;z-index:30;color:#1e1e1e}.interface-interface-skeleton__footer{height:auto;flex-shrink:0;border-top:1px solid #e0e0e0;color:#1e1e1e;position:absolute;bottom:0;right:0;width:100%;background-color:#fff;z-index:90;display:none}@media (min-width:782px){.interface-interface-skeleton__footer{display:flex}}.interface-interface-skeleton__footer .block-editor-block-breadcrumb{z-index:30;display:flex;background:#fff;height:24px;align-items:center;font-size:13px;padding:0 18px}.interface-interface-skeleton__actions{z-index:100000;position:fixed!important;top:-9999em;bottom:auto;right:auto;left:0;width:280px;color:#1e1e1e}.interface-interface-skeleton__actions:focus{top:auto;bottom:0}.interface-more-menu-dropdown{margin-right:-4px}.interface-more-menu-dropdown .components-button{width:auto;padding:0 2px}@media (min-width:600px){.interface-more-menu-dropdown{margin-right:0}.interface-more-menu-dropdown .components-button{padding:0 4px}}.interface-more-menu-dropdown__content .components-popover__content{min-width:280px}@media (min-width:480px){.interface-more-menu-dropdown__content .components-popover__content{width:auto;max-width:480px}}.interface-more-menu-dropdown__content .components-popover__content .components-dropdown-menu__menu{padding:0}.components-popover.interface-more-menu-dropdown__content{z-index:99998}.interface-pinned-items{display:flex}.interface-pinned-items .components-button:not(:first-child){display:none}@media (min-width:600px){.interface-pinned-items .components-button:not(:first-child){display:flex}}.interface-pinned-items .components-button{margin-right:4px}.interface-pinned-items .components-button svg{max-width:24px;max-height:24px}.edit-site-block-editor__editor-styles-wrapper .components-button{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;padding:6px 12px}.edit-site-block-editor__editor-styles-wrapper .components-button.has-icon,.edit-site-block-editor__editor-styles-wrapper .components-button.is-tertiary{padding:6px}.edit-site-visual-editor{background-color:#2f2f2f;align-items:center}.edit-site-visual-editor.is-focus-mode{padding:48px}.edit-site-visual-editor.is-focus-mode .edit-site-visual-editor__editor-canvas{border-radius:2px}.edit-site-visual-editor.is-focus-mode .components-resizable-box__container{overflow:visible}.edit-site-visual-editor .components-resizable-box__container{margin:0 auto;overflow:auto}.edit-site-visual-editor__editor-canvas{border-radius:2px 2px 0 0}.edit-site-visual-editor__back-button{position:absolute;top:8px;right:8px;color:#fff}.edit-site-visual-editor__back-button:active:not([aria-disabled=true]),.edit-site-visual-editor__back-button:focus:not([aria-disabled=true]),.edit-site-visual-editor__back-button:hover{color:#f0f0f0}.resizable-editor__drag-handle{position:absolute;top:0;bottom:0;padding:0;margin:auto 0;width:8px;height:100px;-webkit-appearance:none;appearance:none;cursor:grab;outline:none;background:#757575;border-radius:4px;border:0}.resizable-editor__drag-handle.is-left{right:-28px}.resizable-editor__drag-handle.is-right{left:-28px}.resizable-editor__drag-handle:hover{background:#949494}.resizable-editor__drag-handle:active{cursor:grabbing;background:#949494}.resizable-editor__drag-handle:focus{box-shadow:0 0 0 1px #2f2f2f,0 0 0 calc(var(--wp-admin-border-width-focus) + 1px) var(--wp-admin-theme-color)}.edit-site-global-styles-preview{display:flex;align-items:center;justify-content:center;min-height:152px;line-height:1}.edit-site-global-styles-preview .component-color-indicator{border-radius:50%;border:0;height:36px;width:36px;margin-right:0;padding:0}.edit-site-typography-panel__preview{display:flex;align-items:center;justify-content:center;min-height:100px;margin-bottom:16px;background:#f0f0f0;border-radius:2px}.edit-site-global-styles-screen-typography{margin:16px}.edit-site-global-styles-screen-typography__indicator{height:24px;width:24px;font-size:14px;display:flex!important;align-items:center;justify-content:center;border-radius:2px}.edit-site-global-styles-screen-colors{margin:16px}.edit-site-global-styles-screen-colors .component-color-indicator{margin-right:0;display:block;border-radius:50%;height:24px;width:24px;padding:0;border:1px solid #ddd;background:linear-gradient(45deg,transparent 48%,#ddd 0,#ddd 52%,transparent 0)}.edit-site-global-styles-header__description{padding:0 16px}.edit-site-global-styles-subtitle{margin-bottom:0!important;text-transform:uppercase;font-weight:500!important;font-size:11px!important}.edit-site-screen-color-palette-toggle.edit-site-screen-color-palette-toggle{margin-left:16px;margin-right:16px;width:unset}.edit-site-screen-color-palette-toggle.edit-site-screen-color-palette-toggle .components-toggle-group-control{min-height:32px}h2.edit-site-global-styles-gradient-palette-panel__duotone-heading.components-heading{text-transform:uppercase;line-height:24px;font-weight:500;font-size:11px;margin-bottom:8px}.edit-site-screen-background-color__control,.edit-site-screen-link-color__control,.edit-site-screen-text-color__control{padding:16px}.edit-site-header{align-items:center;background-color:#fff;display:flex;height:60px;box-sizing:border-box;width:100%;justify-content:space-between}body.is-fullscreen-mode .edit-site-header{padding-right:60px;transition:padding-right 20ms linear;transition-delay:80ms}@media (prefers-reduced-motion:reduce){body.is-fullscreen-mode .edit-site-header{transition-duration:0s;transition-delay:0s}}.edit-site-header .edit-site-header_end,.edit-site-header .edit-site-header_start{display:flex}.edit-site-header .edit-site-header_center{display:flex;align-items:center;height:100%;min-width:0}.edit-site-header .edit-site-header_end{justify-content:flex-end}body.is-navigation-sidebar-open .edit-site-header{padding-right:0;transition:padding-right 20ms linear;transition-delay:0ms}@media (prefers-reduced-motion:reduce){body.is-navigation-sidebar-open .edit-site-header{transition-duration:0s;transition-delay:0s}}@media (max-width:959px){body.is-navigation-sidebar-open .edit-site-header .edit-site-header-toolbar__inserter-toggle~.components-button,body.is-navigation-sidebar-open .edit-site-header .edit-site-header_end .components-button:not(.is-primary){display:none}body.is-navigation-sidebar-open .edit-site-header .edit-site-save-button__button{margin-left:0}}.edit-site-header__toolbar{display:flex;align-items:center;padding-right:8px}@media (min-width:600px){.edit-site-header__toolbar{padding-right:24px}}@media (min-width:1280px){.edit-site-header__toolbar{padding-left:8px}}.edit-site-header__toolbar .edit-site-header-toolbar__inserter-toggle{margin-left:8px;min-width:32px;width:32px;height:32px;padding:0}.edit-site-header__toolbar .edit-site-header-toolbar__inserter-toggle svg{transition:transform .2s cubic-bezier(.165,.84,.44,1)}@media (prefers-reduced-motion:reduce){.edit-site-header__toolbar .edit-site-header-toolbar__inserter-toggle svg{transition-duration:0s;transition-delay:0s}}.edit-site-header__toolbar .edit-site-header-toolbar__inserter-toggle.is-pressed svg{transform:rotate(-45deg)}.edit-site-header__toolbar-switchers{align-items:center;display:flex}.edit-site-header__toolbar-switchers-separator{margin:0 -6px}.edit-site-header__actions{display:inline-flex;align-items:center;flex-wrap:wrap;padding-left:4px}.edit-site-header__actions .interface-pinned-items{display:none}@media (min-width:782px){.edit-site-header__actions .interface-pinned-items{display:inline-flex}}.edit-site-header__actions .components-button.components-button,.edit-site-header__actions .editor-post-saved-state{margin-left:4px}@media (min-width:600px){.edit-site-header__actions .components-button.components-button,.edit-site-header__actions .editor-post-saved-state{margin-left:12px}}.edit-site-header__actions .components-button.is-tertiary,.edit-site-header__actions .editor-post-saved-state{padding:0 6px}.edit-site-header__actions .edit-site-more-menu .components-button,.edit-site-header__actions .interface-pinned-items .components-button{margin-left:0}@media (min-width:600px){.edit-site-header__actions{padding-left:16px}}.edit-site-header__actions-more-menu{margin-right:-4px}.edit-site-header__actions-more-menu .components-icon-button{padding:8px 2px;width:auto}@media (min-width:600px){.edit-site-header__actions-more-menu{margin-right:4px}.edit-site-header__actions-more-menu .components-icon-button{padding:8px 4px}}.edit-site-document-actions{display:flex;flex-direction:column;justify-content:center;height:100%;min-width:0}.edit-site-document-actions .edit-site-document-actions__title-wrapper{display:flex;flex-direction:row;justify-content:center;align-items:center;min-width:0}.edit-site-document-actions .edit-site-document-actions__title-wrapper .components-dropdown{display:inline-flex;margin-right:4px}.edit-site-document-actions .edit-site-document-actions__title-wrapper .components-dropdown .components-button{min-width:0;padding:0}.edit-site-document-actions .edit-site-document-actions__title-wrapper>h1{margin:0;min-width:0}.edit-site-document-actions .edit-site-document-actions__title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}@media (min-width:782px){.edit-site-document-actions .edit-site-document-actions__title{max-width:75px}}@media (min-width:1080px){.edit-site-document-actions .edit-site-document-actions__title{max-width:180px}}.edit-site-document-actions .edit-site-document-actions__secondary-item{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:0;opacity:0;padding:0;transition:all .2s ease;background:#e0e0e0;border-radius:2px}@media (prefers-reduced-motion:reduce){.edit-site-document-actions .edit-site-document-actions__secondary-item{transition-duration:0s;transition-delay:0s}}.edit-site-document-actions.has-secondary-label .edit-site-document-actions__secondary-item{opacity:1;padding:0 4px;max-width:180px;margin-right:6px}.edit-site-document-actions__info-dropdown>.components-popover__content>div{padding:0;min-width:240px}.edit-site-more-menu{margin-right:-4px}.edit-site-more-menu .components-button{width:auto;padding:0 2px}@media (min-width:600px){.edit-site-more-menu{margin-right:4px}.edit-site-more-menu .components-button{padding:0 4px}}.edit-site-more-menu__content .components-popover__content{min-width:260px}.edit-site-more-menu__content .components-popover__content .components-dropdown-menu__menu{padding:0}.components-popover.edit-site-more-menu__content{z-index:99998}.edit-site-navigation-toggle{align-items:center;background:#1e1e1e;border-radius:0;display:flex;position:absolute;z-index:31;height:60px;width:60px}.edit-site-navigation-toggle__button{align-items:center;background:#1e1e1e;border-radius:0;color:#fff;height:61px;width:60px;z-index:1;margin-bottom:-1px}.edit-site-navigation-toggle__button.has-icon{min-width:60px}.edit-site-navigation-toggle__button.has-icon:active,.edit-site-navigation-toggle__button.has-icon:hover{color:#fff}.edit-site-navigation-toggle__button.has-icon:focus{box-shadow:none}.edit-site-navigation-toggle__button.has-icon:before{transition:box-shadow .1s ease;content:"";display:block;position:absolute;top:9px;left:9px;bottom:9px;right:9px;border-radius:4px;box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) #1e1e1e}@media (prefers-reduced-motion:reduce){.edit-site-navigation-toggle__button.has-icon:before{transition-duration:0s;transition-delay:0s}}.edit-site-navigation-toggle__button.has-icon:hover:before{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) #757575}.edit-site-navigation-toggle__button.has-icon:focus:before{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) hsla(0,0%,100%,.1),inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.edit-site-navigation-toggle__button .edit-site-navigation-toggle__site-icon{width:36px;height:36px;border-radius:2px;-o-object-fit:cover;object-fit:cover;margin-top:-1px}.edit-site-navigation-panel{height:100%;position:relative;width:0;overflow:hidden;background:#1e1e1e;color:#fff;transition:width .1s linear}@media (prefers-reduced-motion:reduce){.edit-site-navigation-panel{transition-duration:0s;transition-delay:0s}}@media (min-width:782px){.interface-interface-skeleton.has-footer .edit-site-navigation-panel{height:calc(100% - 25px)}}.edit-site-navigation-panel__inner{position:relative;width:300px;height:100%;overflow:hidden;visibility:hidden;transition:visibility .1s linear}@media (prefers-reduced-motion:reduce){.edit-site-navigation-panel__inner{transition-duration:0s;transition-delay:0s}}.edit-site-navigation-panel.is-open{width:300px}.edit-site-navigation-panel.is-open .edit-site-navigation-panel__inner{visibility:visible}.edit-site-navigation-panel__site-title-container{height:60px;padding-right:60px;margin:0 8px 0 16px;display:flex;align-items:center}.edit-site-navigation-panel__site-title{font-style:normal;font-weight:600;font-size:14px;line-height:20px;color:#ddd;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.edit-site-navigation-panel__scroll-container{overflow-x:hidden;overflow-y:auto;height:calc(100% - 60px)}.edit-site-navigation-panel__back-to-dashboard.components-button.is-tertiary{height:36px;margin-top:24px;padding:8px 8px 8px 16px}.edit-site-navigation-panel__back-to-dashboard.components-button.is-tertiary:focus:not(:disabled){border-bottom-color:transparent}.edit-site-navigation-panel__preview{display:none;border:1px solid #ccc;width:300px;padding:16px;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.05);border-radius:2px;position:absolute;top:73px;right:312px;color:#1e1e1e;z-index:32}@media (min-width:782px){.edit-site-navigation-panel__preview{display:block}}.edit-site-navigation-panel__template-item{display:block}.edit-site-navigation-panel__template-item .components-button{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;height:auto;min-height:36px;text-align:right;padding-right:16px;padding-left:16px;color:inherit}.edit-site-navigation-panel__template-item-title{font-size:14px;line-height:20px}.edit-site-navigation-panel__template-item-title em{margin-left:1ch}.edit-site-navigation-panel__template-part-item .components-navigation__item-title,.edit-site-navigation-panel__template-parts .components-navigation__menu-title-heading{text-transform:capitalize}.components-navigation__item+.edit-site-navigation-panel__template-item{margin-top:16px}.edit-site-navigation-panel__template-item+.edit-site-navigation-panel__template-item{margin-top:8px}.edit-site-navigation-panel__info-wrapper{padding:4px 0}.edit-site-navigation-panel__template-item-description{padding-top:8px;font-size:12px;line-height:16px}.edit-site-navigation-panel__new-template-dropdown{margin:0 12px 0 0}.edit-site-navigation-panel__new-template-dropdown button{margin:0}@media (min-width:600px){.edit-site-navigation-panel__new-template-popover{min-width:300px}}.edit-site-list-header{position:relative;align-items:center;background-color:#fff;display:flex;height:60px;box-sizing:border-box;width:100%;justify-content:flex-end;padding-left:16px}body.is-fullscreen-mode .edit-site-list-header{padding-right:60px;transition:padding-right 20ms linear;transition-delay:80ms}@media (prefers-reduced-motion:reduce){body.is-fullscreen-mode .edit-site-list-header{transition-duration:0s;transition-delay:0s}}.edit-site-list-header .edit-site-list-header__title{position:absolute;right:0;width:100%;text-align:center;font-size:20px;padding:0;margin:0}.edit-site-list-header__right{position:relative}.edit-site .edit-site-list .interface-interface-skeleton__editor{min-width:100%}@media (min-width:782px){.edit-site .edit-site-list .interface-interface-skeleton__editor{min-width:0}}.edit-site .edit-site-list .interface-interface-skeleton__content{background:#fff;align-items:center;padding:16px}@media (min-width:782px){.edit-site .edit-site-list .interface-interface-skeleton__content{padding:72px}}.edit-site-list-table{width:100%;border:1px solid #ddd;border-radius:2px;margin:0;overflow:hidden;border-spacing:0;max-width:960px}.edit-site-list-table tr{display:flex;align-items:center;padding:16px;box-sizing:border-box;border-top:1px solid #f0f0f0;margin:0}.edit-site-list-table tr:first-child{border-top:0}@media (min-width:782px){.edit-site-list-table tr{padding:24px 32px}}.edit-site-list-table tr .edit-site-list-table-column:first-child{width:calc(60% - 18px);padding-left:24px}.edit-site-list-table tr .edit-site-list-table-column:first-child a{display:inline-block;text-decoration:none;font-weight:500;margin-bottom:4px}.edit-site-list-table tr .edit-site-list-table-column:nth-child(2){width:calc(40% - 18px)}.edit-site-list-table tr .edit-site-list-table-column:nth-child(3){min-width:36px;flex-shrink:0}.edit-site-list-table tr.edit-site-list-table-head{font-size:16px;font-weight:600;text-align:right;color:#1e1e1e;border-top:none;border-bottom:1px solid #ddd}.edit-site-list-table tr.edit-site-list-table-head th{font-weight:inherit}@media (min-width:782px){.edit-site-list.is-navigation-open .components-snackbar-list{margin-right:300px}}@media (min-width:782px){.edit-site-list__rename-modal .components-base-control{width:320px}}.edit-site-list__rename-modal .components-modal__header{border-bottom:none}.edit-site-list__rename-modal .components-modal__content:before{margin-bottom:4px}.edit-site-list__rename-modal-actions{margin-top:12px}.edit-site-template__actions button:not(:last-child){margin-left:8px}.edit-site-list-added-by__icon{display:flex;flex-shrink:0;position:relative;align-items:center;justify-content:center;width:32px;height:32px;background:#2f2f2f;border-radius:100%}.edit-site-list-added-by__icon svg{fill:#fff}.edit-site-list-added-by__icon.is-customized:after{position:absolute;content:"";background:var(--wp-admin-theme-color);height:8px;width:8px;outline:2px solid #fff;border-radius:100%;top:-1px;left:-1px}.edit-site-list-added-by__avatar{flex-shrink:0;overflow:hidden;border-radius:100%;background:#2f2f2f;width:32px;height:32px}.edit-site-list-added-by__avatar img{width:32px;height:32px;-o-object-fit:cover;object-fit:cover;opacity:0;transition:opacity .1s linear}@media (prefers-reduced-motion:reduce){.edit-site-list-added-by__avatar img{transition-duration:0s;transition-delay:0s}}.edit-site-list-added-by__avatar.is-loaded img{opacity:1}.edit-site-new-template-dropdown .components-dropdown-menu__toggle{padding:6px 12px}@media (min-width:600px){.edit-site-new-template-dropdown .edit-site-new-template-dropdown__popover{min-width:300px}}.edit-site-sidebar{width:280px}.edit-site-sidebar>.components-panel{border-right:0;border-left:0;margin-bottom:-1px;margin-top:-1px}.edit-site-sidebar>.components-panel>.components-panel__header{background:#f0f0f0}.edit-site-sidebar .block-editor-block-inspector__card{margin:0}.edit-site-global-styles-sidebar .interface-complementary-area-header .components-button.has-icon{margin-right:0}.edit-site-global-styles-sidebar__reset-button.components-button{margin-right:auto}.edit-site-global-styles-sidebar__border-controls-row{display:flex;justify-content:space-between;margin-bottom:12px}.edit-site-global-styles-sidebar__border-controls-row>*{width:calc(50% - 8px)}.edit-site-global-styles-sidebar__border-controls-row .components-border-style-control__buttons{margin-bottom:0}.edit-site-global-styles-sidebar .components-navigation__menu-title-heading{font-size:15.6px;font-weight:500}.edit-site-global-styles-sidebar .components-navigation__item>button span{font-weight:500}.edit-site-global-styles-sidebar .block-editor-panel-color-gradient-settings,.edit-site-typography-panel{border:0}.edit-site-global-styles-sidebar__blocks-group{padding-top:24px;border-top:1px solid #e0e0e0}.edit-site-global-styles-sidebar__blocks-group-help{padding:0 16px}.edit-site-global-styles-color-palette-panel,.edit-site-global-styles-gradient-palette-panel{padding:16px}.edit-site-global-styles-sidebar__beta{display:inline-flex;margin-right:8px;padding:0 8px;height:24px;border-radius:2px;background-color:#000;color:#fff;align-items:center;font-size:12px;line-height:1}.components-panel__header.edit-site-sidebar__panel-tabs{justify-content:flex-start;padding-right:0;padding-left:16px;border-top:0;margin-top:0}.components-panel__header.edit-site-sidebar__panel-tabs ul{display:flex}.components-panel__header.edit-site-sidebar__panel-tabs li{margin:0}.components-panel__header.edit-site-sidebar__panel-tabs .components-button.has-icon{display:none;margin:0 auto 0 0;padding:0;min-width:24px;height:24px}@media (min-width:782px){.components-panel__header.edit-site-sidebar__panel-tabs .components-button.has-icon{display:flex}}.components-button.edit-site-sidebar__panel-tab{border-radius:0;height:48px;background:transparent;border:none;box-shadow:none;cursor:pointer;display:inline-block;padding:3px 15px;margin-right:0;font-weight:500}.components-button.edit-site-sidebar__panel-tab:after{content:attr(data-label);display:block;font-weight:600;height:0;overflow:hidden;speak:none;visibility:hidden}.components-button.edit-site-sidebar__panel-tab.is-active{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) transparent,inset 0 -4px 0 0 var(--wp-admin-theme-color);position:relative;z-index:1}.components-button.edit-site-sidebar__panel-tab.is-active:before{content:"";position:absolute;top:0;bottom:1px;left:0;right:0;border-bottom:4px solid transparent}.components-button.edit-site-sidebar__panel-tab:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);position:relative;z-index:1}.components-button.edit-site-sidebar__panel-tab.is-active:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 -4px 0 0 var(--wp-admin-theme-color)}.edit-site-template-card{display:flex;align-items:flex-start}.edit-site-template-card__content{flex-grow:1;margin-bottom:4px}.edit-site-template-card__title{font-weight:500;line-height:24px}.edit-site-template-card__title.edit-site-template-card__title{margin:0 0 4px}.edit-site-template-card__description{font-size:13px;margin:0 0 16px}.edit-site-template-card__icon{flex:0 0 24px;margin-left:12px;width:24px;height:24px}h3.edit-site-template-card__template-areas-title{font-weight:500;margin:0 0 8px}.edit-site-template-card__template-areas-list,.edit-site-template-card__template-areas-list>li{margin:0}.edit-site-template-card__template-areas-item{width:100%}.edit-site-template-card__template-areas-item.components-button.has-icon{padding:0}html #wpadminbar{display:none}html.wp-toolbar{padding-top:0}.edit-site-editor__toggle-save-panel{z-index:100000;position:fixed!important;top:-9999em;bottom:auto;right:auto;left:0;width:280px;background-color:#fff;border:1px dotted #ddd;height:auto!important;padding:24px;display:flex;justify-content:center}.interface-interface-skeleton__actions:focus-within .edit-site-editor__toggle-save-panel,.interface-interface-skeleton__actions:focus .edit-site-editor__toggle-save-panel{top:auto;bottom:0}.edit-site-visual-editor{position:relative;height:100%;display:block}.edit-site-visual-editor iframe{display:block;width:100%;height:100%;background-color:#fff}.edit-site .components-editor-notices__snackbar{position:fixed;left:0;bottom:40px;padding-right:16px;padding-left:16px;right:0}@media (min-width:783px){.edit-site .components-editor-notices__snackbar{right:160px}}@media (min-width:783px){.auto-fold .edit-site .components-editor-notices__snackbar{right:36px}}@media (min-width:961px){.auto-fold .edit-site .components-editor-notices__snackbar{right:160px}}.folded .edit-site .components-editor-notices__snackbar{right:0}@media (min-width:783px){.folded .edit-site .components-editor-notices__snackbar{right:36px}}body.is-fullscreen-mode .edit-site .components-editor-notices__snackbar{right:0!important}.edit-site-template-details .edit-site-template-details__group{margin:0;padding:16px}.edit-site-template-details .edit-site-template-details__group+.edit-site-template-details__group{border-top:1px solid #ccc}.edit-site-template-details .edit-site-template-details__title{margin:0}.edit-site-template-details .edit-site-template-details__description{margin:12px 0 0;color:#757575}.edit-site-template-details .edit-site-template-details__group.edit-site-template-details__template-areas{padding:8px}.edit-site-template-details .edit-site-template-details__template-areas-item{position:relative}.edit-site-template-details .edit-site-template-details__template-areas-item .edit-site-template-details__template-areas-item-more{position:absolute;left:0;top:0;bottom:0;margin:auto 0}.edit-site-template-details .edit-site-template-details__revert{padding:12px 8px}.edit-site-template-details .edit-site-template-details__revert-button{height:auto;padding:4px 8px;text-align:right}.edit-site-template-details .edit-site-template-details__revert-button:focus:not(:disabled){box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 0 0 3px #fff}.edit-site-template-details .edit-site-template-details__show-all-button.components-button{display:flex;justify-content:center;background:#1e1e1e;color:#fff;width:100%;height:44px;border-radius:0}.edit-site-template-details .edit-site-template-details__show-all-button.components-button:hover{color:#fff}.edit-site-template-details .edit-site-template-details__show-all-button.components-button:active{color:#ccc}.edit-site-template-details .edit-site-template-details__show-all-button.components-button:focus:not(:disabled){box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 0 0 3px #fff}.edit-site-create-template-part-modal{z-index:1000001}@media (min-width:600px){.edit-site-create-template-part-modal .components-modal__frame{max-width:500px}}.edit-site-create-template-part-modal__modal-actions{padding-top:12px}.edit-site-create-template-part-modal__area-base-control .components-base-control__label{margin:16px 0 8px;cursor:auto}.edit-site-create-template-part-modal__area-radio-group{width:100%;border:1px solid #757575;border-radius:2px}.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio{display:block;width:100%;height:100%;text-align:right;padding:12px}.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio,.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-primary:hover,.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-secondary:hover{margin:0;background-color:inherit;border-bottom:1px solid #757575;border-radius:0}.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-primary:hover:not(:focus),.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-secondary:hover:not(:focus),.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio:not(:focus){box-shadow:none}.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-primary:hover:focus,.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-secondary:hover:focus,.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio:focus{border-bottom:1px solid #fff}.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-primary:hover:last-of-type,.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-secondary:hover:last-of-type,.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio:last-of-type{border-bottom:none}.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio:not(:hover),.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio[aria-checked=true]{color:#1e1e1e;cursor:auto}.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio:not(:hover) .edit-site-create-template-part-modal__option-label div,.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio[aria-checked=true] .edit-site-create-template-part-modal__option-label div{color:#949494}.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio .edit-site-create-template-part-modal__option-label{padding-top:4px;white-space:normal}.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio .edit-site-create-template-part-modal__option-label div{padding-top:4px;font-size:12px}.edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio .edit-site-create-template-part-modal__checkbox{margin-right:auto;min-width:24px}.edit-site-editor__inserter-panel,.edit-site-editor__list-view-panel{height:100%;display:flex;flex-direction:column}.edit-site-editor__list-view-panel{min-width:350px}.edit-site-editor__inserter-panel-header{padding-top:8px;padding-left:8px;display:flex;justify-content:flex-end}@media (min-width:782px){.edit-site-editor__inserter-panel-header{display:none}}.edit-site-editor__inserter-panel-content,.edit-site-editor__list-view-panel-content{height:calc(100% - 44px)}@media (min-width:782px){.edit-site-editor__inserter-panel-content{height:100%}}.edit-site-editor__list-view-panel-header{align-items:center;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;height:48px;padding-right:16px;padding-left:4px}.edit-site-editor__list-view-panel-content{overflow-y:auto;padding:8px}.edit-site-welcome-guide{width:312px}.edit-site-welcome-guide__image{background:#00a0d2;margin:0 0 16px}.edit-site-welcome-guide__image>img{display:block;max-width:100%;-o-object-fit:cover;object-fit:cover}.edit-site-welcome-guide__heading{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:24px;line-height:1.4;margin:16px 0;padding:0 32px}.edit-site-welcome-guide__text{font-size:13px;line-height:1.4;margin:0 0 16px;padding:0 32px}.edit-site-welcome-guide__text img{vertical-align:bottom}.edit-site-welcome-guide__inserter-icon{margin:0 4px;vertical-align:text-top}.edit-site-keyboard-shortcut-help-modal__section{margin:0 0 2rem}.edit-site-keyboard-shortcut-help-modal__main-shortcuts .edit-site-keyboard-shortcut-help-modal__shortcut-list{margin-top:-25px}.edit-site-keyboard-shortcut-help-modal__section-title{font-size:.9rem;font-weight:600}.edit-site-keyboard-shortcut-help-modal__shortcut{display:flex;align-items:baseline;padding:.6rem 0;border-top:1px solid #ddd;margin-bottom:0}.edit-site-keyboard-shortcut-help-modal__shortcut:last-child{border-bottom:1px solid #ddd}.edit-site-keyboard-shortcut-help-modal__shortcut:empty{display:none}.edit-site-keyboard-shortcut-help-modal__shortcut-term{font-weight:600;margin:0 1rem 0 0;text-align:left}.edit-site-keyboard-shortcut-help-modal__shortcut-description{flex:1;margin:0;flex-basis:auto}.edit-site-keyboard-shortcut-help-modal__shortcut-key-combination{display:block;background:none;margin:0;padding:0}.edit-site-keyboard-shortcut-help-modal__shortcut-key-combination+.edit-site-keyboard-shortcut-help-modal__shortcut-key-combination{margin-top:10px}.edit-site-keyboard-shortcut-help-modal__shortcut-key{padding:.25rem .5rem;border-radius:8%;margin:0 .2rem}.edit-site-keyboard-shortcut-help-modal__shortcut-key:last-child{margin:0 .2rem 0 0}body.appearance_page_gutenberg-edit-site,body.site-editor-php,html.wp-toolbar{background:#fff}body.appearance_page_gutenberg-edit-site #wpcontent,body.site-editor-php #wpcontent{padding-right:0}body.appearance_page_gutenberg-edit-site #wpbody-content,body.site-editor-php #wpbody-content{padding-bottom:0}body.appearance_page_gutenberg-edit-site #wpbody-content>div:not(.edit-site):not(#screen-meta),body.appearance_page_gutenberg-edit-site #wpfooter,body.site-editor-php #wpbody-content>div:not(.edit-site):not(#screen-meta),body.site-editor-php #wpfooter{display:none}body.appearance_page_gutenberg-edit-site .a11y-speak-region,body.site-editor-php .a11y-speak-region{right:-1px;top:-1px}body.appearance_page_gutenberg-edit-site ul#adminmenu>li.current>a.current:after,body.appearance_page_gutenberg-edit-site ul#adminmenu a.wp-has-current-submenu:after,body.site-editor-php ul#adminmenu>li.current>a.current:after,body.site-editor-php ul#adminmenu a.wp-has-current-submenu:after{border-left-color:#fff}body.appearance_page_gutenberg-edit-site .media-frame select.attachment-filters:last-of-type,body.site-editor-php .media-frame select.attachment-filters:last-of-type{width:auto;max-width:100%}.components-modal__frame,.edit-site{box-sizing:border-box}.components-modal__frame *,.components-modal__frame :after,.components-modal__frame :before,.edit-site *,.edit-site :after,.edit-site :before{box-sizing:inherit}@media (min-width:600px){.edit-site{bottom:0;right:0;min-height:100vh;position:absolute;left:0;top:0}}.edit-site .interface-interface-skeleton{top:0}.edit-site .interface-complementary-area__pin-unpin-item.components-button{display:none}.edit-site .interface-interface-skeleton__content{background-color:#2f2f2f}@keyframes edit-post__fade-in-animation{0%{opacity:0}to{opacity:1}}body.admin-color-light{--wp-admin-theme-color:#0085ba;--wp-admin-theme-color--rgb:0,133,186;--wp-admin-theme-color-darker-10:#0073a1;--wp-admin-theme-color-darker-10--rgb:0,115,161;--wp-admin-theme-color-darker-20:#006187;--wp-admin-theme-color-darker-20--rgb:0,97,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-light{--wp-admin-border-width-focus:1.5px}}body.admin-color-modern{--wp-admin-theme-color:#3858e9;--wp-admin-theme-color--rgb:56,88,233;--wp-admin-theme-color-darker-10:#2145e6;--wp-admin-theme-color-darker-10--rgb:33,69,230;--wp-admin-theme-color-darker-20:#183ad6;--wp-admin-theme-color-darker-20--rgb:24,58,214;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-modern{--wp-admin-border-width-focus:1.5px}}body.admin-color-blue{--wp-admin-theme-color:#096484;--wp-admin-theme-color--rgb:9,100,132;--wp-admin-theme-color-darker-10:#07526c;--wp-admin-theme-color-darker-10--rgb:7,82,108;--wp-admin-theme-color-darker-20:#064054;--wp-admin-theme-color-darker-20--rgb:6,64,84;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-blue{--wp-admin-border-width-focus:1.5px}}body.admin-color-coffee{--wp-admin-theme-color:#46403c;--wp-admin-theme-color--rgb:70,64,60;--wp-admin-theme-color-darker-10:#383330;--wp-admin-theme-color-darker-10--rgb:56,51,48;--wp-admin-theme-color-darker-20:#2b2724;--wp-admin-theme-color-darker-20--rgb:43,39,36;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-coffee{--wp-admin-border-width-focus:1.5px}}body.admin-color-ectoplasm{--wp-admin-theme-color:#523f6d;--wp-admin-theme-color--rgb:82,63,109;--wp-admin-theme-color-darker-10:#46365d;--wp-admin-theme-color-darker-10--rgb:70,54,93;--wp-admin-theme-color-darker-20:#3a2c4d;--wp-admin-theme-color-darker-20--rgb:58,44,77;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-ectoplasm{--wp-admin-border-width-focus:1.5px}}body.admin-color-midnight{--wp-admin-theme-color:#e14d43;--wp-admin-theme-color--rgb:225,77,67;--wp-admin-theme-color-darker-10:#dd382d;--wp-admin-theme-color-darker-10--rgb:221,56,45;--wp-admin-theme-color-darker-20:#d02c21;--wp-admin-theme-color-darker-20--rgb:208,44,33;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-midnight{--wp-admin-border-width-focus:1.5px}}body.admin-color-ocean{--wp-admin-theme-color:#627c83;--wp-admin-theme-color--rgb:98,124,131;--wp-admin-theme-color-darker-10:#576e74;--wp-admin-theme-color-darker-10--rgb:87,110,116;--wp-admin-theme-color-darker-20:#4c6066;--wp-admin-theme-color-darker-20--rgb:76,96,102;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-ocean{--wp-admin-border-width-focus:1.5px}}body.admin-color-sunrise{--wp-admin-theme-color:#dd823b;--wp-admin-theme-color--rgb:221,130,59;--wp-admin-theme-color-darker-10:#d97426;--wp-admin-theme-color-darker-10--rgb:217,116,38;--wp-admin-theme-color-darker-20:#c36922;--wp-admin-theme-color-darker-20--rgb:195,105,34;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-sunrise{--wp-admin-border-width-focus:1.5px}}PKj l\9r[[ css/dist/edit-site/style-rtl.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .components-panel__header.interface-complementary-area-header__small { background: #fff; padding-left: 4px; } .components-panel__header.interface-complementary-area-header__small .interface-complementary-area-header__small-title { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; width: 100%; } @media (min-width: 782px) { .components-panel__header.interface-complementary-area-header__small { display: none; } } .interface-complementary-area-header { background: #fff; padding-left: 4px; } .interface-complementary-area-header .components-button.has-icon { display: none; margin-right: auto; } .interface-complementary-area-header .components-button.has-icon ~ .components-button { margin-right: 0; } @media (min-width: 782px) { .interface-complementary-area-header .components-button.has-icon { display: flex; } } @media (min-width: 782px) { .components-panel__header + .interface-complementary-area-header { margin-top: 0; } } .interface-complementary-area { background: #fff; color: #1e1e1e; } @media (min-width: 600px) { .interface-complementary-area { -webkit-overflow-scrolling: touch; } } @media (min-width: 782px) { .interface-complementary-area { width: 280px; } } .interface-complementary-area .components-panel { border: none; position: relative; z-index: 0; } .interface-complementary-area .components-panel__header { position: sticky; top: 0; z-index: 1; } .interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs { top: 48px; } @media (min-width: 782px) { .interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs { top: 0; } } .interface-complementary-area p { margin-top: 0; } .interface-complementary-area h2 { font-size: 13px; color: #1e1e1e; margin-bottom: 1.5em; } .interface-complementary-area h3 { font-size: 11px; text-transform: uppercase; font-weight: 500; color: #1e1e1e; margin-bottom: 1.5em; } .interface-complementary-area hr { border-top: none; border-bottom: 1px solid #f0f0f0; margin: 1.5em 0; } .interface-complementary-area div.components-toolbar-group, .interface-complementary-area div.components-toolbar { box-shadow: none; margin-bottom: 1.5em; } .interface-complementary-area div.components-toolbar-group:last-child, .interface-complementary-area div.components-toolbar:last-child { margin-bottom: 0; } .interface-complementary-area .block-editor-skip-to-selected-block:focus { top: auto; left: 10px; bottom: 10px; right: auto; } @media (min-width: 782px) { body.js.is-fullscreen-mode { margin-top: -32px; height: calc(100% + 32px); } body.js.is-fullscreen-mode #adminmenumain, body.js.is-fullscreen-mode #wpadminbar { display: none; } body.js.is-fullscreen-mode #wpcontent, body.js.is-fullscreen-mode #wpfooter { margin-right: 0; } } html.interface-interface-skeleton__html-container { position: fixed; width: 100%; } @media (min-width: 782px) { html.interface-interface-skeleton__html-container { position: initial; width: initial; } } .interface-interface-skeleton { display: flex; flex-direction: row; height: auto; max-height: 100%; position: fixed; top: 46px; right: 0; left: 0; bottom: 0; } @media (min-width: 783px) { .interface-interface-skeleton { top: 32px; } .is-fullscreen-mode .interface-interface-skeleton { top: 0; } } .interface-interface-skeleton__editor { display: flex; flex-direction: column; flex: 0 1 100%; overflow: hidden; } .interface-interface-skeleton { /* Set left position when auto-fold is not on the body element. */ right: 0; } @media (min-width: 783px) { .interface-interface-skeleton { right: 160px; } } .auto-fold .interface-interface-skeleton { /* Auto fold is when on smaller breakpoints, nav menu auto collapses. */ } @media (min-width: 783px) { .auto-fold .interface-interface-skeleton { right: 36px; } } @media (min-width: 961px) { .auto-fold .interface-interface-skeleton { right: 160px; } } /* Sidebar manually collapsed. */ .folded .interface-interface-skeleton { right: 0; } @media (min-width: 783px) { .folded .interface-interface-skeleton { right: 36px; } } body.is-fullscreen-mode .interface-interface-skeleton { right: 0 !important; } .interface-interface-skeleton__body { flex-grow: 1; display: flex; overflow: auto; overscroll-behavior-y: none; } @media (min-width: 782px) { .has-footer .interface-interface-skeleton__body { padding-bottom: 25px; } } .interface-interface-skeleton__content { flex-grow: 1; display: flex; flex-direction: column; overflow: auto; z-index: 20; } .interface-interface-skeleton__secondary-sidebar, .interface-interface-skeleton__sidebar { display: block; flex-shrink: 0; position: absolute; z-index: 100000; top: 0; left: 0; bottom: 0; right: 0; background: #fff; color: #1e1e1e; } @media (min-width: 782px) { .interface-interface-skeleton__secondary-sidebar, .interface-interface-skeleton__sidebar { position: relative !important; z-index: 90; width: auto; } } .interface-interface-skeleton__sidebar { overflow: auto; } @media (min-width: 782px) { .interface-interface-skeleton__sidebar { border-right: 1px solid #e0e0e0; } } @media (min-width: 782px) { .interface-interface-skeleton__secondary-sidebar { border-left: 1px solid #e0e0e0; } } .interface-interface-skeleton__header { flex-shrink: 0; height: auto; border-bottom: 1px solid #e0e0e0; z-index: 30; color: #1e1e1e; } .interface-interface-skeleton__footer { height: auto; flex-shrink: 0; border-top: 1px solid #e0e0e0; color: #1e1e1e; position: absolute; bottom: 0; right: 0; width: 100%; background-color: #fff; z-index: 90; display: none; } @media (min-width: 782px) { .interface-interface-skeleton__footer { display: flex; } } .interface-interface-skeleton__footer .block-editor-block-breadcrumb { z-index: 30; display: flex; background: #fff; height: 24px; align-items: center; font-size: 13px; padding: 0 18px; } .interface-interface-skeleton__actions { z-index: 100000; position: fixed !important; top: -9999em; bottom: auto; right: auto; left: 0; width: 280px; color: #1e1e1e; } .interface-interface-skeleton__actions:focus { top: auto; bottom: 0; } .interface-more-menu-dropdown { margin-right: -4px; } .interface-more-menu-dropdown .components-button { width: auto; padding: 0 2px; } @media (min-width: 600px) { .interface-more-menu-dropdown { margin-right: 0; } .interface-more-menu-dropdown .components-button { padding: 0 4px; } } .interface-more-menu-dropdown__content .components-popover__content { min-width: 280px; } @media (min-width: 480px) { .interface-more-menu-dropdown__content .components-popover__content { width: auto; max-width: 480px; } } .interface-more-menu-dropdown__content .components-popover__content .components-dropdown-menu__menu { padding: 0; } .components-popover.interface-more-menu-dropdown__content { z-index: 99998; } .interface-pinned-items { display: flex; } .interface-pinned-items .components-button:not(:first-child) { display: none; } @media (min-width: 600px) { .interface-pinned-items .components-button:not(:first-child) { display: flex; } } .interface-pinned-items .components-button { margin-right: 4px; } .interface-pinned-items .components-button svg { max-width: 24px; max-height: 24px; } .edit-site-block-editor__editor-styles-wrapper .components-button { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; padding: 6px 12px; } .edit-site-block-editor__editor-styles-wrapper .components-button.is-tertiary, .edit-site-block-editor__editor-styles-wrapper .components-button.has-icon { padding: 6px; } .edit-site-visual-editor { position: relative; background-color: #2f2f2f; align-items: center; } .edit-site-visual-editor.is-focus-mode { padding: 48px; } .edit-site-visual-editor.is-focus-mode .edit-site-visual-editor__editor-canvas { border-radius: 2px; } .edit-site-visual-editor.is-focus-mode .components-resizable-box__container { overflow: visible; } .edit-site-visual-editor .components-resizable-box__container { margin: 0 auto; overflow: auto; } .edit-site-visual-editor__editor-canvas { border-radius: 2px 2px 0 0; } .edit-site-visual-editor__back-button { position: absolute; top: 8px; right: 8px; color: #fff; } .edit-site-visual-editor__back-button:active:not([aria-disabled=true]), .edit-site-visual-editor__back-button:focus:not([aria-disabled=true]), .edit-site-visual-editor__back-button:hover { color: #f0f0f0; } .resizable-editor__drag-handle { position: absolute; top: 0; bottom: 0; padding: 0; margin: auto 0; width: 8px; height: 100px; -webkit-appearance: none; appearance: none; cursor: grab; outline: none; background: #757575; border-radius: 4px; border: 0; } .resizable-editor__drag-handle.is-left { right: -28px; } .resizable-editor__drag-handle.is-right { left: -28px; } .resizable-editor__drag-handle:hover { background: #949494; } .resizable-editor__drag-handle:active { cursor: grabbing; background: #949494; } .resizable-editor__drag-handle:focus { box-shadow: 0 0 0 1px #2f2f2f, 0 0 0 calc(var(--wp-admin-border-width-focus) + 1px) var(--wp-admin-theme-color); } .edit-site-global-styles-preview { display: flex; align-items: center; justify-content: center; min-height: 152px; line-height: 1; } .edit-site-global-styles-preview .component-color-indicator { border-radius: 50%; border: 0; height: 36px; width: 36px; margin-right: 0; padding: 0; } .edit-site-typography-panel__preview { display: flex; align-items: center; justify-content: center; min-height: 100px; margin-bottom: 16px; background: #f0f0f0; border-radius: 2px; } .edit-site-global-styles-screen-typography { margin: 16px; } .edit-site-global-styles-screen-typography__indicator { height: 24px; width: 24px; font-size: 14px; display: flex !important; align-items: center; justify-content: center; border-radius: 2px; } .edit-site-global-styles-screen-colors { margin: 16px; } .edit-site-global-styles-screen-colors .component-color-indicator { margin-right: 0; display: block; border-radius: 50%; height: 24px; width: 24px; padding: 0; border: 1px solid #ddd; background: linear-gradient(45deg, transparent 48%, #ddd 48%, #ddd 52%, transparent 52%); } .edit-site-global-styles-header__description { padding: 0 16px; } .edit-site-global-styles-subtitle { margin-bottom: 0 !important; text-transform: uppercase; font-weight: 500 !important; font-size: 11px !important; } .edit-site-screen-color-palette-toggle.edit-site-screen-color-palette-toggle { margin-left: 16px; margin-right: 16px; width: unset; } .edit-site-screen-color-palette-toggle.edit-site-screen-color-palette-toggle .components-toggle-group-control { min-height: 32px; } h2.edit-site-global-styles-gradient-palette-panel__duotone-heading.components-heading { text-transform: uppercase; line-height: 24px; font-weight: 500; font-size: 11px; margin-bottom: 8px; } .edit-site-screen-text-color__control, .edit-site-screen-link-color__control, .edit-site-screen-background-color__control { padding: 16px; } .edit-site-header { align-items: center; background-color: #fff; display: flex; height: 60px; box-sizing: border-box; width: 100%; justify-content: space-between; } body.is-fullscreen-mode .edit-site-header { padding-right: 60px; transition: padding-right 20ms linear; transition-delay: 80ms; } @media (prefers-reduced-motion: reduce) { body.is-fullscreen-mode .edit-site-header { transition-duration: 0s; transition-delay: 0s; } } .edit-site-header .edit-site-header_start, .edit-site-header .edit-site-header_end { display: flex; } .edit-site-header .edit-site-header_center { display: flex; align-items: center; height: 100%; min-width: 0; } .edit-site-header .edit-site-header_end { justify-content: flex-end; } body.is-navigation-sidebar-open .edit-site-header { padding-right: 0; transition: padding-right 20ms linear; transition-delay: 0ms; } @media (prefers-reduced-motion: reduce) { body.is-navigation-sidebar-open .edit-site-header { transition-duration: 0s; transition-delay: 0s; } } @media (max-width: 959px) { body.is-navigation-sidebar-open .edit-site-header .edit-site-header-toolbar__inserter-toggle ~ .components-button, body.is-navigation-sidebar-open .edit-site-header .edit-site-header_end .components-button:not(.is-primary) { display: none; } body.is-navigation-sidebar-open .edit-site-header .edit-site-save-button__button { margin-left: 0; } } .edit-site-header__toolbar { display: flex; align-items: center; padding-right: 8px; } @media (min-width: 600px) { .edit-site-header__toolbar { padding-right: 24px; } } @media (min-width: 1280px) { .edit-site-header__toolbar { padding-left: 8px; } } .edit-site-header__toolbar .edit-site-header-toolbar__inserter-toggle { margin-left: 8px; min-width: 32px; width: 32px; height: 32px; padding: 0; } .edit-site-header__toolbar .edit-site-header-toolbar__inserter-toggle svg { transition: transform cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s; } @media (prefers-reduced-motion: reduce) { .edit-site-header__toolbar .edit-site-header-toolbar__inserter-toggle svg { transition-duration: 0s; transition-delay: 0s; } } .edit-site-header__toolbar .edit-site-header-toolbar__inserter-toggle.is-pressed svg { transform: rotate(-45deg); } .edit-site-header__toolbar-switchers { align-items: center; display: flex; } .edit-site-header__toolbar-switchers-separator { margin: 0 -6px 0; } /** * Buttons in the Toolbar */ .edit-site-header__actions { display: inline-flex; align-items: center; flex-wrap: wrap; padding-left: 4px; } .edit-site-header__actions .interface-pinned-items { display: none; } @media (min-width: 782px) { .edit-site-header__actions .interface-pinned-items { display: inline-flex; } } .edit-site-header__actions .editor-post-saved-state, .edit-site-header__actions .components-button.components-button { margin-left: 4px; } @media (min-width: 600px) { .edit-site-header__actions .editor-post-saved-state, .edit-site-header__actions .components-button.components-button { margin-left: 12px; } } .edit-site-header__actions .editor-post-saved-state, .edit-site-header__actions .components-button.is-tertiary { padding: 0 6px; } .edit-site-header__actions .edit-site-more-menu .components-button, .edit-site-header__actions .interface-pinned-items .components-button { margin-left: 0; } @media (min-width: 600px) { .edit-site-header__actions { padding-left: 16px; } } .edit-site-header__actions-more-menu { margin-right: -4px; } .edit-site-header__actions-more-menu .components-icon-button { padding: 8px 2px; width: auto; } @media (min-width: 600px) { .edit-site-header__actions-more-menu { margin-right: 4px; } .edit-site-header__actions-more-menu .components-icon-button { padding: 8px 4px; } } .edit-site-document-actions { display: flex; flex-direction: column; justify-content: center; height: 100%; min-width: 0; } .edit-site-document-actions .edit-site-document-actions__title-wrapper { display: flex; flex-direction: row; justify-content: center; align-items: center; min-width: 0; } .edit-site-document-actions .edit-site-document-actions__title-wrapper .components-dropdown { display: inline-flex; margin-right: 4px; } .edit-site-document-actions .edit-site-document-actions__title-wrapper .components-dropdown .components-button { min-width: 0; padding: 0; } .edit-site-document-actions .edit-site-document-actions__title-wrapper > h1 { margin: 0; min-width: 0; } .edit-site-document-actions .edit-site-document-actions__title { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 120px; } @media (min-width: 782px) { .edit-site-document-actions .edit-site-document-actions__title { max-width: 75px; } } @media (min-width: 1080px) { .edit-site-document-actions .edit-site-document-actions__title { max-width: 180px; } } .edit-site-document-actions .edit-site-document-actions__secondary-item { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 0; opacity: 0; padding: 0; transition: all ease 0.2s; background: #e0e0e0; border-radius: 2px; } @media (prefers-reduced-motion: reduce) { .edit-site-document-actions .edit-site-document-actions__secondary-item { transition-duration: 0s; transition-delay: 0s; } } .edit-site-document-actions.has-secondary-label .edit-site-document-actions__secondary-item { opacity: 1; padding: 0 4px; max-width: 180px; margin-right: 6px; } .edit-site-document-actions__info-dropdown > .components-popover__content > div { padding: 0; min-width: 240px; } .edit-site-more-menu { margin-right: -4px; } .edit-site-more-menu .components-button { width: auto; padding: 0 2px; } @media (min-width: 600px) { .edit-site-more-menu { margin-right: 4px; } .edit-site-more-menu .components-button { padding: 0 4px; } } .edit-site-more-menu__content .components-popover__content { min-width: 260px; } .edit-site-more-menu__content .components-popover__content .components-dropdown-menu__menu { padding: 0; } .components-popover.edit-site-more-menu__content { z-index: 99998; } .edit-site-navigation-toggle { align-items: center; background: #1e1e1e; border-radius: 0; display: flex; position: absolute; z-index: 31; height: 60px; width: 60px; } .edit-site-navigation-toggle__button { align-items: center; background: #1e1e1e; border-radius: 0; color: #fff; height: 61px; width: 60px; z-index: 1; margin-bottom: -1px; } .edit-site-navigation-toggle__button.has-icon { min-width: 60px; } .edit-site-navigation-toggle__button.has-icon:hover, .edit-site-navigation-toggle__button.has-icon:active { color: #fff; } .edit-site-navigation-toggle__button.has-icon:focus { box-shadow: none; } .edit-site-navigation-toggle__button.has-icon::before { transition: box-shadow 0.1s ease; content: ""; display: block; position: absolute; top: 9px; left: 9px; bottom: 9px; right: 9px; border-radius: 4px; box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) #1e1e1e; } @media (prefers-reduced-motion: reduce) { .edit-site-navigation-toggle__button.has-icon::before { transition-duration: 0s; transition-delay: 0s; } } .edit-site-navigation-toggle__button.has-icon:hover::before { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) #757575; } .edit-site-navigation-toggle__button.has-icon:focus::before { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) rgba(255, 255, 255, 0.1), inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .edit-site-navigation-toggle__button .edit-site-navigation-toggle__site-icon { width: 36px; height: 36px; border-radius: 2px; -o-object-fit: cover; object-fit: cover; margin-top: -1px; } .edit-site-navigation-panel { height: 100%; position: relative; width: 0; overflow: hidden; background: #1e1e1e; color: #fff; transition: width 100ms linear; } @media (prefers-reduced-motion: reduce) { .edit-site-navigation-panel { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 782px) { .interface-interface-skeleton.has-footer .edit-site-navigation-panel { height: calc(100% - 25px); } } .edit-site-navigation-panel__inner { position: relative; width: 300px; height: 100%; overflow: hidden; visibility: hidden; transition: visibility 100ms linear; } @media (prefers-reduced-motion: reduce) { .edit-site-navigation-panel__inner { transition-duration: 0s; transition-delay: 0s; } } .edit-site-navigation-panel.is-open { width: 300px; } .edit-site-navigation-panel.is-open .edit-site-navigation-panel__inner { visibility: visible; } .edit-site-navigation-panel__site-title-container { height: 60px; padding-right: 60px; margin: 0 8px 0 16px; display: flex; align-items: center; } .edit-site-navigation-panel__site-title { font-style: normal; font-weight: 600; font-size: 14px; /* Matches menu items */ line-height: 20px; color: #ddd; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; } .edit-site-navigation-panel__scroll-container { overflow-x: hidden; overflow-y: auto; height: calc(100% - 60px); } .edit-site-navigation-panel__back-to-dashboard.components-button.is-tertiary { height: 36px; margin-top: 24px; padding: 8px 8px 8px 16px; } .edit-site-navigation-panel__back-to-dashboard.components-button.is-tertiary:focus:not(:disabled) { border-bottom-color: transparent; } .edit-site-navigation-panel__preview { display: none; border: 1px solid #ccc; width: 300px; padding: 16px; background: #fff; box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05); border-radius: 2px; position: absolute; top: 73px; right: 312px; color: #1e1e1e; z-index: 32; } @media (min-width: 782px) { .edit-site-navigation-panel__preview { display: block; } } .edit-site-navigation-panel__template-item { display: block; } .edit-site-navigation-panel__template-item .components-button { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; height: auto; min-height: 36px; text-align: right; padding-right: 16px; padding-left: 16px; color: inherit; } .edit-site-navigation-panel__template-item-title { font-size: 14px; line-height: 20px; } .edit-site-navigation-panel__template-item-title em { margin-left: 1ch; } .edit-site-navigation-panel__template-parts .components-navigation__menu-title-heading { text-transform: capitalize; } .edit-site-navigation-panel__template-part-item .components-navigation__item-title { text-transform: capitalize; } .components-navigation__item + .edit-site-navigation-panel__template-item { margin-top: 16px; } .edit-site-navigation-panel__template-item + .edit-site-navigation-panel__template-item { margin-top: 8px; } .edit-site-navigation-panel__info-wrapper { padding: 4px 0; } .edit-site-navigation-panel__template-item-description { padding-top: 8px; font-size: 12px; line-height: 16px; } .edit-site-navigation-panel__new-template-dropdown { margin: 0 12px 0 0; } .edit-site-navigation-panel__new-template-dropdown button { margin: 0; } @media (min-width: 600px) { .edit-site-navigation-panel__new-template-popover { min-width: 300px; } } .edit-site-list-header { position: relative; align-items: center; background-color: #fff; display: flex; height: 60px; box-sizing: border-box; width: 100%; justify-content: flex-end; padding-left: 16px; } body.is-fullscreen-mode .edit-site-list-header { padding-right: 60px; transition: padding-right 20ms linear; transition-delay: 80ms; } @media (prefers-reduced-motion: reduce) { body.is-fullscreen-mode .edit-site-list-header { transition-duration: 0s; transition-delay: 0s; } } .edit-site-list-header .edit-site-list-header__title { position: absolute; right: 0; width: 100%; text-align: center; font-size: 20px; padding: 0; margin: 0; } .edit-site-list-header__right { position: relative; } .edit-site .edit-site-list .interface-interface-skeleton__editor { min-width: 100%; } @media (min-width: 782px) { .edit-site .edit-site-list .interface-interface-skeleton__editor { min-width: 0; } } .edit-site .edit-site-list .interface-interface-skeleton__content { background: #fff; align-items: center; padding: 16px; } @media (min-width: 782px) { .edit-site .edit-site-list .interface-interface-skeleton__content { padding: 72px; } } .edit-site-list-table { width: 100%; border: 1px solid #ddd; border-radius: 2px; margin: 0; overflow: hidden; border-spacing: 0; max-width: 960px; } .edit-site-list-table tr { display: flex; align-items: center; padding: 16px; box-sizing: border-box; border-top: 1px solid #f0f0f0; margin: 0; } .edit-site-list-table tr:first-child { border-top: 0; } @media (min-width: 782px) { .edit-site-list-table tr { padding: 24px 32px; } } .edit-site-list-table tr .edit-site-list-table-column:nth-child(1) { width: calc(60% - 18px); padding-left: 24px; } .edit-site-list-table tr .edit-site-list-table-column:nth-child(1) a { display: inline-block; text-decoration: none; font-weight: 500; margin-bottom: 4px; } .edit-site-list-table tr .edit-site-list-table-column:nth-child(2) { width: calc(40% - 18px); } .edit-site-list-table tr .edit-site-list-table-column:nth-child(3) { min-width: 36px; flex-shrink: 0; } .edit-site-list-table tr.edit-site-list-table-head { font-size: 16px; font-weight: 600; text-align: right; color: #1e1e1e; border-top: none; border-bottom: 1px solid #ddd; } .edit-site-list-table tr.edit-site-list-table-head th { font-weight: inherit; } @media (min-width: 782px) { .edit-site-list.is-navigation-open .components-snackbar-list { margin-right: 300px; } } @media (min-width: 782px) { .edit-site-list__rename-modal .components-base-control { width: 320px; } } .edit-site-list__rename-modal .components-modal__header { border-bottom: none; } .edit-site-list__rename-modal .components-modal__content::before { margin-bottom: 4px; } .edit-site-list__rename-modal-actions { margin-top: 12px; } .edit-site-template__actions button:not(:last-child) { margin-left: 8px; } .edit-site-list-added-by__icon { display: flex; flex-shrink: 0; position: relative; align-items: center; justify-content: center; width: 32px; height: 32px; background: #2f2f2f; border-radius: 100%; } .edit-site-list-added-by__icon svg { fill: #fff; } .edit-site-list-added-by__icon.is-customized::after { position: absolute; content: ""; background: var(--wp-admin-theme-color); height: 8px; width: 8px; outline: 2px solid #fff; border-radius: 100%; top: -1px; left: -1px; } .edit-site-list-added-by__avatar { flex-shrink: 0; overflow: hidden; border-radius: 100%; background: #2f2f2f; width: 32px; height: 32px; } .edit-site-list-added-by__avatar img { width: 32px; height: 32px; -o-object-fit: cover; object-fit: cover; opacity: 0; transition: opacity 0.1s linear; } @media (prefers-reduced-motion: reduce) { .edit-site-list-added-by__avatar img { transition-duration: 0s; transition-delay: 0s; } } .edit-site-list-added-by__avatar.is-loaded img { opacity: 1; } .edit-site-new-template-dropdown .components-dropdown-menu__toggle { padding: 6px 12px; } @media (min-width: 600px) { .edit-site-new-template-dropdown .edit-site-new-template-dropdown__popover { min-width: 300px; } } .edit-site-sidebar { width: 280px; } .edit-site-sidebar > .components-panel { border-right: 0; border-left: 0; margin-bottom: -1px; margin-top: -1px; } .edit-site-sidebar > .components-panel > .components-panel__header { background: #f0f0f0; } .edit-site-sidebar .block-editor-block-inspector__card { margin: 0; } .edit-site-global-styles-sidebar .interface-complementary-area-header .components-button.has-icon { margin-right: 0; } .edit-site-global-styles-sidebar__reset-button.components-button { margin-right: auto; } .edit-site-global-styles-sidebar__border-controls-row { display: flex; justify-content: space-between; margin-bottom: 12px; } .edit-site-global-styles-sidebar__border-controls-row > * { width: calc(50% - 8px); } .edit-site-global-styles-sidebar__border-controls-row .components-border-style-control__buttons { margin-bottom: 0; } .edit-site-global-styles-sidebar .components-navigation__menu-title-heading { font-size: 15.6px; font-weight: 500; } .edit-site-global-styles-sidebar .components-navigation__item > button span { font-weight: 500; } .edit-site-typography-panel, .edit-site-global-styles-sidebar .block-editor-panel-color-gradient-settings { border: 0; } .edit-site-global-styles-sidebar__blocks-group { padding-top: 24px; border-top: 1px solid #e0e0e0; } .edit-site-global-styles-sidebar__blocks-group-help { padding: 0 16px; } .edit-site-global-styles-color-palette-panel, .edit-site-global-styles-gradient-palette-panel { padding: 16px; } .edit-site-global-styles-sidebar__beta { display: inline-flex; margin-right: 8px; padding: 0 8px; height: 24px; border-radius: 2px; background-color: #000; color: #fff; align-items: center; font-size: 12px; line-height: 1; } .components-panel__header.edit-site-sidebar__panel-tabs { justify-content: flex-start; padding-right: 0; padding-left: 16px; border-top: 0; margin-top: 0; } .components-panel__header.edit-site-sidebar__panel-tabs ul { display: flex; } .components-panel__header.edit-site-sidebar__panel-tabs li { margin: 0; } .components-panel__header.edit-site-sidebar__panel-tabs .components-button.has-icon { display: none; margin: 0 auto 0 0; padding: 0; min-width: 24px; height: 24px; } @media (min-width: 782px) { .components-panel__header.edit-site-sidebar__panel-tabs .components-button.has-icon { display: flex; } } .components-button.edit-site-sidebar__panel-tab { border-radius: 0; height: 48px; background: transparent; border: none; box-shadow: none; cursor: pointer; display: inline-block; padding: 3px 15px; margin-right: 0; font-weight: 500; } .components-button.edit-site-sidebar__panel-tab::after { content: attr(data-label); display: block; font-weight: 600; height: 0; overflow: hidden; speak: none; visibility: hidden; } .components-button.edit-site-sidebar__panel-tab.is-active { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) transparent, inset 0 -4px 0 0 var(--wp-admin-theme-color); position: relative; z-index: 1; } .components-button.edit-site-sidebar__panel-tab.is-active::before { content: ""; position: absolute; top: 0; bottom: 1px; left: 0; right: 0; border-bottom: 4px solid transparent; } .components-button.edit-site-sidebar__panel-tab:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); position: relative; z-index: 1; } .components-button.edit-site-sidebar__panel-tab.is-active:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 -4px 0 0 var(--wp-admin-theme-color); } .edit-site-template-card { display: flex; align-items: flex-start; } .edit-site-template-card__content { flex-grow: 1; margin-bottom: 4px; } .edit-site-template-card__title { font-weight: 500; line-height: 24px; } .edit-site-template-card__title.edit-site-template-card__title { margin: 0 0 4px; } .edit-site-template-card__description { font-size: 13px; margin: 0 0 16px; } .edit-site-template-card__icon { flex: 0 0 24px; margin-left: 12px; width: 24px; height: 24px; } h3.edit-site-template-card__template-areas-title { font-weight: 500; margin: 0 0 8px; } .edit-site-template-card__template-areas-list { margin: 0; } .edit-site-template-card__template-areas-list > li { margin: 0; } .edit-site-template-card__template-areas-item { width: 100%; } .edit-site-template-card__template-areas-item.components-button.has-icon { padding: 0; } html #wpadminbar { display: none; } html.wp-toolbar { padding-top: 0; } .edit-site-editor__toggle-save-panel { z-index: 100000; position: fixed !important; top: -9999em; bottom: auto; right: auto; left: 0; width: 280px; background-color: #fff; border: 1px dotted #ddd; height: auto !important; padding: 24px; display: flex; justify-content: center; } .interface-interface-skeleton__actions:focus .edit-site-editor__toggle-save-panel, .interface-interface-skeleton__actions:focus-within .edit-site-editor__toggle-save-panel { top: auto; bottom: 0; } .edit-site-visual-editor { position: relative; height: 100%; display: block; } .edit-site-visual-editor iframe { display: block; width: 100%; height: 100%; background-color: #fff; } .edit-site .components-editor-notices__snackbar { position: fixed; left: 0; bottom: 40px; padding-right: 16px; padding-left: 16px; } .edit-site .components-editor-notices__snackbar { /* Set left position when auto-fold is not on the body element. */ right: 0; } @media (min-width: 783px) { .edit-site .components-editor-notices__snackbar { right: 160px; } } .auto-fold .edit-site .components-editor-notices__snackbar { /* Auto fold is when on smaller breakpoints, nav menu auto collapses. */ } @media (min-width: 783px) { .auto-fold .edit-site .components-editor-notices__snackbar { right: 36px; } } @media (min-width: 961px) { .auto-fold .edit-site .components-editor-notices__snackbar { right: 160px; } } /* Sidebar manually collapsed. */ .folded .edit-site .components-editor-notices__snackbar { right: 0; } @media (min-width: 783px) { .folded .edit-site .components-editor-notices__snackbar { right: 36px; } } body.is-fullscreen-mode .edit-site .components-editor-notices__snackbar { right: 0 !important; } .edit-site-template-details .edit-site-template-details__group { margin: 0; padding: 16px; } .edit-site-template-details .edit-site-template-details__group + .edit-site-template-details__group { border-top: 1px solid #ccc; } .edit-site-template-details .edit-site-template-details__title { margin: 0; } .edit-site-template-details .edit-site-template-details__description { margin: 12px 0 0; color: #757575; } .edit-site-template-details .edit-site-template-details__group.edit-site-template-details__template-areas { padding: 8px; } .edit-site-template-details .edit-site-template-details__template-areas-item { position: relative; } .edit-site-template-details .edit-site-template-details__template-areas-item .edit-site-template-details__template-areas-item-more { position: absolute; left: 0; top: 0; bottom: 0; margin: auto 0; } .edit-site-template-details .edit-site-template-details__revert { padding: 12px 8px; } .edit-site-template-details .edit-site-template-details__revert-button { height: auto; padding: 4px 8px; text-align: right; } .edit-site-template-details .edit-site-template-details__revert-button:focus:not(:disabled) { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 0 0 3px #fff; } .edit-site-template-details .edit-site-template-details__show-all-button.components-button { display: flex; justify-content: center; background: #1e1e1e; color: #fff; width: 100%; height: 44px; border-radius: 0; } .edit-site-template-details .edit-site-template-details__show-all-button.components-button:hover { color: #fff; } .edit-site-template-details .edit-site-template-details__show-all-button.components-button:active { color: #ccc; } .edit-site-template-details .edit-site-template-details__show-all-button.components-button:focus:not(:disabled) { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 0 0 3px #fff; } .edit-site-create-template-part-modal { z-index: 1000001; } @media (min-width: 600px) { .edit-site-create-template-part-modal .components-modal__frame { max-width: 500px; } } .edit-site-create-template-part-modal__modal-actions { padding-top: 12px; } .edit-site-create-template-part-modal__area-base-control .components-base-control__label { margin: 16px 0 8px; cursor: auto; } .edit-site-create-template-part-modal__area-radio-group { width: 100%; border: 1px solid #757575; border-radius: 2px; } .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio { display: block; width: 100%; height: 100%; text-align: right; padding: 12px; } .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio, .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-secondary:hover, .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-primary:hover { margin: 0; background-color: inherit; border-bottom: 1px solid #757575; border-radius: 0; } .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio:not(:focus), .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-secondary:hover:not(:focus), .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-primary:hover:not(:focus) { box-shadow: none; } .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio:focus, .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-secondary:hover:focus, .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-primary:hover:focus { border-bottom: 1px solid #fff; } .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio:last-of-type, .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-secondary:hover:last-of-type, .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-primary:hover:last-of-type { border-bottom: none; } .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio:not(:hover), .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio[aria-checked=true] { color: #1e1e1e; cursor: auto; } .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio:not(:hover) .edit-site-create-template-part-modal__option-label div, .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio[aria-checked=true] .edit-site-create-template-part-modal__option-label div { color: #949494; } .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio .edit-site-create-template-part-modal__option-label { padding-top: 4px; white-space: normal; } .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio .edit-site-create-template-part-modal__option-label div { padding-top: 4px; font-size: 12px; } .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio .edit-site-create-template-part-modal__checkbox { margin-right: auto; min-width: 24px; } .edit-site-editor__inserter-panel, .edit-site-editor__list-view-panel { height: 100%; display: flex; flex-direction: column; } .edit-site-editor__list-view-panel { min-width: 350px; } .edit-site-editor__inserter-panel-header { padding-top: 8px; padding-left: 8px; display: flex; justify-content: flex-end; } @media (min-width: 782px) { .edit-site-editor__inserter-panel-header { display: none; } } .edit-site-editor__inserter-panel-content, .edit-site-editor__list-view-panel-content { height: calc(100% - 36px - 8px); } @media (min-width: 782px) { .edit-site-editor__inserter-panel-content { height: 100%; } } .edit-site-editor__list-view-panel-header { align-items: center; border-bottom: 1px solid #ddd; display: flex; justify-content: space-between; height: 48px; padding-right: 16px; padding-left: 4px; } .edit-site-editor__list-view-panel-content { overflow-y: auto; padding: 8px; } .edit-site-welcome-guide { width: 312px; } .edit-site-welcome-guide__image { background: #00a0d2; margin: 0 0 16px; } .edit-site-welcome-guide__image > img { display: block; max-width: 100%; -o-object-fit: cover; object-fit: cover; } .edit-site-welcome-guide__heading { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 24px; line-height: 1.4; margin: 16px 0 16px 0; padding: 0 32px; } .edit-site-welcome-guide__text { font-size: 13px; line-height: 1.4; margin: 0 0 16px 0; padding: 0 32px; } .edit-site-welcome-guide__text img { vertical-align: bottom; } .edit-site-welcome-guide__inserter-icon { margin: 0 4px; vertical-align: text-top; } .edit-site-keyboard-shortcut-help-modal__section { margin: 0 0 2rem 0; } .edit-site-keyboard-shortcut-help-modal__main-shortcuts .edit-site-keyboard-shortcut-help-modal__shortcut-list { margin-top: -25px; } .edit-site-keyboard-shortcut-help-modal__section-title { font-size: 0.9rem; font-weight: 600; } .edit-site-keyboard-shortcut-help-modal__shortcut { display: flex; align-items: baseline; padding: 0.6rem 0; border-top: 1px solid #ddd; margin-bottom: 0; } .edit-site-keyboard-shortcut-help-modal__shortcut:last-child { border-bottom: 1px solid #ddd; } .edit-site-keyboard-shortcut-help-modal__shortcut:empty { display: none; } .edit-site-keyboard-shortcut-help-modal__shortcut-term { font-weight: 600; margin: 0 1rem 0 0; text-align: left; } .edit-site-keyboard-shortcut-help-modal__shortcut-description { flex: 1; margin: 0; flex-basis: auto; } .edit-site-keyboard-shortcut-help-modal__shortcut-key-combination { display: block; background: none; margin: 0; padding: 0; } .edit-site-keyboard-shortcut-help-modal__shortcut-key-combination + .edit-site-keyboard-shortcut-help-modal__shortcut-key-combination { margin-top: 10px; } .edit-site-keyboard-shortcut-help-modal__shortcut-key { padding: 0.25rem 0.5rem; border-radius: 8%; margin: 0 0.2rem 0 0.2rem; } .edit-site-keyboard-shortcut-help-modal__shortcut-key:last-child { margin: 0 0.2rem 0 0; } html.wp-toolbar { background: #fff; } body.appearance_page_gutenberg-edit-site, body.site-editor-php { background: #fff; /* We hide legacy notices in Gutenberg Based Pages, because they were not designed in a way that scaled well. Plugins can use Gutenberg notices if they need to pass on information to the user when they are editing. */ } body.appearance_page_gutenberg-edit-site #wpcontent, body.site-editor-php #wpcontent { padding-right: 0; } body.appearance_page_gutenberg-edit-site #wpbody-content, body.site-editor-php #wpbody-content { padding-bottom: 0; } body.appearance_page_gutenberg-edit-site #wpbody-content > div:not(.edit-site):not(#screen-meta), body.site-editor-php #wpbody-content > div:not(.edit-site):not(#screen-meta) { display: none; } body.appearance_page_gutenberg-edit-site #wpfooter, body.site-editor-php #wpfooter { display: none; } body.appearance_page_gutenberg-edit-site .a11y-speak-region, body.site-editor-php .a11y-speak-region { right: -1px; top: -1px; } body.appearance_page_gutenberg-edit-site ul#adminmenu a.wp-has-current-submenu::after, body.appearance_page_gutenberg-edit-site ul#adminmenu > li.current > a.current::after, body.site-editor-php ul#adminmenu a.wp-has-current-submenu::after, body.site-editor-php ul#adminmenu > li.current > a.current::after { border-left-color: #fff; } body.appearance_page_gutenberg-edit-site .media-frame select.attachment-filters:last-of-type, body.site-editor-php .media-frame select.attachment-filters:last-of-type { width: auto; max-width: 100%; } .edit-site, .components-modal__frame { box-sizing: border-box; } .edit-site *, .edit-site *::before, .edit-site *::after, .components-modal__frame *, .components-modal__frame *::before, .components-modal__frame *::after { box-sizing: inherit; } @media (min-width: 600px) { .edit-site { bottom: 0; right: 0; min-height: 100vh; position: absolute; left: 0; top: 0; } } .edit-site .interface-interface-skeleton { top: 0; } .edit-site .interface-complementary-area__pin-unpin-item.components-button { display: none; } .edit-site .interface-interface-skeleton__content { background-color: #2f2f2f; } /** * Animations */ @keyframes edit-post__fade-in-animation { from { opacity: 0; } to { opacity: 1; } } body.admin-color-light { --wp-admin-theme-color: #0085ba; --wp-admin-theme-color--rgb: 0, 133, 186; --wp-admin-theme-color-darker-10: #0073a1; --wp-admin-theme-color-darker-10--rgb: 0, 115, 161; --wp-admin-theme-color-darker-20: #006187; --wp-admin-theme-color-darker-20--rgb: 0, 97, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-light { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-modern { --wp-admin-theme-color: #3858e9; --wp-admin-theme-color--rgb: 56, 88, 233; --wp-admin-theme-color-darker-10: #2145e6; --wp-admin-theme-color-darker-10--rgb: 33, 69, 230; --wp-admin-theme-color-darker-20: #183ad6; --wp-admin-theme-color-darker-20--rgb: 24, 58, 214; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-modern { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-blue { --wp-admin-theme-color: #096484; --wp-admin-theme-color--rgb: 9, 100, 132; --wp-admin-theme-color-darker-10: #07526c; --wp-admin-theme-color-darker-10--rgb: 7, 82, 108; --wp-admin-theme-color-darker-20: #064054; --wp-admin-theme-color-darker-20--rgb: 6, 64, 84; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-blue { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-coffee { --wp-admin-theme-color: #46403c; --wp-admin-theme-color--rgb: 70, 64, 60; --wp-admin-theme-color-darker-10: #383330; --wp-admin-theme-color-darker-10--rgb: 56, 51, 48; --wp-admin-theme-color-darker-20: #2b2724; --wp-admin-theme-color-darker-20--rgb: 43, 39, 36; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-coffee { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-ectoplasm { --wp-admin-theme-color: #523f6d; --wp-admin-theme-color--rgb: 82, 63, 109; --wp-admin-theme-color-darker-10: #46365d; --wp-admin-theme-color-darker-10--rgb: 70, 54, 93; --wp-admin-theme-color-darker-20: #3a2c4d; --wp-admin-theme-color-darker-20--rgb: 58, 44, 77; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-ectoplasm { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-midnight { --wp-admin-theme-color: #e14d43; --wp-admin-theme-color--rgb: 225, 77, 67; --wp-admin-theme-color-darker-10: #dd382d; --wp-admin-theme-color-darker-10--rgb: 221, 56, 45; --wp-admin-theme-color-darker-20: #d02c21; --wp-admin-theme-color-darker-20--rgb: 208, 44, 33; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-midnight { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-ocean { --wp-admin-theme-color: #627c83; --wp-admin-theme-color--rgb: 98, 124, 131; --wp-admin-theme-color-darker-10: #576e74; --wp-admin-theme-color-darker-10--rgb: 87, 110, 116; --wp-admin-theme-color-darker-20: #4c6066; --wp-admin-theme-color-darker-20--rgb: 76, 96, 102; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-ocean { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-sunrise { --wp-admin-theme-color: #dd823b; --wp-admin-theme-color--rgb: 221, 130, 59; --wp-admin-theme-color-darker-10: #d97426; --wp-admin-theme-color-darker-10--rgb: 217, 116, 38; --wp-admin-theme-color-darker-20: #c36922; --wp-admin-theme-color-darker-20--rgb: 195, 105, 34; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-sunrise { --wp-admin-border-width-focus: 1.5px; } }PKj l\D;;css/dist/edit-site/style.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .components-panel__header.interface-complementary-area-header__small { background: #fff; padding-right: 4px; } .components-panel__header.interface-complementary-area-header__small .interface-complementary-area-header__small-title { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; width: 100%; } @media (min-width: 782px) { .components-panel__header.interface-complementary-area-header__small { display: none; } } .interface-complementary-area-header { background: #fff; padding-right: 4px; } .interface-complementary-area-header .components-button.has-icon { display: none; margin-left: auto; } .interface-complementary-area-header .components-button.has-icon ~ .components-button { margin-left: 0; } @media (min-width: 782px) { .interface-complementary-area-header .components-button.has-icon { display: flex; } } @media (min-width: 782px) { .components-panel__header + .interface-complementary-area-header { margin-top: 0; } } .interface-complementary-area { background: #fff; color: #1e1e1e; } @media (min-width: 600px) { .interface-complementary-area { -webkit-overflow-scrolling: touch; } } @media (min-width: 782px) { .interface-complementary-area { width: 280px; } } .interface-complementary-area .components-panel { border: none; position: relative; z-index: 0; } .interface-complementary-area .components-panel__header { position: sticky; top: 0; z-index: 1; } .interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs { top: 48px; } @media (min-width: 782px) { .interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs { top: 0; } } .interface-complementary-area p { margin-top: 0; } .interface-complementary-area h2 { font-size: 13px; color: #1e1e1e; margin-bottom: 1.5em; } .interface-complementary-area h3 { font-size: 11px; text-transform: uppercase; font-weight: 500; color: #1e1e1e; margin-bottom: 1.5em; } .interface-complementary-area hr { border-top: none; border-bottom: 1px solid #f0f0f0; margin: 1.5em 0; } .interface-complementary-area div.components-toolbar-group, .interface-complementary-area div.components-toolbar { box-shadow: none; margin-bottom: 1.5em; } .interface-complementary-area div.components-toolbar-group:last-child, .interface-complementary-area div.components-toolbar:last-child { margin-bottom: 0; } .interface-complementary-area .block-editor-skip-to-selected-block:focus { top: auto; right: 10px; bottom: 10px; left: auto; } @media (min-width: 782px) { body.js.is-fullscreen-mode { margin-top: -32px; height: calc(100% + 32px); } body.js.is-fullscreen-mode #adminmenumain, body.js.is-fullscreen-mode #wpadminbar { display: none; } body.js.is-fullscreen-mode #wpcontent, body.js.is-fullscreen-mode #wpfooter { margin-left: 0; } } html.interface-interface-skeleton__html-container { position: fixed; width: 100%; } @media (min-width: 782px) { html.interface-interface-skeleton__html-container { position: initial; width: initial; } } .interface-interface-skeleton { display: flex; flex-direction: row; height: auto; max-height: 100%; position: fixed; top: 46px; left: 0; right: 0; bottom: 0; } @media (min-width: 783px) { .interface-interface-skeleton { top: 32px; } .is-fullscreen-mode .interface-interface-skeleton { top: 0; } } .interface-interface-skeleton__editor { display: flex; flex-direction: column; flex: 0 1 100%; overflow: hidden; } .interface-interface-skeleton { /* Set left position when auto-fold is not on the body element. */ left: 0; } @media (min-width: 783px) { .interface-interface-skeleton { left: 160px; } } .auto-fold .interface-interface-skeleton { /* Auto fold is when on smaller breakpoints, nav menu auto collapses. */ } @media (min-width: 783px) { .auto-fold .interface-interface-skeleton { left: 36px; } } @media (min-width: 961px) { .auto-fold .interface-interface-skeleton { left: 160px; } } /* Sidebar manually collapsed. */ .folded .interface-interface-skeleton { left: 0; } @media (min-width: 783px) { .folded .interface-interface-skeleton { left: 36px; } } body.is-fullscreen-mode .interface-interface-skeleton { left: 0 !important; } .interface-interface-skeleton__body { flex-grow: 1; display: flex; overflow: auto; overscroll-behavior-y: none; } @media (min-width: 782px) { .has-footer .interface-interface-skeleton__body { padding-bottom: 25px; } } .interface-interface-skeleton__content { flex-grow: 1; display: flex; flex-direction: column; overflow: auto; z-index: 20; } .interface-interface-skeleton__secondary-sidebar, .interface-interface-skeleton__sidebar { display: block; flex-shrink: 0; position: absolute; z-index: 100000; top: 0; right: 0; bottom: 0; left: 0; background: #fff; color: #1e1e1e; } @media (min-width: 782px) { .interface-interface-skeleton__secondary-sidebar, .interface-interface-skeleton__sidebar { position: relative !important; z-index: 90; width: auto; } } .interface-interface-skeleton__sidebar { overflow: auto; } @media (min-width: 782px) { .interface-interface-skeleton__sidebar { border-left: 1px solid #e0e0e0; } } @media (min-width: 782px) { .interface-interface-skeleton__secondary-sidebar { border-right: 1px solid #e0e0e0; } } .interface-interface-skeleton__header { flex-shrink: 0; height: auto; border-bottom: 1px solid #e0e0e0; z-index: 30; color: #1e1e1e; } .interface-interface-skeleton__footer { height: auto; flex-shrink: 0; border-top: 1px solid #e0e0e0; color: #1e1e1e; position: absolute; bottom: 0; left: 0; width: 100%; background-color: #fff; z-index: 90; display: none; } @media (min-width: 782px) { .interface-interface-skeleton__footer { display: flex; } } .interface-interface-skeleton__footer .block-editor-block-breadcrumb { z-index: 30; display: flex; background: #fff; height: 24px; align-items: center; font-size: 13px; padding: 0 18px; } .interface-interface-skeleton__actions { z-index: 100000; position: fixed !important; top: -9999em; bottom: auto; left: auto; right: 0; width: 280px; color: #1e1e1e; } .interface-interface-skeleton__actions:focus { top: auto; bottom: 0; } .interface-more-menu-dropdown { margin-left: -4px; } .interface-more-menu-dropdown .components-button { width: auto; padding: 0 2px; } @media (min-width: 600px) { .interface-more-menu-dropdown { margin-left: 0; } .interface-more-menu-dropdown .components-button { padding: 0 4px; } } .interface-more-menu-dropdown__content .components-popover__content { min-width: 280px; } @media (min-width: 480px) { .interface-more-menu-dropdown__content .components-popover__content { width: auto; max-width: 480px; } } .interface-more-menu-dropdown__content .components-popover__content .components-dropdown-menu__menu { padding: 0; } .components-popover.interface-more-menu-dropdown__content { z-index: 99998; } .interface-pinned-items { display: flex; } .interface-pinned-items .components-button:not(:first-child) { display: none; } @media (min-width: 600px) { .interface-pinned-items .components-button:not(:first-child) { display: flex; } } .interface-pinned-items .components-button { margin-left: 4px; } .interface-pinned-items .components-button svg { max-width: 24px; max-height: 24px; } .edit-site-block-editor__editor-styles-wrapper .components-button { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; padding: 6px 12px; } .edit-site-block-editor__editor-styles-wrapper .components-button.is-tertiary, .edit-site-block-editor__editor-styles-wrapper .components-button.has-icon { padding: 6px; } .edit-site-visual-editor { position: relative; background-color: #2f2f2f; align-items: center; } .edit-site-visual-editor.is-focus-mode { padding: 48px; } .edit-site-visual-editor.is-focus-mode .edit-site-visual-editor__editor-canvas { border-radius: 2px; } .edit-site-visual-editor.is-focus-mode .components-resizable-box__container { overflow: visible; } .edit-site-visual-editor .components-resizable-box__container { margin: 0 auto; overflow: auto; } .edit-site-visual-editor__editor-canvas { border-radius: 2px 2px 0 0; } .edit-site-visual-editor__back-button { position: absolute; top: 8px; left: 8px; color: #fff; } .edit-site-visual-editor__back-button:active:not([aria-disabled=true]), .edit-site-visual-editor__back-button:focus:not([aria-disabled=true]), .edit-site-visual-editor__back-button:hover { color: #f0f0f0; } .resizable-editor__drag-handle { position: absolute; top: 0; bottom: 0; padding: 0; margin: auto 0; width: 8px; height: 100px; -webkit-appearance: none; appearance: none; cursor: grab; outline: none; background: #757575; border-radius: 4px; border: 0; } .resizable-editor__drag-handle.is-left { left: -28px; } .resizable-editor__drag-handle.is-right { right: -28px; } .resizable-editor__drag-handle:hover { background: #949494; } .resizable-editor__drag-handle:active { cursor: grabbing; background: #949494; } .resizable-editor__drag-handle:focus { box-shadow: 0 0 0 1px #2f2f2f, 0 0 0 calc(var(--wp-admin-border-width-focus) + 1px) var(--wp-admin-theme-color); } .edit-site-global-styles-preview { display: flex; align-items: center; justify-content: center; min-height: 152px; line-height: 1; } .edit-site-global-styles-preview .component-color-indicator { border-radius: 50%; border: 0; height: 36px; width: 36px; margin-left: 0; padding: 0; } .edit-site-typography-panel__preview { display: flex; align-items: center; justify-content: center; min-height: 100px; margin-bottom: 16px; background: #f0f0f0; border-radius: 2px; } .edit-site-global-styles-screen-typography { margin: 16px; } .edit-site-global-styles-screen-typography__indicator { height: 24px; width: 24px; font-size: 14px; display: flex !important; align-items: center; justify-content: center; border-radius: 2px; } .edit-site-global-styles-screen-colors { margin: 16px; } .edit-site-global-styles-screen-colors .component-color-indicator { margin-left: 0; display: block; border-radius: 50%; height: 24px; width: 24px; padding: 0; border: 1px solid #ddd; background: linear-gradient(-45deg, transparent 48%, #ddd 48%, #ddd 52%, transparent 52%); } .edit-site-global-styles-header__description { padding: 0 16px; } .edit-site-global-styles-subtitle { margin-bottom: 0 !important; text-transform: uppercase; font-weight: 500 !important; font-size: 11px !important; } .edit-site-screen-color-palette-toggle.edit-site-screen-color-palette-toggle { margin-right: 16px; margin-left: 16px; width: unset; } .edit-site-screen-color-palette-toggle.edit-site-screen-color-palette-toggle .components-toggle-group-control { min-height: 32px; } h2.edit-site-global-styles-gradient-palette-panel__duotone-heading.components-heading { text-transform: uppercase; line-height: 24px; font-weight: 500; font-size: 11px; margin-bottom: 8px; } .edit-site-screen-text-color__control, .edit-site-screen-link-color__control, .edit-site-screen-background-color__control { padding: 16px; } .edit-site-header { align-items: center; background-color: #fff; display: flex; height: 60px; box-sizing: border-box; width: 100%; justify-content: space-between; } body.is-fullscreen-mode .edit-site-header { padding-left: 60px; transition: padding-left 20ms linear; transition-delay: 80ms; } @media (prefers-reduced-motion: reduce) { body.is-fullscreen-mode .edit-site-header { transition-duration: 0s; transition-delay: 0s; } } .edit-site-header .edit-site-header_start, .edit-site-header .edit-site-header_end { display: flex; } .edit-site-header .edit-site-header_center { display: flex; align-items: center; height: 100%; min-width: 0; } .edit-site-header .edit-site-header_end { justify-content: flex-end; } body.is-navigation-sidebar-open .edit-site-header { padding-left: 0; transition: padding-left 20ms linear; transition-delay: 0ms; } @media (prefers-reduced-motion: reduce) { body.is-navigation-sidebar-open .edit-site-header { transition-duration: 0s; transition-delay: 0s; } } @media (max-width: 959px) { body.is-navigation-sidebar-open .edit-site-header .edit-site-header-toolbar__inserter-toggle ~ .components-button, body.is-navigation-sidebar-open .edit-site-header .edit-site-header_end .components-button:not(.is-primary) { display: none; } body.is-navigation-sidebar-open .edit-site-header .edit-site-save-button__button { margin-right: 0; } } .edit-site-header__toolbar { display: flex; align-items: center; padding-left: 8px; } @media (min-width: 600px) { .edit-site-header__toolbar { padding-left: 24px; } } @media (min-width: 1280px) { .edit-site-header__toolbar { padding-right: 8px; } } .edit-site-header__toolbar .edit-site-header-toolbar__inserter-toggle { margin-right: 8px; min-width: 32px; width: 32px; height: 32px; padding: 0; } .edit-site-header__toolbar .edit-site-header-toolbar__inserter-toggle svg { transition: transform cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s; } @media (prefers-reduced-motion: reduce) { .edit-site-header__toolbar .edit-site-header-toolbar__inserter-toggle svg { transition-duration: 0s; transition-delay: 0s; } } .edit-site-header__toolbar .edit-site-header-toolbar__inserter-toggle.is-pressed svg { transform: rotate(45deg); } .edit-site-header__toolbar-switchers { align-items: center; display: flex; } .edit-site-header__toolbar-switchers-separator { margin: 0 -6px 0; } /** * Buttons in the Toolbar */ .edit-site-header__actions { display: inline-flex; align-items: center; flex-wrap: wrap; padding-right: 4px; } .edit-site-header__actions .interface-pinned-items { display: none; } @media (min-width: 782px) { .edit-site-header__actions .interface-pinned-items { display: inline-flex; } } .edit-site-header__actions .editor-post-saved-state, .edit-site-header__actions .components-button.components-button { margin-right: 4px; } @media (min-width: 600px) { .edit-site-header__actions .editor-post-saved-state, .edit-site-header__actions .components-button.components-button { margin-right: 12px; } } .edit-site-header__actions .editor-post-saved-state, .edit-site-header__actions .components-button.is-tertiary { padding: 0 6px; } .edit-site-header__actions .edit-site-more-menu .components-button, .edit-site-header__actions .interface-pinned-items .components-button { margin-right: 0; } @media (min-width: 600px) { .edit-site-header__actions { padding-right: 16px; } } .edit-site-header__actions-more-menu { margin-left: -4px; } .edit-site-header__actions-more-menu .components-icon-button { padding: 8px 2px; width: auto; } @media (min-width: 600px) { .edit-site-header__actions-more-menu { margin-left: 4px; } .edit-site-header__actions-more-menu .components-icon-button { padding: 8px 4px; } } .edit-site-document-actions { display: flex; flex-direction: column; justify-content: center; height: 100%; min-width: 0; } .edit-site-document-actions .edit-site-document-actions__title-wrapper { display: flex; flex-direction: row; justify-content: center; align-items: center; min-width: 0; } .edit-site-document-actions .edit-site-document-actions__title-wrapper .components-dropdown { display: inline-flex; margin-left: 4px; } .edit-site-document-actions .edit-site-document-actions__title-wrapper .components-dropdown .components-button { min-width: 0; padding: 0; } .edit-site-document-actions .edit-site-document-actions__title-wrapper > h1 { margin: 0; min-width: 0; } .edit-site-document-actions .edit-site-document-actions__title { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 120px; } @media (min-width: 782px) { .edit-site-document-actions .edit-site-document-actions__title { max-width: 75px; } } @media (min-width: 1080px) { .edit-site-document-actions .edit-site-document-actions__title { max-width: 180px; } } .edit-site-document-actions .edit-site-document-actions__secondary-item { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 0; opacity: 0; padding: 0; transition: all ease 0.2s; background: #e0e0e0; border-radius: 2px; } @media (prefers-reduced-motion: reduce) { .edit-site-document-actions .edit-site-document-actions__secondary-item { transition-duration: 0s; transition-delay: 0s; } } .edit-site-document-actions.has-secondary-label .edit-site-document-actions__secondary-item { opacity: 1; padding: 0 4px; max-width: 180px; margin-left: 6px; } .edit-site-document-actions__info-dropdown > .components-popover__content > div { padding: 0; min-width: 240px; } .edit-site-more-menu { margin-left: -4px; } .edit-site-more-menu .components-button { width: auto; padding: 0 2px; } @media (min-width: 600px) { .edit-site-more-menu { margin-left: 4px; } .edit-site-more-menu .components-button { padding: 0 4px; } } .edit-site-more-menu__content .components-popover__content { min-width: 260px; } .edit-site-more-menu__content .components-popover__content .components-dropdown-menu__menu { padding: 0; } .components-popover.edit-site-more-menu__content { z-index: 99998; } .edit-site-navigation-toggle { align-items: center; background: #1e1e1e; border-radius: 0; display: flex; position: absolute; z-index: 31; height: 60px; width: 60px; } .edit-site-navigation-toggle__button { align-items: center; background: #1e1e1e; border-radius: 0; color: #fff; height: 61px; width: 60px; z-index: 1; margin-bottom: -1px; } .edit-site-navigation-toggle__button.has-icon { min-width: 60px; } .edit-site-navigation-toggle__button.has-icon:hover, .edit-site-navigation-toggle__button.has-icon:active { color: #fff; } .edit-site-navigation-toggle__button.has-icon:focus { box-shadow: none; } .edit-site-navigation-toggle__button.has-icon::before { transition: box-shadow 0.1s ease; content: ""; display: block; position: absolute; top: 9px; right: 9px; bottom: 9px; left: 9px; border-radius: 4px; box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) #1e1e1e; } @media (prefers-reduced-motion: reduce) { .edit-site-navigation-toggle__button.has-icon::before { transition-duration: 0s; transition-delay: 0s; } } .edit-site-navigation-toggle__button.has-icon:hover::before { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) #757575; } .edit-site-navigation-toggle__button.has-icon:focus::before { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) rgba(255, 255, 255, 0.1), inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .edit-site-navigation-toggle__button .edit-site-navigation-toggle__site-icon { width: 36px; height: 36px; border-radius: 2px; -o-object-fit: cover; object-fit: cover; margin-top: -1px; } .edit-site-navigation-panel { height: 100%; position: relative; width: 0; overflow: hidden; background: #1e1e1e; color: #fff; transition: width 100ms linear; } @media (prefers-reduced-motion: reduce) { .edit-site-navigation-panel { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 782px) { .interface-interface-skeleton.has-footer .edit-site-navigation-panel { height: calc(100% - 25px); } } .edit-site-navigation-panel__inner { position: relative; width: 300px; height: 100%; overflow: hidden; visibility: hidden; transition: visibility 100ms linear; } @media (prefers-reduced-motion: reduce) { .edit-site-navigation-panel__inner { transition-duration: 0s; transition-delay: 0s; } } .edit-site-navigation-panel.is-open { width: 300px; } .edit-site-navigation-panel.is-open .edit-site-navigation-panel__inner { visibility: visible; } .edit-site-navigation-panel__site-title-container { height: 60px; padding-left: 60px; margin: 0 16px 0 8px; display: flex; align-items: center; } .edit-site-navigation-panel__site-title { font-style: normal; font-weight: 600; font-size: 14px; /* Matches menu items */ line-height: 20px; color: #ddd; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; } .edit-site-navigation-panel__scroll-container { overflow-x: hidden; overflow-y: auto; height: calc(100% - 60px); } .edit-site-navigation-panel__back-to-dashboard.components-button.is-tertiary { height: 36px; margin-top: 24px; padding: 8px 16px 8px 8px; } .edit-site-navigation-panel__back-to-dashboard.components-button.is-tertiary:focus:not(:disabled) { border-bottom-color: transparent; } .edit-site-navigation-panel__preview { display: none; border: 1px solid #ccc; width: 300px; padding: 16px; background: #fff; box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05); border-radius: 2px; position: absolute; top: 73px; left: 312px; color: #1e1e1e; z-index: 32; } @media (min-width: 782px) { .edit-site-navigation-panel__preview { display: block; } } .edit-site-navigation-panel__template-item { display: block; } .edit-site-navigation-panel__template-item .components-button { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; height: auto; min-height: 36px; text-align: left; padding-left: 16px; padding-right: 16px; color: inherit; } .edit-site-navigation-panel__template-item-title { font-size: 14px; line-height: 20px; } .edit-site-navigation-panel__template-item-title em { margin-right: 1ch; } .edit-site-navigation-panel__template-parts .components-navigation__menu-title-heading { text-transform: capitalize; } .edit-site-navigation-panel__template-part-item .components-navigation__item-title { text-transform: capitalize; } .components-navigation__item + .edit-site-navigation-panel__template-item { margin-top: 16px; } .edit-site-navigation-panel__template-item + .edit-site-navigation-panel__template-item { margin-top: 8px; } .edit-site-navigation-panel__info-wrapper { padding: 4px 0; } .edit-site-navigation-panel__template-item-description { padding-top: 8px; font-size: 12px; line-height: 16px; } .edit-site-navigation-panel__new-template-dropdown { margin: 0 0 0 12px; } .edit-site-navigation-panel__new-template-dropdown button { margin: 0; } @media (min-width: 600px) { .edit-site-navigation-panel__new-template-popover { min-width: 300px; } } .edit-site-list-header { position: relative; align-items: center; background-color: #fff; display: flex; height: 60px; box-sizing: border-box; width: 100%; justify-content: flex-end; padding-right: 16px; } body.is-fullscreen-mode .edit-site-list-header { padding-left: 60px; transition: padding-left 20ms linear; transition-delay: 80ms; } @media (prefers-reduced-motion: reduce) { body.is-fullscreen-mode .edit-site-list-header { transition-duration: 0s; transition-delay: 0s; } } .edit-site-list-header .edit-site-list-header__title { position: absolute; left: 0; width: 100%; text-align: center; font-size: 20px; padding: 0; margin: 0; } .edit-site-list-header__right { position: relative; } .edit-site .edit-site-list .interface-interface-skeleton__editor { min-width: 100%; } @media (min-width: 782px) { .edit-site .edit-site-list .interface-interface-skeleton__editor { min-width: 0; } } .edit-site .edit-site-list .interface-interface-skeleton__content { background: #fff; align-items: center; padding: 16px; } @media (min-width: 782px) { .edit-site .edit-site-list .interface-interface-skeleton__content { padding: 72px; } } .edit-site-list-table { width: 100%; border: 1px solid #ddd; border-radius: 2px; margin: 0; overflow: hidden; border-spacing: 0; max-width: 960px; } .edit-site-list-table tr { display: flex; align-items: center; padding: 16px; box-sizing: border-box; border-top: 1px solid #f0f0f0; margin: 0; } .edit-site-list-table tr:first-child { border-top: 0; } @media (min-width: 782px) { .edit-site-list-table tr { padding: 24px 32px; } } .edit-site-list-table tr .edit-site-list-table-column:nth-child(1) { width: calc(60% - 18px); padding-right: 24px; } .edit-site-list-table tr .edit-site-list-table-column:nth-child(1) a { display: inline-block; text-decoration: none; font-weight: 500; margin-bottom: 4px; } .edit-site-list-table tr .edit-site-list-table-column:nth-child(2) { width: calc(40% - 18px); } .edit-site-list-table tr .edit-site-list-table-column:nth-child(3) { min-width: 36px; flex-shrink: 0; } .edit-site-list-table tr.edit-site-list-table-head { font-size: 16px; font-weight: 600; text-align: left; color: #1e1e1e; border-top: none; border-bottom: 1px solid #ddd; } .edit-site-list-table tr.edit-site-list-table-head th { font-weight: inherit; } @media (min-width: 782px) { .edit-site-list.is-navigation-open .components-snackbar-list { margin-left: 300px; } } @media (min-width: 782px) { .edit-site-list__rename-modal .components-base-control { width: 320px; } } .edit-site-list__rename-modal .components-modal__header { border-bottom: none; } .edit-site-list__rename-modal .components-modal__content::before { margin-bottom: 4px; } .edit-site-list__rename-modal-actions { margin-top: 12px; } .edit-site-template__actions button:not(:last-child) { margin-right: 8px; } .edit-site-list-added-by__icon { display: flex; flex-shrink: 0; position: relative; align-items: center; justify-content: center; width: 32px; height: 32px; background: #2f2f2f; border-radius: 100%; } .edit-site-list-added-by__icon svg { fill: #fff; } .edit-site-list-added-by__icon.is-customized::after { position: absolute; content: ""; background: var(--wp-admin-theme-color); height: 8px; width: 8px; outline: 2px solid #fff; border-radius: 100%; top: -1px; right: -1px; } .edit-site-list-added-by__avatar { flex-shrink: 0; overflow: hidden; border-radius: 100%; background: #2f2f2f; width: 32px; height: 32px; } .edit-site-list-added-by__avatar img { width: 32px; height: 32px; -o-object-fit: cover; object-fit: cover; opacity: 0; transition: opacity 0.1s linear; } @media (prefers-reduced-motion: reduce) { .edit-site-list-added-by__avatar img { transition-duration: 0s; transition-delay: 0s; } } .edit-site-list-added-by__avatar.is-loaded img { opacity: 1; } .edit-site-new-template-dropdown .components-dropdown-menu__toggle { padding: 6px 12px; } @media (min-width: 600px) { .edit-site-new-template-dropdown .edit-site-new-template-dropdown__popover { min-width: 300px; } } .edit-site-sidebar { width: 280px; } .edit-site-sidebar > .components-panel { border-left: 0; border-right: 0; margin-bottom: -1px; margin-top: -1px; } .edit-site-sidebar > .components-panel > .components-panel__header { background: #f0f0f0; } .edit-site-sidebar .block-editor-block-inspector__card { margin: 0; } .edit-site-global-styles-sidebar .interface-complementary-area-header .components-button.has-icon { margin-left: 0; } .edit-site-global-styles-sidebar__reset-button.components-button { margin-left: auto; } .edit-site-global-styles-sidebar__border-controls-row { display: flex; justify-content: space-between; margin-bottom: 12px; } .edit-site-global-styles-sidebar__border-controls-row > * { width: calc(50% - 8px); } .edit-site-global-styles-sidebar__border-controls-row .components-border-style-control__buttons { margin-bottom: 0; } .edit-site-global-styles-sidebar .components-navigation__menu-title-heading { font-size: 15.6px; font-weight: 500; } .edit-site-global-styles-sidebar .components-navigation__item > button span { font-weight: 500; } .edit-site-typography-panel, .edit-site-global-styles-sidebar .block-editor-panel-color-gradient-settings { border: 0; } .edit-site-global-styles-sidebar__blocks-group { padding-top: 24px; border-top: 1px solid #e0e0e0; } .edit-site-global-styles-sidebar__blocks-group-help { padding: 0 16px; } .edit-site-global-styles-color-palette-panel, .edit-site-global-styles-gradient-palette-panel { padding: 16px; } .edit-site-global-styles-sidebar__beta { display: inline-flex; margin-left: 8px; padding: 0 8px; height: 24px; border-radius: 2px; background-color: #000; color: #fff; align-items: center; font-size: 12px; line-height: 1; } .components-panel__header.edit-site-sidebar__panel-tabs { justify-content: flex-start; padding-left: 0; padding-right: 16px; border-top: 0; margin-top: 0; } .components-panel__header.edit-site-sidebar__panel-tabs ul { display: flex; } .components-panel__header.edit-site-sidebar__panel-tabs li { margin: 0; } .components-panel__header.edit-site-sidebar__panel-tabs .components-button.has-icon { display: none; margin: 0 0 0 auto; padding: 0; min-width: 24px; height: 24px; } @media (min-width: 782px) { .components-panel__header.edit-site-sidebar__panel-tabs .components-button.has-icon { display: flex; } } .components-button.edit-site-sidebar__panel-tab { border-radius: 0; height: 48px; background: transparent; border: none; box-shadow: none; cursor: pointer; display: inline-block; padding: 3px 15px; margin-left: 0; font-weight: 500; } .components-button.edit-site-sidebar__panel-tab::after { content: attr(data-label); display: block; font-weight: 600; height: 0; overflow: hidden; speak: none; visibility: hidden; } .components-button.edit-site-sidebar__panel-tab.is-active { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) transparent, inset 0 -4px 0 0 var(--wp-admin-theme-color); position: relative; z-index: 1; } .components-button.edit-site-sidebar__panel-tab.is-active::before { content: ""; position: absolute; top: 0; bottom: 1px; right: 0; left: 0; border-bottom: 4px solid transparent; } .components-button.edit-site-sidebar__panel-tab:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); position: relative; z-index: 1; } .components-button.edit-site-sidebar__panel-tab.is-active:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 -4px 0 0 var(--wp-admin-theme-color); } .edit-site-template-card { display: flex; align-items: flex-start; } .edit-site-template-card__content { flex-grow: 1; margin-bottom: 4px; } .edit-site-template-card__title { font-weight: 500; line-height: 24px; } .edit-site-template-card__title.edit-site-template-card__title { margin: 0 0 4px; } .edit-site-template-card__description { font-size: 13px; margin: 0 0 16px; } .edit-site-template-card__icon { flex: 0 0 24px; margin-right: 12px; width: 24px; height: 24px; } h3.edit-site-template-card__template-areas-title { font-weight: 500; margin: 0 0 8px; } .edit-site-template-card__template-areas-list { margin: 0; } .edit-site-template-card__template-areas-list > li { margin: 0; } .edit-site-template-card__template-areas-item { width: 100%; } .edit-site-template-card__template-areas-item.components-button.has-icon { padding: 0; } html #wpadminbar { display: none; } html.wp-toolbar { padding-top: 0; } .edit-site-editor__toggle-save-panel { z-index: 100000; position: fixed !important; top: -9999em; bottom: auto; left: auto; right: 0; width: 280px; background-color: #fff; border: 1px dotted #ddd; height: auto !important; padding: 24px; display: flex; justify-content: center; } .interface-interface-skeleton__actions:focus .edit-site-editor__toggle-save-panel, .interface-interface-skeleton__actions:focus-within .edit-site-editor__toggle-save-panel { top: auto; bottom: 0; } .edit-site-visual-editor { position: relative; height: 100%; display: block; } .edit-site-visual-editor iframe { display: block; width: 100%; height: 100%; background-color: #fff; } .edit-site .components-editor-notices__snackbar { position: fixed; right: 0; bottom: 40px; padding-left: 16px; padding-right: 16px; } .edit-site .components-editor-notices__snackbar { /* Set left position when auto-fold is not on the body element. */ left: 0; } @media (min-width: 783px) { .edit-site .components-editor-notices__snackbar { left: 160px; } } .auto-fold .edit-site .components-editor-notices__snackbar { /* Auto fold is when on smaller breakpoints, nav menu auto collapses. */ } @media (min-width: 783px) { .auto-fold .edit-site .components-editor-notices__snackbar { left: 36px; } } @media (min-width: 961px) { .auto-fold .edit-site .components-editor-notices__snackbar { left: 160px; } } /* Sidebar manually collapsed. */ .folded .edit-site .components-editor-notices__snackbar { left: 0; } @media (min-width: 783px) { .folded .edit-site .components-editor-notices__snackbar { left: 36px; } } body.is-fullscreen-mode .edit-site .components-editor-notices__snackbar { left: 0 !important; } .edit-site-template-details .edit-site-template-details__group { margin: 0; padding: 16px; } .edit-site-template-details .edit-site-template-details__group + .edit-site-template-details__group { border-top: 1px solid #ccc; } .edit-site-template-details .edit-site-template-details__title { margin: 0; } .edit-site-template-details .edit-site-template-details__description { margin: 12px 0 0; color: #757575; } .edit-site-template-details .edit-site-template-details__group.edit-site-template-details__template-areas { padding: 8px; } .edit-site-template-details .edit-site-template-details__template-areas-item { position: relative; } .edit-site-template-details .edit-site-template-details__template-areas-item .edit-site-template-details__template-areas-item-more { position: absolute; right: 0; top: 0; bottom: 0; margin: auto 0; } .edit-site-template-details .edit-site-template-details__revert { padding: 12px 8px; } .edit-site-template-details .edit-site-template-details__revert-button { height: auto; padding: 4px 8px; text-align: left; } .edit-site-template-details .edit-site-template-details__revert-button:focus:not(:disabled) { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 0 0 3px #fff; } .edit-site-template-details .edit-site-template-details__show-all-button.components-button { display: flex; justify-content: center; background: #1e1e1e; color: #fff; width: 100%; height: 44px; border-radius: 0; } .edit-site-template-details .edit-site-template-details__show-all-button.components-button:hover { color: #fff; } .edit-site-template-details .edit-site-template-details__show-all-button.components-button:active { color: #ccc; } .edit-site-template-details .edit-site-template-details__show-all-button.components-button:focus:not(:disabled) { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 0 0 3px #fff; } .edit-site-create-template-part-modal { z-index: 1000001; } @media (min-width: 600px) { .edit-site-create-template-part-modal .components-modal__frame { max-width: 500px; } } .edit-site-create-template-part-modal__modal-actions { padding-top: 12px; } .edit-site-create-template-part-modal__area-base-control .components-base-control__label { margin: 16px 0 8px; cursor: auto; } .edit-site-create-template-part-modal__area-radio-group { width: 100%; border: 1px solid #757575; border-radius: 2px; } .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio { display: block; width: 100%; height: 100%; text-align: left; padding: 12px; } .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio, .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-secondary:hover, .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-primary:hover { margin: 0; background-color: inherit; border-bottom: 1px solid #757575; border-radius: 0; } .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio:not(:focus), .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-secondary:hover:not(:focus), .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-primary:hover:not(:focus) { box-shadow: none; } .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio:focus, .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-secondary:hover:focus, .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-primary:hover:focus { border-bottom: 1px solid #fff; } .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio:last-of-type, .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-secondary:hover:last-of-type, .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio.is-primary:hover:last-of-type { border-bottom: none; } .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio:not(:hover), .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio[aria-checked=true] { color: #1e1e1e; cursor: auto; } .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio:not(:hover) .edit-site-create-template-part-modal__option-label div, .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio[aria-checked=true] .edit-site-create-template-part-modal__option-label div { color: #949494; } .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio .edit-site-create-template-part-modal__option-label { padding-top: 4px; white-space: normal; } .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio .edit-site-create-template-part-modal__option-label div { padding-top: 4px; font-size: 12px; } .edit-site-create-template-part-modal__area-radio-group .components-button.edit-site-create-template-part-modal__area-radio .edit-site-create-template-part-modal__checkbox { margin-left: auto; min-width: 24px; } .edit-site-editor__inserter-panel, .edit-site-editor__list-view-panel { height: 100%; display: flex; flex-direction: column; } .edit-site-editor__list-view-panel { min-width: 350px; } .edit-site-editor__inserter-panel-header { padding-top: 8px; padding-right: 8px; display: flex; justify-content: flex-end; } @media (min-width: 782px) { .edit-site-editor__inserter-panel-header { display: none; } } .edit-site-editor__inserter-panel-content, .edit-site-editor__list-view-panel-content { height: calc(100% - 36px - 8px); } @media (min-width: 782px) { .edit-site-editor__inserter-panel-content { height: 100%; } } .edit-site-editor__list-view-panel-header { align-items: center; border-bottom: 1px solid #ddd; display: flex; justify-content: space-between; height: 48px; padding-left: 16px; padding-right: 4px; } .edit-site-editor__list-view-panel-content { overflow-y: auto; padding: 8px; } .edit-site-welcome-guide { width: 312px; } .edit-site-welcome-guide__image { background: #00a0d2; margin: 0 0 16px; } .edit-site-welcome-guide__image > img { display: block; max-width: 100%; -o-object-fit: cover; object-fit: cover; } .edit-site-welcome-guide__heading { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 24px; line-height: 1.4; margin: 16px 0 16px 0; padding: 0 32px; } .edit-site-welcome-guide__text { font-size: 13px; line-height: 1.4; margin: 0 0 16px 0; padding: 0 32px; } .edit-site-welcome-guide__text img { vertical-align: bottom; } .edit-site-welcome-guide__inserter-icon { margin: 0 4px; vertical-align: text-top; } .edit-site-keyboard-shortcut-help-modal__section { margin: 0 0 2rem 0; } .edit-site-keyboard-shortcut-help-modal__main-shortcuts .edit-site-keyboard-shortcut-help-modal__shortcut-list { margin-top: -25px; } .edit-site-keyboard-shortcut-help-modal__section-title { font-size: 0.9rem; font-weight: 600; } .edit-site-keyboard-shortcut-help-modal__shortcut { display: flex; align-items: baseline; padding: 0.6rem 0; border-top: 1px solid #ddd; margin-bottom: 0; } .edit-site-keyboard-shortcut-help-modal__shortcut:last-child { border-bottom: 1px solid #ddd; } .edit-site-keyboard-shortcut-help-modal__shortcut:empty { display: none; } .edit-site-keyboard-shortcut-help-modal__shortcut-term { font-weight: 600; margin: 0 0 0 1rem; text-align: right; } .edit-site-keyboard-shortcut-help-modal__shortcut-description { flex: 1; margin: 0; flex-basis: auto; } .edit-site-keyboard-shortcut-help-modal__shortcut-key-combination { display: block; background: none; margin: 0; padding: 0; } .edit-site-keyboard-shortcut-help-modal__shortcut-key-combination + .edit-site-keyboard-shortcut-help-modal__shortcut-key-combination { margin-top: 10px; } .edit-site-keyboard-shortcut-help-modal__shortcut-key { padding: 0.25rem 0.5rem; border-radius: 8%; margin: 0 0.2rem 0 0.2rem; } .edit-site-keyboard-shortcut-help-modal__shortcut-key:last-child { margin: 0 0 0 0.2rem; } html.wp-toolbar { background: #fff; } body.appearance_page_gutenberg-edit-site, body.site-editor-php { background: #fff; /* We hide legacy notices in Gutenberg Based Pages, because they were not designed in a way that scaled well. Plugins can use Gutenberg notices if they need to pass on information to the user when they are editing. */ } body.appearance_page_gutenberg-edit-site #wpcontent, body.site-editor-php #wpcontent { padding-left: 0; } body.appearance_page_gutenberg-edit-site #wpbody-content, body.site-editor-php #wpbody-content { padding-bottom: 0; } body.appearance_page_gutenberg-edit-site #wpbody-content > div:not(.edit-site):not(#screen-meta), body.site-editor-php #wpbody-content > div:not(.edit-site):not(#screen-meta) { display: none; } body.appearance_page_gutenberg-edit-site #wpfooter, body.site-editor-php #wpfooter { display: none; } body.appearance_page_gutenberg-edit-site .a11y-speak-region, body.site-editor-php .a11y-speak-region { left: -1px; top: -1px; } body.appearance_page_gutenberg-edit-site ul#adminmenu a.wp-has-current-submenu::after, body.appearance_page_gutenberg-edit-site ul#adminmenu > li.current > a.current::after, body.site-editor-php ul#adminmenu a.wp-has-current-submenu::after, body.site-editor-php ul#adminmenu > li.current > a.current::after { border-right-color: #fff; } body.appearance_page_gutenberg-edit-site .media-frame select.attachment-filters:last-of-type, body.site-editor-php .media-frame select.attachment-filters:last-of-type { width: auto; max-width: 100%; } .edit-site, .components-modal__frame { box-sizing: border-box; } .edit-site *, .edit-site *::before, .edit-site *::after, .components-modal__frame *, .components-modal__frame *::before, .components-modal__frame *::after { box-sizing: inherit; } @media (min-width: 600px) { .edit-site { bottom: 0; left: 0; min-height: 100vh; position: absolute; right: 0; top: 0; } } .edit-site .interface-interface-skeleton { top: 0; } .edit-site .interface-complementary-area__pin-unpin-item.components-button { display: none; } .edit-site .interface-interface-skeleton__content { background-color: #2f2f2f; } /** * Animations */ @keyframes edit-post__fade-in-animation { from { opacity: 0; } to { opacity: 1; } } body.admin-color-light { --wp-admin-theme-color: #0085ba; --wp-admin-theme-color--rgb: 0, 133, 186; --wp-admin-theme-color-darker-10: #0073a1; --wp-admin-theme-color-darker-10--rgb: 0, 115, 161; --wp-admin-theme-color-darker-20: #006187; --wp-admin-theme-color-darker-20--rgb: 0, 97, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-light { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-modern { --wp-admin-theme-color: #3858e9; --wp-admin-theme-color--rgb: 56, 88, 233; --wp-admin-theme-color-darker-10: #2145e6; --wp-admin-theme-color-darker-10--rgb: 33, 69, 230; --wp-admin-theme-color-darker-20: #183ad6; --wp-admin-theme-color-darker-20--rgb: 24, 58, 214; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-modern { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-blue { --wp-admin-theme-color: #096484; --wp-admin-theme-color--rgb: 9, 100, 132; --wp-admin-theme-color-darker-10: #07526c; --wp-admin-theme-color-darker-10--rgb: 7, 82, 108; --wp-admin-theme-color-darker-20: #064054; --wp-admin-theme-color-darker-20--rgb: 6, 64, 84; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-blue { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-coffee { --wp-admin-theme-color: #46403c; --wp-admin-theme-color--rgb: 70, 64, 60; --wp-admin-theme-color-darker-10: #383330; --wp-admin-theme-color-darker-10--rgb: 56, 51, 48; --wp-admin-theme-color-darker-20: #2b2724; --wp-admin-theme-color-darker-20--rgb: 43, 39, 36; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-coffee { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-ectoplasm { --wp-admin-theme-color: #523f6d; --wp-admin-theme-color--rgb: 82, 63, 109; --wp-admin-theme-color-darker-10: #46365d; --wp-admin-theme-color-darker-10--rgb: 70, 54, 93; --wp-admin-theme-color-darker-20: #3a2c4d; --wp-admin-theme-color-darker-20--rgb: 58, 44, 77; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-ectoplasm { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-midnight { --wp-admin-theme-color: #e14d43; --wp-admin-theme-color--rgb: 225, 77, 67; --wp-admin-theme-color-darker-10: #dd382d; --wp-admin-theme-color-darker-10--rgb: 221, 56, 45; --wp-admin-theme-color-darker-20: #d02c21; --wp-admin-theme-color-darker-20--rgb: 208, 44, 33; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-midnight { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-ocean { --wp-admin-theme-color: #627c83; --wp-admin-theme-color--rgb: 98, 124, 131; --wp-admin-theme-color-darker-10: #576e74; --wp-admin-theme-color-darker-10--rgb: 87, 110, 116; --wp-admin-theme-color-darker-20: #4c6066; --wp-admin-theme-color-darker-20--rgb: 76, 96, 102; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-ocean { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-sunrise { --wp-admin-theme-color: #dd823b; --wp-admin-theme-color--rgb: 221, 130, 59; --wp-admin-theme-color-darker-10: #d97426; --wp-admin-theme-color-darker-10--rgb: 217, 116, 38; --wp-admin-theme-color-darker-20: #c36922; --wp-admin-theme-color-darker-20--rgb: 195, 105, 34; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-sunrise { --wp-admin-border-width-focus: 1.5px; } }PKj l\ z z &css/dist/block-directory/style.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.block-directory-block-ratings>span{display:flex}.block-directory-block-ratings svg{fill:#1e1e1e;margin-left:-4px}.block-directory-block-ratings .block-directory-block-ratings__star-empty{fill:#ccc}.block-directory-compact-list{margin:0;list-style:none}.block-directory-compact-list__item{display:flex;flex-direction:row;align-items:center;margin-bottom:16px}.block-directory-compact-list__item:last-child{margin-bottom:0}.block-directory-compact-list__item-details{margin-left:8px}.block-directory-compact-list__item-title{font-weight:500}.block-directory-compact-list__item-author{color:#757575;font-size:11px}.block-directory-downloadable-block-icon{min-width:54px;width:54px;height:54px;vertical-align:middle;border:1px solid #ddd}.block-directory-downloadable-block-list-item{padding:12px;width:100%;height:auto;text-align:left;display:grid;grid-template-columns:auto 1fr}.block-directory-downloadable-block-list-item:hover{box-shadow:0 0 0 2px var(--wp-admin-theme-color)}.block-directory-downloadable-block-list-item.is-busy{background:transparent}.block-directory-downloadable-block-list-item.is-busy .block-directory-downloadable-block-list-item__author{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.block-directory-downloadable-block-list-item:disabled,.block-directory-downloadable-block-list-item[aria-disabled]{opacity:1}.block-directory-downloadable-block-list-item__icon{position:relative;margin-right:16px;align-self:flex-start}.block-directory-downloadable-block-list-item__icon .block-directory-downloadable-block-list-item__spinner{position:absolute;top:0;right:0;bottom:0;left:0;background:hsla(0,0%,100%,.75);display:flex;align-items:center;justify-content:center}.block-directory-block-ratings{display:block;margin-top:4px}.block-directory-downloadable-block-list-item__details{color:#1e1e1e}.block-directory-downloadable-block-list-item__title{display:block;font-weight:600}.block-directory-downloadable-block-list-item__author{display:block;margin-top:4px;font-weight:400}.block-directory-downloadable-block-list-item__desc{display:block;margin-top:8px}.block-directory-downloadable-block-notice{margin:8px 0 0;color:#cc1818}.block-directory-downloadable-block-notice__content{padding-right:12px;margin-bottom:8px}.block-directory-downloadable-blocks-panel{padding:16px}.block-directory-downloadable-blocks-panel.has-blocks-loading{font-style:normal;padding:0;margin:112px 0;text-align:center;color:#757575}.block-directory-downloadable-blocks-panel.has-blocks-loading .components-spinner{float:inherit}.block-directory-downloadable-blocks-panel__no-local{margin:48px 0;padding:0 64px;color:#757575;text-align:center}.block-directory-downloadable-blocks-panel__title{margin:0 0 4px;font-size:14px}.block-directory-downloadable-blocks-panel__description{margin-top:0}.block-directory-downloadable-blocks-panel button{margin-top:4px}.installed-blocks-pre-publish-panel__copy{margin-top:0}PKj l\d{ { *css/dist/block-directory/style-rtl.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.block-directory-block-ratings>span{display:flex}.block-directory-block-ratings svg{fill:#1e1e1e;margin-right:-4px}.block-directory-block-ratings .block-directory-block-ratings__star-empty{fill:#ccc}.block-directory-compact-list{margin:0;list-style:none}.block-directory-compact-list__item{display:flex;flex-direction:row;align-items:center;margin-bottom:16px}.block-directory-compact-list__item:last-child{margin-bottom:0}.block-directory-compact-list__item-details{margin-right:8px}.block-directory-compact-list__item-title{font-weight:500}.block-directory-compact-list__item-author{color:#757575;font-size:11px}.block-directory-downloadable-block-icon{min-width:54px;width:54px;height:54px;vertical-align:middle;border:1px solid #ddd}.block-directory-downloadable-block-list-item{padding:12px;width:100%;height:auto;text-align:right;display:grid;grid-template-columns:auto 1fr}.block-directory-downloadable-block-list-item:hover{box-shadow:0 0 0 2px var(--wp-admin-theme-color)}.block-directory-downloadable-block-list-item.is-busy{background:transparent}.block-directory-downloadable-block-list-item.is-busy .block-directory-downloadable-block-list-item__author{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.block-directory-downloadable-block-list-item:disabled,.block-directory-downloadable-block-list-item[aria-disabled]{opacity:1}.block-directory-downloadable-block-list-item__icon{position:relative;margin-left:16px;align-self:flex-start}.block-directory-downloadable-block-list-item__icon .block-directory-downloadable-block-list-item__spinner{position:absolute;top:0;left:0;bottom:0;right:0;background:hsla(0,0%,100%,.75);display:flex;align-items:center;justify-content:center}.block-directory-block-ratings{display:block;margin-top:4px}.block-directory-downloadable-block-list-item__details{color:#1e1e1e}.block-directory-downloadable-block-list-item__title{display:block;font-weight:600}.block-directory-downloadable-block-list-item__author{display:block;margin-top:4px;font-weight:400}.block-directory-downloadable-block-list-item__desc{display:block;margin-top:8px}.block-directory-downloadable-block-notice{margin:8px 0 0;color:#cc1818}.block-directory-downloadable-block-notice__content{padding-left:12px;margin-bottom:8px}.block-directory-downloadable-blocks-panel{padding:16px}.block-directory-downloadable-blocks-panel.has-blocks-loading{font-style:normal;padding:0;margin:112px 0;text-align:center;color:#757575}.block-directory-downloadable-blocks-panel.has-blocks-loading .components-spinner{float:inherit}.block-directory-downloadable-blocks-panel__no-local{margin:48px 0;padding:0 64px;color:#757575;text-align:center}.block-directory-downloadable-blocks-panel__title{margin:0 0 4px;font-size:14px}.block-directory-downloadable-blocks-panel__description{margin-top:0}.block-directory-downloadable-blocks-panel button{margin-top:4px}.installed-blocks-pre-publish-panel__copy{margin-top:0}PKj l\e``&css/dist/block-directory/style-rtl.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .block-directory-block-ratings > span { display: flex; } .block-directory-block-ratings svg { fill: #1e1e1e; margin-right: -4px; } .block-directory-block-ratings .block-directory-block-ratings__star-empty { fill: #ccc; } .block-directory-compact-list { margin: 0; list-style: none; } .block-directory-compact-list__item { display: flex; flex-direction: row; align-items: center; margin-bottom: 16px; } .block-directory-compact-list__item:last-child { margin-bottom: 0; } .block-directory-compact-list__item-details { margin-right: 8px; } .block-directory-compact-list__item-title { font-weight: 500; } .block-directory-compact-list__item-author { color: #757575; font-size: 11px; } .block-directory-downloadable-block-icon { min-width: 54px; width: 54px; height: 54px; vertical-align: middle; border: 1px solid #ddd; } .block-directory-downloadable-block-list-item { padding: 12px; width: 100%; height: auto; text-align: right; display: grid; grid-template-columns: auto 1fr; } .block-directory-downloadable-block-list-item:hover { box-shadow: 0 0 0 2px var(--wp-admin-theme-color); } .block-directory-downloadable-block-list-item.is-busy { background: transparent; } .block-directory-downloadable-block-list-item.is-busy .block-directory-downloadable-block-list-item__author { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important; } .block-directory-downloadable-block-list-item:disabled, .block-directory-downloadable-block-list-item[aria-disabled] { opacity: 1; } .block-directory-downloadable-block-list-item__icon { position: relative; margin-left: 16px; align-self: flex-start; } .block-directory-downloadable-block-list-item__icon .block-directory-downloadable-block-list-item__spinner { position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: rgba(255, 255, 255, 0.75); display: flex; align-items: center; justify-content: center; } .block-directory-block-ratings { display: block; margin-top: 4px; } .block-directory-downloadable-block-list-item__details { color: #1e1e1e; } .block-directory-downloadable-block-list-item__title { display: block; font-weight: 600; } .block-directory-downloadable-block-list-item__author { display: block; margin-top: 4px; font-weight: normal; } .block-directory-downloadable-block-list-item__desc { display: block; margin-top: 8px; } .block-directory-downloadable-block-notice { margin: 8px 0 0; color: #cc1818; } .block-directory-downloadable-block-notice__content { padding-left: 12px; margin-bottom: 8px; } .block-directory-downloadable-blocks-panel { padding: 16px; } .block-directory-downloadable-blocks-panel.has-blocks-loading { font-style: normal; padding: 0; margin: 112px 0; text-align: center; color: #757575; } .block-directory-downloadable-blocks-panel.has-blocks-loading .components-spinner { float: inherit; } .block-directory-downloadable-blocks-panel__no-local { margin: 48px 0; padding: 0 64px; color: #757575; text-align: center; } .block-directory-downloadable-blocks-panel__title { margin: 0 0 4px; font-size: 14px; } .block-directory-downloadable-blocks-panel__description { margin-top: 0; } .block-directory-downloadable-blocks-panel button { margin-top: 4px; } .installed-blocks-pre-publish-panel__copy { margin-top: 0; }PKj l\٤__"css/dist/block-directory/style.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .block-directory-block-ratings > span { display: flex; } .block-directory-block-ratings svg { fill: #1e1e1e; margin-left: -4px; } .block-directory-block-ratings .block-directory-block-ratings__star-empty { fill: #ccc; } .block-directory-compact-list { margin: 0; list-style: none; } .block-directory-compact-list__item { display: flex; flex-direction: row; align-items: center; margin-bottom: 16px; } .block-directory-compact-list__item:last-child { margin-bottom: 0; } .block-directory-compact-list__item-details { margin-left: 8px; } .block-directory-compact-list__item-title { font-weight: 500; } .block-directory-compact-list__item-author { color: #757575; font-size: 11px; } .block-directory-downloadable-block-icon { min-width: 54px; width: 54px; height: 54px; vertical-align: middle; border: 1px solid #ddd; } .block-directory-downloadable-block-list-item { padding: 12px; width: 100%; height: auto; text-align: left; display: grid; grid-template-columns: auto 1fr; } .block-directory-downloadable-block-list-item:hover { box-shadow: 0 0 0 2px var(--wp-admin-theme-color); } .block-directory-downloadable-block-list-item.is-busy { background: transparent; } .block-directory-downloadable-block-list-item.is-busy .block-directory-downloadable-block-list-item__author { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important; } .block-directory-downloadable-block-list-item:disabled, .block-directory-downloadable-block-list-item[aria-disabled] { opacity: 1; } .block-directory-downloadable-block-list-item__icon { position: relative; margin-right: 16px; align-self: flex-start; } .block-directory-downloadable-block-list-item__icon .block-directory-downloadable-block-list-item__spinner { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: rgba(255, 255, 255, 0.75); display: flex; align-items: center; justify-content: center; } .block-directory-block-ratings { display: block; margin-top: 4px; } .block-directory-downloadable-block-list-item__details { color: #1e1e1e; } .block-directory-downloadable-block-list-item__title { display: block; font-weight: 600; } .block-directory-downloadable-block-list-item__author { display: block; margin-top: 4px; font-weight: normal; } .block-directory-downloadable-block-list-item__desc { display: block; margin-top: 8px; } .block-directory-downloadable-block-notice { margin: 8px 0 0; color: #cc1818; } .block-directory-downloadable-block-notice__content { padding-right: 12px; margin-bottom: 8px; } .block-directory-downloadable-blocks-panel { padding: 16px; } .block-directory-downloadable-blocks-panel.has-blocks-loading { font-style: normal; padding: 0; margin: 112px 0; text-align: center; color: #757575; } .block-directory-downloadable-blocks-panel.has-blocks-loading .components-spinner { float: inherit; } .block-directory-downloadable-blocks-panel__no-local { margin: 48px 0; padding: 0 64px; color: #757575; text-align: center; } .block-directory-downloadable-blocks-panel__title { margin: 0 0 4px; font-size: 14px; } .block-directory-downloadable-blocks-panel__description { margin-top: 0; } .block-directory-downloadable-blocks-panel button { margin-top: 4px; } .installed-blocks-pre-publish-panel__copy { margin-top: 0; }PKj l\!css/dist/block-library/common.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } :root { /* * Our classes uses the same values we set for gradient value attributes, * and we can not use spacing because of WP multi site kses rule. */ /* stylelint-disable function-comma-space-after */ /* stylelint-enable function-comma-space-after */ --wp--preset--font-size--normal: 16px; --wp--preset--font-size--huge: 42px; } :root .has-very-light-gray-background-color { background-color: #eee; } :root .has-very-dark-gray-background-color { background-color: #313131; } :root .has-very-light-gray-color { color: #eee; } :root .has-very-dark-gray-color { color: #313131; } :root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background { background: linear-gradient(135deg, #00d084 0%, #0693e3 100%); } :root .has-purple-crush-gradient-background { background: linear-gradient(135deg, #34e2e4 0%, #4721fb 50%, #ab1dfe 100%); } :root .has-hazy-dawn-gradient-background { background: linear-gradient(135deg, #faaca8 0%, #dad0ec 100%); } :root .has-subdued-olive-gradient-background { background: linear-gradient(135deg, #fafae1 0%, #67a671 100%); } :root .has-atomic-cream-gradient-background { background: linear-gradient(135deg, #fdd79a 0%, #004a59 100%); } :root .has-nightshade-gradient-background { background: linear-gradient(135deg, #330968 0%, #31cdcf 100%); } :root .has-midnight-gradient-background { background: linear-gradient(135deg, #020381 0%, #2874fc 100%); } .has-regular-font-size { font-size: 1em; } .has-larger-font-size { font-size: 2.625em; } .has-normal-font-size { font-size: var(--wp--preset--font-size--normal); } .has-huge-font-size { font-size: var(--wp--preset--font-size--huge); } .has-text-align-center { text-align: center; } .has-text-align-left { /*rtl:ignore*/ text-align: left; } .has-text-align-right { /*rtl:ignore*/ text-align: right; } #end-resizable-editor-section { display: none; } .aligncenter { clear: both; } .items-justified-left { justify-content: flex-start; } .items-justified-center { justify-content: center; } .items-justified-right { justify-content: flex-end; } .items-justified-space-between { justify-content: space-between; } .screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important; } .screen-reader-text:focus { background-color: #ddd; clip: auto !important; -webkit-clip-path: none; clip-path: none; color: #444; display: block; font-size: 1em; height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; } /** * Provide baseline responsiveness for images. */ html :where(img[class*="wp-image-"]) { height: auto; max-width: 100%; }PKj l\I?| | $css/dist/block-library/theme.min.cssnu[.wp-block-audio figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-audio figcaption{color:hsla(0,0%,100%,.65)}.wp-block-code>code{font-family:Menlo,Consolas,monaco,monospace;color:#1e1e1e;padding:.8em 1em;border:1px solid #ddd;border-radius:4px}.wp-block-embed figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-embed figcaption{color:hsla(0,0%,100%,.65)}.blocks-gallery-caption{color:#555;font-size:13px;text-align:center}.is-dark-theme .blocks-gallery-caption{color:hsla(0,0%,100%,.65)}.wp-block-image figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-image figcaption{color:hsla(0,0%,100%,.65)}.wp-block-pullquote{border-top:4px solid;border-bottom:4px solid;margin-bottom:1.75em;color:currentColor}.wp-block-pullquote__citation,.wp-block-pullquote cite,.wp-block-pullquote footer{color:currentColor;text-transform:uppercase;font-size:.8125em;font-style:normal}.wp-block-quote{border-left:.25em solid;margin:0 0 1.75em;padding-left:1em}.wp-block-quote cite,.wp-block-quote footer{color:currentColor;font-size:.8125em;position:relative;font-style:normal}.wp-block-quote.has-text-align-right{border-left:none;border-right:.25em solid;padding-left:0;padding-right:1em}.wp-block-quote.has-text-align-center{border:none;padding-left:0}.wp-block-quote.is-large,.wp-block-quote.is-style-large,.wp-block-quote.is-style-plain{border:none}.wp-block-search .wp-block-search__label{font-weight:700}.wp-block-group:where(.has-background){padding:1.25em 2.375em}.wp-block-separator{border:none;border-bottom:2px solid;margin-left:auto;margin-right:auto;opacity:.4}.wp-block-separator:not(.is-style-wide):not(.is-style-dots){width:100px}.wp-block-separator.has-background:not(.is-style-dots){border-bottom:none;height:1px}.wp-block-separator.has-background:not(.is-style-wide):not(.is-style-dots){height:2px}.wp-block-table thead{border-bottom:3px solid}.wp-block-table tfoot{border-top:3px solid}.wp-block-table td,.wp-block-table th{padding:.5em;border:1px solid;word-break:normal}.wp-block-table figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-table figcaption{color:hsla(0,0%,100%,.65)}.wp-block-video figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-video figcaption{color:hsla(0,0%,100%,.65)}.wp-block-template-part.has-background{padding:1.25em 2.375em;margin-top:0;margin-bottom:0}PKj l\ m$css/dist/block-library/reset-rtl.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ /** * Editor Normalization Styles * * These are only output in the editor, but styles here are prefixed .editor-styles-wrapper and affect the theming * of the editor by themes. */ html :where(.editor-styles-wrapper) { /** * The following styles revert to the browser defaults overriding the WPAdmin styles. * This is only needed while the block editor is not being loaded in an iframe. */ font-family: serif; font-size: initial; line-height: initial; color: initial; background: #fff; } html :where(.editor-styles-wrapper) .wp-align-wrapper { max-width: 840px; } html :where(.editor-styles-wrapper) .wp-align-wrapper > .wp-block, html :where(.editor-styles-wrapper) .wp-align-wrapper.wp-align-full { max-width: none; } html :where(.editor-styles-wrapper) .wp-align-wrapper.wp-align-wide { max-width: 840px; } html :where(.editor-styles-wrapper) a { transition: none; } html :where(.editor-styles-wrapper) code, html :where(.editor-styles-wrapper) kbd { padding: 0; margin: 0; background: inherit; font-size: inherit; font-family: monospace; } html :where(.editor-styles-wrapper) p { font-size: revert; line-height: revert; margin: revert; } html :where(.editor-styles-wrapper) ul, html :where(.editor-styles-wrapper) ol { margin: revert; padding: revert; list-style-type: revert; box-sizing: revert; } html :where(.editor-styles-wrapper) ul ul, html :where(.editor-styles-wrapper) ul ol, html :where(.editor-styles-wrapper) ol ul, html :where(.editor-styles-wrapper) ol ol { margin: revert; } html :where(.editor-styles-wrapper) ul li, html :where(.editor-styles-wrapper) ol li { margin: revert; } html :where(.editor-styles-wrapper) ul ul, html :where(.editor-styles-wrapper) ol ul { list-style-type: revert; } html :where(.editor-styles-wrapper) h1, html :where(.editor-styles-wrapper) h2, html :where(.editor-styles-wrapper) h3, html :where(.editor-styles-wrapper) h4, html :where(.editor-styles-wrapper) h5, html :where(.editor-styles-wrapper) h6 { font-size: revert; margin: revert; color: revert; line-height: revert; font-weight: revert; } html :where(.editor-styles-wrapper) select { font-family: system-ui; -webkit-appearance: revert; color: revert; border: revert; border-radius: revert; background: revert; box-shadow: revert; text-shadow: revert; outline: revert; cursor: revert; transform: revert; font-size: revert; line-height: revert; padding: revert; margin: revert; min-height: revert; max-width: revert; vertical-align: revert; font-weight: revert; } html :where(.editor-styles-wrapper) select:disabled, html :where(.editor-styles-wrapper) select:focus { color: revert; border-color: revert; background-color: revert; background-image: revert; box-shadow: revert; text-shadow: revert; cursor: revert; transform: revert; }PKj l\%%css/dist/block-library/common-rtl.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } :root { /* * Our classes uses the same values we set for gradient value attributes, * and we can not use spacing because of WP multi site kses rule. */ /* stylelint-disable function-comma-space-after */ /* stylelint-enable function-comma-space-after */ --wp--preset--font-size--normal: 16px; --wp--preset--font-size--huge: 42px; } :root .has-very-light-gray-background-color { background-color: #eee; } :root .has-very-dark-gray-background-color { background-color: #313131; } :root .has-very-light-gray-color { color: #eee; } :root .has-very-dark-gray-color { color: #313131; } :root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background { background: linear-gradient(-135deg, #00d084 0%, #0693e3 100%); } :root .has-purple-crush-gradient-background { background: linear-gradient(-135deg, #34e2e4 0%, #4721fb 50%, #ab1dfe 100%); } :root .has-hazy-dawn-gradient-background { background: linear-gradient(-135deg, #faaca8 0%, #dad0ec 100%); } :root .has-subdued-olive-gradient-background { background: linear-gradient(-135deg, #fafae1 0%, #67a671 100%); } :root .has-atomic-cream-gradient-background { background: linear-gradient(-135deg, #fdd79a 0%, #004a59 100%); } :root .has-nightshade-gradient-background { background: linear-gradient(-135deg, #330968 0%, #31cdcf 100%); } :root .has-midnight-gradient-background { background: linear-gradient(-135deg, #020381 0%, #2874fc 100%); } .has-regular-font-size { font-size: 1em; } .has-larger-font-size { font-size: 2.625em; } .has-normal-font-size { font-size: var(--wp--preset--font-size--normal); } .has-huge-font-size { font-size: var(--wp--preset--font-size--huge); } .has-text-align-center { text-align: center; } .has-text-align-left { text-align: left; } .has-text-align-right { text-align: right; } #end-resizable-editor-section { display: none; } .aligncenter { clear: both; } .items-justified-left { justify-content: flex-start; } .items-justified-center { justify-content: center; } .items-justified-right { justify-content: flex-end; } .items-justified-space-between { justify-content: space-between; } .screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important; } .screen-reader-text:focus { background-color: #ddd; clip: auto !important; -webkit-clip-path: none; clip-path: none; color: #444; display: block; font-size: 1em; height: auto; right: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; } /** * Provide baseline responsiveness for images. */ html :where(img[class*="wp-image-"]) { height: auto; max-width: 100%; }PKj l\KMOO css/dist/block-library/theme.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ .wp-block-audio figcaption { color: #555; font-size: 13px; text-align: center; } .is-dark-theme .wp-block-audio figcaption { color: rgba(255, 255, 255, 0.65); } .wp-block-code > code { font-family: Menlo, Consolas, monaco, monospace; color: #1e1e1e; padding: 0.8em 1em; border: 1px solid #ddd; border-radius: 4px; } .wp-block-embed figcaption { color: #555; font-size: 13px; text-align: center; } .is-dark-theme .wp-block-embed figcaption { color: rgba(255, 255, 255, 0.65); } .blocks-gallery-caption { color: #555; font-size: 13px; text-align: center; } .is-dark-theme .blocks-gallery-caption { color: rgba(255, 255, 255, 0.65); } .wp-block-image figcaption { color: #555; font-size: 13px; text-align: center; } .is-dark-theme .wp-block-image figcaption { color: rgba(255, 255, 255, 0.65); } .wp-block-pullquote { border-top: 4px solid currentColor; border-bottom: 4px solid currentColor; margin-bottom: 1.75em; color: currentColor; } .wp-block-pullquote cite, .wp-block-pullquote footer, .wp-block-pullquote__citation { color: currentColor; text-transform: uppercase; font-size: 0.8125em; font-style: normal; } .wp-block-quote { border-left: 0.25em solid currentColor; margin: 0 0 1.75em 0; padding-left: 1em; } .wp-block-quote cite, .wp-block-quote footer { color: currentColor; font-size: 0.8125em; position: relative; font-style: normal; } .wp-block-quote.has-text-align-right { border-left: none; border-right: 0.25em solid currentColor; padding-left: 0; padding-right: 1em; } .wp-block-quote.has-text-align-center { border: none; padding-left: 0; } .wp-block-quote.is-style-plain, .wp-block-quote.is-style-large, .wp-block-quote.is-large { border: none; } .wp-block-search .wp-block-search__label { font-weight: bold; } .wp-block-group:where(.has-background) { padding: 1.25em 2.375em; } .wp-block-separator { border: none; border-bottom: 2px solid currentColor; margin-left: auto; margin-right: auto; opacity: 0.4; } .wp-block-separator:not(.is-style-wide):not(.is-style-dots) { width: 100px; } .wp-block-separator.has-background:not(.is-style-dots) { border-bottom: none; height: 1px; } .wp-block-separator.has-background:not(.is-style-wide):not(.is-style-dots) { height: 2px; } .wp-block-table thead { border-bottom: 3px solid; } .wp-block-table tfoot { border-top: 3px solid; } .wp-block-table td, .wp-block-table th { padding: 0.5em; border: 1px solid; word-break: normal; } .wp-block-table figcaption { color: #555; font-size: 13px; text-align: center; } .is-dark-theme .wp-block-table figcaption { color: rgba(255, 255, 255, 0.65); } .wp-block-video figcaption { color: #555; font-size: 13px; text-align: center; } .is-dark-theme .wp-block-video figcaption { color: rgba(255, 255, 255, 0.65); } .wp-block-template-part.has-background { padding: 1.25em 2.375em; margin-top: 0; margin-bottom: 0; }PKj l\BEE$css/dist/block-library/style.min.cssnu[@charset "UTF-8";.wp-block-archives-dropdown label{display:block}.wp-block-audio{margin:0 0 1em}.wp-block-audio figcaption{margin-top:.5em;margin-bottom:1em}.wp-block-audio audio{width:100%;min-width:300px}.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;cursor:pointer;display:inline-block;font-size:1.125em;padding:calc(.667em + 2px) calc(1.333em + 2px);text-align:center;text-decoration:none;word-break:break-word;box-sizing:border-box}.wp-block-button__link:active,.wp-block-button__link:focus,.wp-block-button__link:hover,.wp-block-button__link:visited{color:#fff}.wp-block-button__link.aligncenter{text-align:center}.wp-block-button__link.alignright{text-align:right}.wp-block-buttons>.wp-block-button.has-custom-width{max-width:none}.wp-block-buttons>.wp-block-button.has-custom-width .wp-block-button__link{width:100%}.wp-block-buttons>.wp-block-button.has-custom-font-size .wp-block-button__link{font-size:inherit}.wp-block-buttons>.wp-block-button.wp-block-button__width-25{width:calc(25% - var(--wp--style--block-gap, .5em)*0.75)}.wp-block-buttons>.wp-block-button.wp-block-button__width-50{width:calc(50% - var(--wp--style--block-gap, .5em)*0.5)}.wp-block-buttons>.wp-block-button.wp-block-button__width-75{width:calc(75% - var(--wp--style--block-gap, .5em)*0.25)}.wp-block-buttons>.wp-block-button.wp-block-button__width-100{width:100%;flex-basis:100%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-25{width:25%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-50{width:50%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-75{width:75%}.wp-block-button.is-style-squared,.wp-block-button__link.wp-block-button.is-style-squared{border-radius:0}.wp-block-button.no-border-radius,.wp-block-button__link.no-border-radius{border-radius:0!important}.is-style-outline>:where(.wp-block-button__link),:where(.wp-block-button__link).is-style-outline{border:2px solid;padding:.667em 1.333em}.is-style-outline>.wp-block-button__link:not(.has-text-color),.wp-block-button__link.is-style-outline:not(.has-text-color){color:currentColor}.is-style-outline>.wp-block-button__link:not(.has-background),.wp-block-button__link.is-style-outline:not(.has-background){background-color:transparent}.wp-block-buttons.is-vertical{flex-direction:column}.wp-block-buttons.is-vertical>.wp-block-button:last-child{margin-bottom:0}.wp-block-buttons>.wp-block-button{display:inline-block;margin:0}.wp-block-buttons.is-content-justification-left{justify-content:flex-start}.wp-block-buttons.is-content-justification-left.is-vertical{align-items:flex-start}.wp-block-buttons.is-content-justification-center{justify-content:center}.wp-block-buttons.is-content-justification-center.is-vertical{align-items:center}.wp-block-buttons.is-content-justification-right{justify-content:flex-end}.wp-block-buttons.is-content-justification-right.is-vertical{align-items:flex-end}.wp-block-buttons.is-content-justification-space-between{justify-content:space-between}.wp-block-buttons.aligncenter{text-align:center}.wp-block-buttons:not(.is-content-justification-space-between,.is-content-justification-right,.is-content-justification-left,.is-content-justification-center) .wp-block-button.aligncenter{margin-left:auto;margin-right:auto;width:100%}.wp-block-button.aligncenter,.wp-block-calendar{text-align:center}.wp-block-calendar tbody td,.wp-block-calendar th{padding:.25em;border:1px solid #ddd}.wp-block-calendar tfoot td{border:none}.wp-block-calendar table{width:100%;border-collapse:collapse}.wp-block-calendar table th{font-weight:400;background:#ddd}.wp-block-calendar a{text-decoration:underline}.wp-block-calendar table caption,.wp-block-calendar table tbody{color:#40464d}.wp-block-categories.alignleft{margin-right:2em}.wp-block-categories.alignright{margin-left:2em}.wp-block-code code{display:block;white-space:pre-wrap;overflow-wrap:break-word}.wp-block-columns{display:flex;margin-bottom:1.75em;box-sizing:border-box;flex-wrap:wrap}@media (min-width:782px){.wp-block-columns{flex-wrap:nowrap}}.wp-block-columns:where(.has-background){padding:1.25em 2.375em}.wp-block-columns.are-vertically-aligned-top{align-items:flex-start}.wp-block-columns.are-vertically-aligned-center{align-items:center}.wp-block-columns.are-vertically-aligned-bottom{align-items:flex-end}@media (max-width:599px){.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column{flex-basis:100%!important}}@media (min-width:600px) and (max-width:781px){.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:not(:only-child){flex-basis:calc(50% - var(--wp--style--block-gap, 2em)/2)!important;flex-grow:0}.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:nth-child(2n){margin-left:var(--wp--style--block-gap,2em)}}@media (min-width:782px){.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column{flex-basis:0;flex-grow:1}.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column[style*=flex-basis]{flex-grow:0}.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:not(:first-child){margin-left:var(--wp--style--block-gap,2em)}}.wp-block-columns.is-not-stacked-on-mobile{flex-wrap:nowrap}.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column{flex-basis:0;flex-grow:1}.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column[style*=flex-basis]{flex-grow:0}.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column:not(:first-child){margin-left:var(--wp--style--block-gap,2em)}.wp-block-column{flex-grow:1;min-width:0;word-break:break-word;overflow-wrap:break-word}.wp-block-column.is-vertically-aligned-top{align-self:flex-start}.wp-block-column.is-vertically-aligned-center{align-self:center}.wp-block-column.is-vertically-aligned-bottom{align-self:flex-end}.wp-block-column.is-vertically-aligned-bottom,.wp-block-column.is-vertically-aligned-center,.wp-block-column.is-vertically-aligned-top{width:100%}.wp-block-cover,.wp-block-cover-image{position:relative;background-size:cover;background-position:50%;min-height:430px;width:100%;display:flex;justify-content:center;align-items:center;padding:1em;box-sizing:border-box}.wp-block-cover-image.has-parallax,.wp-block-cover.has-parallax{background-attachment:fixed}@supports (-webkit-overflow-scrolling:touch){.wp-block-cover-image.has-parallax,.wp-block-cover.has-parallax{background-attachment:scroll}}@media (prefers-reduced-motion:reduce){.wp-block-cover-image.has-parallax,.wp-block-cover.has-parallax{background-attachment:scroll}}.wp-block-cover-image.is-repeated,.wp-block-cover.is-repeated{background-repeat:repeat;background-size:auto}.wp-block-cover-image.has-background-dim:not([class*=-background-color]),.wp-block-cover-image .has-background-dim:not([class*=-background-color]),.wp-block-cover.has-background-dim:not([class*=-background-color]),.wp-block-cover .has-background-dim:not([class*=-background-color]){background-color:#000}.wp-block-cover-image .has-background-dim.has-background-gradient,.wp-block-cover .has-background-dim.has-background-gradient{background-color:transparent}.wp-block-cover-image.has-background-dim:before,.wp-block-cover.has-background-dim:before{content:"";background-color:inherit}.wp-block-cover-image.has-background-dim:not(.has-background-gradient):before,.wp-block-cover-image .wp-block-cover__background,.wp-block-cover-image .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim:not(.has-background-gradient):before,.wp-block-cover .wp-block-cover__background,.wp-block-cover .wp-block-cover__gradient-background{position:absolute;top:0;left:0;bottom:0;right:0;z-index:1;opacity:.5}.wp-block-cover-image.has-background-dim.has-background-dim-10 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-10:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-10 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-10:not(.has-background-gradient):before{opacity:.1}.wp-block-cover-image.has-background-dim.has-background-dim-20 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-20:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-20 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-20:not(.has-background-gradient):before{opacity:.2}.wp-block-cover-image.has-background-dim.has-background-dim-30 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-30:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-30 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-30:not(.has-background-gradient):before{opacity:.3}.wp-block-cover-image.has-background-dim.has-background-dim-40 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-40:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-40 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-40:not(.has-background-gradient):before{opacity:.4}.wp-block-cover-image.has-background-dim.has-background-dim-50 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-50:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-50 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-50:not(.has-background-gradient):before{opacity:.5}.wp-block-cover-image.has-background-dim.has-background-dim-60 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-60:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-60 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-60:not(.has-background-gradient):before{opacity:.6}.wp-block-cover-image.has-background-dim.has-background-dim-70 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-70:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-70 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-70:not(.has-background-gradient):before{opacity:.7}.wp-block-cover-image.has-background-dim.has-background-dim-80 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-80:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-80 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-80:not(.has-background-gradient):before{opacity:.8}.wp-block-cover-image.has-background-dim.has-background-dim-90 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-90:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-90 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-90:not(.has-background-gradient):before{opacity:.9}.wp-block-cover-image.has-background-dim.has-background-dim-100 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-100:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-100 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-100:not(.has-background-gradient):before{opacity:1}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-0,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-0{opacity:0}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-10,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-10{opacity:.1}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-20,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-20{opacity:.2}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-30,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-30{opacity:.3}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-40,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-40{opacity:.4}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-50,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-50{opacity:.5}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-60,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-60{opacity:.6}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-70,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-70{opacity:.7}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-80,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-80{opacity:.8}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-90,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-90{opacity:.9}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-100,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-100{opacity:1}.wp-block-cover-image.alignleft,.wp-block-cover-image.alignright,.wp-block-cover.alignleft,.wp-block-cover.alignright{max-width:420px;width:100%}.wp-block-cover-image:after,.wp-block-cover:after{display:block;content:"";font-size:0;min-height:inherit}@supports (position:sticky){.wp-block-cover-image:after,.wp-block-cover:after{content:none}}.wp-block-cover-image.aligncenter,.wp-block-cover-image.alignleft,.wp-block-cover-image.alignright,.wp-block-cover.aligncenter,.wp-block-cover.alignleft,.wp-block-cover.alignright{display:flex}.wp-block-cover-image .wp-block-cover__inner-container,.wp-block-cover .wp-block-cover__inner-container{width:100%;z-index:1;color:#fff}.wp-block-cover-image.is-light .wp-block-cover__inner-container,.wp-block-cover.is-light .wp-block-cover__inner-container{color:#000}.wp-block-cover-image h1:not(.has-text-color),.wp-block-cover-image h2:not(.has-text-color),.wp-block-cover-image h3:not(.has-text-color),.wp-block-cover-image h4:not(.has-text-color),.wp-block-cover-image h5:not(.has-text-color),.wp-block-cover-image h6:not(.has-text-color),.wp-block-cover-image p:not(.has-text-color),.wp-block-cover h1:not(.has-text-color),.wp-block-cover h2:not(.has-text-color),.wp-block-cover h3:not(.has-text-color),.wp-block-cover h4:not(.has-text-color),.wp-block-cover h5:not(.has-text-color),.wp-block-cover h6:not(.has-text-color),.wp-block-cover p:not(.has-text-color){color:inherit}.wp-block-cover-image.is-position-top-left,.wp-block-cover.is-position-top-left{align-items:flex-start;justify-content:flex-start}.wp-block-cover-image.is-position-top-center,.wp-block-cover.is-position-top-center{align-items:flex-start;justify-content:center}.wp-block-cover-image.is-position-top-right,.wp-block-cover.is-position-top-right{align-items:flex-start;justify-content:flex-end}.wp-block-cover-image.is-position-center-left,.wp-block-cover.is-position-center-left{align-items:center;justify-content:flex-start}.wp-block-cover-image.is-position-center-center,.wp-block-cover.is-position-center-center{align-items:center;justify-content:center}.wp-block-cover-image.is-position-center-right,.wp-block-cover.is-position-center-right{align-items:center;justify-content:flex-end}.wp-block-cover-image.is-position-bottom-left,.wp-block-cover.is-position-bottom-left{align-items:flex-end;justify-content:flex-start}.wp-block-cover-image.is-position-bottom-center,.wp-block-cover.is-position-bottom-center{align-items:flex-end;justify-content:center}.wp-block-cover-image.is-position-bottom-right,.wp-block-cover.is-position-bottom-right{align-items:flex-end;justify-content:flex-end}.wp-block-cover-image.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container,.wp-block-cover.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container{margin:0;width:auto}.wp-block-cover-image img.wp-block-cover__image-background,.wp-block-cover-image video.wp-block-cover__video-background,.wp-block-cover img.wp-block-cover__image-background,.wp-block-cover video.wp-block-cover__video-background{position:absolute;top:0;left:0;right:0;bottom:0;margin:0;padding:0;width:100%;height:100%;max-width:none;max-height:none;-o-object-fit:cover;object-fit:cover;outline:none;border:none;box-shadow:none}.wp-block-cover__image-background,.wp-block-cover__video-background{z-index:0}.wp-block-cover-image-text,.wp-block-cover-image-text a,.wp-block-cover-image-text a:active,.wp-block-cover-image-text a:focus,.wp-block-cover-image-text a:hover,.wp-block-cover-text,.wp-block-cover-text a,.wp-block-cover-text a:active,.wp-block-cover-text a:focus,.wp-block-cover-text a:hover,section.wp-block-cover-image h2,section.wp-block-cover-image h2 a,section.wp-block-cover-image h2 a:active,section.wp-block-cover-image h2 a:focus,section.wp-block-cover-image h2 a:hover{color:#fff}.wp-block-cover-image .wp-block-cover.has-left-content{justify-content:flex-start}.wp-block-cover-image .wp-block-cover.has-right-content{justify-content:flex-end}.wp-block-cover-image.has-left-content .wp-block-cover-image-text,.wp-block-cover.has-left-content .wp-block-cover-text,section.wp-block-cover-image.has-left-content>h2{margin-left:0;text-align:left}.wp-block-cover-image.has-right-content .wp-block-cover-image-text,.wp-block-cover.has-right-content .wp-block-cover-text,section.wp-block-cover-image.has-right-content>h2{margin-right:0;text-align:right}.wp-block-cover-image .wp-block-cover-image-text,.wp-block-cover .wp-block-cover-text,section.wp-block-cover-image>h2{font-size:2em;line-height:1.25;z-index:1;margin-bottom:0;max-width:840px;padding:.44em;text-align:center}.wp-block-embed.alignleft,.wp-block-embed.alignright,.wp-block[data-align=left]>[data-type="core/embed"],.wp-block[data-align=right]>[data-type="core/embed"]{max-width:360px;width:100%}.wp-block-embed.alignleft .wp-block-embed__wrapper,.wp-block-embed.alignright .wp-block-embed__wrapper,.wp-block[data-align=left]>[data-type="core/embed"] .wp-block-embed__wrapper,.wp-block[data-align=right]>[data-type="core/embed"] .wp-block-embed__wrapper{min-width:280px}.wp-block-cover .wp-block-embed{min-width:320px;min-height:240px}.wp-block-embed{margin:0 0 1em;overflow-wrap:break-word}.wp-block-embed figcaption{margin-top:.5em;margin-bottom:1em}.wp-block-embed iframe{max-width:100%}.wp-block-embed__wrapper{position:relative}.wp-embed-responsive .wp-has-aspect-ratio .wp-block-embed__wrapper:before{content:"";display:block;padding-top:50%}.wp-embed-responsive .wp-has-aspect-ratio iframe{position:absolute;top:0;right:0;bottom:0;left:0;height:100%;width:100%}.wp-embed-responsive .wp-embed-aspect-21-9 .wp-block-embed__wrapper:before{padding-top:42.85%}.wp-embed-responsive .wp-embed-aspect-18-9 .wp-block-embed__wrapper:before{padding-top:50%}.wp-embed-responsive .wp-embed-aspect-16-9 .wp-block-embed__wrapper:before{padding-top:56.25%}.wp-embed-responsive .wp-embed-aspect-4-3 .wp-block-embed__wrapper:before{padding-top:75%}.wp-embed-responsive .wp-embed-aspect-1-1 .wp-block-embed__wrapper:before{padding-top:100%}.wp-embed-responsive .wp-embed-aspect-9-16 .wp-block-embed__wrapper:before{padding-top:177.77%}.wp-embed-responsive .wp-embed-aspect-1-2 .wp-block-embed__wrapper:before{padding-top:200%}.wp-block-file{margin-bottom:1.5em}.wp-block-file.aligncenter{text-align:center}.wp-block-file.alignright{text-align:right}.wp-block-file .wp-block-file__embed{margin-bottom:1em}.wp-block-file .wp-block-file__button{background:#32373c;border-radius:2em;color:#fff;font-size:.8em;padding:.5em 1em}.wp-block-file a.wp-block-file__button{text-decoration:none}.wp-block-file a.wp-block-file__button:active,.wp-block-file a.wp-block-file__button:focus,.wp-block-file a.wp-block-file__button:hover,.wp-block-file a.wp-block-file__button:visited{box-shadow:none;color:#fff;opacity:.85;text-decoration:none}.wp-block-file *+.wp-block-file__button{margin-left:.75em}.blocks-gallery-grid,.wp-block-gallery{display:flex;flex-wrap:wrap;list-style-type:none;padding:0;margin:0}.blocks-gallery-grid .blocks-gallery-image,.blocks-gallery-grid .blocks-gallery-item,.wp-block-gallery .blocks-gallery-image,.wp-block-gallery .blocks-gallery-item{margin:0 1em 1em 0;display:flex;flex-grow:1;flex-direction:column;justify-content:center;position:relative;width:calc(50% - 1em)}.blocks-gallery-grid .blocks-gallery-image:nth-of-type(2n),.blocks-gallery-grid .blocks-gallery-item:nth-of-type(2n),.wp-block-gallery .blocks-gallery-image:nth-of-type(2n),.wp-block-gallery .blocks-gallery-item:nth-of-type(2n){margin-right:0}.blocks-gallery-grid .blocks-gallery-image figure,.blocks-gallery-grid .blocks-gallery-item figure,.wp-block-gallery .blocks-gallery-image figure,.wp-block-gallery .blocks-gallery-item figure{margin:0;height:100%;display:flex;align-items:flex-end;justify-content:flex-start}.blocks-gallery-grid .blocks-gallery-image img,.blocks-gallery-grid .blocks-gallery-item img,.wp-block-gallery .blocks-gallery-image img,.wp-block-gallery .blocks-gallery-item img{display:block;max-width:100%;height:auto;width:auto}.blocks-gallery-grid .blocks-gallery-image figcaption,.blocks-gallery-grid .blocks-gallery-item figcaption,.wp-block-gallery .blocks-gallery-image figcaption,.wp-block-gallery .blocks-gallery-item figcaption{position:absolute;bottom:0;width:100%;max-height:100%;overflow:auto;padding:3em .77em .7em;color:#fff;text-align:center;font-size:.8em;background:linear-gradient(0deg,rgba(0,0,0,.7),rgba(0,0,0,.3) 70%,transparent);box-sizing:border-box;margin:0;z-index:2}.blocks-gallery-grid .blocks-gallery-image figcaption img,.blocks-gallery-grid .blocks-gallery-item figcaption img,.wp-block-gallery .blocks-gallery-image figcaption img,.wp-block-gallery .blocks-gallery-item figcaption img{display:inline}.blocks-gallery-grid figcaption,.wp-block-gallery figcaption{flex-grow:1}.blocks-gallery-grid.is-cropped .blocks-gallery-image a,.blocks-gallery-grid.is-cropped .blocks-gallery-image img,.blocks-gallery-grid.is-cropped .blocks-gallery-item a,.blocks-gallery-grid.is-cropped .blocks-gallery-item img,.wp-block-gallery.is-cropped .blocks-gallery-image a,.wp-block-gallery.is-cropped .blocks-gallery-image img,.wp-block-gallery.is-cropped .blocks-gallery-item a,.wp-block-gallery.is-cropped .blocks-gallery-item img{width:100%;height:100%;flex:1;-o-object-fit:cover;object-fit:cover}.blocks-gallery-grid.columns-1 .blocks-gallery-image,.blocks-gallery-grid.columns-1 .blocks-gallery-item,.wp-block-gallery.columns-1 .blocks-gallery-image,.wp-block-gallery.columns-1 .blocks-gallery-item{width:100%;margin-right:0}@media (min-width:600px){.blocks-gallery-grid.columns-3 .blocks-gallery-image,.blocks-gallery-grid.columns-3 .blocks-gallery-item,.wp-block-gallery.columns-3 .blocks-gallery-image,.wp-block-gallery.columns-3 .blocks-gallery-item{width:calc(33.33333% - .66667em);margin-right:1em}.blocks-gallery-grid.columns-4 .blocks-gallery-image,.blocks-gallery-grid.columns-4 .blocks-gallery-item,.wp-block-gallery.columns-4 .blocks-gallery-image,.wp-block-gallery.columns-4 .blocks-gallery-item{width:calc(25% - .75em);margin-right:1em}.blocks-gallery-grid.columns-5 .blocks-gallery-image,.blocks-gallery-grid.columns-5 .blocks-gallery-item,.wp-block-gallery.columns-5 .blocks-gallery-image,.wp-block-gallery.columns-5 .blocks-gallery-item{width:calc(20% - .8em);margin-right:1em}.blocks-gallery-grid.columns-6 .blocks-gallery-image,.blocks-gallery-grid.columns-6 .blocks-gallery-item,.wp-block-gallery.columns-6 .blocks-gallery-image,.wp-block-gallery.columns-6 .blocks-gallery-item{width:calc(16.66667% - .83333em);margin-right:1em}.blocks-gallery-grid.columns-7 .blocks-gallery-image,.blocks-gallery-grid.columns-7 .blocks-gallery-item,.wp-block-gallery.columns-7 .blocks-gallery-image,.wp-block-gallery.columns-7 .blocks-gallery-item{width:calc(14.28571% - .85714em);margin-right:1em}.blocks-gallery-grid.columns-8 .blocks-gallery-image,.blocks-gallery-grid.columns-8 .blocks-gallery-item,.wp-block-gallery.columns-8 .blocks-gallery-image,.wp-block-gallery.columns-8 .blocks-gallery-item{width:calc(12.5% - .875em);margin-right:1em}.blocks-gallery-grid.columns-1 .blocks-gallery-image:nth-of-type(1n),.blocks-gallery-grid.columns-1 .blocks-gallery-item:nth-of-type(1n),.blocks-gallery-grid.columns-2 .blocks-gallery-image:nth-of-type(2n),.blocks-gallery-grid.columns-2 .blocks-gallery-item:nth-of-type(2n),.blocks-gallery-grid.columns-3 .blocks-gallery-image:nth-of-type(3n),.blocks-gallery-grid.columns-3 .blocks-gallery-item:nth-of-type(3n),.blocks-gallery-grid.columns-4 .blocks-gallery-image:nth-of-type(4n),.blocks-gallery-grid.columns-4 .blocks-gallery-item:nth-of-type(4n),.blocks-gallery-grid.columns-5 .blocks-gallery-image:nth-of-type(5n),.blocks-gallery-grid.columns-5 .blocks-gallery-item:nth-of-type(5n),.blocks-gallery-grid.columns-6 .blocks-gallery-image:nth-of-type(6n),.blocks-gallery-grid.columns-6 .blocks-gallery-item:nth-of-type(6n),.blocks-gallery-grid.columns-7 .blocks-gallery-image:nth-of-type(7n),.blocks-gallery-grid.columns-7 .blocks-gallery-item:nth-of-type(7n),.blocks-gallery-grid.columns-8 .blocks-gallery-image:nth-of-type(8n),.blocks-gallery-grid.columns-8 .blocks-gallery-item:nth-of-type(8n),.wp-block-gallery.columns-1 .blocks-gallery-image:nth-of-type(1n),.wp-block-gallery.columns-1 .blocks-gallery-item:nth-of-type(1n),.wp-block-gallery.columns-2 .blocks-gallery-image:nth-of-type(2n),.wp-block-gallery.columns-2 .blocks-gallery-item:nth-of-type(2n),.wp-block-gallery.columns-3 .blocks-gallery-image:nth-of-type(3n),.wp-block-gallery.columns-3 .blocks-gallery-item:nth-of-type(3n),.wp-block-gallery.columns-4 .blocks-gallery-image:nth-of-type(4n),.wp-block-gallery.columns-4 .blocks-gallery-item:nth-of-type(4n),.wp-block-gallery.columns-5 .blocks-gallery-image:nth-of-type(5n),.wp-block-gallery.columns-5 .blocks-gallery-item:nth-of-type(5n),.wp-block-gallery.columns-6 .blocks-gallery-image:nth-of-type(6n),.wp-block-gallery.columns-6 .blocks-gallery-item:nth-of-type(6n),.wp-block-gallery.columns-7 .blocks-gallery-image:nth-of-type(7n),.wp-block-gallery.columns-7 .blocks-gallery-item:nth-of-type(7n),.wp-block-gallery.columns-8 .blocks-gallery-image:nth-of-type(8n),.wp-block-gallery.columns-8 .blocks-gallery-item:nth-of-type(8n){margin-right:0}}.blocks-gallery-grid .blocks-gallery-image:last-child,.blocks-gallery-grid .blocks-gallery-item:last-child,.wp-block-gallery .blocks-gallery-image:last-child,.wp-block-gallery .blocks-gallery-item:last-child{margin-right:0}.blocks-gallery-grid.alignleft,.blocks-gallery-grid.alignright,.wp-block-gallery.alignleft,.wp-block-gallery.alignright{max-width:420px;width:100%}.blocks-gallery-grid.aligncenter .blocks-gallery-item figure,.wp-block-gallery.aligncenter .blocks-gallery-item figure{justify-content:center}.wp-block-gallery:not(.is-cropped) .blocks-gallery-item{align-self:flex-start}.wp-block-gallery.has-nested-images{display:flex;flex-wrap:wrap}.wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image){margin:0 var(--gallery-block--gutter-size,16px) var(--gallery-block--gutter-size,16px) 0;width:calc(50% - var(--gallery-block--gutter-size, 16px)/2)}.wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image):last-of-type:not(#individual-image),.wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image):nth-of-type(2n){margin-right:0}.wp-block-gallery.has-nested-images figure.wp-block-image{display:flex;flex-grow:1;justify-content:center;position:relative;margin-top:auto;margin-bottom:auto;flex-direction:column;max-width:100%}.wp-block-gallery.has-nested-images figure.wp-block-image>a,.wp-block-gallery.has-nested-images figure.wp-block-image>div{margin:0;flex-direction:column;flex-grow:1}.wp-block-gallery.has-nested-images figure.wp-block-image img{display:block;height:auto;max-width:100%!important;width:auto}.wp-block-gallery.has-nested-images figure.wp-block-image figcaption{background:linear-gradient(0deg,rgba(0,0,0,.7),rgba(0,0,0,.3) 70%,transparent);bottom:0;color:#fff;font-size:13px;left:0;margin-bottom:0;max-height:60%;overflow:auto;padding:0 8px 8px;position:absolute;text-align:center;width:100%;box-sizing:border-box}.wp-block-gallery.has-nested-images figure.wp-block-image figcaption img{display:inline}.wp-block-gallery.has-nested-images figure.wp-block-image.is-style-rounded>a,.wp-block-gallery.has-nested-images figure.wp-block-image.is-style-rounded>div{flex:1 1 auto}.wp-block-gallery.has-nested-images figure.wp-block-image.is-style-rounded figcaption{flex:initial;background:none;color:inherit;margin:0;padding:10px 10px 9px;position:relative}.wp-block-gallery.has-nested-images figcaption{flex-grow:1;flex-basis:100%;text-align:center}.wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image){margin-top:0;margin-bottom:auto}.wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image) img{margin-bottom:var(--gallery-block--gutter-size,16px)}.wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image) figcaption{bottom:var(--gallery-block--gutter-size,16px)}.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image){align-self:inherit}.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image)>a,.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image)>div:not(.components-drop-zone){display:flex}.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) a,.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) img{width:100%;flex:1 0 0%;height:100%;-o-object-fit:cover;object-fit:cover}.wp-block-gallery.has-nested-images.columns-1 figure.wp-block-image:not(#individual-image){margin-right:0;width:100%}@media (min-width:600px){.wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image){margin-right:var(--gallery-block--gutter-size,16px);width:calc(33.33333% - var(--gallery-block--gutter-size, 16px)*0.66667)}.wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image).is-dragging~figure.wp-block-image:not(#individual-image){margin-right:var(--gallery-block--gutter-size,16px)}.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image){margin-right:var(--gallery-block--gutter-size,16px);width:calc(25% - var(--gallery-block--gutter-size, 16px)*0.75)}.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image).is-dragging~figure.wp-block-image:not(#individual-image){margin-right:var(--gallery-block--gutter-size,16px)}.wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image:not(#individual-image){margin-right:var(--gallery-block--gutter-size,16px);width:calc(20% - var(--gallery-block--gutter-size, 16px)*0.8)}.wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image:not(#individual-image).is-dragging~figure.wp-block-image:not(#individual-image){margin-right:var(--gallery-block--gutter-size,16px)}.wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#individual-image){margin-right:var(--gallery-block--gutter-size,16px);width:calc(16.66667% - var(--gallery-block--gutter-size, 16px)*0.83333)}.wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#individual-image).is-dragging~figure.wp-block-image:not(#individual-image){margin-right:var(--gallery-block--gutter-size,16px)}.wp-block-gallery.has-nested-images.columns-7 figure.wp-block-image:not(#individual-image){margin-right:var(--gallery-block--gutter-size,16px);width:calc(14.28571% - var(--gallery-block--gutter-size, 16px)*0.85714)}.wp-block-gallery.has-nested-images.columns-7 figure.wp-block-image:not(#individual-image).is-dragging~figure.wp-block-image:not(#individual-image){margin-right:var(--gallery-block--gutter-size,16px)}.wp-block-gallery.has-nested-images.columns-8 figure.wp-block-image:not(#individual-image){margin-right:var(--gallery-block--gutter-size,16px);width:calc(12.5% - var(--gallery-block--gutter-size, 16px)*0.875)}.wp-block-gallery.has-nested-images.columns-8 figure.wp-block-image:not(#individual-image).is-dragging~figure.wp-block-image:not(#individual-image){margin-right:var(--gallery-block--gutter-size,16px)}.wp-block-gallery.has-nested-images.columns-1 figure.wp-block-image:not(#individual-image):nth-of-type(1n),.wp-block-gallery.has-nested-images.columns-2 figure.wp-block-image:not(#individual-image):nth-of-type(2n),.wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image):nth-of-type(3n),.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image):nth-of-type(4n),.wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image:not(#individual-image):nth-of-type(5n),.wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#individual-image):nth-of-type(6n),.wp-block-gallery.has-nested-images.columns-7 figure.wp-block-image:not(#individual-image):nth-of-type(7n),.wp-block-gallery.has-nested-images.columns-8 figure.wp-block-image:not(#individual-image):nth-of-type(8n){margin-right:0}.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image){margin-right:var(--gallery-block--gutter-size,16px);width:calc(33.33% - var(--gallery-block--gutter-size, 16px)*0.66667)}.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):nth-of-type(3n+3){margin-right:0}.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(2),.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(2)~figure.wp-block-image:not(#individual-image){width:calc(50% - var(--gallery-block--gutter-size, 16px)*0.5)}.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:last-child{width:100%}}.wp-block-gallery.has-nested-images.alignleft,.wp-block-gallery.has-nested-images.alignright{max-width:420px;width:100%}.wp-block-gallery.has-nested-images.aligncenter{justify-content:center}.wp-block-group{box-sizing:border-box}h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}h1.has-background,h2.has-background,h3.has-background,h4.has-background,h5.has-background,h6.has-background{padding:1.25em 2.375em}.wp-block-image{margin:0 0 1em}.wp-block-image img{height:auto;max-width:100%;vertical-align:bottom}.wp-block-image:not(.is-style-rounded)>a,.wp-block-image:not(.is-style-rounded) img{border-radius:inherit}.wp-block-image.aligncenter{text-align:center}.wp-block-image.alignfull img,.wp-block-image.alignwide img{height:auto;width:100%}.wp-block-image .aligncenter,.wp-block-image .alignleft,.wp-block-image .alignright{display:table}.wp-block-image .aligncenter>figcaption,.wp-block-image .alignleft>figcaption,.wp-block-image .alignright>figcaption{display:table-caption;caption-side:bottom}.wp-block-image .alignleft{float:left;margin:.5em 1em .5em 0}.wp-block-image .alignright{float:right;margin:.5em 0 .5em 1em}.wp-block-image .aligncenter{margin-left:auto;margin-right:auto}.wp-block-image figcaption{margin-top:.5em;margin-bottom:1em}.wp-block-image.is-style-circle-mask img,.wp-block-image.is-style-rounded img{border-radius:9999px}@supports ((-webkit-mask-image:none) or (mask-image:none)) or (-webkit-mask-image:none){.wp-block-image.is-style-circle-mask img{-webkit-mask-image:url('data:image/svg+xml;utf8,');mask-image:url('data:image/svg+xml;utf8,');mask-mode:alpha;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-position:center;mask-position:center;border-radius:0}}.wp-block-image figure{margin:0}ol.wp-block-latest-comments{margin-left:0}.wp-block-latest-comments .wp-block-latest-comments{padding-left:0}.wp-block-latest-comments__comment{line-height:1.1;list-style:none;margin-bottom:1em}.has-avatars .wp-block-latest-comments__comment{min-height:2.25em;list-style:none}.has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-excerpt,.has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-meta{margin-left:3.25em}.has-dates .wp-block-latest-comments__comment,.has-excerpts .wp-block-latest-comments__comment{line-height:1.5}.wp-block-latest-comments__comment-excerpt p{font-size:.875em;line-height:1.8;margin:.36em 0 1.4em}.wp-block-latest-comments__comment-date{display:block;font-size:.75em}.wp-block-latest-comments .avatar,.wp-block-latest-comments__comment-avatar{border-radius:1.5em;display:block;float:left;height:2.5em;margin-right:.75em;width:2.5em}.wp-block-latest-posts.alignleft{margin-right:2em}.wp-block-latest-posts.alignright{margin-left:2em}.wp-block-latest-posts.wp-block-latest-posts__list{list-style:none;padding-left:0}.wp-block-latest-posts.wp-block-latest-posts__list li{clear:both}.wp-block-latest-posts.is-grid{display:flex;flex-wrap:wrap;padding:0}.wp-block-latest-posts.is-grid li{margin:0 1.25em 1.25em 0;width:100%}@media (min-width:600px){.wp-block-latest-posts.columns-2 li{width:calc(50% - .625em)}.wp-block-latest-posts.columns-2 li:nth-child(2n){margin-right:0}.wp-block-latest-posts.columns-3 li{width:calc(33.33333% - .83333em)}.wp-block-latest-posts.columns-3 li:nth-child(3n){margin-right:0}.wp-block-latest-posts.columns-4 li{width:calc(25% - .9375em)}.wp-block-latest-posts.columns-4 li:nth-child(4n){margin-right:0}.wp-block-latest-posts.columns-5 li{width:calc(20% - 1em)}.wp-block-latest-posts.columns-5 li:nth-child(5n){margin-right:0}.wp-block-latest-posts.columns-6 li{width:calc(16.66667% - 1.04167em)}.wp-block-latest-posts.columns-6 li:nth-child(6n){margin-right:0}}.wp-block-latest-posts__post-author,.wp-block-latest-posts__post-date{display:block;font-size:.8125em}.wp-block-latest-posts__post-excerpt{margin-top:.5em;margin-bottom:1em}.wp-block-latest-posts__featured-image a{display:inline-block}.wp-block-latest-posts__featured-image img{height:auto;width:auto;max-width:100%}.wp-block-latest-posts__featured-image.alignleft{margin-right:1em}.wp-block-latest-posts__featured-image.alignright{margin-left:1em}.wp-block-latest-posts__featured-image.aligncenter{margin-bottom:1em;text-align:center}.block-editor-image-alignment-control__row .components-base-control__field{display:flex;justify-content:space-between;align-items:center}.block-editor-image-alignment-control__row .components-base-control__field .components-base-control__label{margin-bottom:0}ol,ul{overflow-wrap:break-word}ol.has-background,ul.has-background{padding:1.25em 2.375em}.wp-block-media-text{ /*!rtl:begin:ignore*/direction:ltr; /*!rtl:end:ignore*/display:grid;grid-template-columns:50% 1fr;grid-template-rows:auto}.wp-block-media-text.has-media-on-the-right{grid-template-columns:1fr 50%}.wp-block-media-text.is-vertically-aligned-top .wp-block-media-text__content,.wp-block-media-text.is-vertically-aligned-top .wp-block-media-text__media{align-self:start}.wp-block-media-text.is-vertically-aligned-center .wp-block-media-text__content,.wp-block-media-text.is-vertically-aligned-center .wp-block-media-text__media,.wp-block-media-text .wp-block-media-text__content,.wp-block-media-text .wp-block-media-text__media{align-self:center}.wp-block-media-text.is-vertically-aligned-bottom .wp-block-media-text__content,.wp-block-media-text.is-vertically-aligned-bottom .wp-block-media-text__media{align-self:end}.wp-block-media-text .wp-block-media-text__media{ /*!rtl:begin:ignore*/grid-column:1;grid-row:1; /*!rtl:end:ignore*/margin:0}.wp-block-media-text .wp-block-media-text__content{direction:ltr; /*!rtl:begin:ignore*/grid-column:2;grid-row:1; /*!rtl:end:ignore*/padding:0 8%;word-break:break-word}.wp-block-media-text.has-media-on-the-right .wp-block-media-text__media{ /*!rtl:begin:ignore*/grid-column:2;grid-row:1 /*!rtl:end:ignore*/}.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content{ /*!rtl:begin:ignore*/grid-column:1;grid-row:1 /*!rtl:end:ignore*/}.wp-block-media-text__media img,.wp-block-media-text__media video{height:auto;max-width:unset;width:100%;vertical-align:middle}.wp-block-media-text.is-image-fill .wp-block-media-text__media{height:100%;min-height:250px;background-size:cover}.wp-block-media-text.is-image-fill .wp-block-media-text__media>a{display:block;height:100%}.wp-block-media-text.is-image-fill .wp-block-media-text__media img{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}@media (max-width:600px){.wp-block-media-text.is-stacked-on-mobile{grid-template-columns:100%!important}.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media{grid-column:1;grid-row:1}.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content{grid-column:1;grid-row:2}}.wp-block-navigation{position:relative;--navigation-layout-justification-setting:flex-start;--navigation-layout-direction:row;--navigation-layout-wrap:wrap;--navigation-layout-justify:flex-start;--navigation-layout-align:center}.wp-block-navigation ul{margin-top:0;margin-bottom:0;margin-left:0;padding-left:0}.wp-block-navigation ul,.wp-block-navigation ul li{list-style:none;padding:0}.wp-block-navigation .wp-block-navigation-item{display:flex;align-items:center;position:relative}.wp-block-navigation .wp-block-navigation-item .wp-block-navigation__submenu-container:empty{display:none}.wp-block-navigation .wp-block-navigation-item__content{color:inherit;display:block;padding:0}.wp-block-navigation[style*=text-decoration] .wp-block-navigation-item,.wp-block-navigation[style*=text-decoration] .wp-block-navigation__submenu-container,.wp-block-navigation[style*=text-decoration] a,.wp-block-navigation[style*=text-decoration] a:active,.wp-block-navigation[style*=text-decoration] a:focus{text-decoration:inherit}.wp-block-navigation:not([style*=text-decoration]) a,.wp-block-navigation:not([style*=text-decoration]) a:active,.wp-block-navigation:not([style*=text-decoration]) a:focus{text-decoration:none}.wp-block-navigation .wp-block-navigation__submenu-icon{align-self:center;line-height:0;display:inline-block;vertical-align:middle;font-size:inherit;padding:0;background-color:inherit;color:currentColor;border:none;margin-left:.25em;width:.6em;height:.6em}.wp-block-navigation .wp-block-navigation__submenu-icon svg{display:inline-block;stroke:currentColor;width:inherit;height:inherit}.wp-block-navigation.is-vertical{--navigation-layout-direction:column;--navigation-layout-justify:initial;--navigation-layout-align:flex-start}.wp-block-navigation.no-wrap{--navigation-layout-wrap:nowrap}.wp-block-navigation.items-justified-center{--navigation-layout-justification-setting:center;--navigation-layout-justify:center}.wp-block-navigation.items-justified-center.is-vertical{--navigation-layout-align:center}.wp-block-navigation.items-justified-right{--navigation-layout-justification-setting:flex-end;--navigation-layout-justify:flex-end}.wp-block-navigation.items-justified-right.is-vertical{--navigation-layout-align:flex-end}.wp-block-navigation.items-justified-space-between{--navigation-layout-justification-setting:space-between;--navigation-layout-justify:space-between}.wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container){background-color:inherit;color:inherit;position:absolute;z-index:2;display:flex;flex-direction:column;align-items:normal;opacity:0;transition:opacity .1s linear;visibility:hidden;width:0;height:0;overflow:hidden;left:-1px;top:100%}.wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container)>.wp-block-navigation-item>.wp-block-navigation-item__content{display:flex;flex-grow:1}.wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container)>.wp-block-navigation-item>.wp-block-navigation-item__content .wp-block-navigation__submenu-icon{margin-right:0;margin-left:auto}.wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) .wp-block-navigation-item__content{margin:0}@media (min-width:782px){.wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) .wp-block-navigation__submenu-container{left:100%;top:-1px}.wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) .wp-block-navigation__submenu-container:before{content:"";position:absolute;right:100%;height:100%;display:block;width:.5em;background:transparent}.wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) .wp-block-navigation__submenu-icon svg{transform:rotate(-90deg)}}.wp-block-navigation .has-child:where(:not(.open-on-click)):hover>.wp-block-navigation__submenu-container{visibility:visible;overflow:visible;opacity:1;width:auto;height:auto;min-width:200px}.wp-block-navigation .has-child:where(:not(.open-on-click):not(.open-on-hover-click)):focus-within>.wp-block-navigation__submenu-container{visibility:visible;overflow:visible;opacity:1;width:auto;height:auto;min-width:200px}.wp-block-navigation .has-child .wp-block-navigation-submenu__toggle[aria-expanded=true]+.wp-block-navigation__submenu-container{visibility:visible;overflow:visible;opacity:1;width:auto;height:auto;min-width:200px}.wp-block-navigation.has-background .has-child .wp-block-navigation__submenu-container{left:0;top:100%}@media (min-width:782px){.wp-block-navigation.has-background .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container{left:100%;top:0}}.wp-block-navigation-submenu{position:relative;display:flex}.wp-block-navigation-submenu .wp-block-navigation__submenu-icon svg{stroke:currentColor}button.wp-block-navigation-item__content{background-color:transparent;border:none;color:currentColor;font-size:inherit;font-family:inherit;line-height:inherit;text-align:left}.wp-block-navigation-submenu__toggle{cursor:pointer}.wp-block-navigation,.wp-block-navigation .wp-block-page-list,.wp-block-navigation__container,.wp-block-navigation__responsive-container-content{gap:var(--wp--style--block-gap,2em)}.wp-block-navigation:where(.has-background),.wp-block-navigation:where(.has-background) .wp-block-navigation .wp-block-page-list,.wp-block-navigation:where(.has-background) .wp-block-navigation__container{gap:var(--wp--style--block-gap,.5em)}.wp-block-navigation:where(.has-background) .wp-block-navigation-item__content,.wp-block-navigation :where(.wp-block-navigation__submenu-container) .wp-block-navigation-item__content{padding:.5em 1em}.wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-right .wp-block-page-list>.has-child .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between .wp-block-page-list>.has-child:last-child .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between>.wp-block-navigation__container>.has-child:last-child .wp-block-navigation__submenu-container{left:auto;right:0}.wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-right .wp-block-page-list>.has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between .wp-block-page-list>.has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between>.wp-block-navigation__container>.has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container{left:-1px;right:-1px}@media (min-width:782px){.wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-right .wp-block-page-list>.has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between .wp-block-page-list>.has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between>.wp-block-navigation__container>.has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container{left:auto;right:100%}}.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container{background-color:#fff;color:#000;border:1px solid rgba(0,0,0,.15)}.wp-block-navigation__container{display:flex;flex-wrap:var(--navigation-layout-wrap,wrap);flex-direction:var(--navigation-layout-direction,initial);justify-content:var(--navigation-layout-justify,initial);align-items:var(--navigation-layout-align,initial);list-style:none;margin:0;padding-left:0}.wp-block-navigation__container .is-responsive{display:none}.wp-block-navigation__container:only-child,.wp-block-page-list:only-child{flex-grow:1}.wp-block-navigation__responsive-container{display:none;position:fixed;top:0;left:0;right:0;bottom:0}.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content{display:flex;flex-wrap:var(--navigation-layout-wrap,wrap);flex-direction:var(--navigation-layout-direction,initial);justify-content:var(--navigation-layout-justify,initial);align-items:var(--navigation-layout-align,initial)}.wp-block-navigation__responsive-container:not(.is-menu-open.is-menu-open){color:inherit!important;background-color:inherit!important}.wp-block-navigation__responsive-container.is-menu-open{display:flex;flex-direction:column;background-color:inherit;padding:2em;overflow:auto;z-index:100000}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{padding-top:calc(2em + 24px);overflow:visible;display:flex;flex-direction:column;flex-wrap:nowrap;align-items:var(--navigation-layout-justification-setting,inherit)}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-page-list{justify-content:flex-start}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-icon{display:none}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .submenu-container,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container{opacity:1;visibility:visible;height:auto;width:auto;overflow:initial;min-width:200px;position:static;border:none;padding-left:2em;padding-right:2em}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container{gap:var(--wp--style--block-gap,2em)}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container{padding-top:var(--wp--style--block-gap,2em)}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content{padding:0}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-page-list{display:flex;flex-direction:column;align-items:var(--navigation-layout-justification-setting,initial)}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation__submenu-container,.wp-block-navigation__responsive-container.is-menu-open .wp-block-page-list{color:inherit!important;background:transparent!important}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container{right:auto;left:auto}@media (min-width:600px){.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){display:block;width:100%;position:relative;z-index:auto;background-color:inherit}.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) .wp-block-navigation__responsive-container-close{display:none}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container{left:0}}.wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open{background-color:#fff;color:#000}.wp-block-navigation__responsive-container-close,.wp-block-navigation__responsive-container-open{vertical-align:middle;cursor:pointer;color:currentColor;background:transparent;border:none;margin:0;padding:0}.wp-block-navigation__responsive-container-close svg,.wp-block-navigation__responsive-container-open svg{fill:currentColor;pointer-events:none;display:block;width:24px;height:24px}.wp-block-navigation__responsive-container-open{display:flex}@media (min-width:600px){.wp-block-navigation__responsive-container-open:not(.always-shown){display:none}}.wp-block-navigation__responsive-container-close{position:absolute;top:0;right:0;z-index:2}.wp-block-navigation__responsive-close{width:100%}.is-menu-open .wp-block-navigation__responsive-close,.is-menu-open .wp-block-navigation__responsive-container-content,.is-menu-open .wp-block-navigation__responsive-dialog{box-sizing:border-box}.wp-block-navigation__responsive-dialog{position:relative}html.has-modal-open{overflow:hidden}.wp-block-navigation .wp-block-navigation-item__label{word-break:normal;overflow-wrap:break-word}.wp-block-navigation .wp-block-home-link__content{color:inherit;display:block}.wp-block-navigation[style*=text-decoration] .wp-block-home-link,.wp-block-navigation[style*=text-decoration] .wp-block-home-link__content,.wp-block-navigation[style*=text-decoration] .wp-block-home-link__content:active,.wp-block-navigation[style*=text-decoration] .wp-block-home-link__content:focus{text-decoration:inherit}.wp-block-navigation:not([style*=text-decoration]) .wp-block-home-link__content,.wp-block-navigation:not([style*=text-decoration]) .wp-block-home-link__content:active,.wp-block-navigation:not([style*=text-decoration]) .wp-block-home-link__content:focus{text-decoration:none}.wp-block-navigation:not(.has-background) .wp-block-navigation__container .wp-block-home-link__container{background-color:#fff;color:#000;border:1px solid rgba(0,0,0,.15)}.wp-block-navigation:not(.has-background) .wp-block-navigation__container .wp-block-home-link__container .wp-block-home-link__container{top:-1px}.wp-block-navigation .wp-block-page-list{display:flex;flex-direction:var(--navigation-layout-direction,initial);justify-content:var(--navigation-layout-justify,initial);align-items:var(--navigation-layout-align,initial);flex-wrap:var(--navigation-layout-wrap,wrap);background-color:inherit}.wp-block-navigation .wp-block-navigation-item{background-color:inherit}.is-small-text{font-size:.875em}.is-regular-text{font-size:1em}.is-large-text{font-size:2.25em}.is-larger-text{font-size:3em}.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;line-height:.68;font-weight:100;margin:.05em .1em 0 0;text-transform:uppercase;font-style:normal}p{overflow-wrap:break-word}p.has-drop-cap.has-background{overflow:hidden}p.has-background{padding:1.25em 2.375em}:where(p.has-text-color:not(.has-link-color)) a{color:inherit}.wp-block-post-author{display:flex;flex-wrap:wrap}.wp-block-post-author__byline{width:100%;margin-top:0;margin-bottom:0;font-size:.5em}.wp-block-post-author__avatar{margin-right:1em}.wp-block-post-author__bio{margin-bottom:.7em;font-size:.7em}.wp-block-post-author__content{flex-grow:1;flex-basis:0}.wp-block-post-author__name{margin:0}.wp-block-post-comments>h3:first-of-type{margin-top:0}.wp-block-post-comments .commentlist{list-style:none;margin:0;padding:0}.wp-block-post-comments .commentlist .comment{min-height:2.25em;padding-left:3.25em}.wp-block-post-comments .commentlist .comment p{font-size:.875em;line-height:1.8;margin:.36em 0 1.4em}.wp-block-post-comments .commentlist .children{list-style:none;margin:0;padding:0}.wp-block-post-comments .comment-author{line-height:1.5}.wp-block-post-comments .comment-author .avatar{border-radius:1.5em;display:block;float:left;height:2.5em;margin-right:.75em;width:2.5em}.wp-block-post-comments .comment-author cite{font-style:normal}.wp-block-post-comments .comment-meta{line-height:1.5;margin-left:-3.25em}.wp-block-post-comments .comment-body .commentmetadata{font-size:.75em}.wp-block-post-comments .comment-form-author label,.wp-block-post-comments .comment-form-comment label,.wp-block-post-comments .comment-form-email label,.wp-block-post-comments .comment-form-url label{display:block;margin-bottom:.25em}.wp-block-post-comments .comment-form input:not([type=submit]):not([type=checkbox]),.wp-block-post-comments .comment-form textarea{display:block;box-sizing:border-box;width:100%}.wp-block-post-comments .comment-form-cookies-consent{display:flex;gap:.25em}.wp-block-post-comments .comment-form-cookies-consent #wp-comment-cookies-consent{margin-top:.35em}.wp-block-post-comments .reply{font-size:.75em;margin-bottom:1.4em}.wp-block-post-comments input:not([type=submit]),.wp-block-post-comments textarea{border:1px solid #949494;font-size:1em;font-family:inherit}.wp-block-post-comments input:not([type=submit]):not([type=checkbox]),.wp-block-post-comments textarea{padding:calc(.667em + 2px)}.wp-block-post-comments input[type=submit]{border:none}.wp-block-post-comments-form[style*=font-weight] :where(.comment-reply-title){font-weight:inherit}.wp-block-post-comments-form[style*=font-family] :where(.comment-reply-title){font-family:inherit}.wp-block-post-comments-form[class*=-font-size] :where(.comment-reply-title),.wp-block-post-comments-form[style*=font-size] :where(.comment-reply-title){font-size:inherit}.wp-block-post-comments-form[style*=line-height] :where(.comment-reply-title){line-height:inherit}.wp-block-post-comments-form[style*=font-style] :where(.comment-reply-title){font-style:inherit}.wp-block-post-comments-form[style*=letter-spacing] :where(.comment-reply-title){letter-spacing:inherit}.wp-block-post-comments-form input[type=submit]{border:none;box-shadow:none;cursor:pointer;display:inline-block;text-align:center;overflow-wrap:break-word}.wp-block-post-comments-form input:not([type=submit]),.wp-block-post-comments-form textarea{border:1px solid #949494;font-size:1em;font-family:inherit}.wp-block-post-comments-form input:not([type=submit]):not([type=checkbox]),.wp-block-post-comments-form textarea{padding:calc(.667em + 2px)}.wp-block-post-comments-form .comment-form input:not([type=submit]):not([type=checkbox]),.wp-block-post-comments-form .comment-form textarea{display:block;box-sizing:border-box;width:100%}.wp-block-post-comments-form .comment-form-author label,.wp-block-post-comments-form .comment-form-email label,.wp-block-post-comments-form .comment-form-url label{display:block;margin-bottom:.25em}.wp-block-post-comments-form .comment-form-cookies-consent{display:flex;gap:.25em}.wp-block-post-comments-form .comment-form-cookies-consent #wp-comment-cookies-consent{margin-top:.35em}.wp-block-post-excerpt__more-link{display:inline-block}.wp-block-post-terms__separator{white-space:pre-wrap}.wp-block-post-title a{display:inline-block}.wp-block-preformatted{white-space:pre-wrap}.wp-block-preformatted.has-background{padding:1.25em 2.375em}.wp-block-pullquote{margin:0 0 1em;padding:3em 0;text-align:center;overflow-wrap:break-word}.wp-block-pullquote blockquote,.wp-block-pullquote cite,.wp-block-pullquote p{color:inherit}.wp-block-pullquote.alignleft,.wp-block-pullquote.alignright,.wp-block-pullquote.has-text-align-left,.wp-block-pullquote.has-text-align-right{max-width:420px}.wp-block-pullquote.alignleft p,.wp-block-pullquote.alignright p,.wp-block-pullquote.has-text-align-left p,.wp-block-pullquote.has-text-align-right p{font-size:1.25em}.wp-block-pullquote p{font-size:1.75em;line-height:1.6}.wp-block-pullquote cite,.wp-block-pullquote footer{position:relative}.wp-block-pullquote .has-text-color a{color:inherit}.wp-block-pullquote.has-text-align-left blockquote{text-align:left}.wp-block-pullquote.has-text-align-right blockquote{text-align:right}.wp-block-pullquote:not(.is-style-solid-color){background:none}.wp-block-pullquote.is-style-solid-color{border:none}.wp-block-pullquote.is-style-solid-color blockquote{margin-left:auto;margin-right:auto;max-width:60%}.wp-block-pullquote.is-style-solid-color blockquote p{margin-top:0;margin-bottom:0;font-size:2em}.wp-block-pullquote.is-style-solid-color blockquote cite{text-transform:none;font-style:normal}.wp-block-pullquote cite{color:inherit}.wp-block-post-template,.wp-block-query-loop{margin-top:0;margin-bottom:0;max-width:100%;list-style:none;padding:0}.wp-block-post-template.wp-block-post-template,.wp-block-query-loop.wp-block-post-template{background:none}.wp-block-post-template.is-flex-container,.wp-block-query-loop.is-flex-container{flex-direction:row;display:flex;flex-wrap:wrap;gap:1.25em}.wp-block-post-template.is-flex-container li,.wp-block-query-loop.is-flex-container li{margin:0;width:100%}@media (min-width:600px){.wp-block-post-template.is-flex-container.is-flex-container.columns-2>li,.wp-block-query-loop.is-flex-container.is-flex-container.columns-2>li{width:calc(50% - .625em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-3>li,.wp-block-query-loop.is-flex-container.is-flex-container.columns-3>li{width:calc(33.33333% - .83333em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-4>li,.wp-block-query-loop.is-flex-container.is-flex-container.columns-4>li{width:calc(25% - .9375em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-5>li,.wp-block-query-loop.is-flex-container.is-flex-container.columns-5>li{width:calc(20% - 1em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-6>li,.wp-block-query-loop.is-flex-container.is-flex-container.columns-6>li{width:calc(16.66667% - 1.04167em)}}.wp-block-query-pagination>.wp-block-query-pagination-next,.wp-block-query-pagination>.wp-block-query-pagination-numbers,.wp-block-query-pagination>.wp-block-query-pagination-previous{margin-right:.5em;margin-bottom:.5em}.wp-block-query-pagination>.wp-block-query-pagination-next:last-child,.wp-block-query-pagination>.wp-block-query-pagination-numbers:last-child,.wp-block-query-pagination>.wp-block-query-pagination-previous:last-child{margin-right:0}.wp-block-query-pagination .wp-block-query-pagination-previous-arrow{margin-right:1ch;display:inline-block}.wp-block-query-pagination .wp-block-query-pagination-previous-arrow:not(.is-arrow-chevron){transform:scaleX(1)}.wp-block-query-pagination .wp-block-query-pagination-next-arrow{margin-left:1ch;display:inline-block}.wp-block-query-pagination .wp-block-query-pagination-next-arrow:not(.is-arrow-chevron){transform:scaleX(1)}.wp-block-query-pagination.aligncenter{justify-content:center}.wp-block-quote{overflow-wrap:break-word}.wp-block-quote.is-large,.wp-block-quote.is-style-large{margin-bottom:1em;padding:0 1em}.wp-block-quote.is-large p,.wp-block-quote.is-style-large p{font-size:1.5em;font-style:italic;line-height:1.6}.wp-block-quote.is-large cite,.wp-block-quote.is-large footer,.wp-block-quote.is-style-large cite,.wp-block-quote.is-style-large footer{font-size:1.125em;text-align:right}ul.wp-block-rss{list-style:none;padding:0}ul.wp-block-rss.wp-block-rss{box-sizing:border-box}ul.wp-block-rss.alignleft{margin-right:2em}ul.wp-block-rss.alignright{margin-left:2em}ul.wp-block-rss.is-grid{display:flex;flex-wrap:wrap;padding:0;list-style:none}ul.wp-block-rss.is-grid li{margin:0 1em 1em 0;width:100%}@media (min-width:600px){ul.wp-block-rss.columns-2 li{width:calc(50% - 1em)}ul.wp-block-rss.columns-3 li{width:calc(33.33333% - 1em)}ul.wp-block-rss.columns-4 li{width:calc(25% - 1em)}ul.wp-block-rss.columns-5 li{width:calc(20% - 1em)}ul.wp-block-rss.columns-6 li{width:calc(16.66667% - 1em)}}.wp-block-rss__item-author,.wp-block-rss__item-publish-date{display:block;font-size:.8125em}.wp-block-search__button{background:#f7f7f7;border:1px solid #ccc;padding:.375em .625em;color:#32373c;margin-left:.625em;word-break:normal;font-size:inherit;font-family:inherit;line-height:inherit}.wp-block-search__button.has-icon{line-height:0}.wp-block-search__button svg{min-width:1.5em;min-height:1.5em;fill:currentColor}.wp-block-search__inside-wrapper{display:flex;flex:auto;flex-wrap:nowrap;max-width:100%}.wp-block-search__label{width:100%}.wp-block-search__input{padding:8px;flex-grow:1;min-width:3em;border:1px solid #949494;font-size:inherit;font-family:inherit;line-height:inherit}.wp-block-search.wp-block-search__button-only .wp-block-search__button{margin-left:0}.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper{padding:4px;border:1px solid #949494}.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__input{border-radius:0;border:none;padding:0 0 0 .25em}.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__input:focus{outline:none}.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__button{padding:.125em .5em}.wp-block-search.aligncenter .wp-block-search__inside-wrapper{margin:auto}.wp-block-separator{border-top:1px solid;border-bottom:1px solid}.wp-block-separator.is-style-wide{border-bottom-width:1px}.wp-block-separator.is-style-dots{background:none!important;border:none;text-align:center;line-height:1;height:auto}.wp-block-separator.is-style-dots:before{content:"···";color:currentColor;font-size:1.5em;letter-spacing:2em;padding-left:2em;font-family:serif}.wp-block-site-logo{line-height:0}.wp-block-site-logo a{display:inline-block}.wp-block-site-logo.is-default-size img{width:120px;height:auto}.wp-block-site-logo a,.wp-block-site-logo img{border-radius:inherit}.wp-block-site-logo.aligncenter{margin-left:auto;margin-right:auto;text-align:center}.wp-block-site-logo.is-style-rounded{border-radius:9999px}.wp-block-social-links{padding-left:0;padding-right:0;text-indent:0;margin-left:0}.wp-block-social-links .wp-social-link a,.wp-block-social-links .wp-social-link a:hover{text-decoration:none;border-bottom:0;box-shadow:none}.wp-block-social-links .wp-social-link a{padding:.25em}.wp-block-social-links .wp-social-link svg{width:1em;height:1em}.wp-block-social-links.has-small-icon-size{font-size:16px}.wp-block-social-links,.wp-block-social-links.has-normal-icon-size{font-size:24px}.wp-block-social-links.has-large-icon-size{font-size:36px}.wp-block-social-links.has-huge-icon-size{font-size:48px}.wp-block-social-links.aligncenter{justify-content:center;display:flex}.wp-block-social-links.alignright{justify-content:flex-end}.wp-block-social-link{display:block;border-radius:9999px;transition:transform .1s ease;height:auto}@media (prefers-reduced-motion:reduce){.wp-block-social-link{transition-duration:0s;transition-delay:0s}}.wp-block-social-link a{display:block;line-height:0;transition:transform .1s ease}.wp-block-social-link:hover{transform:scale(1.1)}.wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor,.wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:active,.wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:hover,.wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:visited,.wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor svg{color:currentColor;fill:currentColor}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link{background-color:#f0f0f0;color:#444}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-amazon{background-color:#f90;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-bandcamp{background-color:#1ea0c3;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-behance{background-color:#0757fe;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-codepen{background-color:#1e1f26;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-deviantart{background-color:#02e49b;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-dribbble{background-color:#e94c89;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-dropbox{background-color:#4280ff;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-etsy{background-color:#f45800;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-facebook{background-color:#1778f2;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-fivehundredpx{background-color:#000;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-flickr{background-color:#0461dd;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-foursquare{background-color:#e65678;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-github{background-color:#24292d;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-goodreads{background-color:#eceadd;color:#382110}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-google{background-color:#ea4434;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-instagram{background-color:#f00075;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-lastfm{background-color:#e21b24;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-linkedin{background-color:#0d66c2;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-mastodon{background-color:#3288d4;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-medium{background-color:#02ab6c;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-meetup{background-color:#f6405f;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-patreon{background-color:#ff424d;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-pinterest{background-color:#e60122;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-pocket{background-color:#ef4155;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-reddit{background-color:#fe4500;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-skype{background-color:#0478d7;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-snapchat{background-color:#fefc00;color:#fff;stroke:#000}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-soundcloud{background-color:#ff5600;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-spotify{background-color:#1bd760;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-telegram{background-color:#2aabee;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-tiktok{background-color:#000;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-tumblr{background-color:#011835;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-twitch{background-color:#6440a4;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-twitter{background-color:#1da1f2;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-vimeo{background-color:#1eb7ea;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-vk{background-color:#4680c2;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-wordpress{background-color:#3499cd;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-yelp{background-color:#d32422;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-youtube{background-color:red;color:#fff}.wp-block-social-links.is-style-logos-only .wp-social-link{background:none}.wp-block-social-links.is-style-logos-only .wp-social-link a{padding:0}.wp-block-social-links.is-style-logos-only .wp-social-link svg{width:1.25em;height:1.25em}.wp-block-social-links.is-style-logos-only .wp-social-link-amazon{color:#f90}.wp-block-social-links.is-style-logos-only .wp-social-link-bandcamp{color:#1ea0c3}.wp-block-social-links.is-style-logos-only .wp-social-link-behance{color:#0757fe}.wp-block-social-links.is-style-logos-only .wp-social-link-codepen{color:#1e1f26}.wp-block-social-links.is-style-logos-only .wp-social-link-deviantart{color:#02e49b}.wp-block-social-links.is-style-logos-only .wp-social-link-dribbble{color:#e94c89}.wp-block-social-links.is-style-logos-only .wp-social-link-dropbox{color:#4280ff}.wp-block-social-links.is-style-logos-only .wp-social-link-etsy{color:#f45800}.wp-block-social-links.is-style-logos-only .wp-social-link-facebook{color:#1778f2}.wp-block-social-links.is-style-logos-only .wp-social-link-fivehundredpx{color:#000}.wp-block-social-links.is-style-logos-only .wp-social-link-flickr{color:#0461dd}.wp-block-social-links.is-style-logos-only .wp-social-link-foursquare{color:#e65678}.wp-block-social-links.is-style-logos-only .wp-social-link-github{color:#24292d}.wp-block-social-links.is-style-logos-only .wp-social-link-goodreads{color:#382110}.wp-block-social-links.is-style-logos-only .wp-social-link-google{color:#ea4434}.wp-block-social-links.is-style-logos-only .wp-social-link-instagram{color:#f00075}.wp-block-social-links.is-style-logos-only .wp-social-link-lastfm{color:#e21b24}.wp-block-social-links.is-style-logos-only .wp-social-link-linkedin{color:#0d66c2}.wp-block-social-links.is-style-logos-only .wp-social-link-mastodon{color:#3288d4}.wp-block-social-links.is-style-logos-only .wp-social-link-medium{color:#02ab6c}.wp-block-social-links.is-style-logos-only .wp-social-link-meetup{color:#f6405f}.wp-block-social-links.is-style-logos-only .wp-social-link-patreon{color:#ff424d}.wp-block-social-links.is-style-logos-only .wp-social-link-pinterest{color:#e60122}.wp-block-social-links.is-style-logos-only .wp-social-link-pocket{color:#ef4155}.wp-block-social-links.is-style-logos-only .wp-social-link-reddit{color:#fe4500}.wp-block-social-links.is-style-logos-only .wp-social-link-skype{color:#0478d7}.wp-block-social-links.is-style-logos-only .wp-social-link-snapchat{color:#fff;stroke:#000}.wp-block-social-links.is-style-logos-only .wp-social-link-soundcloud{color:#ff5600}.wp-block-social-links.is-style-logos-only .wp-social-link-spotify{color:#1bd760}.wp-block-social-links.is-style-logos-only .wp-social-link-telegram{color:#2aabee}.wp-block-social-links.is-style-logos-only .wp-social-link-tiktok{color:#000}.wp-block-social-links.is-style-logos-only .wp-social-link-tumblr{color:#011835}.wp-block-social-links.is-style-logos-only .wp-social-link-twitch{color:#6440a4}.wp-block-social-links.is-style-logos-only .wp-social-link-twitter{color:#1da1f2}.wp-block-social-links.is-style-logos-only .wp-social-link-vimeo{color:#1eb7ea}.wp-block-social-links.is-style-logos-only .wp-social-link-vk{color:#4680c2}.wp-block-social-links.is-style-logos-only .wp-social-link-wordpress{color:#3499cd}.wp-block-social-links.is-style-logos-only .wp-social-link-yelp{color:#d32422}.wp-block-social-links.is-style-logos-only .wp-social-link-youtube{color:red}.wp-block-social-links.is-style-pill-shape .wp-social-link{width:auto}.wp-block-social-links.is-style-pill-shape .wp-social-link a{padding-left:.66667em;padding-right:.66667em}.wp-block-spacer{clear:both}.wp-block-tag-cloud.aligncenter{text-align:center}.wp-block-tag-cloud.alignfull{padding-left:1em;padding-right:1em}.wp-block-tag-cloud a{display:inline-block;margin-right:5px}.wp-block-tag-cloud span{display:inline-block;margin-left:5px;text-decoration:none}.wp-block-table{margin:0 0 1em;overflow-x:auto}.wp-block-table table{border-collapse:collapse;width:100%}.wp-block-table .has-fixed-layout{table-layout:fixed;width:100%}.wp-block-table .has-fixed-layout td,.wp-block-table .has-fixed-layout th{word-break:break-word}.wp-block-table.aligncenter,.wp-block-table.alignleft,.wp-block-table.alignright{display:table;width:auto}.wp-block-table.aligncenter td,.wp-block-table.aligncenter th,.wp-block-table.alignleft td,.wp-block-table.alignleft th,.wp-block-table.alignright td,.wp-block-table.alignright th{word-break:break-word}.wp-block-table .has-subtle-light-gray-background-color{background-color:#f3f4f5}.wp-block-table .has-subtle-pale-green-background-color{background-color:#e9fbe5}.wp-block-table .has-subtle-pale-blue-background-color{background-color:#e7f5fe}.wp-block-table .has-subtle-pale-pink-background-color{background-color:#fcf0ef}.wp-block-table.is-style-stripes{border-spacing:0;border-collapse:inherit;background-color:transparent;border-bottom:1px solid #f0f0f0}.wp-block-table.is-style-stripes tbody tr:nth-child(odd){background-color:#f0f0f0}.wp-block-table.is-style-stripes.has-subtle-light-gray-background-color tbody tr:nth-child(odd){background-color:#f3f4f5}.wp-block-table.is-style-stripes.has-subtle-pale-green-background-color tbody tr:nth-child(odd){background-color:#e9fbe5}.wp-block-table.is-style-stripes.has-subtle-pale-blue-background-color tbody tr:nth-child(odd){background-color:#e7f5fe}.wp-block-table.is-style-stripes.has-subtle-pale-pink-background-color tbody tr:nth-child(odd){background-color:#fcf0ef}.wp-block-table.is-style-stripes td,.wp-block-table.is-style-stripes th{border-color:transparent}.wp-block-table .has-border-color>*,.wp-block-table .has-border-color td,.wp-block-table .has-border-color th,.wp-block-table .has-border-color tr{border-color:inherit}.wp-block-table table[style*=border-style]>*,.wp-block-table table[style*=border-style] td,.wp-block-table table[style*=border-style] th,.wp-block-table table[style*=border-style] tr{border-style:inherit}.wp-block-table table[style*=border-width]>*,.wp-block-table table[style*=border-width] td,.wp-block-table table[style*=border-width] th,.wp-block-table table[style*=border-width] tr{border-width:inherit}.wp-block-text-columns,.wp-block-text-columns.aligncenter{display:flex}.wp-block-text-columns .wp-block-column{margin:0 1em;padding:0}.wp-block-text-columns .wp-block-column:first-child{margin-left:0}.wp-block-text-columns .wp-block-column:last-child{margin-right:0}.wp-block-text-columns.columns-2 .wp-block-column{width:50%}.wp-block-text-columns.columns-3 .wp-block-column{width:33.33333%}.wp-block-text-columns.columns-4 .wp-block-column{width:25%}pre.wp-block-verse{font-family:inherit;overflow:auto;white-space:pre-wrap}.wp-block-video{margin:0 0 1em}.wp-block-video video{width:100%}@supports (position:sticky){.wp-block-video [poster]{-o-object-fit:cover;object-fit:cover}}.wp-block-video.aligncenter{text-align:center}.wp-block-video figcaption{margin-top:.5em;margin-bottom:1em}.wp-block-post-featured-image{margin-left:0;margin-right:0}.wp-block-post-featured-image a{display:inline-block}.wp-block-post-featured-image img{max-width:100%;width:100%;height:auto;vertical-align:bottom}.wp-block-post-featured-image.alignfull img,.wp-block-post-featured-image.alignwide img{width:100%}:root{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}.has-text-align-center{text-align:center}.has-text-align-left{text-align:left}.has-text-align-right{text-align:right}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#ddd;clip:auto!important;-webkit-clip-path:none;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(img[class*=wp-image-]){height:auto;max-width:100%}PKj l\ m css/dist/block-library/reset.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ /** * Editor Normalization Styles * * These are only output in the editor, but styles here are prefixed .editor-styles-wrapper and affect the theming * of the editor by themes. */ html :where(.editor-styles-wrapper) { /** * The following styles revert to the browser defaults overriding the WPAdmin styles. * This is only needed while the block editor is not being loaded in an iframe. */ font-family: serif; font-size: initial; line-height: initial; color: initial; background: #fff; } html :where(.editor-styles-wrapper) .wp-align-wrapper { max-width: 840px; } html :where(.editor-styles-wrapper) .wp-align-wrapper > .wp-block, html :where(.editor-styles-wrapper) .wp-align-wrapper.wp-align-full { max-width: none; } html :where(.editor-styles-wrapper) .wp-align-wrapper.wp-align-wide { max-width: 840px; } html :where(.editor-styles-wrapper) a { transition: none; } html :where(.editor-styles-wrapper) code, html :where(.editor-styles-wrapper) kbd { padding: 0; margin: 0; background: inherit; font-size: inherit; font-family: monospace; } html :where(.editor-styles-wrapper) p { font-size: revert; line-height: revert; margin: revert; } html :where(.editor-styles-wrapper) ul, html :where(.editor-styles-wrapper) ol { margin: revert; padding: revert; list-style-type: revert; box-sizing: revert; } html :where(.editor-styles-wrapper) ul ul, html :where(.editor-styles-wrapper) ul ol, html :where(.editor-styles-wrapper) ol ul, html :where(.editor-styles-wrapper) ol ol { margin: revert; } html :where(.editor-styles-wrapper) ul li, html :where(.editor-styles-wrapper) ol li { margin: revert; } html :where(.editor-styles-wrapper) ul ul, html :where(.editor-styles-wrapper) ol ul { list-style-type: revert; } html :where(.editor-styles-wrapper) h1, html :where(.editor-styles-wrapper) h2, html :where(.editor-styles-wrapper) h3, html :where(.editor-styles-wrapper) h4, html :where(.editor-styles-wrapper) h5, html :where(.editor-styles-wrapper) h6 { font-size: revert; margin: revert; color: revert; line-height: revert; font-weight: revert; } html :where(.editor-styles-wrapper) select { font-family: system-ui; -webkit-appearance: revert; color: revert; border: revert; border-radius: revert; background: revert; box-shadow: revert; text-shadow: revert; outline: revert; cursor: revert; transform: revert; font-size: revert; line-height: revert; padding: revert; margin: revert; min-height: revert; max-width: revert; vertical-align: revert; font-weight: revert; } html :where(.editor-styles-wrapper) select:disabled, html :where(.editor-styles-wrapper) select:focus { color: revert; border-color: revert; background-color: revert; background-image: revert; box-shadow: revert; text-shadow: revert; cursor: revert; transform: revert; }PKj l\q)css/dist/block-library/editor-rtl.min.cssnu[ul.wp-block-archives{padding-right:2.5em}.wp-block-audio{margin-right:0;margin-left:0}.edit-post-visual-editor .block-library-block__reusable-block-container .is-root-container{padding-right:0;padding-left:0}.edit-post-visual-editor .block-library-block__reusable-block-container .block-editor-writing-flow{display:block}.edit-post-visual-editor .block-library-block__reusable-block-container .components-disabled .block-list-appender{display:none}.wp-block[data-align=center]>.wp-block-button{text-align:center;margin-right:auto;margin-left:auto}.wp-block[data-align=right]>.wp-block-button{text-align:right}.wp-block-button{position:relative;cursor:text}.wp-block-button:not(.has-text-color):not(.is-style-outline) [data-rich-text-placeholder]:after{color:#fff}.wp-block-button:focus{box-shadow:0 0 0 1px #fff,0 0 0 3px var(--wp-admin-theme-color);outline:2px solid transparent;outline-offset:-2px}.wp-block-button[data-rich-text-placeholder]:after{opacity:.8}.wp-block-button__inline-link{color:#757575;height:0;overflow:hidden;max-width:290px}.wp-block-button__inline-link-input__suggestions{max-width:290px}@media (min-width:782px){.wp-block-button__inline-link,.wp-block-button__inline-link-input__suggestions{max-width:260px}}@media (min-width:960px){.wp-block-button__inline-link,.wp-block-button__inline-link-input__suggestions{max-width:290px}}.is-selected .wp-block-button__inline-link{height:auto;overflow:visible}.wp-button-label__width .components-button-group{display:block}.wp-button-label__width .components-base-control__field{margin-bottom:12px}div[data-type="core/button"]{display:table}.wp-block-buttons>.wp-block,.wp-block-buttons>.wp-block-button.wp-block-button.wp-block-button.wp-block-button.wp-block-button{margin:0}.wp-block-buttons>.block-list-appender{display:inline-flex;align-items:center}.wp-block-buttons.is-vertical>.block-list-appender .block-list-appender__toggle{justify-content:flex-start}.wp-block-buttons>.wp-block-button:focus{box-shadow:none}.wp-block-buttons:not(.is-content-justification-space-between,.is-content-justification-right,.is-content-justification-left,.is-content-justification-center) .wp-block[data-align=center]{margin-right:auto;margin-left:auto;margin-top:0;width:100%}.wp-block-buttons:not(.is-content-justification-space-between,.is-content-justification-right,.is-content-justification-left,.is-content-justification-center) .wp-block[data-align=center] .wp-block-button{margin-bottom:0}.wp-block[data-align=center]>.wp-block-buttons{align-items:center;justify-content:center}.wp-block[data-align=right]>.wp-block-buttons{justify-content:flex-end}.wp-block-categories ul{padding-right:2.5em}.wp-block-categories ul ul{margin-top:6px}.wp-block-columns :where(.wp-block){max-width:none;margin-right:0;margin-left:0}@media (min-width:600px){.editor-styles-wrapper .block-editor-block-list__block.wp-block-column:nth-child(2n){margin-right:var(--wp--style--block-gap,2em)}}@media (min-width:782px){.editor-styles-wrapper .block-editor-block-list__block.wp-block-column:not(:first-child){margin-right:var(--wp--style--block-gap,2em)}}html :where(.wp-block-column){margin-top:0;margin-bottom:0}.editor-styles-wrapper .wp-block-cover{box-sizing:border-box}.wp-block-cover.is-placeholder{min-height:auto!important;padding:0!important}.wp-block-cover.is-placeholder .block-library-cover__resize-container{display:none}.wp-block-cover.is-placeholder .components-placeholder.is-large{min-height:240px;justify-content:flex-start;z-index:1}.wp-block-cover.is-placeholder .components-placeholder.is-large+.block-library-cover__resize-container{min-height:240px;display:block}.wp-block-cover.components-placeholder h2{color:inherit}.wp-block-cover.is-transient:before{background-color:#fff;opacity:.3}.wp-block-cover .components-spinner{position:absolute;z-index:1;top:50%;right:50%;transform:translate(50%,-50%);margin:0}.wp-block-cover .block-editor-block-list__layout{width:100%}.wp-block-cover .wp-block-cover__inner-container{text-align:right;margin-right:0;margin-left:0}.wp-block-cover .wp-block-cover__placeholder-background-options{width:100%}[data-align=left]>.wp-block-cover,[data-align=right]>.wp-block-cover{max-width:420px;width:100%}.block-library-cover__reset-button{margin-right:auto}.block-library-cover__resize-container{position:absolute!important;top:0;right:0;left:0;bottom:0;min-height:50px}.block-library-cover__resize-container:not(.is-resizing){height:auto!important}.wp-block-cover>.components-drop-zone .components-drop-zone__content{opacity:.8!important}.block-editor-block-patterns-list__list-item .has-parallax.wp-block-cover{background-attachment:scroll}.wp-block-embed{margin-right:0;margin-left:0;clear:both}.wp-block-embed.is-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1em;min-height:200px;text-align:center;border-radius:2px;background-color:#fff;box-shadow:inset 0 0 0 1px #1e1e1e}.wp-block-embed.is-loading p{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px}.wp-block-embed .components-placeholder__error{word-break:break-word}.wp-block-embed .components-placeholder__learn-more{margin-top:1em}.block-library-embed__interactive-overlay{position:absolute;top:0;right:0;left:0;bottom:0;opacity:0}.wp-block[data-align=left]>.wp-block-embed,.wp-block[data-align=right]>.wp-block-embed{max-width:360px;width:100%}.wp-block[data-align=left]>.wp-block-embed .wp-block-embed__wrapper,.wp-block[data-align=right]>.wp-block-embed .wp-block-embed__wrapper{min-width:280px}.wp-block-file{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;margin-bottom:0}.wp-block[data-align=left]>.wp-block-file,.wp-block[data-align=right]>.wp-block-file{height:auto}.wp-block-file .components-resizable-box__container{margin-bottom:1em}.wp-block-file .wp-block-file__preview{margin-bottom:1em;width:100%;height:100%}.wp-block-file .wp-block-file__preview-overlay{position:absolute;top:0;left:0;bottom:0;right:0}.wp-block-file .wp-block-file__content-wrapper{flex-grow:1}.wp-block-file a{min-width:1em}.wp-block-file .wp-block-file__button-richtext-wrapper{display:inline-block;margin-right:.75em}.wp-block-freeform.block-library-rich-text__tinymce{height:auto}.wp-block-freeform.block-library-rich-text__tinymce li,.wp-block-freeform.block-library-rich-text__tinymce p{line-height:1.8}.wp-block-freeform.block-library-rich-text__tinymce ol,.wp-block-freeform.block-library-rich-text__tinymce ul{padding-right:2.5em;margin-right:0}.wp-block-freeform.block-library-rich-text__tinymce blockquote{margin:0;box-shadow:inset 0 0 0 0 #ddd;border-right:4px solid #000;padding-right:1em}.wp-block-freeform.block-library-rich-text__tinymce pre{white-space:pre-wrap;font-family:Menlo,Consolas,monaco,monospace;font-size:15px;color:#1e1e1e}.wp-block-freeform.block-library-rich-text__tinymce>:first-child{margin-top:0}.wp-block-freeform.block-library-rich-text__tinymce>:last-child{margin-bottom:0}.wp-block-freeform.block-library-rich-text__tinymce.mce-edit-focus{outline:none}.wp-block-freeform.block-library-rich-text__tinymce a{color:var(--wp-admin-theme-color)}.wp-block-freeform.block-library-rich-text__tinymce:focus a[data-mce-selected]{padding:0 2px;margin:0 -2px;border-radius:2px;box-shadow:0 0 0 1px #e5f5fa;background:#e5f5fa}.wp-block-freeform.block-library-rich-text__tinymce code{padding:2px;border-radius:2px;color:#1e1e1e;background:#f0f0f0;font-family:Menlo,Consolas,monaco,monospace;font-size:14px}.wp-block-freeform.block-library-rich-text__tinymce:focus code[data-mce-selected]{background:#ddd}.wp-block-freeform.block-library-rich-text__tinymce .alignright{float:right;margin:.5em 0 .5em 1em}.wp-block-freeform.block-library-rich-text__tinymce .alignleft{float:left;margin:.5em 1em .5em 0}.wp-block-freeform.block-library-rich-text__tinymce .aligncenter{display:block;margin-right:auto;margin-left:auto}.wp-block-freeform.block-library-rich-text__tinymce .wp-more-tag{width:96%;height:20px;display:block;margin:15px auto;outline:0;cursor:default;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAADtgAAAAoBAMAAAA86gLBAAAAJFBMVEVMaXG7u7vBwcHDw8POzs68vLzGxsbMzMy+vr7AwMDQ0NDGxsYKLGzpAAAADHRSTlMA///zWf+/f///TMxNVGuqAAABwklEQVR4Ae3dMXLaQBTH4bfj8UCpx8hq0vgKvgFNemhT6Qo6gg6R+0ZahM2QLmyBJ99XWP9V5+o3jIUcLQEAAAAAAAAAAAAAAAAAAAAAAABQ8j0WL9lfTtlt18uNXAUA8O/KVtfa1tdcrOdSh9gCQAMlh1hMNbZZ1bsrsQWABsrhLRbz7z5in/32UbfUMUbkMQCAh5RfGYv82UdMdZ6HS2wjT2ILAI8r3XmM2B3WvM59vfO2xXYW2yYAENuPU8S+X/N67mKxzy225yaxBQCxLV392UdcvwV0jPVUj98ntkBWT7C7+9u2/V/vGtvXIWJ6/4rtbottWa6Ri0NUT/u72LYttrb97LHdvUXMxxrb8TO2W2TF1rYbbLG1bbGNjMi4+2Sbi1FsbbvNFlvbFtt5fDnE3d9sP1/XeIyV2Nr2U2/guZUuptNrH/dPI9eLB6SaAEBs6wPJf3/PNk9tYgsAYrv/8TFuzx/fvkFqGtrEFgDEdpcZUb7ejXy6ntrEFgDENvL6gsas4vbdyKt4DACI7TxElJv/Z7udpqFNbAFAbKduy2uU2trttM/x28UWAAAAAAAAAAAAAAAAAAAAAAAAAADgDyPwGmGTCZp7AAAAAElFTkSuQmCC);background-size:1900px 20px;background-repeat:no-repeat;background-position:50%}.wp-block-freeform.block-library-rich-text__tinymce img::selection{background-color:transparent}.wp-block-freeform.block-library-rich-text__tinymce div.mceTemp{-ms-user-select:element}.wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption{margin:0;max-width:100%}.wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption a,.wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption img{display:block}.wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption,.wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption *{-webkit-user-drag:none}.wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption .wp-caption-dd{padding-top:.5em;margin:0}.wp-block-freeform.block-library-rich-text__tinymce .wpview{width:99.99%;position:relative;clear:both;margin-bottom:16px;border:1px solid transparent}.wp-block-freeform.block-library-rich-text__tinymce .wpview iframe{display:block;max-width:100%;background:transparent}.wp-block-freeform.block-library-rich-text__tinymce .wpview .mce-shim{position:absolute;top:0;left:0;bottom:0;right:0}.wp-block-freeform.block-library-rich-text__tinymce .wpview[data-mce-selected="2"] .mce-shim{display:none}.wp-block-freeform.block-library-rich-text__tinymce .wpview .loading-placeholder{border:1px dashed #ddd;padding:10px}.wp-block-freeform.block-library-rich-text__tinymce .wpview .wpview-error{border:1px solid #ddd;padding:1em 0;margin:0;word-wrap:break-word}.wp-block-freeform.block-library-rich-text__tinymce .wpview .wpview-error p{margin:0;text-align:center}.wp-block-freeform.block-library-rich-text__tinymce .wpview[data-mce-selected] .loading-placeholder,.wp-block-freeform.block-library-rich-text__tinymce .wpview[data-mce-selected] .wpview-error{border-color:transparent}.wp-block-freeform.block-library-rich-text__tinymce .wpview .dashicons{display:block;margin:0 auto;width:32px;height:32px;font-size:32px}.wp-block-freeform.block-library-rich-text__tinymce .wpview.wpview-type-gallery:after{content:"";display:table;clear:both}.wp-block-freeform.block-library-rich-text__tinymce .gallery img[data-mce-selected]:focus{outline:none}.wp-block-freeform.block-library-rich-text__tinymce .gallery a{cursor:default}.wp-block-freeform.block-library-rich-text__tinymce .gallery{margin:auto -6px;padding:6px 0;line-height:1;overflow-x:hidden}.wp-block-freeform.block-library-rich-text__tinymce .gallery .gallery-item{float:right;margin:0;text-align:center;padding:6px;box-sizing:border-box}.wp-block-freeform.block-library-rich-text__tinymce .gallery .gallery-caption,.wp-block-freeform.block-library-rich-text__tinymce .gallery .gallery-icon{margin:0}.wp-block-freeform.block-library-rich-text__tinymce .gallery .gallery-caption{font-size:13px;margin:4px 0}.wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-1 .gallery-item{width:100%}.wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-2 .gallery-item{width:50%}.wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-3 .gallery-item{width:33.3333333333%}.wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-4 .gallery-item{width:25%}.wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-5 .gallery-item{width:20%}.wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-6 .gallery-item{width:16.6666666667%}.wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-7 .gallery-item{width:14.2857142857%}.wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-8 .gallery-item{width:12.5%}.wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-9 .gallery-item{width:11.1111111111%}.wp-block-freeform.block-library-rich-text__tinymce .gallery img{max-width:100%;height:auto;border:none;padding:0}div[data-type="core/freeform"]:before{transition:border-color .1s linear,box-shadow .1s linear;border:1px solid #ddd;outline:1px solid transparent}@media (prefers-reduced-motion:reduce){div[data-type="core/freeform"]:before{transition-duration:0s;transition-delay:0s}}div[data-type="core/freeform"].is-selected:before{border-color:#1e1e1e}div[data-type="core/freeform"] .block-editor-block-contextual-toolbar+div{margin-top:0;padding-top:0}div[data-type="core/freeform"].is-selected .block-library-rich-text__tinymce:after{content:"";display:table;clear:both}.mce-toolbar-grp .mce-btn.mce-active:hover button,.mce-toolbar-grp .mce-btn.mce-active:hover i,.mce-toolbar-grp .mce-btn.mce-active button,.mce-toolbar-grp .mce-btn.mce-active i{color:#1e1e1e}.mce-toolbar-grp .mce-rtl .mce-flow-layout-item.mce-last{margin-left:0;margin-right:8px}.mce-toolbar-grp .mce-btn i{font-style:normal}.block-library-classic__toolbar{display:none;width:auto;position:sticky;z-index:31;top:0;border:1px solid #ddd;border-bottom:none;border-radius:2px;margin:0 0 8px;padding:0}div[data-type="core/freeform"].is-selected .block-library-classic__toolbar{display:block;border-color:#1e1e1e}.block-library-classic__toolbar .mce-tinymce{box-shadow:none}@media (min-width:600px){.block-library-classic__toolbar{padding:0}}.block-library-classic__toolbar:empty{display:block;background:#f5f5f5;border-bottom:1px solid #e2e4e7}.block-library-classic__toolbar:empty:before{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;content:attr(data-placeholder);color:#555d66;line-height:37px;padding:14px}.block-library-classic__toolbar div.mce-toolbar-grp{border-bottom:1px solid #1e1e1e}.block-library-classic__toolbar .mce-menubar,.block-library-classic__toolbar .mce-menubar>div,.block-library-classic__toolbar .mce-tinymce-inline,.block-library-classic__toolbar .mce-tinymce-inline>div,.block-library-classic__toolbar div.mce-toolbar-grp,.block-library-classic__toolbar div.mce-toolbar-grp>div{height:auto!important;width:100%!important}.block-library-classic__toolbar .mce-container-body.mce-abs-layout{overflow:visible}.block-library-classic__toolbar .mce-menubar,.block-library-classic__toolbar div.mce-toolbar-grp{position:static}.block-library-classic__toolbar .mce-toolbar-grp>div{padding:1px 3px}.block-library-classic__toolbar .mce-toolbar-grp .mce-toolbar:not(:first-child){display:none}.block-library-classic__toolbar.has-advanced-toolbar .mce-toolbar-grp .mce-toolbar{display:block}figure.wp-block-gallery{display:block;margin:0}figure.wp-block-gallery.has-nested-images .components-drop-zone{display:none;pointer-events:none}figure.wp-block-gallery>.blocks-gallery-caption{flex:0 0 100%}figure.wp-block-gallery>.blocks-gallery-media-placeholder-wrapper{flex-basis:100%}figure.wp-block-gallery .wp-block-image .components-notice.is-error{display:block}figure.wp-block-gallery .wp-block-image .components-notice__content{margin:4px 0}figure.wp-block-gallery .wp-block-image .components-notice__dismiss{position:absolute;top:0;left:5px}figure.wp-block-gallery .block-editor-media-placeholder.is-appender .components-placeholder__label{display:none}figure.wp-block-gallery .block-editor-media-placeholder.is-appender .block-editor-media-placeholder__button{margin-bottom:0}figure.wp-block-gallery .block-editor-media-placeholder{margin:0}figure.wp-block-gallery .block-editor-media-placeholder:before{box-shadow:0 0 0 1px #fff inset,0 0 0 3px var(--wp-admin-theme-color) inset;content:"";outline:2px solid transparent;position:absolute;top:0;left:0;bottom:0;right:0;z-index:1;pointer-events:none}figure.wp-block-gallery .block-editor-media-placeholder .components-placeholder__label{display:flex}figure.wp-block-gallery .block-editor-media-placeholder figcaption{z-index:2}figure.wp-block-gallery .components-spinner{position:absolute;top:50%;right:50%;margin-top:-9px;margin-right:-9px}.gallery-settings-buttons .components-button:first-child{margin-left:8px}.gallery-image-sizes .components-base-control__label{display:block;margin-bottom:4px}.gallery-image-sizes .gallery-image-sizes__loading{display:flex;align-items:center;color:#757575;font-size:12px}.gallery-image-sizes .components-spinner{margin:0 4px 0 8px}.blocks-gallery-item figure:not(.is-selected):focus,.blocks-gallery-item img:focus{outline:none}.blocks-gallery-item figure.is-selected:before{box-shadow:0 0 0 1px #fff inset,0 0 0 3px var(--wp-admin-theme-color) inset;content:"";outline:2px solid transparent;position:absolute;top:0;left:0;bottom:0;right:0;z-index:1;pointer-events:none}.blocks-gallery-item figure.is-transient img{opacity:.3}.blocks-gallery-item .is-selected .block-library-gallery-item__inline-menu{display:inline-flex}.blocks-gallery-item .block-editor-media-placeholder{margin:0;height:100%}.blocks-gallery-item .block-editor-media-placeholder .components-placeholder__label{display:flex}.block-library-gallery-item__inline-menu{display:none;position:absolute;top:-2px;margin:8px;z-index:20;transition:box-shadow .2s ease-out;border-radius:2px;background:#fff;border:1px solid #1e1e1e}@media (prefers-reduced-motion:reduce){.block-library-gallery-item__inline-menu{transition-duration:0s;transition-delay:0s}}.block-library-gallery-item__inline-menu:hover{box-shadow:0 2px 6px rgba(0,0,0,.05)}@media (min-width:600px){.columns-7 .block-library-gallery-item__inline-menu,.columns-8 .block-library-gallery-item__inline-menu{padding:2px}}.block-library-gallery-item__inline-menu .components-button.has-icon:not(:focus){border:none;box-shadow:none}@media (min-width:600px){.columns-7 .block-library-gallery-item__inline-menu .components-button.has-icon,.columns-8 .block-library-gallery-item__inline-menu .components-button.has-icon{padding:0;width:inherit;height:inherit}}.block-library-gallery-item__inline-menu.is-left{right:-2px}.block-library-gallery-item__inline-menu.is-right{left:-2px}.wp-block-gallery ul.blocks-gallery-grid{padding:0;margin:0}.wp-block-update-gallery-modal{max-width:400px}.wp-block-update-gallery-modal .wp-block-update-gallery-modal-buttons{display:flex;justify-content:flex-end}.wp-block-update-gallery-modal .wp-block-update-gallery-modal-buttons .components-button{margin-right:12px}.wp-block-group .block-editor-block-list__insertion-point{right:0;left:0}[data-type="core/group"].is-selected .block-list-appender{margin-right:0;margin-left:0}[data-type="core/group"].is-selected .has-background .block-list-appender{margin-top:18px;margin-bottom:18px}.block-library-html__edit .block-library-html__preview-overlay{position:absolute;width:100%;height:100%;top:0;right:0}.block-library-html__edit .block-editor-plain-text{font-family:Menlo,Consolas,monaco,monospace!important;color:#1e1e1e!important;background:#fff!important;padding:12px!important;border:1px solid #1e1e1e!important;box-shadow:none!important;border-radius:2px!important;max-height:250px;font-size:16px!important}@media (min-width:600px){.block-library-html__edit .block-editor-plain-text{font-size:13px!important}}.block-library-html__edit .block-editor-plain-text:focus{border-color:var(--wp-admin-theme-color)!important;box-shadow:0 0 0 1px var(--wp-admin-theme-color)!important;outline:2px solid transparent!important}figure.wp-block-image:not(.wp-block){margin:0}.wp-block-image{position:relative}.wp-block-image .is-applying img,.wp-block-image.is-transient img{opacity:.3}.wp-block-image figcaption img{display:inline}.wp-block-image .components-spinner{position:absolute;top:50%;right:50%;margin-top:-9px;margin-right:-9px}.wp-block-image:not(.is-style-rounded)>div:not(.components-placeholder){border-radius:inherit}.wp-block-image .components-resizable-box__container{display:inline-block}.wp-block-image .components-resizable-box__container img{display:block;width:inherit;height:inherit}.block-editor-block-list__block[data-type="core/image"] .block-editor-block-toolbar .block-editor-url-input__button-modal{position:absolute;right:0;left:0;margin:-1px 0}@media (min-width:600px){.block-editor-block-list__block[data-type="core/image"] .block-editor-block-toolbar .block-editor-url-input__button-modal{margin:-1px}}[data-align=full]>.wp-block-image img,[data-align=wide]>.wp-block-image img{height:auto;width:100%}.wp-block[data-align=center]>.wp-block-image,.wp-block[data-align=left]>.wp-block-image,.wp-block[data-align=right]>.wp-block-image{display:table}.wp-block[data-align=center]>.wp-block-image>figcaption,.wp-block[data-align=left]>.wp-block-image>figcaption,.wp-block[data-align=right]>.wp-block-image>figcaption{display:table-caption;caption-side:bottom}:not([data-align])>.wp-block-image{display:grid;grid-template-columns:[image] minmax(0,max-content) [placeholder] auto}:not([data-align])>.wp-block-image .components-placeholder{grid-column:placeholder}:not([data-align])>.wp-block-image>div:not(.components-placeholder){grid-column:image}:not([data-align])>.wp-block-image>figcaption{grid-column:image;display:table-caption;caption-side:bottom}.wp-block[data-align=left]>.wp-block-image{margin:.5em 0 .5em 1em}.wp-block[data-align=right]>.wp-block-image{margin:.5em 1em .5em 0}.wp-block[data-align=center]>.wp-block-image{margin-right:auto;margin-left:auto;text-align:center}.wp-block-image__crop-area{position:relative;max-width:100%;width:100%}.wp-block-image__crop-icon{padding:0 8px;min-width:48px;display:flex;justify-content:center;align-items:center}.wp-block-image__crop-icon svg{fill:currentColor}.wp-block-image__zoom .components-popover__content{overflow:visible;min-width:260px}.wp-block-image__zoom .components-range-control{flex:1}.wp-block-image__zoom .components-base-control__field{display:flex;margin-bottom:0;flex-direction:column;align-items:flex-start}.wp-block-image__aspect-ratio{height:46px;margin-bottom:-8px;display:flex;align-items:center}.wp-block-image__aspect-ratio .components-button{width:36px;padding-right:0;padding-left:0}.wp-block-latest-posts{padding-right:2.5em}.wp-block-latest-posts.is-grid{padding-right:0}.wp-block-latest-posts li a>div{display:inline}.edit-post-visual-editor .wp-block-latest-posts.is-grid li{margin-bottom:20px}.wp-block-media-text__media{position:relative}.wp-block-media-text__media.is-transient img{opacity:.3}.wp-block-media-text__media .components-spinner{position:absolute;top:50%;right:50%;margin-top:-9px;margin-right:-9px}.wp-block-media-text .__resizable_base__{grid-column:1/span 2;grid-row:2}.wp-block-media-text .editor-media-container__resizer{width:100%!important}.wp-block-media-text.is-image-fill .editor-media-container__resizer{height:100%!important}.wp-block-media-text>.block-editor-block-list__layout>.block-editor-block-list__block{max-width:unset}.block-editor-block-list__block[data-type="core/more"]{max-width:100%;text-align:center;margin-top:28px;margin-bottom:28px}.wp-block-more{display:block;text-align:center;white-space:nowrap}.wp-block-more input[type=text]{position:relative;font-size:13px;text-transform:uppercase;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;color:#757575;border:none;box-shadow:none;white-space:nowrap;text-align:center;margin:0;border-radius:4px;background:#fff;padding:6px 8px;height:24px;max-width:100%}.wp-block-more input[type=text]:focus{box-shadow:none}.wp-block-more:before{content:"";position:absolute;top:50%;right:0;left:0;border-top:3px dashed #ccc}.editor-styles-wrapper .wp-block-navigation ul{margin-top:0;margin-bottom:0;margin-right:0;padding-right:0}.editor-styles-wrapper .wp-block-navigation .wp-block-navigation-item.wp-block{margin-right:revert;margin-left:revert}.wp-block-navigation-item__label{display:inline}.wp-block-navigation__container.is-parent-of-selected-block{visibility:visible;opacity:1;overflow:visible}.wp-block-navigation-item,.wp-block-navigation__container{background-color:inherit}.wp-block-navigation:not(.is-selected):not(.has-child-selected) .has-child:hover>.wp-block-navigation__submenu-container{opacity:0;visibility:hidden}.has-child.has-child-selected>.wp-block-navigation__submenu-container,.has-child.is-selected>.wp-block-navigation__submenu-container{display:flex;opacity:1;visibility:visible}.is-dragging-components-draggable .has-child.is-dragging-within>.wp-block-navigation__submenu-container{opacity:1;visibility:visible}.is-editing>.wp-block-navigation__container{visibility:visible;opacity:1;display:flex;flex-direction:column}.is-dragging-components-draggable .wp-block-navigation-link>.wp-block-navigation__container{opacity:1;visibility:hidden}.is-dragging-components-draggable .wp-block-navigation-link>.wp-block-navigation__container .block-editor-block-draggable-chip-wrapper{visibility:visible}.is-editing>.wp-block-navigation__submenu-container>.block-list-appender{display:block;position:static;width:100%}.wp-block-navigation__submenu-container .block-list-appender{display:none}.block-library-colors-selector{width:auto}.block-library-colors-selector .block-library-colors-selector__toggle{display:block;margin:0 auto;padding:3px;width:auto}.block-library-colors-selector .block-library-colors-selector__icon-container{height:30px;position:relative;margin:0 auto;padding:3px;display:flex;align-items:center;border-radius:4px}.block-library-colors-selector .block-library-colors-selector__state-selection{margin-right:auto;margin-left:auto;border-radius:11px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.2);width:22px;min-width:22px;height:22px;min-height:22px;line-height:20px;padding:2px}.block-library-colors-selector .block-library-colors-selector__state-selection>svg{min-width:auto!important}.block-library-colors-selector .block-library-colors-selector__state-selection.has-text-color>svg,.block-library-colors-selector .block-library-colors-selector__state-selection.has-text-color>svg path{color:inherit}.block-library-colors-selector__popover .color-palette-controller-container{padding:16px}.block-library-colors-selector__popover .components-base-control__label{height:20px;line-height:20px}.block-library-colors-selector__popover .component-color-indicator{float:left;margin-top:2px}.block-library-colors-selector__popover .components-panel__body-title{display:none}.wp-block-navigation .block-editor-button-block-appender{justify-content:flex-start}.components-placeholder.wp-block-navigation-placeholder{outline:none;padding:0;box-shadow:none;background:none;min-height:0;color:inherit}.components-placeholder.wp-block-navigation-placeholder .components-placeholder__fieldset{font-size:inherit}.components-placeholder.wp-block-navigation-placeholder .components-placeholder__fieldset .components-button{margin-bottom:0}.is-selected .components-placeholder.wp-block-navigation-placeholder{color:#1e1e1e}.wp-block-navigation-placeholder .components-spinner{margin-top:-4px;margin-right:4px;vertical-align:middle;margin-left:7px}@keyframes loadingpulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.wp-block-navigation-placeholder__preview{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;width:100%;overflow:hidden}.wp-block-navigation-placeholder__preview.is-loading{animation:loadingpulse 1s linear infinite;animation-delay:.5s}.wp-block-navigation-placeholder__preview .wp-block-navigation-item.wp-block-navigation-item{position:relative;min-width:72px}.wp-block-navigation-placeholder__preview .wp-block-navigation-item.wp-block-navigation-item:before{display:block;content:"";border-radius:2px;background:currentColor;height:16px;width:100%}.wp-block-navigation-placeholder__preview .wp-block-navigation-placeholder__preview-search-icon{height:24px}.wp-block-navigation-placeholder__preview .wp-block-navigation-placeholder__preview-search-icon svg{fill:currentColor}.wp-block-navigation-placeholder__preview .wp-block-navigation-item.wp-block-navigation-item,.wp-block-navigation-placeholder__preview .wp-block-navigation-placeholder__preview-search-icon{opacity:.3}.wp-block-navigation.is-selected .wp-block-navigation-placeholder__preview:not(.is-loading){display:flex;opacity:0;width:0;overflow:hidden;flex-wrap:nowrap;flex:0}.wp-block-navigation.is-selected .is-medium .wp-block-navigation-placeholder__preview:not(.is-loading),.wp-block-navigation.is-selected .is-small .wp-block-navigation-placeholder__preview:not(.is-loading){display:none}.wp-block-navigation-placeholder__controls{border-radius:2px;background-color:#fff;box-shadow:inset 0 0 0 1px #1e1e1e;flex-direction:row;align-items:center;display:none;position:relative;z-index:1;padding:4px 8px;float:right;width:100%}.wp-block-navigation.is-selected .wp-block-navigation-placeholder__controls{display:flex}.is-medium .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions>:nth-last-child(2),.is-medium .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions>:nth-last-child(3),.is-medium .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions__indicator,.is-medium .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions__indicator+hr{display:none}.is-small .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions{flex-direction:column}.is-small .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions hr{display:none}.wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__icon{margin-left:12px;height:36px}.wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions__indicator{display:flex;padding:0 0 0 6px;align-items:center;justify-content:flex-start;line-height:0;min-height:36px;margin-right:4px}.wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions__indicator svg{margin-left:4px}.wp-block-navigation .components-placeholder.is-medium .components-placeholder__fieldset{flex-direction:row!important}.wp-block-navigation-placeholder__actions{display:flex;font-size:13px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;gap:6px;align-items:center;height:100%}.wp-block-navigation-placeholder__actions .components-dropdown,.wp-block-navigation-placeholder__actions>.components-button{margin-left:0}.wp-block-navigation-placeholder__actions.wp-block-navigation-placeholder__actions hr{border:0;min-height:1px;min-width:1px;background-color:#1e1e1e;margin:auto 0;height:100%;max-height:16px}@media (min-width:600px){.wp-block-navigation__responsive-container:not(.is-menu-open) .components-button.wp-block-navigation__responsive-container-close{display:none}}.wp-block-navigation__responsive-container.is-menu-open{position:fixed;top:155px}@media (min-width:782px){.wp-block-navigation__responsive-container.is-menu-open{top:93px;right:36px}}@media (min-width:960px){.wp-block-navigation__responsive-container.is-menu-open{right:160px}}@media (min-width:782px){.has-fixed-toolbar .wp-block-navigation__responsive-container.is-menu-open{top:141px}}.is-mobile-preview .wp-block-navigation__responsive-container.is-menu-open,.is-tablet-preview .wp-block-navigation__responsive-container.is-menu-open{top:141px}.is-sidebar-opened .wp-block-navigation__responsive-container.is-menu-open{left:280px}.is-fullscreen-mode .wp-block-navigation__responsive-container.is-menu-open{right:0;top:155px}@media (min-width:782px){.is-fullscreen-mode .wp-block-navigation__responsive-container.is-menu-open{top:61px}}@media (min-width:782px){.is-fullscreen-mode .has-fixed-toolbar .wp-block-navigation__responsive-container.is-menu-open{top:109px}}.is-fullscreen-mode .is-mobile-preview .wp-block-navigation__responsive-container.is-menu-open,.is-fullscreen-mode .is-tablet-preview .wp-block-navigation__responsive-container.is-menu-open{top:109px}body.editor-styles-wrapper .wp-block-navigation__responsive-container.is-menu-open{top:0;left:0;bottom:0;right:0}@media (min-width:600px){.wp-block-navigation__responsive-close{pointer-events:none}.wp-block-navigation__responsive-close .block-editor-block-list__layout *,.wp-block-navigation__responsive-close .wp-block-navigation__responsive-container-close{pointer-events:all}}.wp-block-navigation__responsive-close .wp-block-pages-list__item__link{pointer-events:none}.components-button.wp-block-navigation__responsive-container-close.wp-block-navigation__responsive-container-close,.components-button.wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open{padding:0;height:auto;color:inherit}.is-menu-open .wp-block-navigation__responsive-container-content * .block-list-appender{margin-top:16px}@keyframes fadein{0%{opacity:0}to{opacity:1}}.wp-block-navigation__unsaved-changes{position:relative}.wp-block-navigation__unsaved-changes .components-spinner{position:absolute;top:calc(50% - 9px);right:calc(50% - 9px);opacity:0;animation:fadein .5s linear 2s normal forwards}@keyframes fadeouthalf{0%{opacity:1}to{opacity:.5}}.wp-block-navigation__unsaved-changes-overlay.is-saving{opacity:1;animation:fadeouthalf .5s linear 2s normal forwards}.wp-block-navigation-delete-menu-button{width:100%;justify-content:center;margin-bottom:16px}.wp-block-navigation .has-child{cursor:pointer}.wp-block-navigation .has-child .wp-block-navigation__submenu-container{z-index:28}.wp-block-navigation .has-child:hover .wp-block-navigation__submenu-container{z-index:29}.wp-block-navigation .has-child.has-child-selected>.wp-block-navigation__submenu-container,.wp-block-navigation .has-child.is-selected>.wp-block-navigation__submenu-container{visibility:visible!important;opacity:1!important;min-width:200px!important;height:auto!important;width:auto!important;overflow:visible!important}.wp-block-navigation-item .wp-block-navigation-item__content{cursor:text}.wp-block-navigation-item.is-editing,.wp-block-navigation-item.is-selected{min-width:20px}.wp-block-navigation-item .block-list-appender{margin:16px 16px 16px auto}.wp-block-navigation-link__placeholder{position:relative;text-decoration:none!important;box-shadow:none!important;background-image:none!important}.wp-block-navigation-link__placeholder .wp-block-navigation-link__placeholder-text span{--wp-underline-color:var(--wp-admin-theme-color);background-image:linear-gradient(-45deg,transparent 20%,var(--wp-underline-color) 30%,var(--wp-underline-color) 36%,transparent 46%),linear-gradient(-135deg,transparent 54%,var(--wp-underline-color) 64%,var(--wp-underline-color) 70%,transparent 80%);background-position:100% 100%;background-size:6px 3px;background-repeat:repeat-x;padding-bottom:.1em}.is-dark-theme .wp-block-navigation-link__placeholder .wp-block-navigation-link__placeholder-text span{--wp-underline-color:#fff}.wp-block-navigation-link__placeholder.wp-block-navigation-item__content{cursor:pointer}.link-control-transform{border-top:1px solid #ccc;padding:0 16px 8px}.link-control-transform__subheading{font-size:11px;text-transform:uppercase;font-weight:500;color:#1e1e1e;margin-bottom:1.5em}.link-control-transform__items{display:flex;justify-content:space-between}.link-control-transform__item{flex-basis:33%;flex-direction:column;gap:8px;height:auto}.wp-block-navigation-submenu{display:block}.wp-block-navigation-submenu .wp-block-navigation__submenu-container{z-index:28}.wp-block-navigation-submenu.has-child-selected>.wp-block-navigation__submenu-container,.wp-block-navigation-submenu.is-selected>.wp-block-navigation__submenu-container{visibility:visible!important;opacity:1!important;min-width:200px!important;height:auto!important;width:auto!important;position:absolute;right:-1px;top:100%}@media (min-width:782px){.wp-block-navigation-submenu.has-child-selected>.wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation-submenu.is-selected>.wp-block-navigation__submenu-container .wp-block-navigation__submenu-container{right:100%;top:-1px}.wp-block-navigation-submenu.has-child-selected>.wp-block-navigation__submenu-container .wp-block-navigation__submenu-container:before,.wp-block-navigation-submenu.is-selected>.wp-block-navigation__submenu-container .wp-block-navigation__submenu-container:before{content:"";position:absolute;left:100%;height:100%;display:block;width:.5em;background:transparent}}.block-editor-block-list__block[data-type="core/nextpage"]{max-width:100%;text-align:center;margin-top:28px;margin-bottom:28px}.wp-block-nextpage{display:block;text-align:center;white-space:nowrap}.wp-block-nextpage>span{font-size:13px;position:relative;text-transform:uppercase;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;color:#757575;border-radius:4px;background:#fff;padding:6px 8px;height:24px}.wp-block-nextpage:before{content:"";position:absolute;top:50%;right:0;left:0;border-top:3px dashed #ccc}.wp-block-navigation .wp-block-page-list,.wp-block-navigation .wp-block-page-list>div{background-color:inherit}.wp-block-navigation.items-justified-space-between .wp-block-page-list,.wp-block-navigation.items-justified-space-between .wp-block-page-list>div{display:contents;flex:1}.wp-block-navigation.items-justified-space-between.has-child-selected .wp-block-page-list,.wp-block-navigation.items-justified-space-between.has-child-selected .wp-block-page-list>div,.wp-block-navigation.items-justified-space-between.is-selected .wp-block-page-list,.wp-block-navigation.items-justified-space-between.is-selected .wp-block-page-list>div{flex:inherit}.wp-block-pages-list__item__link{pointer-events:none}.wp-block-page-list .components-placeholder{min-height:0;padding:0;background-color:inherit}.wp-block-page-list .components-placeholder .components-spinner{margin:.5em}.wp-block-page-list-modal{max-width:400px}.wp-block-page-list-modal-buttons{display:flex;justify-content:flex-end}.wp-block-page-list-modal-buttons .components-button{margin-right:12px}.wp-block-page-list .open-on-click:focus-within>.wp-block-navigation__submenu-container{visibility:visible;opacity:1;width:auto;height:auto;min-width:200px}.wp-block-page-list .components-notice{margin-right:0}.block-editor-block-list__block[data-type="core/paragraph"].has-drop-cap:focus{min-height:auto!important}.block-editor-block-list__block[data-empty=true] [data-rich-text-placeholder]{opacity:1}.block-editor-block-list__block[data-empty=true]+.block-editor-block-list__block[data-empty=true] [data-rich-text-placeholder]{opacity:0}.wp-block-post-excerpt .wp-block-post-excerpt__excerpt.is-inline{display:inline-block}.wp-block-pullquote.has-text-align-left p,.wp-block-pullquote.has-text-align-right p,.wp-block[data-align=left]>.wp-block-pullquote p,.wp-block[data-align=right]>.wp-block-pullquote p{font-size:20px}.wp-block-pullquote blockquote p{font-size:28px;line-height:1.6}.wp-block-pullquote.is-style-solid-color blockquote p{font-size:32px}.wp-block-pullquote.is-style-solid-color .wp-block-pullquote__citation{text-transform:none;font-style:normal}.wp-block-pullquote .wp-block-pullquote__citation{color:inherit}.wp-block-rss li a>div{display:inline}.wp-block-rss__placeholder-form{display:flex;align-items:stretch}.wp-block-rss__placeholder-form>*{margin-bottom:8px}@media (min-width:782px){.wp-block-rss__placeholder-form>*{margin-bottom:0}}.wp-block-rss__placeholder-input{display:flex;align-items:stretch;flex-grow:1}.wp-block-rss__placeholder-input .components-base-control__field{display:flex;align-items:stretch;flex-grow:1;margin:0 0 0 8px}.wp-block[data-align=center] .wp-block-search .wp-block-search__inside-wrapper{margin:auto}.wp-block-search .wp-block-search__button{height:auto;border-radius:initial;display:flex;align-items:center}.wp-block-search__components-button-group{margin-top:10px}.block-editor-block-list__block[data-type="core/separator"]{padding-top:.1px;padding-bottom:.1px}[data-type="core/shortcode"] .block-editor-plain-text{max-height:250px}[data-type="core/shortcode"].components-placeholder{min-height:0}.blocks-shortcode__textarea{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;padding:6px 8px;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;border:1px solid #757575;font-size:16px;line-height:normal}@media (prefers-reduced-motion:reduce){.blocks-shortcode__textarea{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.blocks-shortcode__textarea{font-size:13px;line-height:normal}}.blocks-shortcode__textarea:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.blocks-shortcode__textarea::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.blocks-shortcode__textarea::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.blocks-shortcode__textarea:-ms-input-placeholder{color:rgba(30,30,30,.62)}.wp-block[data-align=center]>.wp-block-site-logo{display:table;margin-right:auto;margin-left:auto}.wp-block-site-logo a{pointer-events:none}.wp-block-site-logo .custom-logo-link{cursor:inherit}.wp-block-site-logo .custom-logo-link:focus{box-shadow:none}.wp-block-site-logo .custom-logo-link.is-transient img{opacity:.3}.wp-block-site-logo img{display:block;height:auto;max-width:100%}.wp-block-site-logo.wp-block-site-logo .components-placeholder,.wp-block-site-logo.wp-block-site-logo .components-resizable-box__container{border-radius:inherit}.wp-block-site-logo.wp-block-site-logo.is-default-size .components-placeholder{height:120px;width:120px}.wp-block-site-logo.wp-block-site-logo .components-placeholder{justify-content:center;align-items:center;box-shadow:none;padding:0;min-height:48px;min-width:48px;height:100%;width:100%;color:currentColor;background:transparent}.wp-block-site-logo.wp-block-site-logo .components-placeholder .components-form-file-upload{display:none}.wp-block-site-logo.wp-block-site-logo .components-placeholder .components-placeholder__preview{position:absolute;top:4px;left:4px;bottom:4px;right:4px;background:hsla(0,0%,100%,.8);display:flex;align-items:center;justify-content:center}.wp-block-site-logo.wp-block-site-logo .components-placeholder .components-drop-zone__content-text{display:none}.wp-block-site-logo.wp-block-site-logo .components-placeholder:before{content:"";display:block;position:absolute;top:0;left:0;bottom:0;right:0;border:1px dashed;opacity:.4;pointer-events:none;border-radius:inherit}.wp-block-site-logo.wp-block-site-logo .components-placeholder .components-placeholder__fieldset{width:auto}.wp-block-site-logo.wp-block-site-logo .components-placeholder .components-button.components-button{color:inherit;padding:0;display:flex;justify-content:center;align-items:center;width:48px;height:48px;border-radius:50%;position:relative;visibility:hidden;background:transparent;transition:all .1s linear}@media (prefers-reduced-motion:reduce){.wp-block-site-logo.wp-block-site-logo .components-placeholder .components-button.components-button{transition-duration:0s;transition-delay:0s}}.wp-block-site-logo.wp-block-site-logo .components-placeholder .components-button.components-button>svg{color:#fff}.wp-block-site-logo.wp-block-site-logo .components-placeholder .components-placeholder__illustration{position:absolute;top:0;left:0;bottom:0;right:0;width:100%;height:100%;stroke:currentColor;stroke-dasharray:3;opacity:.4}.wp-block-site-logo.wp-block-site-logo.is-selected .components-button.components-button{background:var(--wp-admin-theme-color);border-color:var(--wp-admin-theme-color);border-style:solid;color:#fff;opacity:1;visibility:visible}.wp-block-site-tagline__placeholder,.wp-block-site-title__placeholder{padding:1em 0;border:1px dashed}.wp-block-social-links .wp-social-link{line-height:0}.wp-block-social-links .wp-social-link button{font-size:inherit;color:currentColor;height:auto;line-height:0;padding:.25em}.wp-block-social-links.is-style-pill-shape .wp-social-link button{padding-right:.66667em;padding-left:.66667em}.wp-block-social-links.is-style-logos-only .wp-social-link button{padding:0}.wp-block-social-links div.block-editor-url-input{display:inline-block;margin-right:8px}.wp-social-link:hover{transform:none}.editor-styles-wrapper .wp-block-social-links{padding:0}.wp-block-social-links__social-placeholder{display:flex;opacity:.8;list-style:none}.wp-block-social-links__social-placeholder>.wp-social-link{padding-right:0!important;margin-right:0!important;padding-left:0!important;margin-left:0!important;width:0!important;visibility:hidden}.wp-block-social-links__social-placeholder>.wp-block-social-links__social-placeholder-icons{display:flex}.wp-block-social-links__social-placeholder .wp-social-link{padding:.25em}.is-style-pill-shape .wp-block-social-links__social-placeholder .wp-social-link{padding-right:.66667em;padding-left:.66667em}.is-style-logos-only .wp-block-social-links__social-placeholder .wp-social-link{padding:0}.wp-block-social-links__social-placeholder .wp-social-link:before{content:"";display:block;width:1em;height:1em;border-radius:50%}.is-style-logos-only .wp-block-social-links__social-placeholder .wp-social-link:before{background:currentColor}.wp-block-social-links .wp-block-social-links__social-prompt{min-height:24px;list-style:none;order:2;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;line-height:24px;margin-top:auto;margin-bottom:auto;cursor:default;padding-left:8px}.wp-block[data-align=center]>.wp-block-social-links{justify-content:center}.block-editor-block-preview__content .components-button:disabled{opacity:1}.wp-social-link.wp-social-link__is-incomplete{opacity:.5}@media (prefers-reduced-motion:reduce){.wp-social-link.wp-social-link__is-incomplete{transition-duration:0s;transition-delay:0s}}.wp-block-social-links .is-selected .wp-social-link__is-incomplete,.wp-social-link.wp-social-link__is-incomplete:focus,.wp-social-link.wp-social-link__is-incomplete:hover{opacity:1}.block-editor-block-list__block[data-type="core/spacer"]:before{content:"";display:block;position:absolute;z-index:1;width:100%;min-height:8px;min-width:8px;height:100%}.block-library-spacer__resize-container.has-show-handle,.wp-block-spacer.is-hovered .block-library-spacer__resize-container{background:rgba(0,0,0,.1)}.is-dark-theme .block-library-spacer__resize-container.has-show-handle,.is-dark-theme .wp-block-spacer.is-hovered .block-library-spacer__resize-container{background:hsla(0,0%,100%,.15)}.block-library-spacer__resize-container{clear:both}.block-library-spacer__resize-container:not(.is-resizing){height:100%!important;width:100%!important}.block-library-spacer__resize-container .components-resizable-box__handle:before{content:none}.block-library-spacer__resize-container.resize-horizontal{margin-bottom:0}.wp-block-table{margin:0}.wp-block[data-align=center]>.wp-block-table,.wp-block[data-align=left]>.wp-block-table,.wp-block[data-align=right]>.wp-block-table{height:auto}.wp-block[data-align=center]>.wp-block-table table,.wp-block[data-align=left]>.wp-block-table table,.wp-block[data-align=right]>.wp-block-table table{width:auto}.wp-block[data-align=center]>.wp-block-table td,.wp-block[data-align=center]>.wp-block-table th,.wp-block[data-align=left]>.wp-block-table td,.wp-block[data-align=left]>.wp-block-table th,.wp-block[data-align=right]>.wp-block-table td,.wp-block[data-align=right]>.wp-block-table th{word-break:break-word}.wp-block[data-align=center]>.wp-block-table{text-align:initial}.wp-block[data-align=center]>.wp-block-table table{margin:0 auto}.wp-block-table td,.wp-block-table th{border:1px solid}.wp-block-table td.is-selected,.wp-block-table th.is-selected{border-color:var(--wp-admin-theme-color);box-shadow:inset 0 0 0 1px var(--wp-admin-theme-color);border-style:double}.wp-block-table figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-table figcaption{color:hsla(0,0%,100%,.65)}.blocks-table__placeholder-form.blocks-table__placeholder-form{display:flex;flex-direction:column;align-items:flex-start}.blocks-table__placeholder-form.blocks-table__placeholder-form>*{margin-bottom:8px}@media (min-width:782px){.blocks-table__placeholder-form.blocks-table__placeholder-form{flex-direction:row;align-items:flex-end}.blocks-table__placeholder-form.blocks-table__placeholder-form>*{margin-bottom:0}}.blocks-table__placeholder-input{width:112px;margin-left:8px;margin-bottom:0}.blocks-table__placeholder-input input{height:36px}.blocks-table__placeholder-input .components-base-control__field{margin-bottom:0}.wp-block-template-part__placeholder-preview-dropdown-content .components-popover__content,.wp-block-template-part__preview-dropdown-content .components-popover__content{min-width:320px;padding:0}.wp-block-template-part__selection-preview-search-form{border-bottom:1px solid #ddd}.wp-block-template-part__selection-preview-container{background:#fff;padding-bottom:16px}.wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item{border-radius:2px;cursor:pointer;margin-top:16px;transition:all .05s ease-in-out;border:1px solid #ddd;width:100%;background-color:#fff}.wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item:hover{border:1px solid var(--wp-admin-theme-color)}.wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item:focus{box-shadow:inset 0 0 0 1px #fff,0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);outline:2px solid transparent}.wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item.is-placeholder{min-height:100px}.wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item .block-editor-block-preview__container{border-bottom:1px solid #ddd}.wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item-title{padding:4px;font-size:12px;text-align:right}.wp-block-template-part__selection-preview-container .wp-block-template-part__selection-panel-group-header{padding:16px 16px 0}.wp-block-template-part__selection-preview-container .wp-block-template-part__selection-panel-group-content{padding:0 16px}.wp-block-template-part__selection-preview-container .wp-block-template-part__selection-panel-group-title{color:var(--wp-admin-theme-color);text-transform:uppercase;font-size:11px;font-weight:500}.wp-block-template-part__placeholder-create-new__title-form .wp-block-template-part__placeholder-create-new__title-form-actions{padding-top:12px;display:flex;justify-content:flex-end}.wp-block-template-part__placeholder-create-new__title-form .wp-block-template-part__placeholder-create-new__title-form-actions .components-flex-item{margin-right:12px}.wp-block-text-columns .block-editor-rich-text__editable:focus{outline:1px solid #ddd}.wp-block[data-align=center]>.wp-block-video{text-align:center}.wp-block-video{position:relative}.wp-block-video.is-transient video{opacity:.3}.wp-block-video .components-spinner{position:absolute;top:50%;right:50%;margin-top:-9px;margin-right:-9px}.editor-video-poster-control .components-base-control__label{display:block}.editor-video-poster-control .components-button{margin-left:8px}.block-library-video-tracks-editor{z-index:159990}.block-library-video-tracks-editor>.components-popover__content{width:360px}.block-library-video-tracks-editor__track-list-track{display:flex;place-content:space-between;align-items:baseline;padding-right:12px}.block-library-video-tracks-editor__single-track-editor-label-language{display:flex;margin-top:12px}.block-library-video-tracks-editor__single-track-editor-label-language>.components-base-control{width:50%}.block-library-video-tracks-editor__single-track-editor-label-language>.components-base-control:first-child{margin-left:16px}.block-library-video-tracks-editor__single-track-editor-kind-select{max-width:240px}.block-library-video-tracks-editor__single-track-editor-buttons-container{display:flex;place-content:space-between;margin-top:32px}.block-library-video-tracks-editor__single-track-editor-edit-track-label{margin-top:4px;margin-bottom:12px;color:#757575;text-transform:uppercase;font-size:11px;font-weight:500;display:block}.block-library-video-tracks-editor>.components-popover__content>div,.block-library-video-tracks-editor__add-tracks-container .components-menu-group__label,.block-library-video-tracks-editor__track-list .components-menu-group__label{padding:0}.block-library-video-tracks-editor__add-tracks-container,.block-library-video-tracks-editor__single-track-editor,.block-library-video-tracks-editor__track-list{padding:12px}.block-library-video-tracks-editor__single-track-editor .components-base-control .components-base-control__label{margin-bottom:4px}.block-library-video-tracks-editor__single-track-editor .components-base-control .components-base-control__field{margin-bottom:12px}.block-library-video-tracks-editor__single-track-editor .components-base-control .components-text-control__input{margin-right:0}.block-library-video-tracks-editor__single-track-editor .components-base-control .components-input-control__label{margin-bottom:4px}.editor-styles-wrapper ul.wp-block-post-template{padding-right:0;margin-right:0;list-style:none}.block-library-query-toolbar__popover .components-popover__content{min-width:230px}.wp-block-query__create-new-link{padding:0 56px 16px 16px}.wp-block[data-align=center]>.wp-block-query-pagination{justify-content:center}.editor-styles-wrapper .wp-block-query-pagination{max-width:100%}.editor-styles-wrapper .wp-block-query-pagination.block-editor-block-list__layout{margin:0}.block-library-query-pagination-toolbar__popover .components-popover__content{min-width:230px}.wp-block-query-pagination>.wp-block-query-pagination-next,.wp-block-query-pagination>.wp-block-query-pagination-numbers,.wp-block-query-pagination>.wp-block-query-pagination-previous{margin-top:.5em;margin-right:.5em;margin-bottom:.5em}.wp-block-query-pagination>.wp-block-query-pagination-next:last-child,.wp-block-query-pagination>.wp-block-query-pagination-numbers:last-child,.wp-block-query-pagination>.wp-block-query-pagination-previous:last-child{margin-right:0}.wp-block-query-pagination-numbers a{text-decoration:underline}.wp-block-query-pagination-numbers .page-numbers{margin-left:2px}.wp-block-query-pagination-numbers .page-numbers:last-child{margin-right:0}.wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder,.wp-block-post-featured-image.wp-block-post-featured-image .components-resizable-box__container{border-radius:inherit}.wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder,.wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder{justify-content:center;align-items:center;box-shadow:none;padding:0;color:currentColor;background:transparent;min-height:200px}.wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-form-file-upload,.wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-form-file-upload{display:none}.wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-placeholder__preview,.wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-placeholder__preview{position:absolute;top:4px;left:4px;bottom:4px;right:4px;background:hsla(0,0%,100%,.8);display:flex;align-items:center;justify-content:center}.wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder:before,.wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder:before{content:"";display:block;position:absolute;top:0;left:0;bottom:0;right:0;border:1px dashed;opacity:.4;pointer-events:none;border-radius:inherit}.wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-placeholder__fieldset,.wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-placeholder__fieldset{width:auto}.wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-button.components-button,.wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-button.components-button{color:inherit;padding:0;display:flex;justify-content:center;align-items:center;width:48px;height:48px;border-radius:50%;position:relative;visibility:hidden;background:transparent;transition:all .1s linear}@media (prefers-reduced-motion:reduce){.wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-button.components-button,.wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-button.components-button{transition-duration:0s;transition-delay:0s}}.wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-button.components-button>svg,.wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-button.components-button>svg{color:#fff}.wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-placeholder__illustration,.wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-placeholder__illustration{position:absolute;top:0;left:0;bottom:0;right:0;width:100%;height:100%;stroke:currentColor;stroke-dasharray:3;opacity:.4}.wp-block-post-featured-image.wp-block-post-featured-image[style*=height] .components-placeholder{min-height:48px;min-width:48px;height:100%;width:100%}.wp-block-post-featured-image.wp-block-post-featured-image.is-selected .components-button.components-button{background:var(--wp-admin-theme-color);border-color:var(--wp-admin-theme-color);border-style:solid;color:#fff;opacity:1;visibility:visible}div[data-type="core/post-featured-image"] img{max-width:100%;height:auto;display:block}:root .editor-styles-wrapper .has-very-light-gray-background-color{background-color:#eee}:root .editor-styles-wrapper .has-very-dark-gray-background-color{background-color:#313131}:root .editor-styles-wrapper .has-very-light-gray-color{color:#eee}:root .editor-styles-wrapper .has-very-dark-gray-color{color:#313131}:root .editor-styles-wrapper .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(-135deg,#00d084,#0693e3)}:root .editor-styles-wrapper .has-purple-crush-gradient-background{background:linear-gradient(-135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .editor-styles-wrapper .has-hazy-dawn-gradient-background{background:linear-gradient(-135deg,#faaca8,#dad0ec)}:root .editor-styles-wrapper .has-subdued-olive-gradient-background{background:linear-gradient(-135deg,#fafae1,#67a671)}:root .editor-styles-wrapper .has-atomic-cream-gradient-background{background:linear-gradient(-135deg,#fdd79a,#004a59)}:root .editor-styles-wrapper .has-nightshade-gradient-background{background:linear-gradient(-135deg,#330968,#31cdcf)}:root .editor-styles-wrapper .has-midnight-gradient-background{background:linear-gradient(-135deg,#020381,#2874fc)}.editor-styles-wrapper{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}.editor-styles-wrapper .has-regular-font-size{font-size:16px}.editor-styles-wrapper .has-larger-font-size{font-size:42px}.editor-styles-wrapper .has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.editor-styles-wrapper .has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}PKj l\j],E,E(css/dist/block-library/style-rtl.min.cssnu[@charset "UTF-8";.wp-block-archives-dropdown label{display:block}.wp-block-audio{margin:0 0 1em}.wp-block-audio figcaption{margin-top:.5em;margin-bottom:1em}.wp-block-audio audio{width:100%;min-width:300px}.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;cursor:pointer;display:inline-block;font-size:1.125em;padding:calc(.667em + 2px) calc(1.333em + 2px);text-align:center;text-decoration:none;word-break:break-word;box-sizing:border-box}.wp-block-button__link:active,.wp-block-button__link:focus,.wp-block-button__link:hover,.wp-block-button__link:visited{color:#fff}.wp-block-button__link.aligncenter{text-align:center}.wp-block-button__link.alignright{text-align:right}.wp-block-buttons>.wp-block-button.has-custom-width{max-width:none}.wp-block-buttons>.wp-block-button.has-custom-width .wp-block-button__link{width:100%}.wp-block-buttons>.wp-block-button.has-custom-font-size .wp-block-button__link{font-size:inherit}.wp-block-buttons>.wp-block-button.wp-block-button__width-25{width:calc(25% - var(--wp--style--block-gap, .5em)*0.75)}.wp-block-buttons>.wp-block-button.wp-block-button__width-50{width:calc(50% - var(--wp--style--block-gap, .5em)*0.5)}.wp-block-buttons>.wp-block-button.wp-block-button__width-75{width:calc(75% - var(--wp--style--block-gap, .5em)*0.25)}.wp-block-buttons>.wp-block-button.wp-block-button__width-100{width:100%;flex-basis:100%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-25{width:25%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-50{width:50%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-75{width:75%}.wp-block-button.is-style-squared,.wp-block-button__link.wp-block-button.is-style-squared{border-radius:0}.wp-block-button.no-border-radius,.wp-block-button__link.no-border-radius{border-radius:0!important}.is-style-outline>:where(.wp-block-button__link),:where(.wp-block-button__link).is-style-outline{border:2px solid;padding:.667em 1.333em}.is-style-outline>.wp-block-button__link:not(.has-text-color),.wp-block-button__link.is-style-outline:not(.has-text-color){color:currentColor}.is-style-outline>.wp-block-button__link:not(.has-background),.wp-block-button__link.is-style-outline:not(.has-background){background-color:transparent}.wp-block-buttons.is-vertical{flex-direction:column}.wp-block-buttons.is-vertical>.wp-block-button:last-child{margin-bottom:0}.wp-block-buttons>.wp-block-button{display:inline-block;margin:0}.wp-block-buttons.is-content-justification-left{justify-content:flex-start}.wp-block-buttons.is-content-justification-left.is-vertical{align-items:flex-start}.wp-block-buttons.is-content-justification-center{justify-content:center}.wp-block-buttons.is-content-justification-center.is-vertical{align-items:center}.wp-block-buttons.is-content-justification-right{justify-content:flex-end}.wp-block-buttons.is-content-justification-right.is-vertical{align-items:flex-end}.wp-block-buttons.is-content-justification-space-between{justify-content:space-between}.wp-block-buttons.aligncenter{text-align:center}.wp-block-buttons:not(.is-content-justification-space-between,.is-content-justification-right,.is-content-justification-left,.is-content-justification-center) .wp-block-button.aligncenter{margin-right:auto;margin-left:auto;width:100%}.wp-block-button.aligncenter,.wp-block-calendar{text-align:center}.wp-block-calendar tbody td,.wp-block-calendar th{padding:.25em;border:1px solid #ddd}.wp-block-calendar tfoot td{border:none}.wp-block-calendar table{width:100%;border-collapse:collapse}.wp-block-calendar table th{font-weight:400;background:#ddd}.wp-block-calendar a{text-decoration:underline}.wp-block-calendar table caption,.wp-block-calendar table tbody{color:#40464d}.wp-block-categories.alignleft{margin-right:2em}.wp-block-categories.alignright{margin-left:2em}.wp-block-code code{display:block;white-space:pre-wrap;overflow-wrap:break-word}.wp-block-columns{display:flex;margin-bottom:1.75em;box-sizing:border-box;flex-wrap:wrap}@media (min-width:782px){.wp-block-columns{flex-wrap:nowrap}}.wp-block-columns:where(.has-background){padding:1.25em 2.375em}.wp-block-columns.are-vertically-aligned-top{align-items:flex-start}.wp-block-columns.are-vertically-aligned-center{align-items:center}.wp-block-columns.are-vertically-aligned-bottom{align-items:flex-end}@media (max-width:599px){.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column{flex-basis:100%!important}}@media (min-width:600px) and (max-width:781px){.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:not(:only-child){flex-basis:calc(50% - var(--wp--style--block-gap, 2em)/2)!important;flex-grow:0}.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:nth-child(2n){margin-right:var(--wp--style--block-gap,2em)}}@media (min-width:782px){.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column{flex-basis:0;flex-grow:1}.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column[style*=flex-basis]{flex-grow:0}.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:not(:first-child){margin-right:var(--wp--style--block-gap,2em)}}.wp-block-columns.is-not-stacked-on-mobile{flex-wrap:nowrap}.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column{flex-basis:0;flex-grow:1}.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column[style*=flex-basis]{flex-grow:0}.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column:not(:first-child){margin-right:var(--wp--style--block-gap,2em)}.wp-block-column{flex-grow:1;min-width:0;word-break:break-word;overflow-wrap:break-word}.wp-block-column.is-vertically-aligned-top{align-self:flex-start}.wp-block-column.is-vertically-aligned-center{align-self:center}.wp-block-column.is-vertically-aligned-bottom{align-self:flex-end}.wp-block-column.is-vertically-aligned-bottom,.wp-block-column.is-vertically-aligned-center,.wp-block-column.is-vertically-aligned-top{width:100%}.wp-block-cover,.wp-block-cover-image{position:relative;background-size:cover;background-position:50%;min-height:430px;width:100%;display:flex;justify-content:center;align-items:center;padding:1em;box-sizing:border-box}.wp-block-cover-image.has-parallax,.wp-block-cover.has-parallax{background-attachment:fixed}@supports (-webkit-overflow-scrolling:touch){.wp-block-cover-image.has-parallax,.wp-block-cover.has-parallax{background-attachment:scroll}}@media (prefers-reduced-motion:reduce){.wp-block-cover-image.has-parallax,.wp-block-cover.has-parallax{background-attachment:scroll}}.wp-block-cover-image.is-repeated,.wp-block-cover.is-repeated{background-repeat:repeat;background-size:auto}.wp-block-cover-image.has-background-dim:not([class*=-background-color]),.wp-block-cover-image .has-background-dim:not([class*=-background-color]),.wp-block-cover.has-background-dim:not([class*=-background-color]),.wp-block-cover .has-background-dim:not([class*=-background-color]){background-color:#000}.wp-block-cover-image .has-background-dim.has-background-gradient,.wp-block-cover .has-background-dim.has-background-gradient{background-color:transparent}.wp-block-cover-image.has-background-dim:before,.wp-block-cover.has-background-dim:before{content:"";background-color:inherit}.wp-block-cover-image.has-background-dim:not(.has-background-gradient):before,.wp-block-cover-image .wp-block-cover__background,.wp-block-cover-image .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim:not(.has-background-gradient):before,.wp-block-cover .wp-block-cover__background,.wp-block-cover .wp-block-cover__gradient-background{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;opacity:.5}.wp-block-cover-image.has-background-dim.has-background-dim-10 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-10:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-10 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-10:not(.has-background-gradient):before{opacity:.1}.wp-block-cover-image.has-background-dim.has-background-dim-20 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-20:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-20 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-20:not(.has-background-gradient):before{opacity:.2}.wp-block-cover-image.has-background-dim.has-background-dim-30 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-30:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-30 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-30:not(.has-background-gradient):before{opacity:.3}.wp-block-cover-image.has-background-dim.has-background-dim-40 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-40:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-40 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-40:not(.has-background-gradient):before{opacity:.4}.wp-block-cover-image.has-background-dim.has-background-dim-50 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-50:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-50 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-50:not(.has-background-gradient):before{opacity:.5}.wp-block-cover-image.has-background-dim.has-background-dim-60 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-60:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-60 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-60:not(.has-background-gradient):before{opacity:.6}.wp-block-cover-image.has-background-dim.has-background-dim-70 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-70:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-70 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-70:not(.has-background-gradient):before{opacity:.7}.wp-block-cover-image.has-background-dim.has-background-dim-80 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-80:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-80 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-80:not(.has-background-gradient):before{opacity:.8}.wp-block-cover-image.has-background-dim.has-background-dim-90 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-90:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-90 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-90:not(.has-background-gradient):before{opacity:.9}.wp-block-cover-image.has-background-dim.has-background-dim-100 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-100:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-100 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-100:not(.has-background-gradient):before{opacity:1}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-0,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-0{opacity:0}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-10,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-10{opacity:.1}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-20,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-20{opacity:.2}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-30,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-30{opacity:.3}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-40,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-40{opacity:.4}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-50,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-50{opacity:.5}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-60,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-60{opacity:.6}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-70,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-70{opacity:.7}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-80,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-80{opacity:.8}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-90,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-90{opacity:.9}.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-100,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-100{opacity:1}.wp-block-cover-image.alignleft,.wp-block-cover-image.alignright,.wp-block-cover.alignleft,.wp-block-cover.alignright{max-width:420px;width:100%}.wp-block-cover-image:after,.wp-block-cover:after{display:block;content:"";font-size:0;min-height:inherit}@supports (position:sticky){.wp-block-cover-image:after,.wp-block-cover:after{content:none}}.wp-block-cover-image.aligncenter,.wp-block-cover-image.alignleft,.wp-block-cover-image.alignright,.wp-block-cover.aligncenter,.wp-block-cover.alignleft,.wp-block-cover.alignright{display:flex}.wp-block-cover-image .wp-block-cover__inner-container,.wp-block-cover .wp-block-cover__inner-container{width:100%;z-index:1;color:#fff}.wp-block-cover-image.is-light .wp-block-cover__inner-container,.wp-block-cover.is-light .wp-block-cover__inner-container{color:#000}.wp-block-cover-image h1:not(.has-text-color),.wp-block-cover-image h2:not(.has-text-color),.wp-block-cover-image h3:not(.has-text-color),.wp-block-cover-image h4:not(.has-text-color),.wp-block-cover-image h5:not(.has-text-color),.wp-block-cover-image h6:not(.has-text-color),.wp-block-cover-image p:not(.has-text-color),.wp-block-cover h1:not(.has-text-color),.wp-block-cover h2:not(.has-text-color),.wp-block-cover h3:not(.has-text-color),.wp-block-cover h4:not(.has-text-color),.wp-block-cover h5:not(.has-text-color),.wp-block-cover h6:not(.has-text-color),.wp-block-cover p:not(.has-text-color){color:inherit}.wp-block-cover-image.is-position-top-left,.wp-block-cover.is-position-top-left{align-items:flex-start;justify-content:flex-start}.wp-block-cover-image.is-position-top-center,.wp-block-cover.is-position-top-center{align-items:flex-start;justify-content:center}.wp-block-cover-image.is-position-top-right,.wp-block-cover.is-position-top-right{align-items:flex-start;justify-content:flex-end}.wp-block-cover-image.is-position-center-left,.wp-block-cover.is-position-center-left{align-items:center;justify-content:flex-start}.wp-block-cover-image.is-position-center-center,.wp-block-cover.is-position-center-center{align-items:center;justify-content:center}.wp-block-cover-image.is-position-center-right,.wp-block-cover.is-position-center-right{align-items:center;justify-content:flex-end}.wp-block-cover-image.is-position-bottom-left,.wp-block-cover.is-position-bottom-left{align-items:flex-end;justify-content:flex-start}.wp-block-cover-image.is-position-bottom-center,.wp-block-cover.is-position-bottom-center{align-items:flex-end;justify-content:center}.wp-block-cover-image.is-position-bottom-right,.wp-block-cover.is-position-bottom-right{align-items:flex-end;justify-content:flex-end}.wp-block-cover-image.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container,.wp-block-cover.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container{margin:0;width:auto}.wp-block-cover-image img.wp-block-cover__image-background,.wp-block-cover-image video.wp-block-cover__video-background,.wp-block-cover img.wp-block-cover__image-background,.wp-block-cover video.wp-block-cover__video-background{position:absolute;top:0;right:0;left:0;bottom:0;margin:0;padding:0;width:100%;height:100%;max-width:none;max-height:none;-o-object-fit:cover;object-fit:cover;outline:none;border:none;box-shadow:none}.wp-block-cover__image-background,.wp-block-cover__video-background{z-index:0}.wp-block-cover-image-text,.wp-block-cover-image-text a,.wp-block-cover-image-text a:active,.wp-block-cover-image-text a:focus,.wp-block-cover-image-text a:hover,.wp-block-cover-text,.wp-block-cover-text a,.wp-block-cover-text a:active,.wp-block-cover-text a:focus,.wp-block-cover-text a:hover,section.wp-block-cover-image h2,section.wp-block-cover-image h2 a,section.wp-block-cover-image h2 a:active,section.wp-block-cover-image h2 a:focus,section.wp-block-cover-image h2 a:hover{color:#fff}.wp-block-cover-image .wp-block-cover.has-left-content{justify-content:flex-start}.wp-block-cover-image .wp-block-cover.has-right-content{justify-content:flex-end}.wp-block-cover-image.has-left-content .wp-block-cover-image-text,.wp-block-cover.has-left-content .wp-block-cover-text,section.wp-block-cover-image.has-left-content>h2{margin-right:0;text-align:right}.wp-block-cover-image.has-right-content .wp-block-cover-image-text,.wp-block-cover.has-right-content .wp-block-cover-text,section.wp-block-cover-image.has-right-content>h2{margin-left:0;text-align:left}.wp-block-cover-image .wp-block-cover-image-text,.wp-block-cover .wp-block-cover-text,section.wp-block-cover-image>h2{font-size:2em;line-height:1.25;z-index:1;margin-bottom:0;max-width:840px;padding:.44em;text-align:center}.wp-block-embed.alignleft,.wp-block-embed.alignright,.wp-block[data-align=left]>[data-type="core/embed"],.wp-block[data-align=right]>[data-type="core/embed"]{max-width:360px;width:100%}.wp-block-embed.alignleft .wp-block-embed__wrapper,.wp-block-embed.alignright .wp-block-embed__wrapper,.wp-block[data-align=left]>[data-type="core/embed"] .wp-block-embed__wrapper,.wp-block[data-align=right]>[data-type="core/embed"] .wp-block-embed__wrapper{min-width:280px}.wp-block-cover .wp-block-embed{min-width:320px;min-height:240px}.wp-block-embed{margin:0 0 1em;overflow-wrap:break-word}.wp-block-embed figcaption{margin-top:.5em;margin-bottom:1em}.wp-block-embed iframe{max-width:100%}.wp-block-embed__wrapper{position:relative}.wp-embed-responsive .wp-has-aspect-ratio .wp-block-embed__wrapper:before{content:"";display:block;padding-top:50%}.wp-embed-responsive .wp-has-aspect-ratio iframe{position:absolute;top:0;left:0;bottom:0;right:0;height:100%;width:100%}.wp-embed-responsive .wp-embed-aspect-21-9 .wp-block-embed__wrapper:before{padding-top:42.85%}.wp-embed-responsive .wp-embed-aspect-18-9 .wp-block-embed__wrapper:before{padding-top:50%}.wp-embed-responsive .wp-embed-aspect-16-9 .wp-block-embed__wrapper:before{padding-top:56.25%}.wp-embed-responsive .wp-embed-aspect-4-3 .wp-block-embed__wrapper:before{padding-top:75%}.wp-embed-responsive .wp-embed-aspect-1-1 .wp-block-embed__wrapper:before{padding-top:100%}.wp-embed-responsive .wp-embed-aspect-9-16 .wp-block-embed__wrapper:before{padding-top:177.77%}.wp-embed-responsive .wp-embed-aspect-1-2 .wp-block-embed__wrapper:before{padding-top:200%}.wp-block-file{margin-bottom:1.5em}.wp-block-file.aligncenter{text-align:center}.wp-block-file.alignright{text-align:right}.wp-block-file .wp-block-file__embed{margin-bottom:1em}.wp-block-file .wp-block-file__button{background:#32373c;border-radius:2em;color:#fff;font-size:.8em;padding:.5em 1em}.wp-block-file a.wp-block-file__button{text-decoration:none}.wp-block-file a.wp-block-file__button:active,.wp-block-file a.wp-block-file__button:focus,.wp-block-file a.wp-block-file__button:hover,.wp-block-file a.wp-block-file__button:visited{box-shadow:none;color:#fff;opacity:.85;text-decoration:none}.wp-block-file *+.wp-block-file__button{margin-right:.75em}.blocks-gallery-grid,.wp-block-gallery{display:flex;flex-wrap:wrap;list-style-type:none;padding:0;margin:0}.blocks-gallery-grid .blocks-gallery-image,.blocks-gallery-grid .blocks-gallery-item,.wp-block-gallery .blocks-gallery-image,.wp-block-gallery .blocks-gallery-item{margin:0 0 1em 1em;display:flex;flex-grow:1;flex-direction:column;justify-content:center;position:relative;width:calc(50% - 1em)}.blocks-gallery-grid .blocks-gallery-image:nth-of-type(2n),.blocks-gallery-grid .blocks-gallery-item:nth-of-type(2n),.wp-block-gallery .blocks-gallery-image:nth-of-type(2n),.wp-block-gallery .blocks-gallery-item:nth-of-type(2n){margin-left:0}.blocks-gallery-grid .blocks-gallery-image figure,.blocks-gallery-grid .blocks-gallery-item figure,.wp-block-gallery .blocks-gallery-image figure,.wp-block-gallery .blocks-gallery-item figure{margin:0;height:100%;display:flex;align-items:flex-end;justify-content:flex-start}.blocks-gallery-grid .blocks-gallery-image img,.blocks-gallery-grid .blocks-gallery-item img,.wp-block-gallery .blocks-gallery-image img,.wp-block-gallery .blocks-gallery-item img{display:block;max-width:100%;height:auto;width:auto}.blocks-gallery-grid .blocks-gallery-image figcaption,.blocks-gallery-grid .blocks-gallery-item figcaption,.wp-block-gallery .blocks-gallery-image figcaption,.wp-block-gallery .blocks-gallery-item figcaption{position:absolute;bottom:0;width:100%;max-height:100%;overflow:auto;padding:3em .77em .7em;color:#fff;text-align:center;font-size:.8em;background:linear-gradient(0deg,rgba(0,0,0,.7),rgba(0,0,0,.3) 70%,transparent);box-sizing:border-box;margin:0;z-index:2}.blocks-gallery-grid .blocks-gallery-image figcaption img,.blocks-gallery-grid .blocks-gallery-item figcaption img,.wp-block-gallery .blocks-gallery-image figcaption img,.wp-block-gallery .blocks-gallery-item figcaption img{display:inline}.blocks-gallery-grid figcaption,.wp-block-gallery figcaption{flex-grow:1}.blocks-gallery-grid.is-cropped .blocks-gallery-image a,.blocks-gallery-grid.is-cropped .blocks-gallery-image img,.blocks-gallery-grid.is-cropped .blocks-gallery-item a,.blocks-gallery-grid.is-cropped .blocks-gallery-item img,.wp-block-gallery.is-cropped .blocks-gallery-image a,.wp-block-gallery.is-cropped .blocks-gallery-image img,.wp-block-gallery.is-cropped .blocks-gallery-item a,.wp-block-gallery.is-cropped .blocks-gallery-item img{width:100%;height:100%;flex:1;-o-object-fit:cover;object-fit:cover}.blocks-gallery-grid.columns-1 .blocks-gallery-image,.blocks-gallery-grid.columns-1 .blocks-gallery-item,.wp-block-gallery.columns-1 .blocks-gallery-image,.wp-block-gallery.columns-1 .blocks-gallery-item{width:100%;margin-left:0}@media (min-width:600px){.blocks-gallery-grid.columns-3 .blocks-gallery-image,.blocks-gallery-grid.columns-3 .blocks-gallery-item,.wp-block-gallery.columns-3 .blocks-gallery-image,.wp-block-gallery.columns-3 .blocks-gallery-item{width:calc(33.33333% - .66667em);margin-left:1em}.blocks-gallery-grid.columns-4 .blocks-gallery-image,.blocks-gallery-grid.columns-4 .blocks-gallery-item,.wp-block-gallery.columns-4 .blocks-gallery-image,.wp-block-gallery.columns-4 .blocks-gallery-item{width:calc(25% - .75em);margin-left:1em}.blocks-gallery-grid.columns-5 .blocks-gallery-image,.blocks-gallery-grid.columns-5 .blocks-gallery-item,.wp-block-gallery.columns-5 .blocks-gallery-image,.wp-block-gallery.columns-5 .blocks-gallery-item{width:calc(20% - .8em);margin-left:1em}.blocks-gallery-grid.columns-6 .blocks-gallery-image,.blocks-gallery-grid.columns-6 .blocks-gallery-item,.wp-block-gallery.columns-6 .blocks-gallery-image,.wp-block-gallery.columns-6 .blocks-gallery-item{width:calc(16.66667% - .83333em);margin-left:1em}.blocks-gallery-grid.columns-7 .blocks-gallery-image,.blocks-gallery-grid.columns-7 .blocks-gallery-item,.wp-block-gallery.columns-7 .blocks-gallery-image,.wp-block-gallery.columns-7 .blocks-gallery-item{width:calc(14.28571% - .85714em);margin-left:1em}.blocks-gallery-grid.columns-8 .blocks-gallery-image,.blocks-gallery-grid.columns-8 .blocks-gallery-item,.wp-block-gallery.columns-8 .blocks-gallery-image,.wp-block-gallery.columns-8 .blocks-gallery-item{width:calc(12.5% - .875em);margin-left:1em}.blocks-gallery-grid.columns-1 .blocks-gallery-image:nth-of-type(1n),.blocks-gallery-grid.columns-1 .blocks-gallery-item:nth-of-type(1n),.blocks-gallery-grid.columns-2 .blocks-gallery-image:nth-of-type(2n),.blocks-gallery-grid.columns-2 .blocks-gallery-item:nth-of-type(2n),.blocks-gallery-grid.columns-3 .blocks-gallery-image:nth-of-type(3n),.blocks-gallery-grid.columns-3 .blocks-gallery-item:nth-of-type(3n),.blocks-gallery-grid.columns-4 .blocks-gallery-image:nth-of-type(4n),.blocks-gallery-grid.columns-4 .blocks-gallery-item:nth-of-type(4n),.blocks-gallery-grid.columns-5 .blocks-gallery-image:nth-of-type(5n),.blocks-gallery-grid.columns-5 .blocks-gallery-item:nth-of-type(5n),.blocks-gallery-grid.columns-6 .blocks-gallery-image:nth-of-type(6n),.blocks-gallery-grid.columns-6 .blocks-gallery-item:nth-of-type(6n),.blocks-gallery-grid.columns-7 .blocks-gallery-image:nth-of-type(7n),.blocks-gallery-grid.columns-7 .blocks-gallery-item:nth-of-type(7n),.blocks-gallery-grid.columns-8 .blocks-gallery-image:nth-of-type(8n),.blocks-gallery-grid.columns-8 .blocks-gallery-item:nth-of-type(8n),.wp-block-gallery.columns-1 .blocks-gallery-image:nth-of-type(1n),.wp-block-gallery.columns-1 .blocks-gallery-item:nth-of-type(1n),.wp-block-gallery.columns-2 .blocks-gallery-image:nth-of-type(2n),.wp-block-gallery.columns-2 .blocks-gallery-item:nth-of-type(2n),.wp-block-gallery.columns-3 .blocks-gallery-image:nth-of-type(3n),.wp-block-gallery.columns-3 .blocks-gallery-item:nth-of-type(3n),.wp-block-gallery.columns-4 .blocks-gallery-image:nth-of-type(4n),.wp-block-gallery.columns-4 .blocks-gallery-item:nth-of-type(4n),.wp-block-gallery.columns-5 .blocks-gallery-image:nth-of-type(5n),.wp-block-gallery.columns-5 .blocks-gallery-item:nth-of-type(5n),.wp-block-gallery.columns-6 .blocks-gallery-image:nth-of-type(6n),.wp-block-gallery.columns-6 .blocks-gallery-item:nth-of-type(6n),.wp-block-gallery.columns-7 .blocks-gallery-image:nth-of-type(7n),.wp-block-gallery.columns-7 .blocks-gallery-item:nth-of-type(7n),.wp-block-gallery.columns-8 .blocks-gallery-image:nth-of-type(8n),.wp-block-gallery.columns-8 .blocks-gallery-item:nth-of-type(8n){margin-left:0}}.blocks-gallery-grid .blocks-gallery-image:last-child,.blocks-gallery-grid .blocks-gallery-item:last-child,.wp-block-gallery .blocks-gallery-image:last-child,.wp-block-gallery .blocks-gallery-item:last-child{margin-left:0}.blocks-gallery-grid.alignleft,.blocks-gallery-grid.alignright,.wp-block-gallery.alignleft,.wp-block-gallery.alignright{max-width:420px;width:100%}.blocks-gallery-grid.aligncenter .blocks-gallery-item figure,.wp-block-gallery.aligncenter .blocks-gallery-item figure{justify-content:center}.wp-block-gallery:not(.is-cropped) .blocks-gallery-item{align-self:flex-start}.wp-block-gallery.has-nested-images{display:flex;flex-wrap:wrap}.wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image){margin:0 0 var(--gallery-block--gutter-size,16px) var(--gallery-block--gutter-size,16px);width:calc(50% - var(--gallery-block--gutter-size, 16px)/2)}.wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image):last-of-type:not(#individual-image),.wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image):nth-of-type(2n){margin-left:0}.wp-block-gallery.has-nested-images figure.wp-block-image{display:flex;flex-grow:1;justify-content:center;position:relative;margin-top:auto;margin-bottom:auto;flex-direction:column;max-width:100%}.wp-block-gallery.has-nested-images figure.wp-block-image>a,.wp-block-gallery.has-nested-images figure.wp-block-image>div{margin:0;flex-direction:column;flex-grow:1}.wp-block-gallery.has-nested-images figure.wp-block-image img{display:block;height:auto;max-width:100%!important;width:auto}.wp-block-gallery.has-nested-images figure.wp-block-image figcaption{background:linear-gradient(0deg,rgba(0,0,0,.7),rgba(0,0,0,.3) 70%,transparent);bottom:0;color:#fff;font-size:13px;right:0;margin-bottom:0;max-height:60%;overflow:auto;padding:0 8px 8px;position:absolute;text-align:center;width:100%;box-sizing:border-box}.wp-block-gallery.has-nested-images figure.wp-block-image figcaption img{display:inline}.wp-block-gallery.has-nested-images figure.wp-block-image.is-style-rounded>a,.wp-block-gallery.has-nested-images figure.wp-block-image.is-style-rounded>div{flex:1 1 auto}.wp-block-gallery.has-nested-images figure.wp-block-image.is-style-rounded figcaption{flex:initial;background:none;color:inherit;margin:0;padding:10px 10px 9px;position:relative}.wp-block-gallery.has-nested-images figcaption{flex-grow:1;flex-basis:100%;text-align:center}.wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image){margin-top:0;margin-bottom:auto}.wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image) img{margin-bottom:var(--gallery-block--gutter-size,16px)}.wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image) figcaption{bottom:var(--gallery-block--gutter-size,16px)}.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image){align-self:inherit}.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image)>a,.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image)>div:not(.components-drop-zone){display:flex}.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) a,.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) img{width:100%;flex:1 0 0%;height:100%;-o-object-fit:cover;object-fit:cover}.wp-block-gallery.has-nested-images.columns-1 figure.wp-block-image:not(#individual-image){margin-left:0;width:100%}@media (min-width:600px){.wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image){margin-left:var(--gallery-block--gutter-size,16px);width:calc(33.33333% - var(--gallery-block--gutter-size, 16px)*0.66667)}.wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image).is-dragging~figure.wp-block-image:not(#individual-image){margin-left:var(--gallery-block--gutter-size,16px)}.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image){margin-left:var(--gallery-block--gutter-size,16px);width:calc(25% - var(--gallery-block--gutter-size, 16px)*0.75)}.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image).is-dragging~figure.wp-block-image:not(#individual-image){margin-left:var(--gallery-block--gutter-size,16px)}.wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image:not(#individual-image){margin-left:var(--gallery-block--gutter-size,16px);width:calc(20% - var(--gallery-block--gutter-size, 16px)*0.8)}.wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image:not(#individual-image).is-dragging~figure.wp-block-image:not(#individual-image){margin-left:var(--gallery-block--gutter-size,16px)}.wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#individual-image){margin-left:var(--gallery-block--gutter-size,16px);width:calc(16.66667% - var(--gallery-block--gutter-size, 16px)*0.83333)}.wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#individual-image).is-dragging~figure.wp-block-image:not(#individual-image){margin-left:var(--gallery-block--gutter-size,16px)}.wp-block-gallery.has-nested-images.columns-7 figure.wp-block-image:not(#individual-image){margin-left:var(--gallery-block--gutter-size,16px);width:calc(14.28571% - var(--gallery-block--gutter-size, 16px)*0.85714)}.wp-block-gallery.has-nested-images.columns-7 figure.wp-block-image:not(#individual-image).is-dragging~figure.wp-block-image:not(#individual-image){margin-left:var(--gallery-block--gutter-size,16px)}.wp-block-gallery.has-nested-images.columns-8 figure.wp-block-image:not(#individual-image){margin-left:var(--gallery-block--gutter-size,16px);width:calc(12.5% - var(--gallery-block--gutter-size, 16px)*0.875)}.wp-block-gallery.has-nested-images.columns-8 figure.wp-block-image:not(#individual-image).is-dragging~figure.wp-block-image:not(#individual-image){margin-left:var(--gallery-block--gutter-size,16px)}.wp-block-gallery.has-nested-images.columns-1 figure.wp-block-image:not(#individual-image):nth-of-type(1n),.wp-block-gallery.has-nested-images.columns-2 figure.wp-block-image:not(#individual-image):nth-of-type(2n),.wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image):nth-of-type(3n),.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image):nth-of-type(4n),.wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image:not(#individual-image):nth-of-type(5n),.wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#individual-image):nth-of-type(6n),.wp-block-gallery.has-nested-images.columns-7 figure.wp-block-image:not(#individual-image):nth-of-type(7n),.wp-block-gallery.has-nested-images.columns-8 figure.wp-block-image:not(#individual-image):nth-of-type(8n){margin-left:0}.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image){margin-left:var(--gallery-block--gutter-size,16px);width:calc(33.33% - var(--gallery-block--gutter-size, 16px)*0.66667)}.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):nth-of-type(3n+3){margin-left:0}.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(2),.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(2)~figure.wp-block-image:not(#individual-image){width:calc(50% - var(--gallery-block--gutter-size, 16px)*0.5)}.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:last-child{width:100%}}.wp-block-gallery.has-nested-images.alignleft,.wp-block-gallery.has-nested-images.alignright{max-width:420px;width:100%}.wp-block-gallery.has-nested-images.aligncenter{justify-content:center}.wp-block-group{box-sizing:border-box}h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}h1.has-background,h2.has-background,h3.has-background,h4.has-background,h5.has-background,h6.has-background{padding:1.25em 2.375em}.wp-block-image{margin:0 0 1em}.wp-block-image img{height:auto;max-width:100%;vertical-align:bottom}.wp-block-image:not(.is-style-rounded)>a,.wp-block-image:not(.is-style-rounded) img{border-radius:inherit}.wp-block-image.aligncenter{text-align:center}.wp-block-image.alignfull img,.wp-block-image.alignwide img{height:auto;width:100%}.wp-block-image .aligncenter,.wp-block-image .alignleft,.wp-block-image .alignright{display:table}.wp-block-image .aligncenter>figcaption,.wp-block-image .alignleft>figcaption,.wp-block-image .alignright>figcaption{display:table-caption;caption-side:bottom}.wp-block-image .alignleft{float:left;margin-left:1em;margin-top:.5em;margin-bottom:.5em}.wp-block-image .alignright{float:right;margin-right:1em;margin-top:.5em;margin-bottom:.5em}.wp-block-image .aligncenter{margin-right:auto;margin-left:auto}.wp-block-image figcaption{margin-top:.5em;margin-bottom:1em}.wp-block-image.is-style-circle-mask img,.wp-block-image.is-style-rounded img{border-radius:9999px}@supports ((-webkit-mask-image:none) or (mask-image:none)) or (-webkit-mask-image:none){.wp-block-image.is-style-circle-mask img{-webkit-mask-image:url('data:image/svg+xml;utf8,');mask-image:url('data:image/svg+xml;utf8,');mask-mode:alpha;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-position:center;mask-position:center;border-radius:0}}.wp-block-image figure{margin:0}ol.wp-block-latest-comments{margin-right:0}.wp-block-latest-comments .wp-block-latest-comments{padding-right:0}.wp-block-latest-comments__comment{line-height:1.1;list-style:none;margin-bottom:1em}.has-avatars .wp-block-latest-comments__comment{min-height:2.25em;list-style:none}.has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-excerpt,.has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-meta{margin-right:3.25em}.has-dates .wp-block-latest-comments__comment,.has-excerpts .wp-block-latest-comments__comment{line-height:1.5}.wp-block-latest-comments__comment-excerpt p{font-size:.875em;line-height:1.8;margin:.36em 0 1.4em}.wp-block-latest-comments__comment-date{display:block;font-size:.75em}.wp-block-latest-comments .avatar,.wp-block-latest-comments__comment-avatar{border-radius:1.5em;display:block;float:right;height:2.5em;margin-left:.75em;width:2.5em}.wp-block-latest-posts.alignleft{margin-right:2em}.wp-block-latest-posts.alignright{margin-left:2em}.wp-block-latest-posts.wp-block-latest-posts__list{list-style:none;padding-right:0}.wp-block-latest-posts.wp-block-latest-posts__list li{clear:both}.wp-block-latest-posts.is-grid{display:flex;flex-wrap:wrap;padding:0}.wp-block-latest-posts.is-grid li{margin:0 0 1.25em 1.25em;width:100%}@media (min-width:600px){.wp-block-latest-posts.columns-2 li{width:calc(50% - .625em)}.wp-block-latest-posts.columns-2 li:nth-child(2n){margin-left:0}.wp-block-latest-posts.columns-3 li{width:calc(33.33333% - .83333em)}.wp-block-latest-posts.columns-3 li:nth-child(3n){margin-left:0}.wp-block-latest-posts.columns-4 li{width:calc(25% - .9375em)}.wp-block-latest-posts.columns-4 li:nth-child(4n){margin-left:0}.wp-block-latest-posts.columns-5 li{width:calc(20% - 1em)}.wp-block-latest-posts.columns-5 li:nth-child(5n){margin-left:0}.wp-block-latest-posts.columns-6 li{width:calc(16.66667% - 1.04167em)}.wp-block-latest-posts.columns-6 li:nth-child(6n){margin-left:0}}.wp-block-latest-posts__post-author,.wp-block-latest-posts__post-date{display:block;font-size:.8125em}.wp-block-latest-posts__post-excerpt{margin-top:.5em;margin-bottom:1em}.wp-block-latest-posts__featured-image a{display:inline-block}.wp-block-latest-posts__featured-image img{height:auto;width:auto;max-width:100%}.wp-block-latest-posts__featured-image.alignleft{margin-right:1em}.wp-block-latest-posts__featured-image.alignright{margin-left:1em}.wp-block-latest-posts__featured-image.aligncenter{margin-bottom:1em;text-align:center}.block-editor-image-alignment-control__row .components-base-control__field{display:flex;justify-content:space-between;align-items:center}.block-editor-image-alignment-control__row .components-base-control__field .components-base-control__label{margin-bottom:0}ol,ul{overflow-wrap:break-word}ol.has-background,ul.has-background{padding:1.25em 2.375em}.wp-block-media-text{direction:ltr;display:grid;grid-template-columns:50% 1fr;grid-template-rows:auto}.wp-block-media-text.has-media-on-the-right{grid-template-columns:1fr 50%}.wp-block-media-text.is-vertically-aligned-top .wp-block-media-text__content,.wp-block-media-text.is-vertically-aligned-top .wp-block-media-text__media{align-self:start}.wp-block-media-text.is-vertically-aligned-center .wp-block-media-text__content,.wp-block-media-text.is-vertically-aligned-center .wp-block-media-text__media,.wp-block-media-text .wp-block-media-text__content,.wp-block-media-text .wp-block-media-text__media{align-self:center}.wp-block-media-text.is-vertically-aligned-bottom .wp-block-media-text__content,.wp-block-media-text.is-vertically-aligned-bottom .wp-block-media-text__media{align-self:end}.wp-block-media-text .wp-block-media-text__media{grid-column:1;grid-row:1;margin:0}.wp-block-media-text .wp-block-media-text__content{direction:rtl;grid-column:2;grid-row:1;padding:0 8%;word-break:break-word}.wp-block-media-text.has-media-on-the-right .wp-block-media-text__media{grid-column:2;grid-row:1}.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content{grid-column:1;grid-row:1}.wp-block-media-text__media img,.wp-block-media-text__media video{height:auto;max-width:unset;width:100%;vertical-align:middle}.wp-block-media-text.is-image-fill .wp-block-media-text__media{height:100%;min-height:250px;background-size:cover}.wp-block-media-text.is-image-fill .wp-block-media-text__media>a{display:block;height:100%}.wp-block-media-text.is-image-fill .wp-block-media-text__media img{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}@media (max-width:600px){.wp-block-media-text.is-stacked-on-mobile{grid-template-columns:100%!important}.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media{grid-column:1;grid-row:1}.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content{grid-column:1;grid-row:2}}.wp-block-navigation{position:relative;--navigation-layout-justification-setting:flex-start;--navigation-layout-direction:row;--navigation-layout-wrap:wrap;--navigation-layout-justify:flex-start;--navigation-layout-align:center}.wp-block-navigation ul{margin-top:0;margin-bottom:0;margin-right:0;padding-right:0}.wp-block-navigation ul,.wp-block-navigation ul li{list-style:none;padding:0}.wp-block-navigation .wp-block-navigation-item{display:flex;align-items:center;position:relative}.wp-block-navigation .wp-block-navigation-item .wp-block-navigation__submenu-container:empty{display:none}.wp-block-navigation .wp-block-navigation-item__content{color:inherit;display:block;padding:0}.wp-block-navigation[style*=text-decoration] .wp-block-navigation-item,.wp-block-navigation[style*=text-decoration] .wp-block-navigation__submenu-container,.wp-block-navigation[style*=text-decoration] a,.wp-block-navigation[style*=text-decoration] a:active,.wp-block-navigation[style*=text-decoration] a:focus{text-decoration:inherit}.wp-block-navigation:not([style*=text-decoration]) a,.wp-block-navigation:not([style*=text-decoration]) a:active,.wp-block-navigation:not([style*=text-decoration]) a:focus{text-decoration:none}.wp-block-navigation .wp-block-navigation__submenu-icon{align-self:center;line-height:0;display:inline-block;vertical-align:middle;font-size:inherit;padding:0;background-color:inherit;color:currentColor;border:none;margin-right:.25em;width:.6em;height:.6em}.wp-block-navigation .wp-block-navigation__submenu-icon svg{display:inline-block;stroke:currentColor;width:inherit;height:inherit}.wp-block-navigation.is-vertical{--navigation-layout-direction:column;--navigation-layout-justify:initial;--navigation-layout-align:flex-start}.wp-block-navigation.no-wrap{--navigation-layout-wrap:nowrap}.wp-block-navigation.items-justified-center{--navigation-layout-justification-setting:center;--navigation-layout-justify:center}.wp-block-navigation.items-justified-center.is-vertical{--navigation-layout-align:center}.wp-block-navigation.items-justified-right{--navigation-layout-justification-setting:flex-end;--navigation-layout-justify:flex-end}.wp-block-navigation.items-justified-right.is-vertical{--navigation-layout-align:flex-end}.wp-block-navigation.items-justified-space-between{--navigation-layout-justification-setting:space-between;--navigation-layout-justify:space-between}.wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container){background-color:inherit;color:inherit;position:absolute;z-index:2;display:flex;flex-direction:column;align-items:normal;opacity:0;transition:opacity .1s linear;visibility:hidden;width:0;height:0;overflow:hidden;right:-1px;top:100%}.wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container)>.wp-block-navigation-item>.wp-block-navigation-item__content{display:flex;flex-grow:1}.wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container)>.wp-block-navigation-item>.wp-block-navigation-item__content .wp-block-navigation__submenu-icon{margin-left:0;margin-right:auto}.wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) .wp-block-navigation-item__content{margin:0}@media (min-width:782px){.wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) .wp-block-navigation__submenu-container{right:100%;top:-1px}.wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) .wp-block-navigation__submenu-container:before{content:"";position:absolute;left:100%;height:100%;display:block;width:.5em;background:transparent}.wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) .wp-block-navigation__submenu-icon svg{transform:rotate(90deg)}}.wp-block-navigation .has-child:where(:not(.open-on-click)):hover>.wp-block-navigation__submenu-container{visibility:visible;overflow:visible;opacity:1;width:auto;height:auto;min-width:200px}.wp-block-navigation .has-child:where(:not(.open-on-click):not(.open-on-hover-click)):focus-within>.wp-block-navigation__submenu-container{visibility:visible;overflow:visible;opacity:1;width:auto;height:auto;min-width:200px}.wp-block-navigation .has-child .wp-block-navigation-submenu__toggle[aria-expanded=true]+.wp-block-navigation__submenu-container{visibility:visible;overflow:visible;opacity:1;width:auto;height:auto;min-width:200px}.wp-block-navigation.has-background .has-child .wp-block-navigation__submenu-container{right:0;top:100%}@media (min-width:782px){.wp-block-navigation.has-background .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container{right:100%;top:0}}.wp-block-navigation-submenu{position:relative;display:flex}.wp-block-navigation-submenu .wp-block-navigation__submenu-icon svg{stroke:currentColor}button.wp-block-navigation-item__content{background-color:transparent;border:none;color:currentColor;font-size:inherit;font-family:inherit;line-height:inherit;text-align:right}.wp-block-navigation-submenu__toggle{cursor:pointer}.wp-block-navigation,.wp-block-navigation .wp-block-page-list,.wp-block-navigation__container,.wp-block-navigation__responsive-container-content{gap:var(--wp--style--block-gap,2em)}.wp-block-navigation:where(.has-background),.wp-block-navigation:where(.has-background) .wp-block-navigation .wp-block-page-list,.wp-block-navigation:where(.has-background) .wp-block-navigation__container{gap:var(--wp--style--block-gap,.5em)}.wp-block-navigation:where(.has-background) .wp-block-navigation-item__content,.wp-block-navigation :where(.wp-block-navigation__submenu-container) .wp-block-navigation-item__content{padding:.5em 1em}.wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-right .wp-block-page-list>.has-child .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between .wp-block-page-list>.has-child:last-child .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between>.wp-block-navigation__container>.has-child:last-child .wp-block-navigation__submenu-container{right:auto;left:0}.wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-right .wp-block-page-list>.has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between .wp-block-page-list>.has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between>.wp-block-navigation__container>.has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container{right:-1px;left:-1px}@media (min-width:782px){.wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-right .wp-block-page-list>.has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between .wp-block-page-list>.has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between>.wp-block-navigation__container>.has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container{right:auto;left:100%}}.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container{background-color:#fff;color:#000;border:1px solid rgba(0,0,0,.15)}.wp-block-navigation__container{display:flex;flex-wrap:var(--navigation-layout-wrap,wrap);flex-direction:var(--navigation-layout-direction,initial);justify-content:var(--navigation-layout-justify,initial);align-items:var(--navigation-layout-align,initial);list-style:none;margin:0;padding-right:0}.wp-block-navigation__container .is-responsive{display:none}.wp-block-navigation__container:only-child,.wp-block-page-list:only-child{flex-grow:1}.wp-block-navigation__responsive-container{display:none;position:fixed;top:0;right:0;left:0;bottom:0}.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content{display:flex;flex-wrap:var(--navigation-layout-wrap,wrap);flex-direction:var(--navigation-layout-direction,initial);justify-content:var(--navigation-layout-justify,initial);align-items:var(--navigation-layout-align,initial)}.wp-block-navigation__responsive-container:not(.is-menu-open.is-menu-open){color:inherit!important;background-color:inherit!important}.wp-block-navigation__responsive-container.is-menu-open{display:flex;flex-direction:column;background-color:inherit;padding:2em;overflow:auto;z-index:100000}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{padding-top:calc(2em + 24px);overflow:visible;display:flex;flex-direction:column;flex-wrap:nowrap;align-items:var(--navigation-layout-justification-setting,inherit)}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-page-list{justify-content:flex-start}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-icon{display:none}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .submenu-container,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container{opacity:1;visibility:visible;height:auto;width:auto;overflow:initial;min-width:200px;position:static;border:none;padding-right:2em;padding-left:2em}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container{gap:var(--wp--style--block-gap,2em)}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container{padding-top:var(--wp--style--block-gap,2em)}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content{padding:0}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-page-list{display:flex;flex-direction:column;align-items:var(--navigation-layout-justification-setting,initial)}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation__submenu-container,.wp-block-navigation__responsive-container.is-menu-open .wp-block-page-list{color:inherit!important;background:transparent!important}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container{left:auto;right:auto}@media (min-width:600px){.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){display:block;width:100%;position:relative;z-index:auto;background-color:inherit}.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) .wp-block-navigation__responsive-container-close{display:none}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container{right:0}}.wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open{background-color:#fff;color:#000}.wp-block-navigation__responsive-container-close,.wp-block-navigation__responsive-container-open{vertical-align:middle;cursor:pointer;color:currentColor;background:transparent;border:none;margin:0;padding:0}.wp-block-navigation__responsive-container-close svg,.wp-block-navigation__responsive-container-open svg{fill:currentColor;pointer-events:none;display:block;width:24px;height:24px}.wp-block-navigation__responsive-container-open{display:flex}@media (min-width:600px){.wp-block-navigation__responsive-container-open:not(.always-shown){display:none}}.wp-block-navigation__responsive-container-close{position:absolute;top:0;left:0;z-index:2}.wp-block-navigation__responsive-close{width:100%}.is-menu-open .wp-block-navigation__responsive-close,.is-menu-open .wp-block-navigation__responsive-container-content,.is-menu-open .wp-block-navigation__responsive-dialog{box-sizing:border-box}.wp-block-navigation__responsive-dialog{position:relative}html.has-modal-open{overflow:hidden}.wp-block-navigation .wp-block-navigation-item__label{word-break:normal;overflow-wrap:break-word}.wp-block-navigation .wp-block-home-link__content{color:inherit;display:block}.wp-block-navigation[style*=text-decoration] .wp-block-home-link,.wp-block-navigation[style*=text-decoration] .wp-block-home-link__content,.wp-block-navigation[style*=text-decoration] .wp-block-home-link__content:active,.wp-block-navigation[style*=text-decoration] .wp-block-home-link__content:focus{text-decoration:inherit}.wp-block-navigation:not([style*=text-decoration]) .wp-block-home-link__content,.wp-block-navigation:not([style*=text-decoration]) .wp-block-home-link__content:active,.wp-block-navigation:not([style*=text-decoration]) .wp-block-home-link__content:focus{text-decoration:none}.wp-block-navigation:not(.has-background) .wp-block-navigation__container .wp-block-home-link__container{background-color:#fff;color:#000;border:1px solid rgba(0,0,0,.15)}.wp-block-navigation:not(.has-background) .wp-block-navigation__container .wp-block-home-link__container .wp-block-home-link__container{top:-1px}.wp-block-navigation .wp-block-page-list{display:flex;flex-direction:var(--navigation-layout-direction,initial);justify-content:var(--navigation-layout-justify,initial);align-items:var(--navigation-layout-align,initial);flex-wrap:var(--navigation-layout-wrap,wrap);background-color:inherit}.wp-block-navigation .wp-block-navigation-item{background-color:inherit}.is-small-text{font-size:.875em}.is-regular-text{font-size:1em}.is-large-text{font-size:2.25em}.is-larger-text{font-size:3em}.has-drop-cap:not(:focus):first-letter{float:right;font-size:8.4em;line-height:.68;font-weight:100;margin:.05em 0 0 .1em;text-transform:uppercase;font-style:normal}p{overflow-wrap:break-word}p.has-drop-cap.has-background{overflow:hidden}p.has-background{padding:1.25em 2.375em}:where(p.has-text-color:not(.has-link-color)) a{color:inherit}.wp-block-post-author{display:flex;flex-wrap:wrap}.wp-block-post-author__byline{width:100%;margin-top:0;margin-bottom:0;font-size:.5em}.wp-block-post-author__avatar{margin-left:1em}.wp-block-post-author__bio{margin-bottom:.7em;font-size:.7em}.wp-block-post-author__content{flex-grow:1;flex-basis:0}.wp-block-post-author__name{margin:0}.wp-block-post-comments>h3:first-of-type{margin-top:0}.wp-block-post-comments .commentlist{list-style:none;margin:0;padding:0}.wp-block-post-comments .commentlist .comment{min-height:2.25em;padding-right:3.25em}.wp-block-post-comments .commentlist .comment p{font-size:.875em;line-height:1.8;margin:.36em 0 1.4em}.wp-block-post-comments .commentlist .children{list-style:none;margin:0;padding:0}.wp-block-post-comments .comment-author{line-height:1.5}.wp-block-post-comments .comment-author .avatar{border-radius:1.5em;display:block;float:right;height:2.5em;margin-left:.75em;width:2.5em}.wp-block-post-comments .comment-author cite{font-style:normal}.wp-block-post-comments .comment-meta{line-height:1.5;margin-right:-3.25em}.wp-block-post-comments .comment-body .commentmetadata{font-size:.75em}.wp-block-post-comments .comment-form-author label,.wp-block-post-comments .comment-form-comment label,.wp-block-post-comments .comment-form-email label,.wp-block-post-comments .comment-form-url label{display:block;margin-bottom:.25em}.wp-block-post-comments .comment-form input:not([type=submit]):not([type=checkbox]),.wp-block-post-comments .comment-form textarea{display:block;box-sizing:border-box;width:100%}.wp-block-post-comments .comment-form-cookies-consent{display:flex;gap:.25em}.wp-block-post-comments .comment-form-cookies-consent #wp-comment-cookies-consent{margin-top:.35em}.wp-block-post-comments .reply{font-size:.75em;margin-bottom:1.4em}.wp-block-post-comments input:not([type=submit]),.wp-block-post-comments textarea{border:1px solid #949494;font-size:1em;font-family:inherit}.wp-block-post-comments input:not([type=submit]):not([type=checkbox]),.wp-block-post-comments textarea{padding:calc(.667em + 2px)}.wp-block-post-comments input[type=submit]{border:none}.wp-block-post-comments-form[style*=font-weight] :where(.comment-reply-title){font-weight:inherit}.wp-block-post-comments-form[style*=font-family] :where(.comment-reply-title){font-family:inherit}.wp-block-post-comments-form[class*=-font-size] :where(.comment-reply-title),.wp-block-post-comments-form[style*=font-size] :where(.comment-reply-title){font-size:inherit}.wp-block-post-comments-form[style*=line-height] :where(.comment-reply-title){line-height:inherit}.wp-block-post-comments-form[style*=font-style] :where(.comment-reply-title){font-style:inherit}.wp-block-post-comments-form[style*=letter-spacing] :where(.comment-reply-title){letter-spacing:inherit}.wp-block-post-comments-form input[type=submit]{border:none;box-shadow:none;cursor:pointer;display:inline-block;text-align:center;overflow-wrap:break-word}.wp-block-post-comments-form input:not([type=submit]),.wp-block-post-comments-form textarea{border:1px solid #949494;font-size:1em;font-family:inherit}.wp-block-post-comments-form input:not([type=submit]):not([type=checkbox]),.wp-block-post-comments-form textarea{padding:calc(.667em + 2px)}.wp-block-post-comments-form .comment-form input:not([type=submit]):not([type=checkbox]),.wp-block-post-comments-form .comment-form textarea{display:block;box-sizing:border-box;width:100%}.wp-block-post-comments-form .comment-form-author label,.wp-block-post-comments-form .comment-form-email label,.wp-block-post-comments-form .comment-form-url label{display:block;margin-bottom:.25em}.wp-block-post-comments-form .comment-form-cookies-consent{display:flex;gap:.25em}.wp-block-post-comments-form .comment-form-cookies-consent #wp-comment-cookies-consent{margin-top:.35em}.wp-block-post-excerpt__more-link{display:inline-block}.wp-block-post-terms__separator{white-space:pre-wrap}.wp-block-post-title a{display:inline-block}.wp-block-preformatted{white-space:pre-wrap}.wp-block-preformatted.has-background{padding:1.25em 2.375em}.wp-block-pullquote{margin:0 0 1em;padding:3em 0;text-align:center;overflow-wrap:break-word}.wp-block-pullquote blockquote,.wp-block-pullquote cite,.wp-block-pullquote p{color:inherit}.wp-block-pullquote.alignleft,.wp-block-pullquote.alignright,.wp-block-pullquote.has-text-align-left,.wp-block-pullquote.has-text-align-right{max-width:420px}.wp-block-pullquote.alignleft p,.wp-block-pullquote.alignright p,.wp-block-pullquote.has-text-align-left p,.wp-block-pullquote.has-text-align-right p{font-size:1.25em}.wp-block-pullquote p{font-size:1.75em;line-height:1.6}.wp-block-pullquote cite,.wp-block-pullquote footer{position:relative}.wp-block-pullquote .has-text-color a{color:inherit}.wp-block-pullquote.has-text-align-left blockquote{text-align:right}.wp-block-pullquote.has-text-align-right blockquote{text-align:left}.wp-block-pullquote:not(.is-style-solid-color){background:none}.wp-block-pullquote.is-style-solid-color{border:none}.wp-block-pullquote.is-style-solid-color blockquote{margin-right:auto;margin-left:auto;max-width:60%}.wp-block-pullquote.is-style-solid-color blockquote p{margin-top:0;margin-bottom:0;font-size:2em}.wp-block-pullquote.is-style-solid-color blockquote cite{text-transform:none;font-style:normal}.wp-block-pullquote cite{color:inherit}.wp-block-post-template,.wp-block-query-loop{margin-top:0;margin-bottom:0;max-width:100%;list-style:none;padding:0}.wp-block-post-template.wp-block-post-template,.wp-block-query-loop.wp-block-post-template{background:none}.wp-block-post-template.is-flex-container,.wp-block-query-loop.is-flex-container{flex-direction:row;display:flex;flex-wrap:wrap;gap:1.25em}.wp-block-post-template.is-flex-container li,.wp-block-query-loop.is-flex-container li{margin:0;width:100%}@media (min-width:600px){.wp-block-post-template.is-flex-container.is-flex-container.columns-2>li,.wp-block-query-loop.is-flex-container.is-flex-container.columns-2>li{width:calc(50% - .625em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-3>li,.wp-block-query-loop.is-flex-container.is-flex-container.columns-3>li{width:calc(33.33333% - .83333em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-4>li,.wp-block-query-loop.is-flex-container.is-flex-container.columns-4>li{width:calc(25% - .9375em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-5>li,.wp-block-query-loop.is-flex-container.is-flex-container.columns-5>li{width:calc(20% - 1em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-6>li,.wp-block-query-loop.is-flex-container.is-flex-container.columns-6>li{width:calc(16.66667% - 1.04167em)}}.wp-block-query-pagination>.wp-block-query-pagination-next,.wp-block-query-pagination>.wp-block-query-pagination-numbers,.wp-block-query-pagination>.wp-block-query-pagination-previous{margin-right:.5em;margin-bottom:.5em}.wp-block-query-pagination>.wp-block-query-pagination-next:last-child,.wp-block-query-pagination>.wp-block-query-pagination-numbers:last-child,.wp-block-query-pagination>.wp-block-query-pagination-previous:last-child{margin-right:0}.wp-block-query-pagination .wp-block-query-pagination-previous-arrow{margin-left:1ch;display:inline-block}.wp-block-query-pagination .wp-block-query-pagination-previous-arrow:not(.is-arrow-chevron){transform:scaleX(-1)}.wp-block-query-pagination .wp-block-query-pagination-next-arrow{margin-right:1ch;display:inline-block}.wp-block-query-pagination .wp-block-query-pagination-next-arrow:not(.is-arrow-chevron){transform:scaleX(-1)}.wp-block-query-pagination.aligncenter{justify-content:center}.wp-block-quote{overflow-wrap:break-word}.wp-block-quote.is-large,.wp-block-quote.is-style-large{margin-bottom:1em;padding:0 1em}.wp-block-quote.is-large p,.wp-block-quote.is-style-large p{font-size:1.5em;font-style:italic;line-height:1.6}.wp-block-quote.is-large cite,.wp-block-quote.is-large footer,.wp-block-quote.is-style-large cite,.wp-block-quote.is-style-large footer{font-size:1.125em;text-align:left}ul.wp-block-rss{list-style:none;padding:0}ul.wp-block-rss.wp-block-rss{box-sizing:border-box}ul.wp-block-rss.alignleft{margin-right:2em}ul.wp-block-rss.alignright{margin-left:2em}ul.wp-block-rss.is-grid{display:flex;flex-wrap:wrap;padding:0;list-style:none}ul.wp-block-rss.is-grid li{margin:0 0 1em 1em;width:100%}@media (min-width:600px){ul.wp-block-rss.columns-2 li{width:calc(50% - 1em)}ul.wp-block-rss.columns-3 li{width:calc(33.33333% - 1em)}ul.wp-block-rss.columns-4 li{width:calc(25% - 1em)}ul.wp-block-rss.columns-5 li{width:calc(20% - 1em)}ul.wp-block-rss.columns-6 li{width:calc(16.66667% - 1em)}}.wp-block-rss__item-author,.wp-block-rss__item-publish-date{display:block;font-size:.8125em}.wp-block-search__button{background:#f7f7f7;border:1px solid #ccc;padding:.375em .625em;color:#32373c;margin-right:.625em;word-break:normal;font-size:inherit;font-family:inherit;line-height:inherit}.wp-block-search__button.has-icon{line-height:0}.wp-block-search__button svg{min-width:1.5em;min-height:1.5em;fill:currentColor}.wp-block-search__inside-wrapper{display:flex;flex:auto;flex-wrap:nowrap;max-width:100%}.wp-block-search__label{width:100%}.wp-block-search__input{padding:8px;flex-grow:1;min-width:3em;border:1px solid #949494;font-size:inherit;font-family:inherit;line-height:inherit}.wp-block-search.wp-block-search__button-only .wp-block-search__button{margin-right:0}.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper{padding:4px;border:1px solid #949494}.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__input{border-radius:0;border:none;padding:0 .25em 0 0}.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__input:focus{outline:none}.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__button{padding:.125em .5em}.wp-block-search.aligncenter .wp-block-search__inside-wrapper{margin:auto}.wp-block-separator{border-top:1px solid;border-bottom:1px solid}.wp-block-separator.is-style-wide{border-bottom-width:1px}.wp-block-separator.is-style-dots{background:none!important;border:none;text-align:center;line-height:1;height:auto}.wp-block-separator.is-style-dots:before{content:"···";color:currentColor;font-size:1.5em;letter-spacing:2em;padding-left:2em;font-family:serif}.wp-block-site-logo{line-height:0}.wp-block-site-logo a{display:inline-block}.wp-block-site-logo.is-default-size img{width:120px;height:auto}.wp-block-site-logo a,.wp-block-site-logo img{border-radius:inherit}.wp-block-site-logo.aligncenter{margin-right:auto;margin-left:auto;text-align:center}.wp-block-site-logo.is-style-rounded{border-radius:9999px}.wp-block-social-links{padding-right:0;padding-left:0;text-indent:0;margin-right:0}.wp-block-social-links .wp-social-link a,.wp-block-social-links .wp-social-link a:hover{text-decoration:none;border-bottom:0;box-shadow:none}.wp-block-social-links .wp-social-link a{padding:.25em}.wp-block-social-links .wp-social-link svg{width:1em;height:1em}.wp-block-social-links.has-small-icon-size{font-size:16px}.wp-block-social-links,.wp-block-social-links.has-normal-icon-size{font-size:24px}.wp-block-social-links.has-large-icon-size{font-size:36px}.wp-block-social-links.has-huge-icon-size{font-size:48px}.wp-block-social-links.aligncenter{justify-content:center;display:flex}.wp-block-social-links.alignright{justify-content:flex-end}.wp-block-social-link{display:block;border-radius:9999px;transition:transform .1s ease;height:auto}@media (prefers-reduced-motion:reduce){.wp-block-social-link{transition-duration:0s;transition-delay:0s}}.wp-block-social-link a{display:block;line-height:0;transition:transform .1s ease}.wp-block-social-link:hover{transform:scale(1.1)}.wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor,.wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:active,.wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:hover,.wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:visited,.wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor svg{color:currentColor;fill:currentColor}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link{background-color:#f0f0f0;color:#444}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-amazon{background-color:#f90;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-bandcamp{background-color:#1ea0c3;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-behance{background-color:#0757fe;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-codepen{background-color:#1e1f26;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-deviantart{background-color:#02e49b;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-dribbble{background-color:#e94c89;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-dropbox{background-color:#4280ff;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-etsy{background-color:#f45800;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-facebook{background-color:#1778f2;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-fivehundredpx{background-color:#000;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-flickr{background-color:#0461dd;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-foursquare{background-color:#e65678;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-github{background-color:#24292d;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-goodreads{background-color:#eceadd;color:#382110}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-google{background-color:#ea4434;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-instagram{background-color:#f00075;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-lastfm{background-color:#e21b24;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-linkedin{background-color:#0d66c2;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-mastodon{background-color:#3288d4;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-medium{background-color:#02ab6c;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-meetup{background-color:#f6405f;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-patreon{background-color:#ff424d;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-pinterest{background-color:#e60122;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-pocket{background-color:#ef4155;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-reddit{background-color:#fe4500;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-skype{background-color:#0478d7;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-snapchat{background-color:#fefc00;color:#fff;stroke:#000}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-soundcloud{background-color:#ff5600;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-spotify{background-color:#1bd760;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-telegram{background-color:#2aabee;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-tiktok{background-color:#000;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-tumblr{background-color:#011835;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-twitch{background-color:#6440a4;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-twitter{background-color:#1da1f2;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-vimeo{background-color:#1eb7ea;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-vk{background-color:#4680c2;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-wordpress{background-color:#3499cd;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-yelp{background-color:#d32422;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-youtube{background-color:red;color:#fff}.wp-block-social-links.is-style-logos-only .wp-social-link{background:none}.wp-block-social-links.is-style-logos-only .wp-social-link a{padding:0}.wp-block-social-links.is-style-logos-only .wp-social-link svg{width:1.25em;height:1.25em}.wp-block-social-links.is-style-logos-only .wp-social-link-amazon{color:#f90}.wp-block-social-links.is-style-logos-only .wp-social-link-bandcamp{color:#1ea0c3}.wp-block-social-links.is-style-logos-only .wp-social-link-behance{color:#0757fe}.wp-block-social-links.is-style-logos-only .wp-social-link-codepen{color:#1e1f26}.wp-block-social-links.is-style-logos-only .wp-social-link-deviantart{color:#02e49b}.wp-block-social-links.is-style-logos-only .wp-social-link-dribbble{color:#e94c89}.wp-block-social-links.is-style-logos-only .wp-social-link-dropbox{color:#4280ff}.wp-block-social-links.is-style-logos-only .wp-social-link-etsy{color:#f45800}.wp-block-social-links.is-style-logos-only .wp-social-link-facebook{color:#1778f2}.wp-block-social-links.is-style-logos-only .wp-social-link-fivehundredpx{color:#000}.wp-block-social-links.is-style-logos-only .wp-social-link-flickr{color:#0461dd}.wp-block-social-links.is-style-logos-only .wp-social-link-foursquare{color:#e65678}.wp-block-social-links.is-style-logos-only .wp-social-link-github{color:#24292d}.wp-block-social-links.is-style-logos-only .wp-social-link-goodreads{color:#382110}.wp-block-social-links.is-style-logos-only .wp-social-link-google{color:#ea4434}.wp-block-social-links.is-style-logos-only .wp-social-link-instagram{color:#f00075}.wp-block-social-links.is-style-logos-only .wp-social-link-lastfm{color:#e21b24}.wp-block-social-links.is-style-logos-only .wp-social-link-linkedin{color:#0d66c2}.wp-block-social-links.is-style-logos-only .wp-social-link-mastodon{color:#3288d4}.wp-block-social-links.is-style-logos-only .wp-social-link-medium{color:#02ab6c}.wp-block-social-links.is-style-logos-only .wp-social-link-meetup{color:#f6405f}.wp-block-social-links.is-style-logos-only .wp-social-link-patreon{color:#ff424d}.wp-block-social-links.is-style-logos-only .wp-social-link-pinterest{color:#e60122}.wp-block-social-links.is-style-logos-only .wp-social-link-pocket{color:#ef4155}.wp-block-social-links.is-style-logos-only .wp-social-link-reddit{color:#fe4500}.wp-block-social-links.is-style-logos-only .wp-social-link-skype{color:#0478d7}.wp-block-social-links.is-style-logos-only .wp-social-link-snapchat{color:#fff;stroke:#000}.wp-block-social-links.is-style-logos-only .wp-social-link-soundcloud{color:#ff5600}.wp-block-social-links.is-style-logos-only .wp-social-link-spotify{color:#1bd760}.wp-block-social-links.is-style-logos-only .wp-social-link-telegram{color:#2aabee}.wp-block-social-links.is-style-logos-only .wp-social-link-tiktok{color:#000}.wp-block-social-links.is-style-logos-only .wp-social-link-tumblr{color:#011835}.wp-block-social-links.is-style-logos-only .wp-social-link-twitch{color:#6440a4}.wp-block-social-links.is-style-logos-only .wp-social-link-twitter{color:#1da1f2}.wp-block-social-links.is-style-logos-only .wp-social-link-vimeo{color:#1eb7ea}.wp-block-social-links.is-style-logos-only .wp-social-link-vk{color:#4680c2}.wp-block-social-links.is-style-logos-only .wp-social-link-wordpress{color:#3499cd}.wp-block-social-links.is-style-logos-only .wp-social-link-yelp{color:#d32422}.wp-block-social-links.is-style-logos-only .wp-social-link-youtube{color:red}.wp-block-social-links.is-style-pill-shape .wp-social-link{width:auto}.wp-block-social-links.is-style-pill-shape .wp-social-link a{padding-right:.66667em;padding-left:.66667em}.wp-block-spacer{clear:both}.wp-block-tag-cloud.aligncenter{text-align:center}.wp-block-tag-cloud.alignfull{padding-right:1em;padding-left:1em}.wp-block-tag-cloud a{display:inline-block;margin-left:5px}.wp-block-tag-cloud span{display:inline-block;margin-right:5px;text-decoration:none}.wp-block-table{margin:0 0 1em;overflow-x:auto}.wp-block-table table{border-collapse:collapse;width:100%}.wp-block-table .has-fixed-layout{table-layout:fixed;width:100%}.wp-block-table .has-fixed-layout td,.wp-block-table .has-fixed-layout th{word-break:break-word}.wp-block-table.aligncenter,.wp-block-table.alignleft,.wp-block-table.alignright{display:table;width:auto}.wp-block-table.aligncenter td,.wp-block-table.aligncenter th,.wp-block-table.alignleft td,.wp-block-table.alignleft th,.wp-block-table.alignright td,.wp-block-table.alignright th{word-break:break-word}.wp-block-table .has-subtle-light-gray-background-color{background-color:#f3f4f5}.wp-block-table .has-subtle-pale-green-background-color{background-color:#e9fbe5}.wp-block-table .has-subtle-pale-blue-background-color{background-color:#e7f5fe}.wp-block-table .has-subtle-pale-pink-background-color{background-color:#fcf0ef}.wp-block-table.is-style-stripes{border-spacing:0;border-collapse:inherit;background-color:transparent;border-bottom:1px solid #f0f0f0}.wp-block-table.is-style-stripes tbody tr:nth-child(odd){background-color:#f0f0f0}.wp-block-table.is-style-stripes.has-subtle-light-gray-background-color tbody tr:nth-child(odd){background-color:#f3f4f5}.wp-block-table.is-style-stripes.has-subtle-pale-green-background-color tbody tr:nth-child(odd){background-color:#e9fbe5}.wp-block-table.is-style-stripes.has-subtle-pale-blue-background-color tbody tr:nth-child(odd){background-color:#e7f5fe}.wp-block-table.is-style-stripes.has-subtle-pale-pink-background-color tbody tr:nth-child(odd){background-color:#fcf0ef}.wp-block-table.is-style-stripes td,.wp-block-table.is-style-stripes th{border-color:transparent}.wp-block-table .has-border-color>*,.wp-block-table .has-border-color td,.wp-block-table .has-border-color th,.wp-block-table .has-border-color tr{border-color:inherit}.wp-block-table table[style*=border-style]>*,.wp-block-table table[style*=border-style] td,.wp-block-table table[style*=border-style] th,.wp-block-table table[style*=border-style] tr{border-style:inherit}.wp-block-table table[style*=border-width]>*,.wp-block-table table[style*=border-width] td,.wp-block-table table[style*=border-width] th,.wp-block-table table[style*=border-width] tr{border-width:inherit}.wp-block-text-columns,.wp-block-text-columns.aligncenter{display:flex}.wp-block-text-columns .wp-block-column{margin:0 1em;padding:0}.wp-block-text-columns .wp-block-column:first-child{margin-right:0}.wp-block-text-columns .wp-block-column:last-child{margin-left:0}.wp-block-text-columns.columns-2 .wp-block-column{width:50%}.wp-block-text-columns.columns-3 .wp-block-column{width:33.33333%}.wp-block-text-columns.columns-4 .wp-block-column{width:25%}pre.wp-block-verse{font-family:inherit;overflow:auto;white-space:pre-wrap}.wp-block-video{margin:0 0 1em}.wp-block-video video{width:100%}@supports (position:sticky){.wp-block-video [poster]{-o-object-fit:cover;object-fit:cover}}.wp-block-video.aligncenter{text-align:center}.wp-block-video figcaption{margin-top:.5em;margin-bottom:1em}.wp-block-post-featured-image{margin-right:0;margin-left:0}.wp-block-post-featured-image a{display:inline-block}.wp-block-post-featured-image img{max-width:100%;width:100%;height:auto;vertical-align:bottom}.wp-block-post-featured-image.alignfull img,.wp-block-post-featured-image.alignwide img{width:100%}:root{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(-135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(-135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(-135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(-135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(-135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(-135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(-135deg,#020381,#2874fc)}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}.has-text-align-center{text-align:center}.has-text-align-left{text-align:left}.has-text-align-right{text-align:right}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#ddd;clip:auto!important;-webkit-clip-path:none;clip-path:none;color:#444;display:block;font-size:1em;height:auto;right:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(img[class*=wp-image-]){height:auto;max-width:100%}PKj l\0nӃ %css/dist/block-library/common.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}:root{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}.has-text-align-center{text-align:center}.has-text-align-left{text-align:left}.has-text-align-right{text-align:right}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#ddd;clip:auto!important;-webkit-clip-path:none;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(img[class*=wp-image-]){height:auto;max-width:100%}PKj l\5lgg(css/dist/block-library/reset-rtl.min.cssnu[html :where(.editor-styles-wrapper){font-family:serif;font-size:medium;line-height:normal;color:initial;background:#fff}html :where(.editor-styles-wrapper) .wp-align-wrapper{max-width:840px}html :where(.editor-styles-wrapper) .wp-align-wrapper.wp-align-full,html :where(.editor-styles-wrapper) .wp-align-wrapper>.wp-block{max-width:none}html :where(.editor-styles-wrapper) .wp-align-wrapper.wp-align-wide{max-width:840px}html :where(.editor-styles-wrapper) a{transition:none}html :where(.editor-styles-wrapper) code,html :where(.editor-styles-wrapper) kbd{padding:0;margin:0;background:inherit;font-size:inherit;font-family:monospace}html :where(.editor-styles-wrapper) p{font-size:revert;line-height:revert;margin:revert}html :where(.editor-styles-wrapper) ol,html :where(.editor-styles-wrapper) ul{margin:revert;padding:revert;list-style-type:revert;box-sizing:revert}html :where(.editor-styles-wrapper) ol li,html :where(.editor-styles-wrapper) ol ol,html :where(.editor-styles-wrapper) ol ul,html :where(.editor-styles-wrapper) ul li,html :where(.editor-styles-wrapper) ul ol,html :where(.editor-styles-wrapper) ul ul{margin:revert}html :where(.editor-styles-wrapper) ol ul,html :where(.editor-styles-wrapper) ul ul{list-style-type:revert}html :where(.editor-styles-wrapper) h1,html :where(.editor-styles-wrapper) h2,html :where(.editor-styles-wrapper) h3,html :where(.editor-styles-wrapper) h4,html :where(.editor-styles-wrapper) h5,html :where(.editor-styles-wrapper) h6,html :where(.editor-styles-wrapper) select{font-size:revert;margin:revert;color:revert;line-height:revert;font-weight:revert}html :where(.editor-styles-wrapper) select{font-family:system-ui;-webkit-appearance:revert;border:revert;border-radius:revert;background:revert;box-shadow:revert;text-shadow:revert;outline:revert;cursor:revert;transform:revert;padding:revert;min-height:revert;max-width:revert;vertical-align:revert}html :where(.editor-styles-wrapper) select:disabled,html :where(.editor-styles-wrapper) select:focus{color:revert;border-color:revert;background-color:revert;background-image:revert;box-shadow:revert;text-shadow:revert;cursor:revert;transform:revert}PKj l\ A% )css/dist/block-library/common-rtl.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}:root{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(-135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(-135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(-135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(-135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(-135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(-135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(-135deg,#020381,#2874fc)}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}.has-text-align-center{text-align:center}.has-text-align-left{text-align:left}.has-text-align-right{text-align:right}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#ddd;clip:auto!important;-webkit-clip-path:none;clip-path:none;color:#444;display:block;font-size:1em;height:auto;right:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(img[class*=wp-image-]){height:auto;max-width:100%}PKj l\_b11!css/dist/block-library/editor.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ ul.wp-block-archives { padding-left: 2.5em; } .wp-block-audio { margin-left: 0; margin-right: 0; } .edit-post-visual-editor .block-library-block__reusable-block-container .is-root-container { padding-left: 0; padding-right: 0; } .edit-post-visual-editor .block-library-block__reusable-block-container .block-editor-writing-flow { display: block; } .edit-post-visual-editor .block-library-block__reusable-block-container .components-disabled .block-list-appender { display: none; } .wp-block[data-align=center] > .wp-block-button { text-align: center; margin-left: auto; margin-right: auto; } .wp-block[data-align=right] > .wp-block-button { /*!rtl:ignore*/ text-align: right; } .wp-block-button { position: relative; cursor: text; } .wp-block-button:not(.has-text-color):not(.is-style-outline) [data-rich-text-placeholder]::after { color: #fff; } .wp-block-button:focus { box-shadow: 0 0 0 1px #fff, 0 0 0 3px var(--wp-admin-theme-color); outline: 2px solid transparent; outline-offset: -2px; } .wp-block-button[data-rich-text-placeholder]::after { opacity: 0.8; } .wp-block-button__inline-link { color: #757575; height: 0; overflow: hidden; max-width: 290px; } .wp-block-button__inline-link-input__suggestions { max-width: 290px; } @media (min-width: 782px) { .wp-block-button__inline-link { max-width: 260px; } .wp-block-button__inline-link-input__suggestions { max-width: 260px; } } @media (min-width: 960px) { .wp-block-button__inline-link { max-width: 290px; } .wp-block-button__inline-link-input__suggestions { max-width: 290px; } } .is-selected .wp-block-button__inline-link { height: auto; overflow: visible; } .wp-button-label__width .components-button-group { display: block; } .wp-button-label__width .components-base-control__field { margin-bottom: 12px; } div[data-type="core/button"] { display: table; } .wp-block-buttons { /* stylelint-disable indentation */ } .wp-block-buttons > .wp-block { margin: 0; } .wp-block-buttons > .wp-block-button.wp-block-button.wp-block-button.wp-block-button.wp-block-button { margin: 0; } .wp-block-buttons > .block-list-appender { display: inline-flex; align-items: center; } .wp-block-buttons.is-vertical > .block-list-appender .block-list-appender__toggle { justify-content: flex-start; } .wp-block-buttons > .wp-block-button:focus { box-shadow: none; } .wp-block-buttons:not(.is-content-justification-space-between, .is-content-justification-right, .is-content-justification-left, .is-content-justification-center) .wp-block[data-align=center] { /* stylelint-enable indentation */ margin-left: auto; margin-right: auto; margin-top: 0; width: 100%; } .wp-block-buttons:not(.is-content-justification-space-between, .is-content-justification-right, .is-content-justification-left, .is-content-justification-center) .wp-block[data-align=center] .wp-block-button { margin-bottom: 0; } .wp-block[data-align=center] > .wp-block-buttons { align-items: center; justify-content: center; } .wp-block[data-align=right] > .wp-block-buttons { justify-content: flex-end; } .wp-block-categories ul { padding-left: 2.5em; } .wp-block-categories ul ul { margin-top: 6px; } .wp-block-columns :where(.wp-block) { max-width: none; margin-left: 0; margin-right: 0; } @media (min-width: 600px) { .editor-styles-wrapper .block-editor-block-list__block.wp-block-column:nth-child(even) { margin-left: var(--wp--style--block-gap, 2em); } } @media (min-width: 782px) { .editor-styles-wrapper .block-editor-block-list__block.wp-block-column:not(:first-child) { margin-left: var(--wp--style--block-gap, 2em); } } html :where(.wp-block-column) { margin-top: 0; margin-bottom: 0; } .wp-block-cover { /* Extra specificity needed because the reset.css applied in the editor context is overriding this rule. */ } .editor-styles-wrapper .wp-block-cover { box-sizing: border-box; } .wp-block-cover.is-placeholder { min-height: auto !important; padding: 0 !important; } .wp-block-cover.is-placeholder .block-library-cover__resize-container { display: none; } .wp-block-cover.is-placeholder .components-placeholder.is-large { min-height: 240px; justify-content: flex-start; z-index: 1; } .wp-block-cover.is-placeholder .components-placeholder.is-large + .block-library-cover__resize-container { min-height: 240px; display: block; } .wp-block-cover.components-placeholder h2 { color: inherit; } .wp-block-cover.is-transient::before { background-color: #fff; opacity: 0.3; } .wp-block-cover .components-spinner { position: absolute; z-index: 1; top: 50%; left: 50%; transform: translate(-50%, -50%); margin: 0; } .wp-block-cover .block-editor-block-list__layout { width: 100%; } .wp-block-cover .wp-block-cover__inner-container { text-align: left; margin-left: 0; margin-right: 0; } .wp-block-cover .wp-block-cover__placeholder-background-options { width: 100%; } [data-align=left] > .wp-block-cover, [data-align=right] > .wp-block-cover { max-width: 420px; width: 100%; } .block-library-cover__reset-button { margin-left: auto; } .block-library-cover__resize-container { position: absolute !important; top: 0; left: 0; right: 0; bottom: 0; min-height: 50px; } .block-library-cover__resize-container:not(.is-resizing) { height: auto !important; } .wp-block-cover > .components-drop-zone .components-drop-zone__content { opacity: 0.8 !important; } .block-editor-block-patterns-list__list-item .has-parallax.wp-block-cover { background-attachment: scroll; } .wp-block-embed { margin-left: 0; margin-right: 0; clear: both; } .wp-block-embed.is-loading { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 1em; min-height: 200px; text-align: center; border-radius: 2px; background-color: #fff; box-shadow: inset 0 0 0 1px #1e1e1e; } .wp-block-embed.is-loading p { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; } .wp-block-embed .components-placeholder__error { word-break: break-word; } .wp-block-embed .components-placeholder__learn-more { margin-top: 1em; } .block-library-embed__interactive-overlay { position: absolute; top: 0; left: 0; right: 0; bottom: 0; opacity: 0; } .wp-block[data-align=left] > .wp-block-embed, .wp-block[data-align=right] > .wp-block-embed { max-width: 360px; width: 100%; } .wp-block[data-align=left] > .wp-block-embed .wp-block-embed__wrapper, .wp-block[data-align=right] > .wp-block-embed .wp-block-embed__wrapper { min-width: 280px; } .wp-block-file { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; margin-bottom: 0; } .wp-block[data-align=left] > .wp-block-file, .wp-block[data-align=right] > .wp-block-file { height: auto; } .wp-block-file .components-resizable-box__container { margin-bottom: 1em; } .wp-block-file .wp-block-file__preview { margin-bottom: 1em; width: 100%; height: 100%; } .wp-block-file .wp-block-file__preview-overlay { position: absolute; top: 0; right: 0; bottom: 0; left: 0; } .wp-block-file .wp-block-file__content-wrapper { flex-grow: 1; } .wp-block-file a { min-width: 1em; } .wp-block-file .wp-block-file__button-richtext-wrapper { display: inline-block; margin-left: 0.75em; } .wp-block-freeform.block-library-rich-text__tinymce { height: auto; /* Allow height of embed iframes to be calculated properly */ /* Remove blue highlighting of selected images in WebKit */ /* Image captions */ /* WP Views */ } .wp-block-freeform.block-library-rich-text__tinymce p, .wp-block-freeform.block-library-rich-text__tinymce li { line-height: 1.8; } .wp-block-freeform.block-library-rich-text__tinymce ul, .wp-block-freeform.block-library-rich-text__tinymce ol { padding-left: 2.5em; margin-left: 0; } .wp-block-freeform.block-library-rich-text__tinymce blockquote { margin: 0; box-shadow: inset 0 0 0 0 #ddd; border-left: 4px solid #000; padding-left: 1em; } .wp-block-freeform.block-library-rich-text__tinymce pre { white-space: pre-wrap; font-family: Menlo, Consolas, monaco, monospace; font-size: 15px; color: #1e1e1e; } .wp-block-freeform.block-library-rich-text__tinymce > *:first-child { margin-top: 0; } .wp-block-freeform.block-library-rich-text__tinymce > *:last-child { margin-bottom: 0; } .wp-block-freeform.block-library-rich-text__tinymce.mce-edit-focus { outline: none; } .wp-block-freeform.block-library-rich-text__tinymce a { color: var(--wp-admin-theme-color); } .wp-block-freeform.block-library-rich-text__tinymce:focus a[data-mce-selected] { padding: 0 2px; margin: 0 -2px; border-radius: 2px; box-shadow: 0 0 0 1px #e5f5fa; background: #e5f5fa; } .wp-block-freeform.block-library-rich-text__tinymce code { padding: 2px; border-radius: 2px; color: #1e1e1e; background: #f0f0f0; font-family: Menlo, Consolas, monaco, monospace; font-size: 14px; } .wp-block-freeform.block-library-rich-text__tinymce:focus code[data-mce-selected] { background: #ddd; } .wp-block-freeform.block-library-rich-text__tinymce .alignright { /*rtl:ignore*/ float: right; /*rtl:ignore*/ margin: 0.5em 0 0.5em 1em; } .wp-block-freeform.block-library-rich-text__tinymce .alignleft { /*rtl:ignore*/ float: left; /*rtl:ignore*/ margin: 0.5em 1em 0.5em 0; } .wp-block-freeform.block-library-rich-text__tinymce .aligncenter { display: block; margin-left: auto; margin-right: auto; } .wp-block-freeform.block-library-rich-text__tinymce .wp-more-tag { width: 96%; height: 20px; display: block; margin: 15px auto; outline: 0; cursor: default; background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAADtgAAAAoBAMAAAA86gLBAAAAJFBMVEVMaXG7u7vBwcHDw8POzs68vLzGxsbMzMy+vr7AwMDQ0NDGxsYKLGzpAAAADHRSTlMA///zWf+/f///TMxNVGuqAAABwklEQVR4Ae3dMXLaQBTH4bfj8UCpx8hq0vgKvgFNemhT6Qo6gg6R+0ZahM2QLmyBJ99XWP9V5+o3jIUcLQEAAAAAAAAAAAAAAAAAAAAAAABQ8j0WL9lfTtlt18uNXAUA8O/KVtfa1tdcrOdSh9gCQAMlh1hMNbZZ1bsrsQWABsrhLRbz7z5in/32UbfUMUbkMQCAh5RfGYv82UdMdZ6HS2wjT2ILAI8r3XmM2B3WvM59vfO2xXYW2yYAENuPU8S+X/N67mKxzy225yaxBQCxLV392UdcvwV0jPVUj98ntkBWT7C7+9u2/V/vGtvXIWJ6/4rtbottWa6Ri0NUT/u72LYttrb97LHdvUXMxxrb8TO2W2TF1rYbbLG1bbGNjMi4+2Sbi1FsbbvNFlvbFtt5fDnE3d9sP1/XeIyV2Nr2U2/guZUuptNrH/dPI9eLB6SaAEBs6wPJf3/PNk9tYgsAYrv/8TFuzx/fvkFqGtrEFgDEdpcZUb7ejXy6ntrEFgDENvL6gsas4vbdyKt4DACI7TxElJv/Z7udpqFNbAFAbKduy2uU2trttM/x28UWAAAAAAAAAAAAAAAAAAAAAAAAAADgDyPwGmGTCZp7AAAAAElFTkSuQmCC); background-size: 1900px 20px; background-repeat: no-repeat; background-position: center; } .wp-block-freeform.block-library-rich-text__tinymce img::selection { background-color: transparent; } .wp-block-freeform.block-library-rich-text__tinymce div.mceTemp { -ms-user-select: element; } .wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption { margin: 0; /* dl browser reset */ max-width: 100%; } .wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption a, .wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption img { display: block; } .wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption, .wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption * { -webkit-user-drag: none; } .wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption .wp-caption-dd { padding-top: 0.5em; margin: 0; /* browser dd reset */ } .wp-block-freeform.block-library-rich-text__tinymce .wpview { width: 99.99%; /* All IE need hasLayout, incl. 11 (ugh, not again!!) */ position: relative; clear: both; margin-bottom: 16px; border: 1px solid transparent; } .wp-block-freeform.block-library-rich-text__tinymce .wpview iframe { display: block; max-width: 100%; background: transparent; } .wp-block-freeform.block-library-rich-text__tinymce .wpview .mce-shim { position: absolute; top: 0; right: 0; bottom: 0; left: 0; } .wp-block-freeform.block-library-rich-text__tinymce .wpview[data-mce-selected="2"] .mce-shim { display: none; } .wp-block-freeform.block-library-rich-text__tinymce .wpview .loading-placeholder { border: 1px dashed #ddd; padding: 10px; } .wp-block-freeform.block-library-rich-text__tinymce .wpview .wpview-error { border: 1px solid #ddd; padding: 1em 0; margin: 0; word-wrap: break-word; } .wp-block-freeform.block-library-rich-text__tinymce .wpview .wpview-error p { margin: 0; text-align: center; } .wp-block-freeform.block-library-rich-text__tinymce .wpview[data-mce-selected] .loading-placeholder, .wp-block-freeform.block-library-rich-text__tinymce .wpview[data-mce-selected] .wpview-error { border-color: transparent; } .wp-block-freeform.block-library-rich-text__tinymce .wpview .dashicons { display: block; margin: 0 auto; width: 32px; height: 32px; font-size: 32px; } .wp-block-freeform.block-library-rich-text__tinymce .wpview.wpview-type-gallery::after { content: ""; display: table; clear: both; } .wp-block-freeform.block-library-rich-text__tinymce .gallery img[data-mce-selected]:focus { outline: none; } .wp-block-freeform.block-library-rich-text__tinymce .gallery a { cursor: default; } .wp-block-freeform.block-library-rich-text__tinymce .gallery { margin: auto -6px; padding: 6px 0; line-height: 1; overflow-x: hidden; } .wp-block-freeform.block-library-rich-text__tinymce .gallery .gallery-item { float: left; margin: 0; text-align: center; padding: 6px; box-sizing: border-box; } .wp-block-freeform.block-library-rich-text__tinymce .gallery .gallery-caption, .wp-block-freeform.block-library-rich-text__tinymce .gallery .gallery-icon { margin: 0; } .wp-block-freeform.block-library-rich-text__tinymce .gallery .gallery-caption { font-size: 13px; margin: 4px 0; } .wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-1 .gallery-item { width: 100%; } .wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-2 .gallery-item { width: 50%; } .wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-3 .gallery-item { width: 33.3333333333%; } .wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-4 .gallery-item { width: 25%; } .wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-5 .gallery-item { width: 20%; } .wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-6 .gallery-item { width: 16.6666666667%; } .wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-7 .gallery-item { width: 14.2857142857%; } .wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-8 .gallery-item { width: 12.5%; } .wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-9 .gallery-item { width: 11.1111111111%; } .wp-block-freeform.block-library-rich-text__tinymce .gallery img { max-width: 100%; height: auto; border: none; padding: 0; } div[data-type="core/freeform"]::before { transition: border-color 0.1s linear, box-shadow 0.1s linear; border: 1px solid #ddd; outline: 1px solid transparent; } @media (prefers-reduced-motion: reduce) { div[data-type="core/freeform"]::before { transition-duration: 0s; transition-delay: 0s; } } div[data-type="core/freeform"].is-selected::before { border-color: #1e1e1e; } div[data-type="core/freeform"] .block-editor-block-contextual-toolbar + div { margin-top: 0; padding-top: 0; } div[data-type="core/freeform"].is-selected .block-library-rich-text__tinymce::after { content: ""; display: table; clear: both; } .mce-toolbar-grp .mce-btn.mce-active button, .mce-toolbar-grp .mce-btn.mce-active:hover button, .mce-toolbar-grp .mce-btn.mce-active i, .mce-toolbar-grp .mce-btn.mce-active:hover i { color: #1e1e1e; } .mce-toolbar-grp .mce-rtl .mce-flow-layout-item.mce-last { margin-right: 0; margin-left: 8px; } .mce-toolbar-grp .mce-btn i { font-style: normal; } .block-library-classic__toolbar { display: none; width: auto; margin: 0; position: sticky; z-index: 31; top: 0; border: 1px solid #ddd; border-bottom: none; border-radius: 2px; margin-bottom: 8px; padding: 0; } div[data-type="core/freeform"].is-selected .block-library-classic__toolbar { display: block; border-color: #1e1e1e; } .block-library-classic__toolbar .mce-tinymce { box-shadow: none; } @media (min-width: 600px) { .block-library-classic__toolbar { padding: 0; } } .block-library-classic__toolbar:empty { display: block; background: #f5f5f5; border-bottom: 1px solid #e2e4e7; } .block-library-classic__toolbar:empty::before { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; content: attr(data-placeholder); color: #555d66; line-height: 37px; padding: 14px; } .block-library-classic__toolbar div.mce-toolbar-grp { border-bottom: 1px solid #1e1e1e; } .block-library-classic__toolbar .mce-tinymce-inline, .block-library-classic__toolbar .mce-tinymce-inline > div, .block-library-classic__toolbar div.mce-toolbar-grp, .block-library-classic__toolbar div.mce-toolbar-grp > div, .block-library-classic__toolbar .mce-menubar, .block-library-classic__toolbar .mce-menubar > div { height: auto !important; width: 100% !important; } .block-library-classic__toolbar .mce-container-body.mce-abs-layout { overflow: visible; } .block-library-classic__toolbar .mce-menubar, .block-library-classic__toolbar div.mce-toolbar-grp { position: static; } .block-library-classic__toolbar .mce-toolbar-grp > div { padding: 1px 3px; } .block-library-classic__toolbar .mce-toolbar-grp .mce-toolbar:not(:first-child) { display: none; } .block-library-classic__toolbar.has-advanced-toolbar .mce-toolbar-grp .mce-toolbar { display: block; } figure.wp-block-gallery { display: block; margin: 0; } figure.wp-block-gallery.has-nested-images .components-drop-zone { display: none; pointer-events: none; } figure.wp-block-gallery > .blocks-gallery-caption { flex: 0 0 100%; } figure.wp-block-gallery > .blocks-gallery-media-placeholder-wrapper { flex-basis: 100%; } figure.wp-block-gallery .wp-block-image .components-notice.is-error { display: block; } figure.wp-block-gallery .wp-block-image .components-notice__content { margin: 4px 0; } figure.wp-block-gallery .wp-block-image .components-notice__dismiss { position: absolute; top: 0; right: 5px; } figure.wp-block-gallery .block-editor-media-placeholder.is-appender .components-placeholder__label { display: none; } figure.wp-block-gallery .block-editor-media-placeholder.is-appender .block-editor-media-placeholder__button { margin-bottom: 0; } figure.wp-block-gallery .block-editor-media-placeholder { margin: 0; } figure.wp-block-gallery .block-editor-media-placeholder::before { box-shadow: 0 0 0 1px #fff inset, 0 0 0 3px var(--wp-admin-theme-color) inset; content: ""; outline: 2px solid transparent; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; pointer-events: none; } figure.wp-block-gallery .block-editor-media-placeholder .components-placeholder__label { display: flex; } figure.wp-block-gallery .block-editor-media-placeholder figcaption { z-index: 2; } figure.wp-block-gallery .components-spinner { position: absolute; top: 50%; left: 50%; margin-top: -9px; margin-left: -9px; } /** * Gallery inspector controls settings. */ .gallery-settings-buttons .components-button:first-child { margin-right: 8px; } .gallery-image-sizes .components-base-control__label { display: block; margin-bottom: 4px; } .gallery-image-sizes .gallery-image-sizes__loading { display: flex; align-items: center; color: #757575; font-size: 12px; } .gallery-image-sizes .components-spinner { margin: 0 8px 0 4px; } /** * Deprecated css past this point. This can be removed once all galleries are migrated * to V2. */ .blocks-gallery-item figure:not(.is-selected):focus, .blocks-gallery-item img:focus { outline: none; } .blocks-gallery-item figure.is-selected::before { box-shadow: 0 0 0 1px #fff inset, 0 0 0 3px var(--wp-admin-theme-color) inset; content: ""; outline: 2px solid transparent; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; pointer-events: none; } .blocks-gallery-item figure.is-transient img { opacity: 0.3; } .blocks-gallery-item .is-selected .block-library-gallery-item__inline-menu { display: inline-flex; } .blocks-gallery-item .block-editor-media-placeholder { margin: 0; height: 100%; } .blocks-gallery-item .block-editor-media-placeholder .components-placeholder__label { display: flex; } .block-library-gallery-item__inline-menu { display: none; position: absolute; top: -2px; margin: 8px; z-index: 20; transition: box-shadow 0.2s ease-out; border-radius: 2px; background: #fff; border: 1px solid #1e1e1e; } @media (prefers-reduced-motion: reduce) { .block-library-gallery-item__inline-menu { transition-duration: 0s; transition-delay: 0s; } } .block-library-gallery-item__inline-menu:hover { box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05); } @media (min-width: 600px) { .columns-7 .block-library-gallery-item__inline-menu, .columns-8 .block-library-gallery-item__inline-menu { padding: 2px; } } .block-library-gallery-item__inline-menu .components-button.has-icon:not(:focus) { border: none; box-shadow: none; } @media (min-width: 600px) { .columns-7 .block-library-gallery-item__inline-menu .components-button.has-icon, .columns-8 .block-library-gallery-item__inline-menu .components-button.has-icon { padding: 0; width: inherit; height: inherit; } } .block-library-gallery-item__inline-menu.is-left { left: -2px; } .block-library-gallery-item__inline-menu.is-right { right: -2px; } .wp-block-gallery ul.blocks-gallery-grid { padding: 0; margin: 0; } .wp-block-update-gallery-modal { max-width: 400px; } .wp-block-update-gallery-modal .wp-block-update-gallery-modal-buttons { display: flex; justify-content: flex-end; } .wp-block-update-gallery-modal .wp-block-update-gallery-modal-buttons .components-button { margin-left: 12px; } /** * Group: All Alignment Settings */ .wp-block-group .block-editor-block-list__insertion-point { left: 0; right: 0; } [data-type="core/group"].is-selected .block-list-appender { margin-left: 0; margin-right: 0; } [data-type="core/group"].is-selected .has-background .block-list-appender { margin-top: 18px; margin-bottom: 18px; } .block-library-html__edit .block-library-html__preview-overlay { position: absolute; width: 100%; height: 100%; top: 0; left: 0; } .block-library-html__edit .block-editor-plain-text { font-family: Menlo, Consolas, monaco, monospace !important; color: #1e1e1e !important; background: #fff !important; padding: 12px !important; border: 1px solid #1e1e1e !important; box-shadow: none !important; border-radius: 2px !important; max-height: 250px; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px !important; } @media (min-width: 600px) { .block-library-html__edit .block-editor-plain-text { font-size: 13px !important; } } .block-library-html__edit .block-editor-plain-text:focus { border-color: var(--wp-admin-theme-color) !important; box-shadow: 0 0 0 1px var(--wp-admin-theme-color) !important; outline: 2px solid transparent !important; } figure.wp-block-image:not(.wp-block) { margin: 0; } .wp-block-image { position: relative; } .wp-block-image .is-applying img, .wp-block-image.is-transient img { opacity: 0.3; } .wp-block-image figcaption img { display: inline; } .wp-block-image .components-spinner { position: absolute; top: 50%; left: 50%; margin-top: -9px; margin-left: -9px; } .wp-block-image:not(.is-style-rounded) > div:not(.components-placeholder) { border-radius: inherit; } .wp-block-image .components-resizable-box__container { display: inline-block; } .wp-block-image .components-resizable-box__container img { display: block; width: inherit; height: inherit; } .block-editor-block-list__block[data-type="core/image"] .block-editor-block-toolbar .block-editor-url-input__button-modal { position: absolute; left: 0; right: 0; margin: -1px 0; } @media (min-width: 600px) { .block-editor-block-list__block[data-type="core/image"] .block-editor-block-toolbar .block-editor-url-input__button-modal { margin: -1px; } } [data-align=wide] > .wp-block-image img, [data-align=full] > .wp-block-image img { height: auto; width: 100%; } .wp-block[data-align=left] > .wp-block-image, .wp-block[data-align=center] > .wp-block-image, .wp-block[data-align=right] > .wp-block-image { display: table; } .wp-block[data-align=left] > .wp-block-image > figcaption, .wp-block[data-align=center] > .wp-block-image > figcaption, .wp-block[data-align=right] > .wp-block-image > figcaption { display: table-caption; caption-side: bottom; } *:not([data-align]) > .wp-block-image { display: grid; grid-template-columns: [image] minmax(0, max-content) [placeholder] auto; } *:not([data-align]) > .wp-block-image .components-placeholder { grid-column: placeholder; } *:not([data-align]) > .wp-block-image > div:not(.components-placeholder) { grid-column: image; } *:not([data-align]) > .wp-block-image > figcaption { grid-column: image; display: table-caption; caption-side: bottom; } .wp-block[data-align=left] > .wp-block-image { margin-right: 1em; margin-left: 0; margin-top: 0.5em; margin-bottom: 0.5em; } .wp-block[data-align=right] > .wp-block-image { margin-left: 1em; margin-right: 0; margin-top: 0.5em; margin-bottom: 0.5em; } .wp-block[data-align=center] > .wp-block-image { margin-left: auto; margin-right: auto; text-align: center; } .wp-block-image__crop-area { position: relative; max-width: 100%; width: 100%; } .wp-block-image__crop-icon { padding: 0 8px; min-width: 48px; display: flex; justify-content: center; align-items: center; } .wp-block-image__crop-icon svg { fill: currentColor; } .wp-block-image__zoom .components-popover__content { overflow: visible; min-width: 260px; } .wp-block-image__zoom .components-range-control { flex: 1; } .wp-block-image__zoom .components-base-control__field { display: flex; margin-bottom: 0; flex-direction: column; align-items: flex-start; } .wp-block-image__aspect-ratio { height: 46px; margin-bottom: -8px; display: flex; align-items: center; } .wp-block-image__aspect-ratio .components-button { width: 36px; padding-left: 0; padding-right: 0; } .wp-block-latest-posts { padding-left: 2.5em; } .wp-block-latest-posts.is-grid { padding-left: 0; } .wp-block-latest-posts li a > div { display: inline; } .edit-post-visual-editor .wp-block-latest-posts.is-grid li { margin-bottom: 20px; } .wp-block-media-text__media { position: relative; } .wp-block-media-text__media.is-transient img { opacity: 0.3; } .wp-block-media-text__media .components-spinner { position: absolute; top: 50%; left: 50%; margin-top: -9px; margin-left: -9px; } .wp-block-media-text .__resizable_base__ { grid-column: 1/span 2; grid-row: 2; } .wp-block-media-text .editor-media-container__resizer { width: 100% !important; } .wp-block-media-text.is-image-fill .editor-media-container__resizer { height: 100% !important; } .wp-block-media-text > .block-editor-block-list__layout > .block-editor-block-list__block { max-width: unset; } .block-editor-block-list__block[data-type="core/more"] { max-width: 100%; text-align: center; margin-top: 28px; margin-bottom: 28px; } .wp-block-more { display: block; text-align: center; white-space: nowrap; } .wp-block-more input[type=text] { position: relative; font-size: 13px; text-transform: uppercase; font-weight: 600; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; color: #757575; border: none; box-shadow: none; white-space: nowrap; text-align: center; margin: 0; border-radius: 4px; background: #fff; padding: 6px 8px; height: 24px; max-width: 100%; } .wp-block-more input[type=text]:focus { box-shadow: none; } .wp-block-more::before { content: ""; position: absolute; top: calc(50%); left: 0; right: 0; border-top: 3px dashed #ccc; } /** * Editor only CSS. */ .editor-styles-wrapper .wp-block-navigation ul { margin-top: 0; margin-bottom: 0; margin-left: 0; padding-left: 0; } .editor-styles-wrapper .wp-block-navigation .wp-block-navigation-item.wp-block { margin-left: revert; margin-right: revert; } .wp-block-navigation-item__label { display: inline; } /** * Submenus. */ .wp-block-navigation__container.is-parent-of-selected-block { visibility: visible; opacity: 1; overflow: visible; } .wp-block-navigation__container, .wp-block-navigation-item { background-color: inherit; } .wp-block-navigation:not(.is-selected):not(.has-child-selected) .has-child:hover > .wp-block-navigation__submenu-container { opacity: 0; visibility: hidden; } .has-child.is-selected > .wp-block-navigation__submenu-container, .has-child.has-child-selected > .wp-block-navigation__submenu-container { display: flex; opacity: 1; visibility: visible; } .is-dragging-components-draggable .has-child.is-dragging-within > .wp-block-navigation__submenu-container { opacity: 1; visibility: visible; } .is-editing > .wp-block-navigation__container { visibility: visible; opacity: 1; display: flex; flex-direction: column; } .is-dragging-components-draggable .wp-block-navigation-link > .wp-block-navigation__container { opacity: 1; visibility: hidden; } .is-dragging-components-draggable .wp-block-navigation-link > .wp-block-navigation__container .block-editor-block-draggable-chip-wrapper { visibility: visible; } .is-editing > .wp-block-navigation__submenu-container > .block-list-appender { display: block; position: static; width: 100%; } .wp-block-navigation__submenu-container .block-list-appender { display: none; } /** * Colors Selector component */ .block-library-colors-selector { width: auto; } .block-library-colors-selector .block-library-colors-selector__toggle { display: block; margin: 0 auto; padding: 3px; width: auto; } .block-library-colors-selector .block-library-colors-selector__icon-container { height: 30px; position: relative; margin: 0 auto; padding: 3px; display: flex; align-items: center; border-radius: 4px; } .block-library-colors-selector .block-library-colors-selector__state-selection { margin-left: auto; margin-right: auto; border-radius: 11px; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.2); width: 22px; min-width: 22px; height: 22px; min-height: 22px; line-height: 20px; padding: 2px; } .block-library-colors-selector .block-library-colors-selector__state-selection > svg { min-width: auto !important; } .block-library-colors-selector .block-library-colors-selector__state-selection.has-text-color > svg, .block-library-colors-selector .block-library-colors-selector__state-selection.has-text-color > svg path { color: inherit; } .block-library-colors-selector__popover .color-palette-controller-container { padding: 16px; } .block-library-colors-selector__popover .components-base-control__label { height: 20px; line-height: 20px; } .block-library-colors-selector__popover .component-color-indicator { float: right; margin-top: 2px; } .block-library-colors-selector__popover .components-panel__body-title { display: none; } .wp-block-navigation .block-editor-button-block-appender { justify-content: flex-start; } /** * Setup state */ .components-placeholder.wp-block-navigation-placeholder { outline: none; padding: 0; box-shadow: none; background: none; min-height: 0; color: inherit; } .components-placeholder.wp-block-navigation-placeholder .components-placeholder__fieldset { font-size: inherit; } .components-placeholder.wp-block-navigation-placeholder .components-placeholder__fieldset .components-button { margin-bottom: 0; } .is-selected .components-placeholder.wp-block-navigation-placeholder { color: #1e1e1e; } .wp-block-navigation-placeholder .components-spinner { margin-top: -4px; margin-left: 4px; vertical-align: middle; margin-right: 7px; } @keyframes loadingpulse { 0% { opacity: 1; } 50% { opacity: 0.5; } 100% { opacity: 1; } } .wp-block-navigation-placeholder__preview { display: flex; flex-direction: row; align-items: center; flex-wrap: nowrap; width: 100%; overflow: hidden; } .wp-block-navigation-placeholder__preview.is-loading { animation: loadingpulse 1s linear infinite; animation-delay: 0.5s; } .wp-block-navigation-placeholder__preview .wp-block-navigation-item.wp-block-navigation-item { position: relative; min-width: 72px; } .wp-block-navigation-placeholder__preview .wp-block-navigation-item.wp-block-navigation-item::before { display: block; content: ""; border-radius: 2px; background: currentColor; height: 16px; width: 100%; } .wp-block-navigation-placeholder__preview .wp-block-navigation-placeholder__preview-search-icon { height: 24px; } .wp-block-navigation-placeholder__preview .wp-block-navigation-placeholder__preview-search-icon svg { fill: currentColor; } .wp-block-navigation-placeholder__preview .wp-block-navigation-item.wp-block-navigation-item, .wp-block-navigation-placeholder__preview .wp-block-navigation-placeholder__preview-search-icon { opacity: 0.3; } .wp-block-navigation.is-selected .wp-block-navigation-placeholder__preview:not(.is-loading) { display: flex; opacity: 0; width: 0; overflow: hidden; flex-wrap: nowrap; flex: 0; } .wp-block-navigation.is-selected .is-small .wp-block-navigation-placeholder__preview:not(.is-loading), .wp-block-navigation.is-selected .is-medium .wp-block-navigation-placeholder__preview:not(.is-loading) { display: none; } .wp-block-navigation-placeholder__controls { border-radius: 2px; background-color: #fff; box-shadow: inset 0 0 0 1px #1e1e1e; flex-direction: row; align-items: center; display: none; position: relative; z-index: 1; padding: 4px 8px; float: left; width: 100%; } .wp-block-navigation.is-selected .wp-block-navigation-placeholder__controls { display: flex; } .is-medium .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions__indicator, .is-medium .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions__indicator + hr, .is-medium .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions > :nth-last-child(3), .is-medium .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions > :nth-last-child(2) { display: none; } .is-small .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions { flex-direction: column; } .is-small .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions hr { display: none; } .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__icon { margin-right: 12px; height: 36px; } .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions__indicator { display: flex; padding: 0 6px 0 0; align-items: center; justify-content: flex-start; line-height: 0; min-height: 36px; margin-left: 4px; } .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions__indicator svg { margin-right: 4px; } .wp-block-navigation .components-placeholder.is-medium .components-placeholder__fieldset { flex-direction: row !important; } .wp-block-navigation-placeholder__actions { display: flex; font-size: 13px; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; gap: 6px; align-items: center; height: 100%; } .wp-block-navigation-placeholder__actions .components-dropdown, .wp-block-navigation-placeholder__actions > .components-button { margin-right: 0; } .wp-block-navigation-placeholder__actions.wp-block-navigation-placeholder__actions hr { border: 0; min-height: 1px; min-width: 1px; background-color: #1e1e1e; margin: auto 0; height: 100%; max-height: 16px; } /** * Mobile menu. */ @media (min-width: 600px) { .wp-block-navigation__responsive-container:not(.is-menu-open) .components-button.wp-block-navigation__responsive-container-close { display: none; } } .wp-block-navigation__responsive-container.is-menu-open { position: fixed; top: 155px; } @media (min-width: 782px) { .wp-block-navigation__responsive-container.is-menu-open { top: 93px; } } @media (min-width: 782px) { .wp-block-navigation__responsive-container.is-menu-open { left: 36px; } } @media (min-width: 960px) { .wp-block-navigation__responsive-container.is-menu-open { left: 160px; } } @media (min-width: 782px) { .has-fixed-toolbar .wp-block-navigation__responsive-container.is-menu-open { top: 141px; } } .is-mobile-preview .wp-block-navigation__responsive-container.is-menu-open, .is-tablet-preview .wp-block-navigation__responsive-container.is-menu-open { top: 141px; } .is-sidebar-opened .wp-block-navigation__responsive-container.is-menu-open { right: 280px; } .is-fullscreen-mode .wp-block-navigation__responsive-container.is-menu-open { left: 0; top: 155px; } @media (min-width: 782px) { .is-fullscreen-mode .wp-block-navigation__responsive-container.is-menu-open { top: 61px; } } @media (min-width: 782px) { .is-fullscreen-mode .has-fixed-toolbar .wp-block-navigation__responsive-container.is-menu-open { top: 109px; } } .is-fullscreen-mode .is-mobile-preview .wp-block-navigation__responsive-container.is-menu-open, .is-fullscreen-mode .is-tablet-preview .wp-block-navigation__responsive-container.is-menu-open { top: 109px; } body.editor-styles-wrapper .wp-block-navigation__responsive-container.is-menu-open { top: 0; right: 0; bottom: 0; left: 0; } @media (min-width: 600px) { .wp-block-navigation__responsive-close { pointer-events: none; } .wp-block-navigation__responsive-close .wp-block-navigation__responsive-container-close, .wp-block-navigation__responsive-close .block-editor-block-list__layout * { pointer-events: all; } } .wp-block-navigation__responsive-close .wp-block-pages-list__item__link { pointer-events: none; } .components-button.wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open, .components-button.wp-block-navigation__responsive-container-close.wp-block-navigation__responsive-container-close { padding: 0; height: auto; color: inherit; } .is-menu-open .wp-block-navigation__responsive-container-content * .block-list-appender { margin-top: 16px; } @keyframes fadein { 0% { opacity: 0; } 100% { opacity: 1; } } .wp-block-navigation__unsaved-changes { position: relative; } .wp-block-navigation__unsaved-changes .components-spinner { position: absolute; top: calc(50% - 18px / 2); left: calc(50% - 18px / 2); opacity: 0; animation: 0.5s linear 2s normal forwards fadein; } @keyframes fadeouthalf { 0% { opacity: 1; } 100% { opacity: 0.5; } } .wp-block-navigation__unsaved-changes-overlay.is-saving { opacity: 1; animation: 0.5s linear 2s normal forwards fadeouthalf; } .wp-block-navigation-delete-menu-button { width: 100%; justify-content: center; margin-bottom: 16px; } /** * Submenus. */ .wp-block-navigation .has-child { cursor: pointer; } .wp-block-navigation .has-child .wp-block-navigation__submenu-container { z-index: 28; } .wp-block-navigation .has-child:hover .wp-block-navigation__submenu-container { z-index: 29; } .wp-block-navigation .has-child.is-selected > .wp-block-navigation__submenu-container, .wp-block-navigation .has-child.has-child-selected > .wp-block-navigation__submenu-container { visibility: visible !important; opacity: 1 !important; min-width: 200px !important; height: auto !important; width: auto !important; overflow: visible !important; } /** * Navigation Items. */ .wp-block-navigation-item .wp-block-navigation-item__content { cursor: text; } .wp-block-navigation-item.is-editing, .wp-block-navigation-item.is-selected { min-width: 20px; } .wp-block-navigation-item .block-list-appender { margin-top: 16px; margin-right: auto; margin-bottom: 16px; margin-left: 16px; } /** * Menu item setup state. Is shown when a menu item has no URL configured. */ .wp-block-navigation-link__placeholder { position: relative; text-decoration: none !important; box-shadow: none !important; background-image: none !important; } .wp-block-navigation-link__placeholder .wp-block-navigation-link__placeholder-text span { --wp-underline-color: var(--wp-admin-theme-color); background-image: linear-gradient(45deg, transparent 20%, var(--wp-underline-color) 30%, var(--wp-underline-color) 36%, transparent 46%), linear-gradient(135deg, transparent 54%, var(--wp-underline-color) 64%, var(--wp-underline-color) 70%, transparent 80%); background-position: 0 100%; background-size: 6px 3px; background-repeat: repeat-x; padding-bottom: 0.1em; } .is-dark-theme .wp-block-navigation-link__placeholder .wp-block-navigation-link__placeholder-text span { --wp-underline-color: #fff; } .wp-block-navigation-link__placeholder.wp-block-navigation-item__content { cursor: pointer; } /** * Link Control Transforms */ .link-control-transform { border-top: 1px solid #ccc; padding: 0 16px 8px 16px; } .link-control-transform__subheading { font-size: 11px; text-transform: uppercase; font-weight: 500; color: #1e1e1e; margin-bottom: 1.5em; } .link-control-transform__items { display: flex; justify-content: space-between; } .link-control-transform__item { flex-basis: 33%; flex-direction: column; gap: 8px; height: auto; } .wp-block-navigation-submenu { display: block; } .wp-block-navigation-submenu .wp-block-navigation__submenu-container { z-index: 28; } .wp-block-navigation-submenu.is-selected > .wp-block-navigation__submenu-container, .wp-block-navigation-submenu.has-child-selected > .wp-block-navigation__submenu-container { visibility: visible !important; opacity: 1 !important; min-width: 200px !important; height: auto !important; width: auto !important; position: absolute; left: -1px; top: 100%; } @media (min-width: 782px) { .wp-block-navigation-submenu.is-selected > .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container, .wp-block-navigation-submenu.has-child-selected > .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container { left: 100%; top: -1px; } .wp-block-navigation-submenu.is-selected > .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container::before, .wp-block-navigation-submenu.has-child-selected > .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container::before { content: ""; position: absolute; right: 100%; height: 100%; display: block; width: 0.5em; background: transparent; } } .block-editor-block-list__block[data-type="core/nextpage"] { max-width: 100%; text-align: center; margin-top: 28px; margin-bottom: 28px; } .wp-block-nextpage { display: block; text-align: center; white-space: nowrap; } .wp-block-nextpage > span { font-size: 13px; position: relative; text-transform: uppercase; font-weight: 600; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; color: #757575; border-radius: 4px; background: #fff; padding: 6px 8px; height: 24px; } .wp-block-nextpage::before { content: ""; position: absolute; top: calc(50%); left: 0; right: 0; border-top: 3px dashed #ccc; } .wp-block-navigation .wp-block-page-list > div, .wp-block-navigation .wp-block-page-list { background-color: inherit; } .wp-block-navigation.items-justified-space-between .wp-block-page-list > div, .wp-block-navigation.items-justified-space-between .wp-block-page-list { display: contents; flex: 1; } .wp-block-navigation.items-justified-space-between.has-child-selected .wp-block-page-list > div, .wp-block-navigation.items-justified-space-between.has-child-selected .wp-block-page-list, .wp-block-navigation.items-justified-space-between.is-selected .wp-block-page-list > div, .wp-block-navigation.items-justified-space-between.is-selected .wp-block-page-list { flex: inherit; } .wp-block-pages-list__item__link { pointer-events: none; } .wp-block-page-list .components-placeholder { min-height: 0; padding: 0; background-color: inherit; } .wp-block-page-list .components-placeholder .components-spinner { margin: 0.5em; } .wp-block-page-list-modal { max-width: 400px; } .wp-block-page-list-modal-buttons { display: flex; justify-content: flex-end; } .wp-block-page-list-modal-buttons .components-button { margin-left: 12px; } .wp-block-page-list .open-on-click:focus-within > .wp-block-navigation__submenu-container { visibility: visible; opacity: 1; width: auto; height: auto; min-width: 200px; } .wp-block-page-list .components-notice { margin-left: 0; } .block-editor-block-list__block[data-type="core/paragraph"].has-drop-cap:focus { min-height: auto !important; } .block-editor-block-list__block[data-empty=true] [data-rich-text-placeholder] { opacity: 1; } .block-editor-block-list__block[data-empty=true] + .block-editor-block-list__block[data-empty=true] [data-rich-text-placeholder] { opacity: 0; } .wp-block-post-excerpt .wp-block-post-excerpt__excerpt.is-inline { display: inline-block; } .wp-block-pullquote.has-text-align-left p, .wp-block-pullquote.has-text-align-right p, .wp-block[data-align=left] > .wp-block-pullquote p, .wp-block[data-align=right] > .wp-block-pullquote p { font-size: 20px; } .wp-block-pullquote blockquote p { font-size: 28px; line-height: 1.6; } .wp-block-pullquote.is-style-solid-color blockquote p { font-size: 32px; } .wp-block-pullquote.is-style-solid-color .wp-block-pullquote__citation { text-transform: none; font-style: normal; } .wp-block-pullquote .wp-block-pullquote__citation { color: inherit; } .wp-block-rss li a > div { display: inline; } .wp-block-rss__placeholder-form { display: flex; align-items: stretch; } .wp-block-rss__placeholder-form > * { margin-bottom: 8px; } @media (min-width: 782px) { .wp-block-rss__placeholder-form > * { margin-bottom: 0; } } .wp-block-rss__placeholder-input { display: flex; align-items: stretch; flex-grow: 1; } .wp-block-rss__placeholder-input .components-base-control__field { margin: 0; display: flex; align-items: stretch; flex-grow: 1; margin-right: 8px; } .wp-block[data-align=center] .wp-block-search .wp-block-search__inside-wrapper { margin: auto; } .wp-block-search .wp-block-search__button { height: auto; border-radius: initial; display: flex; align-items: center; } .wp-block-search__components-button-group { margin-top: 10px; } .block-editor-block-list__block[data-type="core/separator"] { padding-top: 0.1px; padding-bottom: 0.1px; } [data-type="core/shortcode"] .block-editor-plain-text { max-height: 250px; } [data-type="core/shortcode"].components-placeholder { min-height: 0; } .blocks-shortcode__textarea { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; } @media (prefers-reduced-motion: reduce) { .blocks-shortcode__textarea { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .blocks-shortcode__textarea { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .blocks-shortcode__textarea:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .blocks-shortcode__textarea::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .blocks-shortcode__textarea::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .blocks-shortcode__textarea:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .wp-block[data-align=center] > .wp-block-site-logo { display: table; margin-left: auto; margin-right: auto; } .wp-block-site-logo a { pointer-events: none; } .wp-block-site-logo .custom-logo-link { cursor: inherit; } .wp-block-site-logo .custom-logo-link:focus { box-shadow: none; } .wp-block-site-logo .custom-logo-link.is-transient img { opacity: 0.3; } .wp-block-site-logo img { display: block; height: auto; max-width: 100%; } .wp-block-site-logo.wp-block-site-logo .components-placeholder, .wp-block-site-logo.wp-block-site-logo .components-resizable-box__container { border-radius: inherit; } .wp-block-site-logo.wp-block-site-logo.is-default-size .components-placeholder { height: 120px; width: 120px; } .wp-block-site-logo.wp-block-site-logo .components-placeholder { justify-content: center; align-items: center; box-shadow: none; padding: 0; min-height: 48px; min-width: 48px; height: 100%; width: 100%; color: currentColor; background: transparent; } .wp-block-site-logo.wp-block-site-logo .components-placeholder .components-form-file-upload { display: none; } .wp-block-site-logo.wp-block-site-logo .components-placeholder .components-placeholder__preview { position: absolute; top: 4px; right: 4px; bottom: 4px; left: 4px; background: rgba(255, 255, 255, 0.8); display: flex; align-items: center; justify-content: center; } .wp-block-site-logo.wp-block-site-logo .components-placeholder .components-drop-zone__content-text { display: none; } .wp-block-site-logo.wp-block-site-logo .components-placeholder::before { content: ""; display: block; position: absolute; top: 0; right: 0; bottom: 0; left: 0; border: 1px dashed currentColor; opacity: 0.4; pointer-events: none; border-radius: inherit; } .wp-block-site-logo.wp-block-site-logo .components-placeholder .components-placeholder__fieldset { width: auto; } .wp-block-site-logo.wp-block-site-logo .components-placeholder .components-button.components-button { color: inherit; padding: 0; display: flex; justify-content: center; align-items: center; width: 48px; height: 48px; border-radius: 50%; position: relative; visibility: hidden; background: transparent; transition: all 0.1s linear; } @media (prefers-reduced-motion: reduce) { .wp-block-site-logo.wp-block-site-logo .components-placeholder .components-button.components-button { transition-duration: 0s; transition-delay: 0s; } } .wp-block-site-logo.wp-block-site-logo .components-placeholder .components-button.components-button > svg { color: #fff; } .wp-block-site-logo.wp-block-site-logo .components-placeholder .components-placeholder__illustration { position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; stroke: currentColor; stroke-dasharray: 3; opacity: 0.4; } .wp-block-site-logo.wp-block-site-logo.is-selected .components-button.components-button { background: var(--wp-admin-theme-color); border-color: var(--wp-admin-theme-color); border-style: solid; color: #fff; opacity: 1; visibility: visible; } .wp-block-site-tagline__placeholder { padding: 1em 0; border: 1px dashed; } .wp-block-site-title__placeholder { padding: 1em 0; border: 1px dashed; } .wp-block-social-links .wp-social-link { line-height: 0; } .wp-block-social-links .wp-social-link button { font-size: inherit; color: currentColor; height: auto; line-height: 0; padding: 0.25em; } .wp-block-social-links.is-style-pill-shape .wp-social-link button { padding-left: calc((2/3) * 1em); padding-right: calc((2/3) * 1em); } .wp-block-social-links.is-style-logos-only .wp-social-link button { padding: 0; } .wp-block-social-links div.block-editor-url-input { display: inline-block; margin-left: 8px; } .wp-social-link:hover { transform: none; } .editor-styles-wrapper .wp-block-social-links { padding: 0; } .wp-block-social-links__social-placeholder { display: flex; opacity: 0.8; list-style: none; } .wp-block-social-links__social-placeholder > .wp-social-link { padding-left: 0 !important; margin-left: 0 !important; padding-right: 0 !important; margin-right: 0 !important; width: 0 !important; visibility: hidden; } .wp-block-social-links__social-placeholder > .wp-block-social-links__social-placeholder-icons { display: flex; } .wp-block-social-links__social-placeholder .wp-social-link { padding: 0.25em; } .is-style-pill-shape .wp-block-social-links__social-placeholder .wp-social-link { padding-left: calc((2/3) * 1em); padding-right: calc((2/3) * 1em); } .is-style-logos-only .wp-block-social-links__social-placeholder .wp-social-link { padding: 0; } .wp-block-social-links__social-placeholder .wp-social-link::before { content: ""; display: block; width: 1em; height: 1em; border-radius: 50%; } .is-style-logos-only .wp-block-social-links__social-placeholder .wp-social-link::before { background: currentColor; } .wp-block-social-links .wp-block-social-links__social-prompt { min-height: 24px; list-style: none; order: 2; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; line-height: 24px; margin-top: auto; margin-bottom: auto; cursor: default; padding-right: 8px; } .wp-block[data-align=center] > .wp-block-social-links { justify-content: center; } .block-editor-block-preview__content .components-button:disabled { opacity: 1; } .wp-social-link.wp-social-link__is-incomplete { opacity: 0.5; } @media (prefers-reduced-motion: reduce) { .wp-social-link.wp-social-link__is-incomplete { transition-duration: 0s; transition-delay: 0s; } } .wp-block-social-links .is-selected .wp-social-link__is-incomplete, .wp-social-link.wp-social-link__is-incomplete:hover, .wp-social-link.wp-social-link__is-incomplete:focus { opacity: 1; } .block-editor-block-list__block[data-type="core/spacer"]::before { content: ""; display: block; position: absolute; z-index: 1; width: 100%; min-height: 8px; min-width: 8px; height: 100%; } .wp-block-spacer.is-hovered .block-library-spacer__resize-container, .block-library-spacer__resize-container.has-show-handle { background: rgba(0, 0, 0, 0.1); } .is-dark-theme .wp-block-spacer.is-hovered .block-library-spacer__resize-container, .is-dark-theme .block-library-spacer__resize-container.has-show-handle { background: rgba(255, 255, 255, 0.15); } .block-library-spacer__resize-container { clear: both; } .block-library-spacer__resize-container:not(.is-resizing) { height: 100% !important; width: 100% !important; } .block-library-spacer__resize-container .components-resizable-box__handle::before { content: none; } .block-library-spacer__resize-container.resize-horizontal { margin-bottom: 0; } .wp-block-table { margin: 0; } .wp-block[data-align=left] > .wp-block-table, .wp-block[data-align=right] > .wp-block-table, .wp-block[data-align=center] > .wp-block-table { height: auto; } .wp-block[data-align=left] > .wp-block-table table, .wp-block[data-align=right] > .wp-block-table table, .wp-block[data-align=center] > .wp-block-table table { width: auto; } .wp-block[data-align=left] > .wp-block-table td, .wp-block[data-align=left] > .wp-block-table th, .wp-block[data-align=right] > .wp-block-table td, .wp-block[data-align=right] > .wp-block-table th, .wp-block[data-align=center] > .wp-block-table td, .wp-block[data-align=center] > .wp-block-table th { word-break: break-word; } .wp-block[data-align=center] > .wp-block-table { text-align: initial; } .wp-block[data-align=center] > .wp-block-table table { margin: 0 auto; } .wp-block-table td, .wp-block-table th { border: 1px solid; } .wp-block-table td.is-selected, .wp-block-table th.is-selected { border-color: var(--wp-admin-theme-color); box-shadow: inset 0 0 0 1px var(--wp-admin-theme-color); border-style: double; } .wp-block-table figcaption { color: #555; font-size: 13px; text-align: center; } .is-dark-theme .wp-block-table figcaption { color: rgba(255, 255, 255, 0.65); } .blocks-table__placeholder-form.blocks-table__placeholder-form { display: flex; flex-direction: column; align-items: flex-start; } .blocks-table__placeholder-form.blocks-table__placeholder-form > * { margin-bottom: 8px; } @media (min-width: 782px) { .blocks-table__placeholder-form.blocks-table__placeholder-form { flex-direction: row; align-items: flex-end; } .blocks-table__placeholder-form.blocks-table__placeholder-form > * { margin-bottom: 0; } } .blocks-table__placeholder-input { width: 112px; margin-right: 8px; margin-bottom: 0; } .blocks-table__placeholder-input input { height: 36px; } .blocks-table__placeholder-input .components-base-control__field { margin-bottom: 0; } .wp-block-template-part__placeholder-preview-dropdown-content .components-popover__content, .wp-block-template-part__preview-dropdown-content .components-popover__content { min-width: 320px; padding: 0; } .wp-block-template-part__selection-preview-search-form { border-bottom: 1px solid #ddd; } .wp-block-template-part__selection-preview-container { background: #fff; padding-bottom: 16px; } .wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item { border-radius: 2px; cursor: pointer; margin-top: 16px; transition: all 0.05s ease-in-out; border: 1px solid #ddd; width: 100%; background-color: #fff; } .wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item:hover { border: 1px solid var(--wp-admin-theme-color); } .wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item:focus { box-shadow: inset 0 0 0 1px #fff, 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); outline: 2px solid transparent; } .wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item.is-placeholder { min-height: 100px; } .wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item .block-editor-block-preview__container { border-bottom: 1px solid #ddd; } .wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item-title { padding: 4px; font-size: 12px; text-align: left; } .wp-block-template-part__selection-preview-container .wp-block-template-part__selection-panel-group-header { padding: 16px 16px 0; } .wp-block-template-part__selection-preview-container .wp-block-template-part__selection-panel-group-content { padding: 0 16px; } .wp-block-template-part__selection-preview-container .wp-block-template-part__selection-panel-group-title { color: var(--wp-admin-theme-color); text-transform: uppercase; font-size: 11px; font-weight: 500; } .wp-block-template-part__placeholder-create-new__title-form .wp-block-template-part__placeholder-create-new__title-form-actions { padding-top: 12px; display: flex; justify-content: flex-end; } .wp-block-template-part__placeholder-create-new__title-form .wp-block-template-part__placeholder-create-new__title-form-actions .components-flex-item { margin-left: 12px; } .wp-block-text-columns .block-editor-rich-text__editable:focus { outline: 1px solid #ddd; } .wp-block[data-align=center] > .wp-block-video { text-align: center; } .wp-block-video { position: relative; } .wp-block-video.is-transient video { opacity: 0.3; } .wp-block-video .components-spinner { position: absolute; top: 50%; left: 50%; margin-top: -9px; margin-left: -9px; } .editor-video-poster-control .components-base-control__label { display: block; } .editor-video-poster-control .components-button { margin-right: 8px; } .block-library-video-tracks-editor { z-index: 159990; } .block-library-video-tracks-editor > .components-popover__content { width: 360px; } .block-library-video-tracks-editor__track-list-track { display: flex; place-content: space-between; align-items: baseline; padding-left: 12px; } .block-library-video-tracks-editor__single-track-editor-label-language { display: flex; margin-top: 12px; } .block-library-video-tracks-editor__single-track-editor-label-language > .components-base-control { width: 50%; } .block-library-video-tracks-editor__single-track-editor-label-language > .components-base-control:first-child { margin-right: 16px; } .block-library-video-tracks-editor__single-track-editor-kind-select { max-width: 240px; } .block-library-video-tracks-editor__single-track-editor-buttons-container { display: flex; place-content: space-between; margin-top: 32px; } .block-library-video-tracks-editor__single-track-editor-edit-track-label { margin-top: 4px; margin-bottom: 12px; color: #757575; text-transform: uppercase; font-size: 11px; font-weight: 500; display: block; } .block-library-video-tracks-editor > .components-popover__content > div { padding: 0; } .block-library-video-tracks-editor__track-list .components-menu-group__label, .block-library-video-tracks-editor__add-tracks-container .components-menu-group__label { padding: 0; } .block-library-video-tracks-editor__single-track-editor, .block-library-video-tracks-editor__track-list, .block-library-video-tracks-editor__add-tracks-container { padding: 12px; } .block-library-video-tracks-editor__single-track-editor .components-base-control .components-base-control__label { margin-bottom: 4px; } .block-library-video-tracks-editor__single-track-editor .components-base-control .components-base-control__field { margin-bottom: 12px; } .block-library-video-tracks-editor__single-track-editor .components-base-control .components-text-control__input { margin-left: 0; } .block-library-video-tracks-editor__single-track-editor .components-base-control .components-input-control__label { margin-bottom: 4px; } .editor-styles-wrapper ul.wp-block-post-template { padding-left: 0; margin-left: 0; list-style: none; } .block-library-query-toolbar__popover .components-popover__content { min-width: 230px; } .wp-block-query__create-new-link { padding: 0 16px 16px 56px; } .wp-block[data-align=center] > .wp-block-query-pagination { justify-content: center; } .editor-styles-wrapper .wp-block-query-pagination { max-width: 100%; } .editor-styles-wrapper .wp-block-query-pagination.block-editor-block-list__layout { margin: 0; } .block-library-query-pagination-toolbar__popover .components-popover__content { min-width: 230px; } .wp-block-query-pagination > .wp-block-query-pagination-next, .wp-block-query-pagination > .wp-block-query-pagination-previous, .wp-block-query-pagination > .wp-block-query-pagination-numbers { margin-left: 0; margin-top: 0.5em; /*rtl:ignore*/ margin-right: 0.5em; margin-bottom: 0.5em; } .wp-block-query-pagination > .wp-block-query-pagination-next:last-child, .wp-block-query-pagination > .wp-block-query-pagination-previous:last-child, .wp-block-query-pagination > .wp-block-query-pagination-numbers:last-child { /*rtl:ignore*/ margin-right: 0; } .wp-block-query-pagination-numbers a { text-decoration: underline; } .wp-block-query-pagination-numbers .page-numbers { margin-right: 2px; } .wp-block-query-pagination-numbers .page-numbers:last-child { /*rtl:ignore*/ margin-right: 0; } .wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder, .wp-block-post-featured-image.wp-block-post-featured-image .components-resizable-box__container { border-radius: inherit; } .wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder, .wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder { justify-content: center; align-items: center; box-shadow: none; padding: 0; color: currentColor; background: transparent; min-height: 200px; } .wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-form-file-upload, .wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-form-file-upload { display: none; } .wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-placeholder__preview, .wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-placeholder__preview { position: absolute; top: 4px; right: 4px; bottom: 4px; left: 4px; background: rgba(255, 255, 255, 0.8); display: flex; align-items: center; justify-content: center; } .wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder::before, .wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder::before { content: ""; display: block; position: absolute; top: 0; right: 0; bottom: 0; left: 0; border: 1px dashed currentColor; opacity: 0.4; pointer-events: none; border-radius: inherit; } .wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-placeholder__fieldset, .wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-placeholder__fieldset { width: auto; } .wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-button.components-button, .wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-button.components-button { color: inherit; padding: 0; display: flex; justify-content: center; align-items: center; width: 48px; height: 48px; border-radius: 50%; position: relative; visibility: hidden; background: transparent; transition: all 0.1s linear; } @media (prefers-reduced-motion: reduce) { .wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-button.components-button, .wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-button.components-button { transition-duration: 0s; transition-delay: 0s; } } .wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-button.components-button > svg, .wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-button.components-button > svg { color: #fff; } .wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-placeholder__illustration, .wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-placeholder__illustration { position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; stroke: currentColor; stroke-dasharray: 3; opacity: 0.4; } .wp-block-post-featured-image.wp-block-post-featured-image[style*=height] .components-placeholder { min-height: 48px; min-width: 48px; height: 100%; width: 100%; } .wp-block-post-featured-image.wp-block-post-featured-image.is-selected .components-button.components-button { background: var(--wp-admin-theme-color); border-color: var(--wp-admin-theme-color); border-style: solid; color: #fff; opacity: 1; visibility: visible; } div[data-type="core/post-featured-image"] img { max-width: 100%; height: auto; display: block; } :root .editor-styles-wrapper { /* * Our classes uses the same values we set for gradient value attributes, * and we can not use spacing because of WP multi site kses rule. */ /* stylelint-disable function-comma-space-after */ /* stylelint-enable function-comma-space-after */ } :root .editor-styles-wrapper .has-very-light-gray-background-color { background-color: #eee; } :root .editor-styles-wrapper .has-very-dark-gray-background-color { background-color: #313131; } :root .editor-styles-wrapper .has-very-light-gray-color { color: #eee; } :root .editor-styles-wrapper .has-very-dark-gray-color { color: #313131; } :root .editor-styles-wrapper .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background { background: linear-gradient(135deg, #00d084 0%, #0693e3 100%); } :root .editor-styles-wrapper .has-purple-crush-gradient-background { background: linear-gradient(135deg, #34e2e4 0%, #4721fb 50%, #ab1dfe 100%); } :root .editor-styles-wrapper .has-hazy-dawn-gradient-background { background: linear-gradient(135deg, #faaca8 0%, #dad0ec 100%); } :root .editor-styles-wrapper .has-subdued-olive-gradient-background { background: linear-gradient(135deg, #fafae1 0%, #67a671 100%); } :root .editor-styles-wrapper .has-atomic-cream-gradient-background { background: linear-gradient(135deg, #fdd79a 0%, #004a59 100%); } :root .editor-styles-wrapper .has-nightshade-gradient-background { background: linear-gradient(135deg, #330968 0%, #31cdcf 100%); } :root .editor-styles-wrapper .has-midnight-gradient-background { background: linear-gradient(135deg, #020381 0%, #2874fc 100%); } .editor-styles-wrapper { --wp--preset--font-size--normal: 16px; --wp--preset--font-size--huge: 42px; } .editor-styles-wrapper .has-regular-font-size { font-size: 16px; } .editor-styles-wrapper .has-larger-font-size { font-size: 42px; } .editor-styles-wrapper .has-normal-font-size { font-size: var(--wp--preset--font-size--normal); } .editor-styles-wrapper .has-huge-font-size { font-size: var(--wp--preset--font-size--huge); } /** * Editor Normalization Styles * * These are only output in the editor, but styles here are NOT prefixed .editor-styles-wrapper. * This allows us to create normalization styles that are easily overridden by editor styles. */PKj l\5~yy$css/dist/block-library/style-rtl.cssnu[@charset "UTF-8"; /** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ .wp-block-archives-dropdown label { display: block; } .wp-block-audio { margin: 0 0 1em 0; } .wp-block-audio figcaption { margin-top: 0.5em; margin-bottom: 1em; } .wp-block-audio audio { width: 100%; min-width: 300px; } .wp-block-button__link { color: #fff; background-color: #32373c; border-radius: 9999px; box-shadow: none; cursor: pointer; display: inline-block; font-size: 1.125em; padding: calc(0.667em + 2px) calc(1.333em + 2px); text-align: center; text-decoration: none; word-break: break-word; box-sizing: border-box; } .wp-block-button__link:hover, .wp-block-button__link:focus, .wp-block-button__link:active, .wp-block-button__link:visited { color: #fff; } .wp-block-button__link.aligncenter { text-align: center; } .wp-block-button__link.alignright { text-align: right; } .wp-block-buttons > .wp-block-button.has-custom-width { max-width: none; } .wp-block-buttons > .wp-block-button.has-custom-width .wp-block-button__link { width: 100%; } .wp-block-buttons > .wp-block-button.has-custom-font-size .wp-block-button__link { font-size: inherit; } .wp-block-buttons > .wp-block-button.wp-block-button__width-25 { width: calc(25% - (var(--wp--style--block-gap, 0.5em) * 0.75)); } .wp-block-buttons > .wp-block-button.wp-block-button__width-50 { width: calc(50% - (var(--wp--style--block-gap, 0.5em) * 0.5)); } .wp-block-buttons > .wp-block-button.wp-block-button__width-75 { width: calc(75% - (var(--wp--style--block-gap, 0.5em) * 0.25)); } .wp-block-buttons > .wp-block-button.wp-block-button__width-100 { width: 100%; flex-basis: 100%; } .wp-block-buttons.is-vertical > .wp-block-button.wp-block-button__width-25 { width: 25%; } .wp-block-buttons.is-vertical > .wp-block-button.wp-block-button__width-50 { width: 50%; } .wp-block-buttons.is-vertical > .wp-block-button.wp-block-button__width-75 { width: 75%; } .wp-block-button.is-style-squared, .wp-block-button__link.wp-block-button.is-style-squared { border-radius: 0; } .wp-block-button.no-border-radius, .wp-block-button__link.no-border-radius { border-radius: 0 !important; } .is-style-outline > :where(.wp-block-button__link), :where(.wp-block-button__link).is-style-outline { border: 2px solid currentColor; padding: 0.667em 1.333em; } .is-style-outline > .wp-block-button__link:not(.has-text-color), .wp-block-button__link.is-style-outline:not(.has-text-color) { color: currentColor; } .is-style-outline > .wp-block-button__link:not(.has-background), .wp-block-button__link.is-style-outline:not(.has-background) { background-color: transparent; } .wp-block-buttons { /* stylelint-disable indentation */ } .wp-block-buttons.is-vertical { flex-direction: column; } .wp-block-buttons.is-vertical > .wp-block-button:last-child { margin-bottom: 0; } .wp-block-buttons > .wp-block-button { display: inline-block; margin: 0; } .wp-block-buttons.is-content-justification-left { justify-content: flex-start; } .wp-block-buttons.is-content-justification-left.is-vertical { align-items: flex-start; } .wp-block-buttons.is-content-justification-center { justify-content: center; } .wp-block-buttons.is-content-justification-center.is-vertical { align-items: center; } .wp-block-buttons.is-content-justification-right { justify-content: flex-end; } .wp-block-buttons.is-content-justification-right.is-vertical { align-items: flex-end; } .wp-block-buttons.is-content-justification-space-between { justify-content: space-between; } .wp-block-buttons.aligncenter { text-align: center; } .wp-block-buttons:not(.is-content-justification-space-between, .is-content-justification-right, .is-content-justification-left, .is-content-justification-center) .wp-block-button.aligncenter { /* stylelint-enable indentation */ margin-right: auto; margin-left: auto; width: 100%; } .wp-block-button.aligncenter { text-align: center; } .wp-block-calendar { text-align: center; } .wp-block-calendar th, .wp-block-calendar tbody td { padding: 0.25em; border: 1px solid #ddd; } .wp-block-calendar tfoot td { border: none; } .wp-block-calendar table { width: 100%; border-collapse: collapse; } .wp-block-calendar table th { font-weight: 400; background: #ddd; } .wp-block-calendar a { text-decoration: underline; } .wp-block-calendar table tbody, .wp-block-calendar table caption { color: #40464d; } .wp-block-categories.alignleft { margin-right: 2em; } .wp-block-categories.alignright { margin-left: 2em; } .wp-block-code code { display: block; white-space: pre-wrap; overflow-wrap: break-word; } .wp-block-columns { display: flex; margin-bottom: 1.75em; box-sizing: border-box; flex-wrap: wrap; /** * All Columns Alignment */ } @media (min-width: 782px) { .wp-block-columns { flex-wrap: nowrap; } } .wp-block-columns:where(.has-background) { padding: 1.25em 2.375em; } .wp-block-columns.are-vertically-aligned-top { align-items: flex-start; } .wp-block-columns.are-vertically-aligned-center { align-items: center; } .wp-block-columns.are-vertically-aligned-bottom { align-items: flex-end; } @media (max-width: 599px) { .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column { flex-basis: 100% !important; } } @media (min-width: 600px) and (max-width: 781px) { .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column:not(:only-child) { flex-basis: calc(50% - calc(var(--wp--style--block-gap, 2em) / 2)) !important; flex-grow: 0; } .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column:nth-child(even) { margin-right: var(--wp--style--block-gap, 2em); } } @media (min-width: 782px) { .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column { flex-basis: 0; flex-grow: 1; } .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*=flex-basis] { flex-grow: 0; } .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column:not(:first-child) { margin-right: var(--wp--style--block-gap, 2em); } } .wp-block-columns.is-not-stacked-on-mobile { flex-wrap: nowrap; } .wp-block-columns.is-not-stacked-on-mobile > .wp-block-column { flex-basis: 0; flex-grow: 1; } .wp-block-columns.is-not-stacked-on-mobile > .wp-block-column[style*=flex-basis] { flex-grow: 0; } .wp-block-columns.is-not-stacked-on-mobile > .wp-block-column:not(:first-child) { margin-right: var(--wp--style--block-gap, 2em); } .wp-block-column { flex-grow: 1; min-width: 0; word-break: break-word; overflow-wrap: break-word; /** * Individual Column Alignment */ } .wp-block-column.is-vertically-aligned-top { align-self: flex-start; } .wp-block-column.is-vertically-aligned-center { align-self: center; } .wp-block-column.is-vertically-aligned-bottom { align-self: flex-end; } .wp-block-column.is-vertically-aligned-top, .wp-block-column.is-vertically-aligned-center, .wp-block-column.is-vertically-aligned-bottom { width: 100%; } .wp-block-cover-image, .wp-block-cover { position: relative; background-size: cover; background-position: center center; min-height: 430px; width: 100%; display: flex; justify-content: center; align-items: center; padding: 1em; box-sizing: border-box; /** * Set a default background color for has-background-dim _unless_ it includes another * background-color class (e.g. has-green-background-color). The presence of another * background-color class implies that another style will provide the background color * for the overlay. * * See: * - Issue with background color specificity: https://github.com/WordPress/gutenberg/issues/26545 * - Issue with alternative fix: https://github.com/WordPress/gutenberg/issues/26545 */ } .wp-block-cover-image.has-parallax, .wp-block-cover.has-parallax { background-attachment: fixed; } @supports (-webkit-overflow-scrolling: touch) { .wp-block-cover-image.has-parallax, .wp-block-cover.has-parallax { background-attachment: scroll; } } @media (prefers-reduced-motion: reduce) { .wp-block-cover-image.has-parallax, .wp-block-cover.has-parallax { background-attachment: scroll; } } .wp-block-cover-image.is-repeated, .wp-block-cover.is-repeated { background-repeat: repeat; background-size: auto; } .wp-block-cover-image.has-background-dim:not([class*=-background-color]), .wp-block-cover-image .has-background-dim:not([class*=-background-color]), .wp-block-cover.has-background-dim:not([class*=-background-color]), .wp-block-cover .has-background-dim:not([class*=-background-color]) { background-color: #000; } .wp-block-cover-image .has-background-dim.has-background-gradient, .wp-block-cover .has-background-dim.has-background-gradient { background-color: transparent; } .wp-block-cover-image.has-background-dim::before, .wp-block-cover.has-background-dim::before { content: ""; background-color: inherit; } .wp-block-cover-image.has-background-dim:not(.has-background-gradient)::before, .wp-block-cover-image .wp-block-cover__background, .wp-block-cover-image .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim:not(.has-background-gradient)::before, .wp-block-cover .wp-block-cover__background, .wp-block-cover .wp-block-cover__gradient-background { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; opacity: 0.5; } .wp-block-cover-image.has-background-dim.has-background-dim-10:not(.has-background-gradient)::before, .wp-block-cover-image.has-background-dim.has-background-dim-10 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-10:not(.has-background-gradient)::before, .wp-block-cover.has-background-dim.has-background-dim-10 .wp-block-cover__gradient-background { opacity: 0.1; } .wp-block-cover-image.has-background-dim.has-background-dim-20:not(.has-background-gradient)::before, .wp-block-cover-image.has-background-dim.has-background-dim-20 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-20:not(.has-background-gradient)::before, .wp-block-cover.has-background-dim.has-background-dim-20 .wp-block-cover__gradient-background { opacity: 0.2; } .wp-block-cover-image.has-background-dim.has-background-dim-30:not(.has-background-gradient)::before, .wp-block-cover-image.has-background-dim.has-background-dim-30 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-30:not(.has-background-gradient)::before, .wp-block-cover.has-background-dim.has-background-dim-30 .wp-block-cover__gradient-background { opacity: 0.3; } .wp-block-cover-image.has-background-dim.has-background-dim-40:not(.has-background-gradient)::before, .wp-block-cover-image.has-background-dim.has-background-dim-40 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-40:not(.has-background-gradient)::before, .wp-block-cover.has-background-dim.has-background-dim-40 .wp-block-cover__gradient-background { opacity: 0.4; } .wp-block-cover-image.has-background-dim.has-background-dim-50:not(.has-background-gradient)::before, .wp-block-cover-image.has-background-dim.has-background-dim-50 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-50:not(.has-background-gradient)::before, .wp-block-cover.has-background-dim.has-background-dim-50 .wp-block-cover__gradient-background { opacity: 0.5; } .wp-block-cover-image.has-background-dim.has-background-dim-60:not(.has-background-gradient)::before, .wp-block-cover-image.has-background-dim.has-background-dim-60 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-60:not(.has-background-gradient)::before, .wp-block-cover.has-background-dim.has-background-dim-60 .wp-block-cover__gradient-background { opacity: 0.6; } .wp-block-cover-image.has-background-dim.has-background-dim-70:not(.has-background-gradient)::before, .wp-block-cover-image.has-background-dim.has-background-dim-70 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-70:not(.has-background-gradient)::before, .wp-block-cover.has-background-dim.has-background-dim-70 .wp-block-cover__gradient-background { opacity: 0.7; } .wp-block-cover-image.has-background-dim.has-background-dim-80:not(.has-background-gradient)::before, .wp-block-cover-image.has-background-dim.has-background-dim-80 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-80:not(.has-background-gradient)::before, .wp-block-cover.has-background-dim.has-background-dim-80 .wp-block-cover__gradient-background { opacity: 0.8; } .wp-block-cover-image.has-background-dim.has-background-dim-90:not(.has-background-gradient)::before, .wp-block-cover-image.has-background-dim.has-background-dim-90 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-90:not(.has-background-gradient)::before, .wp-block-cover.has-background-dim.has-background-dim-90 .wp-block-cover__gradient-background { opacity: 0.9; } .wp-block-cover-image.has-background-dim.has-background-dim-100:not(.has-background-gradient)::before, .wp-block-cover-image.has-background-dim.has-background-dim-100 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-100:not(.has-background-gradient)::before, .wp-block-cover.has-background-dim.has-background-dim-100 .wp-block-cover__gradient-background { opacity: 1; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-0, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-0 { opacity: 0; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-10, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-10 { opacity: 0.1; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-20, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-20 { opacity: 0.2; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-30, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-30 { opacity: 0.3; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-40, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-40 { opacity: 0.4; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-50, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-50 { opacity: 0.5; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-60, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-60 { opacity: 0.6; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-70, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-70 { opacity: 0.7; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-80, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-80 { opacity: 0.8; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-90, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-90 { opacity: 0.9; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-100, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-100 { opacity: 1; } .wp-block-cover-image.alignleft, .wp-block-cover-image.alignright, .wp-block-cover.alignleft, .wp-block-cover.alignright { max-width: 420px; width: 100%; } .wp-block-cover-image::after, .wp-block-cover::after { display: block; content: ""; font-size: 0; min-height: inherit; } @supports (position: sticky) { .wp-block-cover-image::after, .wp-block-cover::after { content: none; } } .wp-block-cover-image.aligncenter, .wp-block-cover-image.alignleft, .wp-block-cover-image.alignright, .wp-block-cover.aligncenter, .wp-block-cover.alignleft, .wp-block-cover.alignright { display: flex; } .wp-block-cover-image .wp-block-cover__inner-container, .wp-block-cover .wp-block-cover__inner-container { width: 100%; z-index: 1; color: #fff; } .wp-block-cover-image.is-light .wp-block-cover__inner-container, .wp-block-cover.is-light .wp-block-cover__inner-container { color: #000; } .wp-block-cover-image p:not(.has-text-color), .wp-block-cover-image h1:not(.has-text-color), .wp-block-cover-image h2:not(.has-text-color), .wp-block-cover-image h3:not(.has-text-color), .wp-block-cover-image h4:not(.has-text-color), .wp-block-cover-image h5:not(.has-text-color), .wp-block-cover-image h6:not(.has-text-color), .wp-block-cover p:not(.has-text-color), .wp-block-cover h1:not(.has-text-color), .wp-block-cover h2:not(.has-text-color), .wp-block-cover h3:not(.has-text-color), .wp-block-cover h4:not(.has-text-color), .wp-block-cover h5:not(.has-text-color), .wp-block-cover h6:not(.has-text-color) { color: inherit; } .wp-block-cover-image.is-position-top-left, .wp-block-cover.is-position-top-left { align-items: flex-start; justify-content: flex-start; } .wp-block-cover-image.is-position-top-center, .wp-block-cover.is-position-top-center { align-items: flex-start; justify-content: center; } .wp-block-cover-image.is-position-top-right, .wp-block-cover.is-position-top-right { align-items: flex-start; justify-content: flex-end; } .wp-block-cover-image.is-position-center-left, .wp-block-cover.is-position-center-left { align-items: center; justify-content: flex-start; } .wp-block-cover-image.is-position-center-center, .wp-block-cover.is-position-center-center { align-items: center; justify-content: center; } .wp-block-cover-image.is-position-center-right, .wp-block-cover.is-position-center-right { align-items: center; justify-content: flex-end; } .wp-block-cover-image.is-position-bottom-left, .wp-block-cover.is-position-bottom-left { align-items: flex-end; justify-content: flex-start; } .wp-block-cover-image.is-position-bottom-center, .wp-block-cover.is-position-bottom-center { align-items: flex-end; justify-content: center; } .wp-block-cover-image.is-position-bottom-right, .wp-block-cover.is-position-bottom-right { align-items: flex-end; justify-content: flex-end; } .wp-block-cover-image.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container, .wp-block-cover.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container { margin: 0; width: auto; } .wp-block-cover-image img.wp-block-cover__image-background, .wp-block-cover-image video.wp-block-cover__video-background, .wp-block-cover img.wp-block-cover__image-background, .wp-block-cover video.wp-block-cover__video-background { position: absolute; top: 0; right: 0; left: 0; bottom: 0; margin: 0; padding: 0; width: 100%; height: 100%; max-width: none; max-height: none; -o-object-fit: cover; object-fit: cover; outline: none; border: none; box-shadow: none; } .wp-block-cover__video-background { z-index: 0; } .wp-block-cover__image-background { z-index: 0; } section.wp-block-cover-image h2, .wp-block-cover-image-text, .wp-block-cover-text { color: #fff; } section.wp-block-cover-image h2 a, section.wp-block-cover-image h2 a:hover, section.wp-block-cover-image h2 a:focus, section.wp-block-cover-image h2 a:active, .wp-block-cover-image-text a, .wp-block-cover-image-text a:hover, .wp-block-cover-image-text a:focus, .wp-block-cover-image-text a:active, .wp-block-cover-text a, .wp-block-cover-text a:hover, .wp-block-cover-text a:focus, .wp-block-cover-text a:active { color: #fff; } .wp-block-cover-image .wp-block-cover.has-left-content { justify-content: flex-start; } .wp-block-cover-image .wp-block-cover.has-right-content { justify-content: flex-end; } section.wp-block-cover-image.has-left-content > h2, .wp-block-cover-image.has-left-content .wp-block-cover-image-text, .wp-block-cover.has-left-content .wp-block-cover-text { margin-right: 0; text-align: right; } section.wp-block-cover-image.has-right-content > h2, .wp-block-cover-image.has-right-content .wp-block-cover-image-text, .wp-block-cover.has-right-content .wp-block-cover-text { margin-left: 0; text-align: left; } section.wp-block-cover-image > h2, .wp-block-cover-image .wp-block-cover-image-text, .wp-block-cover .wp-block-cover-text { font-size: 2em; line-height: 1.25; z-index: 1; margin-bottom: 0; max-width: 840px; padding: 0.44em; text-align: center; } .wp-block[data-align=left] > [data-type="core/embed"], .wp-block[data-align=right] > [data-type="core/embed"], .wp-block-embed.alignleft, .wp-block-embed.alignright { max-width: 360px; width: 100%; } .wp-block[data-align=left] > [data-type="core/embed"] .wp-block-embed__wrapper, .wp-block[data-align=right] > [data-type="core/embed"] .wp-block-embed__wrapper, .wp-block-embed.alignleft .wp-block-embed__wrapper, .wp-block-embed.alignright .wp-block-embed__wrapper { min-width: 280px; } .wp-block-cover .wp-block-embed { min-width: 320px; min-height: 240px; } .wp-block-embed { margin: 0 0 1em 0; overflow-wrap: break-word; } .wp-block-embed figcaption { margin-top: 0.5em; margin-bottom: 1em; } .wp-block-embed iframe { max-width: 100%; } .wp-block-embed__wrapper { position: relative; } .wp-embed-responsive .wp-has-aspect-ratio .wp-block-embed__wrapper::before { content: ""; display: block; padding-top: 50%; } .wp-embed-responsive .wp-has-aspect-ratio iframe { position: absolute; top: 0; left: 0; bottom: 0; right: 0; height: 100%; width: 100%; } .wp-embed-responsive .wp-embed-aspect-21-9 .wp-block-embed__wrapper::before { padding-top: 42.85%; } .wp-embed-responsive .wp-embed-aspect-18-9 .wp-block-embed__wrapper::before { padding-top: 50%; } .wp-embed-responsive .wp-embed-aspect-16-9 .wp-block-embed__wrapper::before { padding-top: 56.25%; } .wp-embed-responsive .wp-embed-aspect-4-3 .wp-block-embed__wrapper::before { padding-top: 75%; } .wp-embed-responsive .wp-embed-aspect-1-1 .wp-block-embed__wrapper::before { padding-top: 100%; } .wp-embed-responsive .wp-embed-aspect-9-16 .wp-block-embed__wrapper::before { padding-top: 177.77%; } .wp-embed-responsive .wp-embed-aspect-1-2 .wp-block-embed__wrapper::before { padding-top: 200%; } .wp-block-file { margin-bottom: 1.5em; } .wp-block-file.aligncenter { text-align: center; } .wp-block-file.alignright { text-align: right; } .wp-block-file .wp-block-file__embed { margin-bottom: 1em; } .wp-block-file .wp-block-file__button { background: #32373c; border-radius: 2em; color: #fff; font-size: 0.8em; padding: 0.5em 1em; } .wp-block-file a.wp-block-file__button { text-decoration: none; } .wp-block-file a.wp-block-file__button:hover, .wp-block-file a.wp-block-file__button:visited, .wp-block-file a.wp-block-file__button:focus, .wp-block-file a.wp-block-file__button:active { box-shadow: none; color: #fff; opacity: 0.85; text-decoration: none; } .wp-block-file * + .wp-block-file__button { margin-right: 0.75em; } .wp-block-gallery, .blocks-gallery-grid { display: flex; flex-wrap: wrap; list-style-type: none; padding: 0; margin: 0; } .wp-block-gallery .blocks-gallery-image, .wp-block-gallery .blocks-gallery-item, .blocks-gallery-grid .blocks-gallery-image, .blocks-gallery-grid .blocks-gallery-item { margin: 0 0 1em 1em; display: flex; flex-grow: 1; flex-direction: column; justify-content: center; position: relative; width: calc(50% - 1em); } .wp-block-gallery .blocks-gallery-image:nth-of-type(even), .wp-block-gallery .blocks-gallery-item:nth-of-type(even), .blocks-gallery-grid .blocks-gallery-image:nth-of-type(even), .blocks-gallery-grid .blocks-gallery-item:nth-of-type(even) { margin-left: 0; } .wp-block-gallery .blocks-gallery-image figure, .wp-block-gallery .blocks-gallery-item figure, .blocks-gallery-grid .blocks-gallery-image figure, .blocks-gallery-grid .blocks-gallery-item figure { margin: 0; height: 100%; display: flex; align-items: flex-end; justify-content: flex-start; } .wp-block-gallery .blocks-gallery-image img, .wp-block-gallery .blocks-gallery-item img, .blocks-gallery-grid .blocks-gallery-image img, .blocks-gallery-grid .blocks-gallery-item img { display: block; max-width: 100%; height: auto; width: auto; } .wp-block-gallery .blocks-gallery-image figcaption, .wp-block-gallery .blocks-gallery-item figcaption, .blocks-gallery-grid .blocks-gallery-image figcaption, .blocks-gallery-grid .blocks-gallery-item figcaption { position: absolute; bottom: 0; width: 100%; max-height: 100%; overflow: auto; padding: 3em 0.77em 0.7em; color: #fff; text-align: center; font-size: 0.8em; background: linear-gradient(0deg, rgba(0, 0, 0, 0.7) 0, rgba(0, 0, 0, 0.3) 70%, transparent); box-sizing: border-box; margin: 0; z-index: 2; } .wp-block-gallery .blocks-gallery-image figcaption img, .wp-block-gallery .blocks-gallery-item figcaption img, .blocks-gallery-grid .blocks-gallery-image figcaption img, .blocks-gallery-grid .blocks-gallery-item figcaption img { display: inline; } .wp-block-gallery figcaption, .blocks-gallery-grid figcaption { flex-grow: 1; } .wp-block-gallery.is-cropped .blocks-gallery-image a, .wp-block-gallery.is-cropped .blocks-gallery-image img, .wp-block-gallery.is-cropped .blocks-gallery-item a, .wp-block-gallery.is-cropped .blocks-gallery-item img, .blocks-gallery-grid.is-cropped .blocks-gallery-image a, .blocks-gallery-grid.is-cropped .blocks-gallery-image img, .blocks-gallery-grid.is-cropped .blocks-gallery-item a, .blocks-gallery-grid.is-cropped .blocks-gallery-item img { width: 100%; height: 100%; flex: 1; -o-object-fit: cover; object-fit: cover; } .wp-block-gallery.columns-1 .blocks-gallery-image, .wp-block-gallery.columns-1 .blocks-gallery-item, .blocks-gallery-grid.columns-1 .blocks-gallery-image, .blocks-gallery-grid.columns-1 .blocks-gallery-item { width: 100%; margin-left: 0; } @media (min-width: 600px) { .wp-block-gallery.columns-3 .blocks-gallery-image, .wp-block-gallery.columns-3 .blocks-gallery-item, .blocks-gallery-grid.columns-3 .blocks-gallery-image, .blocks-gallery-grid.columns-3 .blocks-gallery-item { width: calc(33.3333333333% - 0.6666666667em); margin-left: 1em; } .wp-block-gallery.columns-4 .blocks-gallery-image, .wp-block-gallery.columns-4 .blocks-gallery-item, .blocks-gallery-grid.columns-4 .blocks-gallery-image, .blocks-gallery-grid.columns-4 .blocks-gallery-item { width: calc(25% - 0.75em); margin-left: 1em; } .wp-block-gallery.columns-5 .blocks-gallery-image, .wp-block-gallery.columns-5 .blocks-gallery-item, .blocks-gallery-grid.columns-5 .blocks-gallery-image, .blocks-gallery-grid.columns-5 .blocks-gallery-item { width: calc(20% - 0.8em); margin-left: 1em; } .wp-block-gallery.columns-6 .blocks-gallery-image, .wp-block-gallery.columns-6 .blocks-gallery-item, .blocks-gallery-grid.columns-6 .blocks-gallery-image, .blocks-gallery-grid.columns-6 .blocks-gallery-item { width: calc(16.6666666667% - 0.8333333333em); margin-left: 1em; } .wp-block-gallery.columns-7 .blocks-gallery-image, .wp-block-gallery.columns-7 .blocks-gallery-item, .blocks-gallery-grid.columns-7 .blocks-gallery-image, .blocks-gallery-grid.columns-7 .blocks-gallery-item { width: calc(14.2857142857% - 0.8571428571em); margin-left: 1em; } .wp-block-gallery.columns-8 .blocks-gallery-image, .wp-block-gallery.columns-8 .blocks-gallery-item, .blocks-gallery-grid.columns-8 .blocks-gallery-image, .blocks-gallery-grid.columns-8 .blocks-gallery-item { width: calc(12.5% - 0.875em); margin-left: 1em; } .wp-block-gallery.columns-1 .blocks-gallery-image:nth-of-type(1n), .wp-block-gallery.columns-1 .blocks-gallery-item:nth-of-type(1n), .blocks-gallery-grid.columns-1 .blocks-gallery-image:nth-of-type(1n), .blocks-gallery-grid.columns-1 .blocks-gallery-item:nth-of-type(1n) { margin-left: 0; } .wp-block-gallery.columns-2 .blocks-gallery-image:nth-of-type(2n), .wp-block-gallery.columns-2 .blocks-gallery-item:nth-of-type(2n), .blocks-gallery-grid.columns-2 .blocks-gallery-image:nth-of-type(2n), .blocks-gallery-grid.columns-2 .blocks-gallery-item:nth-of-type(2n) { margin-left: 0; } .wp-block-gallery.columns-3 .blocks-gallery-image:nth-of-type(3n), .wp-block-gallery.columns-3 .blocks-gallery-item:nth-of-type(3n), .blocks-gallery-grid.columns-3 .blocks-gallery-image:nth-of-type(3n), .blocks-gallery-grid.columns-3 .blocks-gallery-item:nth-of-type(3n) { margin-left: 0; } .wp-block-gallery.columns-4 .blocks-gallery-image:nth-of-type(4n), .wp-block-gallery.columns-4 .blocks-gallery-item:nth-of-type(4n), .blocks-gallery-grid.columns-4 .blocks-gallery-image:nth-of-type(4n), .blocks-gallery-grid.columns-4 .blocks-gallery-item:nth-of-type(4n) { margin-left: 0; } .wp-block-gallery.columns-5 .blocks-gallery-image:nth-of-type(5n), .wp-block-gallery.columns-5 .blocks-gallery-item:nth-of-type(5n), .blocks-gallery-grid.columns-5 .blocks-gallery-image:nth-of-type(5n), .blocks-gallery-grid.columns-5 .blocks-gallery-item:nth-of-type(5n) { margin-left: 0; } .wp-block-gallery.columns-6 .blocks-gallery-image:nth-of-type(6n), .wp-block-gallery.columns-6 .blocks-gallery-item:nth-of-type(6n), .blocks-gallery-grid.columns-6 .blocks-gallery-image:nth-of-type(6n), .blocks-gallery-grid.columns-6 .blocks-gallery-item:nth-of-type(6n) { margin-left: 0; } .wp-block-gallery.columns-7 .blocks-gallery-image:nth-of-type(7n), .wp-block-gallery.columns-7 .blocks-gallery-item:nth-of-type(7n), .blocks-gallery-grid.columns-7 .blocks-gallery-image:nth-of-type(7n), .blocks-gallery-grid.columns-7 .blocks-gallery-item:nth-of-type(7n) { margin-left: 0; } .wp-block-gallery.columns-8 .blocks-gallery-image:nth-of-type(8n), .wp-block-gallery.columns-8 .blocks-gallery-item:nth-of-type(8n), .blocks-gallery-grid.columns-8 .blocks-gallery-image:nth-of-type(8n), .blocks-gallery-grid.columns-8 .blocks-gallery-item:nth-of-type(8n) { margin-left: 0; } } .wp-block-gallery .blocks-gallery-image:last-child, .wp-block-gallery .blocks-gallery-item:last-child, .blocks-gallery-grid .blocks-gallery-image:last-child, .blocks-gallery-grid .blocks-gallery-item:last-child { margin-left: 0; } .wp-block-gallery.alignleft, .wp-block-gallery.alignright, .blocks-gallery-grid.alignleft, .blocks-gallery-grid.alignright { max-width: 420px; width: 100%; } .wp-block-gallery.aligncenter .blocks-gallery-item figure, .blocks-gallery-grid.aligncenter .blocks-gallery-item figure { justify-content: center; } .wp-block-gallery:not(.is-cropped) .blocks-gallery-item { align-self: flex-start; } .wp-block-gallery.has-nested-images { display: flex; flex-wrap: wrap; } .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) { margin: 0 0 var(--gallery-block--gutter-size, 16px) var(--gallery-block--gutter-size, 16px); width: calc(50% - (var(--gallery-block--gutter-size, 16px) / 2)); } .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image):last-of-type:not(#individual-image) { margin-left: 0; } .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image):nth-of-type(even) { margin-left: 0; } .wp-block-gallery.has-nested-images figure.wp-block-image { display: flex; flex-grow: 1; justify-content: center; position: relative; margin-top: auto; margin-bottom: auto; flex-direction: column; max-width: 100%; } .wp-block-gallery.has-nested-images figure.wp-block-image > div, .wp-block-gallery.has-nested-images figure.wp-block-image > a { margin: 0; flex-direction: column; flex-grow: 1; } .wp-block-gallery.has-nested-images figure.wp-block-image img { display: block; height: auto; max-width: 100% !important; width: auto; } .wp-block-gallery.has-nested-images figure.wp-block-image figcaption { background: linear-gradient(0deg, rgba(0, 0, 0, 0.7) 0, rgba(0, 0, 0, 0.3) 70%, transparent); bottom: 0; color: #fff; font-size: 13px; right: 0; margin-bottom: 0; max-height: 60%; overflow: auto; padding: 0 8px 8px; position: absolute; text-align: center; width: 100%; box-sizing: border-box; } .wp-block-gallery.has-nested-images figure.wp-block-image figcaption img { display: inline; } .wp-block-gallery.has-nested-images figure.wp-block-image.is-style-rounded > div, .wp-block-gallery.has-nested-images figure.wp-block-image.is-style-rounded > a { flex: 1 1 auto; } .wp-block-gallery.has-nested-images figure.wp-block-image.is-style-rounded figcaption { flex: initial; background: none; color: inherit; margin: 0; padding: 10px 10px 9px; position: relative; } .wp-block-gallery.has-nested-images figcaption { flex-grow: 1; flex-basis: 100%; text-align: center; } .wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image) { margin-top: 0; margin-bottom: auto; } .wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image) img { margin-bottom: var(--gallery-block--gutter-size, 16px); } .wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image) figcaption { bottom: var(--gallery-block--gutter-size, 16px); } .wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) { align-self: inherit; } .wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) > div:not(.components-drop-zone), .wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) > a { display: flex; } .wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) a, .wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) img { width: 100%; flex: 1 0 0%; height: 100%; -o-object-fit: cover; object-fit: cover; } .wp-block-gallery.has-nested-images.columns-1 figure.wp-block-image:not(#individual-image) { margin-left: 0; width: 100%; } @media (min-width: 600px) { .wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image) { margin-left: var(--gallery-block--gutter-size, 16px); width: calc(33.3333333333% - (var(--gallery-block--gutter-size, 16px) * 0.6666666667)); } .wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image).is-dragging ~ figure.wp-block-image:not(#individual-image) { margin-left: var(--gallery-block--gutter-size, 16px); } .wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image) { margin-left: var(--gallery-block--gutter-size, 16px); width: calc(25% - (var(--gallery-block--gutter-size, 16px) * 0.75)); } .wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image).is-dragging ~ figure.wp-block-image:not(#individual-image) { margin-left: var(--gallery-block--gutter-size, 16px); } .wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image:not(#individual-image) { margin-left: var(--gallery-block--gutter-size, 16px); width: calc(20% - (var(--gallery-block--gutter-size, 16px) * 0.8)); } .wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image:not(#individual-image).is-dragging ~ figure.wp-block-image:not(#individual-image) { margin-left: var(--gallery-block--gutter-size, 16px); } .wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#individual-image) { margin-left: var(--gallery-block--gutter-size, 16px); width: calc(16.6666666667% - (var(--gallery-block--gutter-size, 16px) * 0.8333333333)); } .wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#individual-image).is-dragging ~ figure.wp-block-image:not(#individual-image) { margin-left: var(--gallery-block--gutter-size, 16px); } .wp-block-gallery.has-nested-images.columns-7 figure.wp-block-image:not(#individual-image) { margin-left: var(--gallery-block--gutter-size, 16px); width: calc(14.2857142857% - (var(--gallery-block--gutter-size, 16px) * 0.8571428571)); } .wp-block-gallery.has-nested-images.columns-7 figure.wp-block-image:not(#individual-image).is-dragging ~ figure.wp-block-image:not(#individual-image) { margin-left: var(--gallery-block--gutter-size, 16px); } .wp-block-gallery.has-nested-images.columns-8 figure.wp-block-image:not(#individual-image) { margin-left: var(--gallery-block--gutter-size, 16px); width: calc(12.5% - (var(--gallery-block--gutter-size, 16px) * 0.875)); } .wp-block-gallery.has-nested-images.columns-8 figure.wp-block-image:not(#individual-image).is-dragging ~ figure.wp-block-image:not(#individual-image) { margin-left: var(--gallery-block--gutter-size, 16px); } .wp-block-gallery.has-nested-images.columns-1 figure.wp-block-image:not(#individual-image):nth-of-type(1n) { margin-left: 0; } .wp-block-gallery.has-nested-images.columns-2 figure.wp-block-image:not(#individual-image):nth-of-type(2n) { margin-left: 0; } .wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image):nth-of-type(3n) { margin-left: 0; } .wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image):nth-of-type(4n) { margin-left: 0; } .wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image:not(#individual-image):nth-of-type(5n) { margin-left: 0; } .wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#individual-image):nth-of-type(6n) { margin-left: 0; } .wp-block-gallery.has-nested-images.columns-7 figure.wp-block-image:not(#individual-image):nth-of-type(7n) { margin-left: 0; } .wp-block-gallery.has-nested-images.columns-8 figure.wp-block-image:not(#individual-image):nth-of-type(8n) { margin-left: 0; } .wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image) { margin-left: var(--gallery-block--gutter-size, 16px); width: calc(33.33% - (var(--gallery-block--gutter-size, 16px) * 0.6666666667)); } .wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):nth-of-type(3n+3) { margin-left: 0; } .wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(2), .wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(2) ~ figure.wp-block-image:not(#individual-image) { width: calc(50% - (var(--gallery-block--gutter-size, 16px) * 0.5)); } .wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(1) { width: 100%; } } .wp-block-gallery.has-nested-images.alignleft, .wp-block-gallery.has-nested-images.alignright { max-width: 420px; width: 100%; } .wp-block-gallery.has-nested-images.aligncenter { justify-content: center; } .wp-block-group { box-sizing: border-box; } h1, h2, h3, h4, h5, h6 { overflow-wrap: break-word; } h1.has-background, h2.has-background, h3.has-background, h4.has-background, h5.has-background, h6.has-background { padding: 1.25em 2.375em; } .wp-block-image { margin: 0 0 1em 0; } .wp-block-image img { height: auto; max-width: 100%; vertical-align: bottom; } .wp-block-image:not(.is-style-rounded) > a, .wp-block-image:not(.is-style-rounded) img { border-radius: inherit; } .wp-block-image.aligncenter { text-align: center; } .wp-block-image.alignfull img, .wp-block-image.alignwide img { height: auto; width: 100%; } .wp-block-image .alignleft, .wp-block-image .alignright, .wp-block-image .aligncenter { display: table; } .wp-block-image .alignleft > figcaption, .wp-block-image .alignright > figcaption, .wp-block-image .aligncenter > figcaption { display: table-caption; caption-side: bottom; } .wp-block-image .alignleft { float: left; margin-left: 0; margin-left: 1em; margin-top: 0.5em; margin-bottom: 0.5em; } .wp-block-image .alignright { float: right; margin-right: 0; margin-right: 1em; margin-top: 0.5em; margin-bottom: 0.5em; } .wp-block-image .aligncenter { margin-right: auto; margin-left: auto; } .wp-block-image figcaption { margin-top: 0.5em; margin-bottom: 1em; } .wp-block-image.is-style-rounded img { border-radius: 9999px; } .wp-block-image.is-style-circle-mask img { border-radius: 9999px; } @supports ((-webkit-mask-image: none) or (mask-image: none)) or (-webkit-mask-image: none) { .wp-block-image.is-style-circle-mask img { /* stylelint-disable */ -webkit-mask-image: url('data:image/svg+xml;utf8,'); mask-image: url('data:image/svg+xml;utf8,'); /* stylelint-enable */ mask-mode: alpha; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; border-radius: 0; } } .wp-block-image figure { margin: 0; } ol.wp-block-latest-comments { margin-right: 0; } .wp-block-latest-comments .wp-block-latest-comments { padding-right: 0; } .wp-block-latest-comments__comment { line-height: 1.1; list-style: none; margin-bottom: 1em; } .has-avatars .wp-block-latest-comments__comment { min-height: 2.25em; list-style: none; } .has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-meta, .has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-excerpt { margin-right: 3.25em; } .has-dates .wp-block-latest-comments__comment, .has-excerpts .wp-block-latest-comments__comment { line-height: 1.5; } .wp-block-latest-comments__comment-excerpt p { font-size: 0.875em; line-height: 1.8; margin: 0.36em 0 1.4em; } .wp-block-latest-comments__comment-date { display: block; font-size: 0.75em; } .wp-block-latest-comments .avatar, .wp-block-latest-comments__comment-avatar { border-radius: 1.5em; display: block; float: right; height: 2.5em; margin-left: 0.75em; width: 2.5em; } .wp-block-latest-posts.alignleft { margin-right: 2em; } .wp-block-latest-posts.alignright { margin-left: 2em; } .wp-block-latest-posts.wp-block-latest-posts__list { list-style: none; padding-right: 0; } .wp-block-latest-posts.wp-block-latest-posts__list li { clear: both; } .wp-block-latest-posts.is-grid { display: flex; flex-wrap: wrap; padding: 0; } .wp-block-latest-posts.is-grid li { margin: 0 0 1.25em 1.25em; width: 100%; } @media (min-width: 600px) { .wp-block-latest-posts.columns-2 li { width: calc((100% / 2) - 1.25em + (1.25em / 2)); } .wp-block-latest-posts.columns-2 li:nth-child(2n) { margin-left: 0; } .wp-block-latest-posts.columns-3 li { width: calc((100% / 3) - 1.25em + (1.25em / 3)); } .wp-block-latest-posts.columns-3 li:nth-child(3n) { margin-left: 0; } .wp-block-latest-posts.columns-4 li { width: calc((100% / 4) - 1.25em + (1.25em / 4)); } .wp-block-latest-posts.columns-4 li:nth-child(4n) { margin-left: 0; } .wp-block-latest-posts.columns-5 li { width: calc((100% / 5) - 1.25em + (1.25em / 5)); } .wp-block-latest-posts.columns-5 li:nth-child(5n) { margin-left: 0; } .wp-block-latest-posts.columns-6 li { width: calc((100% / 6) - 1.25em + (1.25em / 6)); } .wp-block-latest-posts.columns-6 li:nth-child(6n) { margin-left: 0; } } .wp-block-latest-posts__post-date, .wp-block-latest-posts__post-author { display: block; font-size: 0.8125em; } .wp-block-latest-posts__post-excerpt { margin-top: 0.5em; margin-bottom: 1em; } .wp-block-latest-posts__featured-image a { display: inline-block; } .wp-block-latest-posts__featured-image img { height: auto; width: auto; max-width: 100%; } .wp-block-latest-posts__featured-image.alignleft { margin-right: 1em; } .wp-block-latest-posts__featured-image.alignright { margin-left: 1em; } .wp-block-latest-posts__featured-image.aligncenter { margin-bottom: 1em; text-align: center; } .block-editor-image-alignment-control__row .components-base-control__field { display: flex; justify-content: space-between; align-items: center; } .block-editor-image-alignment-control__row .components-base-control__field .components-base-control__label { margin-bottom: 0; } ol, ul { overflow-wrap: break-word; } ol.has-background, ul.has-background { padding: 1.25em 2.375em; } .wp-block-media-text { direction: ltr; display: grid; grid-template-columns: 50% 1fr; grid-template-rows: auto; } .wp-block-media-text.has-media-on-the-right { grid-template-columns: 1fr 50%; } .wp-block-media-text.is-vertically-aligned-top .wp-block-media-text__content, .wp-block-media-text.is-vertically-aligned-top .wp-block-media-text__media { align-self: start; } .wp-block-media-text .wp-block-media-text__content, .wp-block-media-text .wp-block-media-text__media, .wp-block-media-text.is-vertically-aligned-center .wp-block-media-text__content, .wp-block-media-text.is-vertically-aligned-center .wp-block-media-text__media { align-self: center; } .wp-block-media-text.is-vertically-aligned-bottom .wp-block-media-text__content, .wp-block-media-text.is-vertically-aligned-bottom .wp-block-media-text__media { align-self: end; } .wp-block-media-text .wp-block-media-text__media { grid-column: 1; grid-row: 1; margin: 0; } .wp-block-media-text .wp-block-media-text__content { direction: rtl; grid-column: 2; grid-row: 1; padding: 0 8% 0 8%; word-break: break-word; } .wp-block-media-text.has-media-on-the-right .wp-block-media-text__media { grid-column: 2; grid-row: 1; } .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content { grid-column: 1; grid-row: 1; } .wp-block-media-text__media img, .wp-block-media-text__media video { height: auto; max-width: unset; width: 100%; vertical-align: middle; } .wp-block-media-text.is-image-fill .wp-block-media-text__media { height: 100%; min-height: 250px; background-size: cover; } .wp-block-media-text.is-image-fill .wp-block-media-text__media > a { display: block; height: 100%; } .wp-block-media-text.is-image-fill .wp-block-media-text__media img { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; } /* * Here we here not able to use a mobile first CSS approach. * Custom widths are set using inline styles, and on mobile, * we need 100% width, so we use important to overwrite the inline style. * If the style were set on mobile first, on desktop styles, * we would have no way of setting the style again to the inline style. */ @media (max-width: 600px) { .wp-block-media-text.is-stacked-on-mobile { grid-template-columns: 100% !important; } .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media { grid-column: 1; grid-row: 1; } .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content { grid-column: 1; grid-row: 2; } } .wp-block-navigation { position: relative; --navigation-layout-justification-setting: flex-start; --navigation-layout-direction: row; --navigation-layout-wrap: wrap; --navigation-layout-justify: flex-start; --navigation-layout-align: center; } .wp-block-navigation ul { margin-top: 0; margin-bottom: 0; margin-right: 0; padding-right: 0; } .wp-block-navigation ul, .wp-block-navigation ul li { list-style: none; padding: 0; } .wp-block-navigation .wp-block-navigation-item { display: flex; align-items: center; position: relative; } .wp-block-navigation .wp-block-navigation-item .wp-block-navigation__submenu-container:empty { display: none; } .wp-block-navigation .wp-block-navigation-item__content { color: inherit; display: block; padding: 0; } .wp-block-navigation[style*=text-decoration] .wp-block-navigation-item, .wp-block-navigation[style*=text-decoration] .wp-block-navigation__submenu-container { text-decoration: inherit; } .wp-block-navigation[style*=text-decoration] a { text-decoration: inherit; } .wp-block-navigation[style*=text-decoration] a:focus, .wp-block-navigation[style*=text-decoration] a:active { text-decoration: inherit; } .wp-block-navigation:not([style*=text-decoration]) a { text-decoration: none; } .wp-block-navigation:not([style*=text-decoration]) a:focus, .wp-block-navigation:not([style*=text-decoration]) a:active { text-decoration: none; } .wp-block-navigation .wp-block-navigation__submenu-icon { align-self: center; line-height: 0; display: inline-block; vertical-align: middle; font-size: inherit; padding: 0; background-color: inherit; color: currentColor; border: none; margin-right: 0.25em; width: 0.6em; height: 0.6em; } .wp-block-navigation .wp-block-navigation__submenu-icon svg { display: inline-block; stroke: currentColor; width: inherit; height: inherit; } .wp-block-navigation.is-vertical { --navigation-layout-direction: column; --navigation-layout-justify: initial; --navigation-layout-align: flex-start; } .wp-block-navigation.no-wrap { --navigation-layout-wrap: nowrap; } .wp-block-navigation.items-justified-center { --navigation-layout-justification-setting: center; --navigation-layout-justify: center; } .wp-block-navigation.items-justified-center.is-vertical { --navigation-layout-align: center; } .wp-block-navigation.items-justified-right { --navigation-layout-justification-setting: flex-end; --navigation-layout-justify: flex-end; } .wp-block-navigation.items-justified-right.is-vertical { --navigation-layout-align: flex-end; } .wp-block-navigation.items-justified-space-between { --navigation-layout-justification-setting: space-between; --navigation-layout-justify: space-between; } .wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) { background-color: inherit; color: inherit; position: absolute; z-index: 2; display: flex; flex-direction: column; align-items: normal; opacity: 0; transition: opacity 0.1s linear; visibility: hidden; width: 0; height: 0; overflow: hidden; right: -1px; top: 100%; } .wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) > .wp-block-navigation-item > .wp-block-navigation-item__content { display: flex; flex-grow: 1; } .wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) > .wp-block-navigation-item > .wp-block-navigation-item__content .wp-block-navigation__submenu-icon { margin-left: 0; margin-right: auto; } .wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) .wp-block-navigation-item__content { margin: 0; } @media (min-width: 782px) { .wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) .wp-block-navigation__submenu-container { right: 100%; top: -1px; } .wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) .wp-block-navigation__submenu-container::before { content: ""; position: absolute; left: 100%; height: 100%; display: block; width: 0.5em; background: transparent; } .wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) .wp-block-navigation__submenu-icon svg { transform: rotate(90deg); } } .wp-block-navigation .has-child:where(:not(.open-on-click)):hover > .wp-block-navigation__submenu-container { visibility: visible; overflow: visible; opacity: 1; width: auto; height: auto; min-width: 200px; } .wp-block-navigation .has-child:where(:not(.open-on-click):not(.open-on-hover-click)):focus-within > .wp-block-navigation__submenu-container { visibility: visible; overflow: visible; opacity: 1; width: auto; height: auto; min-width: 200px; } .wp-block-navigation .has-child .wp-block-navigation-submenu__toggle[aria-expanded=true] + .wp-block-navigation__submenu-container { visibility: visible; overflow: visible; opacity: 1; width: auto; height: auto; min-width: 200px; } .wp-block-navigation.has-background .has-child .wp-block-navigation__submenu-container { right: 0; top: 100%; } @media (min-width: 782px) { .wp-block-navigation.has-background .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container { right: 100%; top: 0; } } .wp-block-navigation-submenu { position: relative; display: flex; } .wp-block-navigation-submenu .wp-block-navigation__submenu-icon svg { stroke: currentColor; } button.wp-block-navigation-item__content { background-color: transparent; border: none; color: currentColor; font-size: inherit; font-family: inherit; line-height: inherit; text-align: right; } .wp-block-navigation-submenu__toggle { cursor: pointer; } /** * Margins */ .wp-block-navigation, .wp-block-navigation .wp-block-page-list, .wp-block-navigation__container, .wp-block-navigation__responsive-container-content { gap: var(--wp--style--block-gap, 2em); } .wp-block-navigation:where(.has-background), .wp-block-navigation:where(.has-background) .wp-block-navigation .wp-block-page-list, .wp-block-navigation:where(.has-background) .wp-block-navigation__container { gap: var(--wp--style--block-gap, 0.5em); } /** * Paddings */ .wp-block-navigation:where(.has-background) .wp-block-navigation-item__content { padding: 0.5em 1em; } .wp-block-navigation :where(.wp-block-navigation__submenu-container) .wp-block-navigation-item__content { padding: 0.5em 1em; } /** * Justifications. */ .wp-block-navigation.items-justified-space-between .wp-block-page-list > .has-child:last-child .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-space-between > .wp-block-navigation__container > .has-child:last-child .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-right .wp-block-page-list > .has-child .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container { right: auto; left: 0; } .wp-block-navigation.items-justified-space-between .wp-block-page-list > .has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-space-between > .wp-block-navigation__container > .has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-right .wp-block-page-list > .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container { right: -1px; left: -1px; } @media (min-width: 782px) { .wp-block-navigation.items-justified-space-between .wp-block-page-list > .has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-space-between > .wp-block-navigation__container > .has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-right .wp-block-page-list > .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container { right: auto; left: 100%; } } .wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container { background-color: #fff; color: #000; border: 1px solid rgba(0, 0, 0, 0.15); } .wp-block-navigation__container { display: flex; flex-wrap: var(--navigation-layout-wrap, wrap); flex-direction: var(--navigation-layout-direction, initial); justify-content: var(--navigation-layout-justify, initial); align-items: var(--navigation-layout-align, initial); list-style: none; margin: 0; padding-right: 0; } .wp-block-navigation__container .is-responsive { display: none; } .wp-block-navigation__container:only-child, .wp-block-page-list:only-child { flex-grow: 1; } /** * Mobile menu. */ .wp-block-navigation__responsive-container { display: none; position: fixed; top: 0; right: 0; left: 0; bottom: 0; } .wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content { display: flex; flex-wrap: var(--navigation-layout-wrap, wrap); flex-direction: var(--navigation-layout-direction, initial); justify-content: var(--navigation-layout-justify, initial); align-items: var(--navigation-layout-align, initial); } .wp-block-navigation__responsive-container:not(.is-menu-open.is-menu-open) { color: inherit !important; background-color: inherit !important; } .wp-block-navigation__responsive-container.is-menu-open { display: flex; flex-direction: column; background-color: inherit; padding: 2em; overflow: auto; z-index: 100000; } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding-top: calc(2em + 24px); overflow: visible; display: flex; flex-direction: column; flex-wrap: nowrap; align-items: var(--navigation-layout-justification-setting, inherit); } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-page-list, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container { justify-content: flex-start; } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-icon { display: none; } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .submenu-container, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container { opacity: 1; visibility: visible; height: auto; width: auto; overflow: initial; min-width: 200px; position: static; border: none; padding-right: 2em; padding-left: 2em; } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container { gap: var(--wp--style--block-gap, 2em); } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container { padding-top: var(--wp--style--block-gap, 2em); } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content { padding: 0; } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-page-list { display: flex; flex-direction: column; align-items: var(--navigation-layout-justification-setting, initial); } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation__submenu-container, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item, .wp-block-navigation__responsive-container.is-menu-open .wp-block-page-list { color: inherit !important; background: transparent !important; } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container { left: auto; right: auto; } @media (min-width: 600px) { .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: block; width: 100%; position: relative; z-index: auto; background-color: inherit; } .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) .wp-block-navigation__responsive-container-close { display: none; } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container { right: 0; } } .wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open { background-color: #fff; color: #000; } .wp-block-navigation__responsive-container-open, .wp-block-navigation__responsive-container-close { vertical-align: middle; cursor: pointer; color: currentColor; background: transparent; border: none; margin: 0; padding: 0; } .wp-block-navigation__responsive-container-open svg, .wp-block-navigation__responsive-container-close svg { fill: currentColor; pointer-events: none; display: block; width: 24px; height: 24px; } .wp-block-navigation__responsive-container-open { display: flex; } @media (min-width: 600px) { .wp-block-navigation__responsive-container-open:not(.always-shown) { display: none; } } .wp-block-navigation__responsive-container-close { position: absolute; top: 0; left: 0; z-index: 2; } .wp-block-navigation__responsive-close { width: 100%; } .is-menu-open .wp-block-navigation__responsive-close, .is-menu-open .wp-block-navigation__responsive-dialog, .is-menu-open .wp-block-navigation__responsive-container-content { box-sizing: border-box; } .wp-block-navigation__responsive-dialog { position: relative; } html.has-modal-open { overflow: hidden; } .wp-block-navigation .wp-block-navigation-item__label { word-break: normal; overflow-wrap: break-word; } .wp-block-navigation .wp-block-home-link__content { color: inherit; display: block; } .wp-block-navigation[style*=text-decoration] .wp-block-home-link { text-decoration: inherit; } .wp-block-navigation[style*=text-decoration] .wp-block-home-link__content { text-decoration: inherit; } .wp-block-navigation[style*=text-decoration] .wp-block-home-link__content:focus, .wp-block-navigation[style*=text-decoration] .wp-block-home-link__content:active { text-decoration: inherit; } .wp-block-navigation:not([style*=text-decoration]) .wp-block-home-link__content { text-decoration: none; } .wp-block-navigation:not([style*=text-decoration]) .wp-block-home-link__content:focus, .wp-block-navigation:not([style*=text-decoration]) .wp-block-home-link__content:active { text-decoration: none; } .wp-block-navigation:not(.has-background) .wp-block-navigation__container .wp-block-home-link__container { background-color: #fff; color: #000; border: 1px solid rgba(0, 0, 0, 0.15); } .wp-block-navigation:not(.has-background) .wp-block-navigation__container .wp-block-home-link__container .wp-block-home-link__container { top: -1px; } .wp-block-navigation .wp-block-page-list { display: flex; flex-direction: var(--navigation-layout-direction, initial); justify-content: var(--navigation-layout-justify, initial); align-items: var(--navigation-layout-align, initial); flex-wrap: var(--navigation-layout-wrap, wrap); background-color: inherit; } .wp-block-navigation .wp-block-navigation-item { background-color: inherit; } .is-small-text { font-size: 0.875em; } .is-regular-text { font-size: 1em; } .is-large-text { font-size: 2.25em; } .is-larger-text { font-size: 3em; } .has-drop-cap:not(:focus)::first-letter { float: right; font-size: 8.4em; line-height: 0.68; font-weight: 100; margin: 0.05em 0 0 0.1em; text-transform: uppercase; font-style: normal; } p { overflow-wrap: break-word; } p.has-drop-cap.has-background { overflow: hidden; } p.has-background { padding: 1.25em 2.375em; } :where(p.has-text-color:not(.has-link-color)) a { color: inherit; } .wp-block-post-author { display: flex; flex-wrap: wrap; } .wp-block-post-author__byline { width: 100%; margin-top: 0; margin-bottom: 0; font-size: 0.5em; } .wp-block-post-author__avatar { margin-left: 1em; } .wp-block-post-author__bio { margin-bottom: 0.7em; font-size: 0.7em; } .wp-block-post-author__content { flex-grow: 1; flex-basis: 0; } .wp-block-post-author__name { margin: 0; } .wp-block-post-comments > h3:first-of-type { margin-top: 0; } .wp-block-post-comments .commentlist { list-style: none; margin: 0; padding: 0; } .wp-block-post-comments .commentlist .comment { min-height: 2.25em; padding-right: 3.25em; } .wp-block-post-comments .commentlist .comment p { font-size: 0.875em; line-height: 1.8; margin: 0.36em 0 1.4em; } .wp-block-post-comments .commentlist .children { list-style: none; margin: 0; padding: 0; } .wp-block-post-comments .comment-author { line-height: 1.5; } .wp-block-post-comments .comment-author .avatar { border-radius: 1.5em; display: block; float: right; height: 2.5em; margin-left: 0.75em; width: 2.5em; } .wp-block-post-comments .comment-author cite { font-style: normal; } .wp-block-post-comments .comment-meta { line-height: 1.5; margin-right: -3.25em; } .wp-block-post-comments .comment-body .commentmetadata { font-size: 0.75em; } .wp-block-post-comments .comment-form-comment label, .wp-block-post-comments .comment-form-author label, .wp-block-post-comments .comment-form-email label, .wp-block-post-comments .comment-form-url label { display: block; margin-bottom: 0.25em; } .wp-block-post-comments .comment-form textarea, .wp-block-post-comments .comment-form input:not([type=submit]):not([type=checkbox]) { display: block; box-sizing: border-box; width: 100%; } .wp-block-post-comments .comment-form-cookies-consent { display: flex; gap: 0.25em; } .wp-block-post-comments .comment-form-cookies-consent #wp-comment-cookies-consent { margin-top: 0.35em; } .wp-block-post-comments .reply { font-size: 0.75em; margin-bottom: 1.4em; } .wp-block-post-comments textarea, .wp-block-post-comments input:not([type=submit]) { border: 1px solid #949494; font-size: 1em; font-family: inherit; } .wp-block-post-comments textarea, .wp-block-post-comments input:not([type=submit]):not([type=checkbox]) { padding: calc(0.667em + 2px); } .wp-block-post-comments input[type=submit] { border: none; } .wp-block-post-comments-form[style*=font-weight] :where(.comment-reply-title) { font-weight: inherit; } .wp-block-post-comments-form[style*=font-family] :where(.comment-reply-title) { font-family: inherit; } .wp-block-post-comments-form[class*=-font-size] :where(.comment-reply-title), .wp-block-post-comments-form[style*=font-size] :where(.comment-reply-title) { font-size: inherit; } .wp-block-post-comments-form[style*=line-height] :where(.comment-reply-title) { line-height: inherit; } .wp-block-post-comments-form[style*=font-style] :where(.comment-reply-title) { font-style: inherit; } .wp-block-post-comments-form[style*=letter-spacing] :where(.comment-reply-title) { letter-spacing: inherit; } .wp-block-post-comments-form input[type=submit] { border: none; box-shadow: none; cursor: pointer; display: inline-block; text-align: center; overflow-wrap: break-word; } .wp-block-post-comments-form textarea, .wp-block-post-comments-form input:not([type=submit]) { border: 1px solid #949494; font-size: 1em; font-family: inherit; } .wp-block-post-comments-form textarea, .wp-block-post-comments-form input:not([type=submit]):not([type=checkbox]) { padding: calc(0.667em + 2px); } .wp-block-post-comments-form .comment-form textarea, .wp-block-post-comments-form .comment-form input:not([type=submit]):not([type=checkbox]) { display: block; box-sizing: border-box; width: 100%; } .wp-block-post-comments-form .comment-form-author label, .wp-block-post-comments-form .comment-form-email label, .wp-block-post-comments-form .comment-form-url label { display: block; margin-bottom: 0.25em; } .wp-block-post-comments-form .comment-form-cookies-consent { display: flex; gap: 0.25em; } .wp-block-post-comments-form .comment-form-cookies-consent #wp-comment-cookies-consent { margin-top: 0.35em; } .wp-block-post-excerpt__more-link { display: inline-block; } .wp-block-post-terms__separator { white-space: pre-wrap; } .wp-block-post-title a { display: inline-block; } .wp-block-preformatted { white-space: pre-wrap; } .wp-block-preformatted.has-background { padding: 1.25em 2.375em; } .wp-block-pullquote { margin: 0 0 1em 0; padding: 3em 0; text-align: center; overflow-wrap: break-word; } .wp-block-pullquote p, .wp-block-pullquote blockquote, .wp-block-pullquote cite { color: inherit; } .wp-block-pullquote.has-text-align-left, .wp-block-pullquote.has-text-align-right, .wp-block-pullquote.alignleft, .wp-block-pullquote.alignright { max-width: 420px; } .wp-block-pullquote.has-text-align-left p, .wp-block-pullquote.has-text-align-right p, .wp-block-pullquote.alignleft p, .wp-block-pullquote.alignright p { font-size: 1.25em; } .wp-block-pullquote p { font-size: 1.75em; line-height: 1.6; } .wp-block-pullquote cite, .wp-block-pullquote footer { position: relative; } .wp-block-pullquote .has-text-color a { color: inherit; } .wp-block-pullquote.has-text-align-left blockquote { text-align: right; } .wp-block-pullquote.has-text-align-right blockquote { text-align: left; } .wp-block-pullquote:not(.is-style-solid-color) { background: none; } .wp-block-pullquote.is-style-solid-color { border: none; } .wp-block-pullquote.is-style-solid-color blockquote { margin-right: auto; margin-left: auto; max-width: 60%; } .wp-block-pullquote.is-style-solid-color blockquote p { margin-top: 0; margin-bottom: 0; font-size: 2em; } .wp-block-pullquote.is-style-solid-color blockquote cite { text-transform: none; font-style: normal; } .wp-block-pullquote cite { color: inherit; } .wp-block-post-template, .wp-block-query-loop { margin-top: 0; margin-bottom: 0; max-width: 100%; list-style: none; padding: 0; } .wp-block-post-template.wp-block-post-template, .wp-block-query-loop.wp-block-post-template { background: none; } .wp-block-post-template.is-flex-container, .wp-block-query-loop.is-flex-container { flex-direction: row; display: flex; flex-wrap: wrap; gap: 1.25em; } .wp-block-post-template.is-flex-container li, .wp-block-query-loop.is-flex-container li { margin: 0; width: 100%; } @media (min-width: 600px) { .wp-block-post-template.is-flex-container.is-flex-container.columns-2 > li, .wp-block-query-loop.is-flex-container.is-flex-container.columns-2 > li { width: calc((100% / 2) - 1.25em + (1.25em / 2)); } .wp-block-post-template.is-flex-container.is-flex-container.columns-3 > li, .wp-block-query-loop.is-flex-container.is-flex-container.columns-3 > li { width: calc((100% / 3) - 1.25em + (1.25em / 3)); } .wp-block-post-template.is-flex-container.is-flex-container.columns-4 > li, .wp-block-query-loop.is-flex-container.is-flex-container.columns-4 > li { width: calc((100% / 4) - 1.25em + (1.25em / 4)); } .wp-block-post-template.is-flex-container.is-flex-container.columns-5 > li, .wp-block-query-loop.is-flex-container.is-flex-container.columns-5 > li { width: calc((100% / 5) - 1.25em + (1.25em / 5)); } .wp-block-post-template.is-flex-container.is-flex-container.columns-6 > li, .wp-block-query-loop.is-flex-container.is-flex-container.columns-6 > li { width: calc((100% / 6) - 1.25em + (1.25em / 6)); } } .wp-block-query-pagination > .wp-block-query-pagination-next, .wp-block-query-pagination > .wp-block-query-pagination-previous, .wp-block-query-pagination > .wp-block-query-pagination-numbers { margin-right: 0.5em; margin-bottom: 0.5em; } .wp-block-query-pagination > .wp-block-query-pagination-next:last-child, .wp-block-query-pagination > .wp-block-query-pagination-previous:last-child, .wp-block-query-pagination > .wp-block-query-pagination-numbers:last-child { margin-right: 0; } .wp-block-query-pagination .wp-block-query-pagination-previous-arrow { margin-left: 1ch; display: inline-block; } .wp-block-query-pagination .wp-block-query-pagination-previous-arrow:not(.is-arrow-chevron) { transform: scaleX(-1);; } .wp-block-query-pagination .wp-block-query-pagination-next-arrow { margin-right: 1ch; display: inline-block; } .wp-block-query-pagination .wp-block-query-pagination-next-arrow:not(.is-arrow-chevron) { transform: scaleX(-1);; } .wp-block-query-pagination.aligncenter { justify-content: center; } .wp-block-quote { overflow-wrap: break-word; } .wp-block-quote.is-style-large, .wp-block-quote.is-large { margin-bottom: 1em; padding: 0 1em; } .wp-block-quote.is-style-large p, .wp-block-quote.is-large p { font-size: 1.5em; font-style: italic; line-height: 1.6; } .wp-block-quote.is-style-large cite, .wp-block-quote.is-style-large footer, .wp-block-quote.is-large cite, .wp-block-quote.is-large footer { font-size: 1.125em; text-align: left; } ul.wp-block-rss { list-style: none; padding: 0; } ul.wp-block-rss.wp-block-rss { box-sizing: border-box; } ul.wp-block-rss.alignleft { margin-right: 2em; } ul.wp-block-rss.alignright { margin-left: 2em; } ul.wp-block-rss.is-grid { display: flex; flex-wrap: wrap; padding: 0; list-style: none; } ul.wp-block-rss.is-grid li { margin: 0 0 1em 1em; width: 100%; } @media (min-width: 600px) { ul.wp-block-rss.columns-2 li { width: calc(( 100% / 2 ) - 1em); } ul.wp-block-rss.columns-3 li { width: calc(( 100% / 3 ) - 1em); } ul.wp-block-rss.columns-4 li { width: calc(( 100% / 4 ) - 1em); } ul.wp-block-rss.columns-5 li { width: calc(( 100% / 5 ) - 1em); } ul.wp-block-rss.columns-6 li { width: calc(( 100% / 6 ) - 1em); } } .wp-block-rss__item-publish-date, .wp-block-rss__item-author { display: block; font-size: 0.8125em; } .wp-block-search__button { background: #f7f7f7; border: 1px solid #ccc; padding: 0.375em 0.625em; color: #32373c; margin-right: 0.625em; word-break: normal; font-size: inherit; font-family: inherit; line-height: inherit; } .wp-block-search__button.has-icon { line-height: 0; } .wp-block-search__button svg { min-width: 1.5em; min-height: 1.5em; fill: currentColor; } .wp-block-search__inside-wrapper { display: flex; flex: auto; flex-wrap: nowrap; max-width: 100%; } .wp-block-search__label { width: 100%; } .wp-block-search__input { padding: 8px; flex-grow: 1; min-width: 3em; border: 1px solid #949494; font-size: inherit; font-family: inherit; line-height: inherit; } .wp-block-search.wp-block-search__button-only .wp-block-search__button { margin-right: 0; } .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper { padding: 4px; border: 1px solid #949494; } .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__input { border-radius: 0; border: none; padding: 0 0.25em 0 0; } .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__input:focus { outline: none; } .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__button { padding: 0.125em 0.5em; } .wp-block-search.aligncenter .wp-block-search__inside-wrapper { margin: auto; } .wp-block-separator { border-top: 1px solid currentColor; border-bottom: 1px solid currentColor; } .wp-block-separator.is-style-wide { border-bottom-width: 1px; } .wp-block-separator.is-style-dots { background: none !important; border: none; text-align: center; line-height: 1; height: auto; } .wp-block-separator.is-style-dots::before { content: "···"; color: currentColor; font-size: 1.5em; letter-spacing: 2em; padding-left: 2em; font-family: serif; } .wp-block-site-logo { line-height: 0; } .wp-block-site-logo a { display: inline-block; } .wp-block-site-logo.is-default-size img { width: 120px; height: auto; } .wp-block-site-logo a, .wp-block-site-logo img { border-radius: inherit; } .wp-block-site-logo.aligncenter { margin-right: auto; margin-left: auto; text-align: center; } .wp-block-site-logo.is-style-rounded { border-radius: 9999px; } .wp-block-social-links { padding-right: 0; padding-left: 0; text-indent: 0; margin-right: 0; } .wp-block-social-links .wp-social-link a, .wp-block-social-links .wp-social-link a:hover { text-decoration: none; border-bottom: 0; box-shadow: none; } .wp-block-social-links .wp-social-link a { padding: 0.25em; } .wp-block-social-links .wp-social-link svg { width: 1em; height: 1em; } .wp-block-social-links.has-small-icon-size { font-size: 16px; } .wp-block-social-links, .wp-block-social-links.has-normal-icon-size { font-size: 24px; } .wp-block-social-links.has-large-icon-size { font-size: 36px; } .wp-block-social-links.has-huge-icon-size { font-size: 48px; } .wp-block-social-links.aligncenter { justify-content: center; display: flex; } .wp-block-social-links.alignright { justify-content: flex-end; } .wp-block-social-link { display: block; border-radius: 9999px; transition: transform 0.1s ease; height: auto; } @media (prefers-reduced-motion: reduce) { .wp-block-social-link { transition-duration: 0s; transition-delay: 0s; } } .wp-block-social-link a { display: block; line-height: 0; transition: transform 0.1s ease; } .wp-block-social-link:hover { transform: scale(1.1); } .wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor, .wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:hover, .wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:active, .wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:visited, .wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor svg { color: currentColor; fill: currentColor; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link { background-color: #f0f0f0; color: #444; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-amazon { background-color: #f90; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-bandcamp { background-color: #1ea0c3; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-behance { background-color: #0757fe; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-codepen { background-color: #1e1f26; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-deviantart { background-color: #02e49b; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-dribbble { background-color: #e94c89; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-dropbox { background-color: #4280ff; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-etsy { background-color: #f45800; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-facebook { background-color: #1778f2; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-fivehundredpx { background-color: #000; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-flickr { background-color: #0461dd; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-foursquare { background-color: #e65678; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-github { background-color: #24292d; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-goodreads { background-color: #eceadd; color: #382110; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-google { background-color: #ea4434; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-instagram { background-color: #f00075; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-lastfm { background-color: #e21b24; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-linkedin { background-color: #0d66c2; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-mastodon { background-color: #3288d4; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-medium { background-color: #02ab6c; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-meetup { background-color: #f6405f; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-patreon { background-color: #ff424d; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-pinterest { background-color: #e60122; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-pocket { background-color: #ef4155; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-reddit { background-color: #fe4500; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-skype { background-color: #0478d7; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-snapchat { background-color: #fefc00; color: #fff; stroke: #000; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-soundcloud { background-color: #ff5600; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-spotify { background-color: #1bd760; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-telegram { background-color: #2aabee; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-tiktok { background-color: #000; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-tumblr { background-color: #011835; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-twitch { background-color: #6440a4; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-twitter { background-color: #1da1f2; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-vimeo { background-color: #1eb7ea; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-vk { background-color: #4680c2; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-wordpress { background-color: #3499cd; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-yelp { background-color: #d32422; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-youtube { background-color: #f00; color: #fff; } .wp-block-social-links.is-style-logos-only .wp-social-link { background: none; } .wp-block-social-links.is-style-logos-only .wp-social-link a { padding: 0; } .wp-block-social-links.is-style-logos-only .wp-social-link svg { width: 1.25em; height: 1.25em; } .wp-block-social-links.is-style-logos-only .wp-social-link-amazon { color: #f90; } .wp-block-social-links.is-style-logos-only .wp-social-link-bandcamp { color: #1ea0c3; } .wp-block-social-links.is-style-logos-only .wp-social-link-behance { color: #0757fe; } .wp-block-social-links.is-style-logos-only .wp-social-link-codepen { color: #1e1f26; } .wp-block-social-links.is-style-logos-only .wp-social-link-deviantart { color: #02e49b; } .wp-block-social-links.is-style-logos-only .wp-social-link-dribbble { color: #e94c89; } .wp-block-social-links.is-style-logos-only .wp-social-link-dropbox { color: #4280ff; } .wp-block-social-links.is-style-logos-only .wp-social-link-etsy { color: #f45800; } .wp-block-social-links.is-style-logos-only .wp-social-link-facebook { color: #1778f2; } .wp-block-social-links.is-style-logos-only .wp-social-link-fivehundredpx { color: #000; } .wp-block-social-links.is-style-logos-only .wp-social-link-flickr { color: #0461dd; } .wp-block-social-links.is-style-logos-only .wp-social-link-foursquare { color: #e65678; } .wp-block-social-links.is-style-logos-only .wp-social-link-github { color: #24292d; } .wp-block-social-links.is-style-logos-only .wp-social-link-goodreads { color: #382110; } .wp-block-social-links.is-style-logos-only .wp-social-link-google { color: #ea4434; } .wp-block-social-links.is-style-logos-only .wp-social-link-instagram { color: #f00075; } .wp-block-social-links.is-style-logos-only .wp-social-link-lastfm { color: #e21b24; } .wp-block-social-links.is-style-logos-only .wp-social-link-linkedin { color: #0d66c2; } .wp-block-social-links.is-style-logos-only .wp-social-link-mastodon { color: #3288d4; } .wp-block-social-links.is-style-logos-only .wp-social-link-medium { color: #02ab6c; } .wp-block-social-links.is-style-logos-only .wp-social-link-meetup { color: #f6405f; } .wp-block-social-links.is-style-logos-only .wp-social-link-patreon { color: #ff424d; } .wp-block-social-links.is-style-logos-only .wp-social-link-pinterest { color: #e60122; } .wp-block-social-links.is-style-logos-only .wp-social-link-pocket { color: #ef4155; } .wp-block-social-links.is-style-logos-only .wp-social-link-reddit { color: #fe4500; } .wp-block-social-links.is-style-logos-only .wp-social-link-skype { color: #0478d7; } .wp-block-social-links.is-style-logos-only .wp-social-link-snapchat { color: #fff; stroke: #000; } .wp-block-social-links.is-style-logos-only .wp-social-link-soundcloud { color: #ff5600; } .wp-block-social-links.is-style-logos-only .wp-social-link-spotify { color: #1bd760; } .wp-block-social-links.is-style-logos-only .wp-social-link-telegram { color: #2aabee; } .wp-block-social-links.is-style-logos-only .wp-social-link-tiktok { color: #000; } .wp-block-social-links.is-style-logos-only .wp-social-link-tumblr { color: #011835; } .wp-block-social-links.is-style-logos-only .wp-social-link-twitch { color: #6440a4; } .wp-block-social-links.is-style-logos-only .wp-social-link-twitter { color: #1da1f2; } .wp-block-social-links.is-style-logos-only .wp-social-link-vimeo { color: #1eb7ea; } .wp-block-social-links.is-style-logos-only .wp-social-link-vk { color: #4680c2; } .wp-block-social-links.is-style-logos-only .wp-social-link-wordpress { color: #3499cd; } .wp-block-social-links.is-style-logos-only .wp-social-link-yelp { color: #d32422; } .wp-block-social-links.is-style-logos-only .wp-social-link-youtube { color: #f00; } .wp-block-social-links.is-style-pill-shape .wp-social-link { width: auto; } .wp-block-social-links.is-style-pill-shape .wp-social-link a { padding-right: calc((2/3) * 1em); padding-left: calc((2/3) * 1em); } .wp-block-spacer { clear: both; } .wp-block-tag-cloud.aligncenter { text-align: center; } .wp-block-tag-cloud.alignfull { padding-right: 1em; padding-left: 1em; } .wp-block-tag-cloud a { display: inline-block; margin-left: 5px; } .wp-block-tag-cloud span { display: inline-block; margin-right: 5px; text-decoration: none; } .wp-block-table { margin: 0 0 1em 0; overflow-x: auto; } .wp-block-table table { border-collapse: collapse; width: 100%; } .wp-block-table .has-fixed-layout { table-layout: fixed; width: 100%; } .wp-block-table .has-fixed-layout td, .wp-block-table .has-fixed-layout th { word-break: break-word; } .wp-block-table.alignleft, .wp-block-table.aligncenter, .wp-block-table.alignright { display: table; width: auto; } .wp-block-table.alignleft td, .wp-block-table.alignleft th, .wp-block-table.aligncenter td, .wp-block-table.aligncenter th, .wp-block-table.alignright td, .wp-block-table.alignright th { word-break: break-word; } .wp-block-table .has-subtle-light-gray-background-color { background-color: #f3f4f5; } .wp-block-table .has-subtle-pale-green-background-color { background-color: #e9fbe5; } .wp-block-table .has-subtle-pale-blue-background-color { background-color: #e7f5fe; } .wp-block-table .has-subtle-pale-pink-background-color { background-color: #fcf0ef; } .wp-block-table.is-style-stripes { border-spacing: 0; border-collapse: inherit; background-color: transparent; border-bottom: 1px solid #f0f0f0; } .wp-block-table.is-style-stripes tbody tr:nth-child(odd) { background-color: #f0f0f0; } .wp-block-table.is-style-stripes.has-subtle-light-gray-background-color tbody tr:nth-child(odd) { background-color: #f3f4f5; } .wp-block-table.is-style-stripes.has-subtle-pale-green-background-color tbody tr:nth-child(odd) { background-color: #e9fbe5; } .wp-block-table.is-style-stripes.has-subtle-pale-blue-background-color tbody tr:nth-child(odd) { background-color: #e7f5fe; } .wp-block-table.is-style-stripes.has-subtle-pale-pink-background-color tbody tr:nth-child(odd) { background-color: #fcf0ef; } .wp-block-table.is-style-stripes th, .wp-block-table.is-style-stripes td { border-color: transparent; } .wp-block-table .has-border-color > *, .wp-block-table .has-border-color tr, .wp-block-table .has-border-color th, .wp-block-table .has-border-color td { border-color: inherit; } .wp-block-table table[style*=border-style] > *, .wp-block-table table[style*=border-style] tr, .wp-block-table table[style*=border-style] th, .wp-block-table table[style*=border-style] td { border-style: inherit; } .wp-block-table table[style*=border-width] > *, .wp-block-table table[style*=border-width] tr, .wp-block-table table[style*=border-width] th, .wp-block-table table[style*=border-width] td { border-width: inherit; } .wp-block-text-columns { display: flex; } .wp-block-text-columns.aligncenter { display: flex; } .wp-block-text-columns .wp-block-column { margin: 0 1em; padding: 0; } .wp-block-text-columns .wp-block-column:first-child { margin-right: 0; } .wp-block-text-columns .wp-block-column:last-child { margin-left: 0; } .wp-block-text-columns.columns-2 .wp-block-column { width: calc(100% / 2); } .wp-block-text-columns.columns-3 .wp-block-column { width: calc(100% / 3); } .wp-block-text-columns.columns-4 .wp-block-column { width: calc(100% / 4); } pre.wp-block-verse { font-family: inherit; overflow: auto; white-space: pre-wrap; } .wp-block-video { margin: 0 0 1em 0; } .wp-block-video video { width: 100%; } @supports (position: sticky) { .wp-block-video [poster] { -o-object-fit: cover; object-fit: cover; } } .wp-block-video.aligncenter { text-align: center; } .wp-block-video figcaption { margin-top: 0.5em; margin-bottom: 1em; } .wp-block-post-featured-image { margin-right: 0; margin-left: 0; } .wp-block-post-featured-image a { display: inline-block; } .wp-block-post-featured-image img { max-width: 100%; width: 100%; height: auto; vertical-align: bottom; } .wp-block-post-featured-image.alignwide img, .wp-block-post-featured-image.alignfull img { width: 100%; } :root { /* * Our classes uses the same values we set for gradient value attributes, * and we can not use spacing because of WP multi site kses rule. */ /* stylelint-disable function-comma-space-after */ /* stylelint-enable function-comma-space-after */ --wp--preset--font-size--normal: 16px; --wp--preset--font-size--huge: 42px; } :root .has-very-light-gray-background-color { background-color: #eee; } :root .has-very-dark-gray-background-color { background-color: #313131; } :root .has-very-light-gray-color { color: #eee; } :root .has-very-dark-gray-color { color: #313131; } :root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background { background: linear-gradient(-135deg, #00d084 0%, #0693e3 100%); } :root .has-purple-crush-gradient-background { background: linear-gradient(-135deg, #34e2e4 0%, #4721fb 50%, #ab1dfe 100%); } :root .has-hazy-dawn-gradient-background { background: linear-gradient(-135deg, #faaca8 0%, #dad0ec 100%); } :root .has-subdued-olive-gradient-background { background: linear-gradient(-135deg, #fafae1 0%, #67a671 100%); } :root .has-atomic-cream-gradient-background { background: linear-gradient(-135deg, #fdd79a 0%, #004a59 100%); } :root .has-nightshade-gradient-background { background: linear-gradient(-135deg, #330968 0%, #31cdcf 100%); } :root .has-midnight-gradient-background { background: linear-gradient(-135deg, #020381 0%, #2874fc 100%); } .has-regular-font-size { font-size: 1em; } .has-larger-font-size { font-size: 2.625em; } .has-normal-font-size { font-size: var(--wp--preset--font-size--normal); } .has-huge-font-size { font-size: var(--wp--preset--font-size--huge); } .has-text-align-center { text-align: center; } .has-text-align-left { text-align: left; } .has-text-align-right { text-align: right; } #end-resizable-editor-section { display: none; } .aligncenter { clear: both; } .items-justified-left { justify-content: flex-start; } .items-justified-center { justify-content: center; } .items-justified-right { justify-content: flex-end; } .items-justified-space-between { justify-content: space-between; } .screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important; } .screen-reader-text:focus { background-color: #ddd; clip: auto !important; -webkit-clip-path: none; clip-path: none; color: #444; display: block; font-size: 1em; height: auto; right: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; } /** * Provide baseline responsiveness for images. */ html :where(img[class*="wp-image-"]) { height: auto; max-width: 100%; }PKj l\["|{{ css/dist/block-library/style.cssnu[@charset "UTF-8"; /** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ .wp-block-archives-dropdown label { display: block; } .wp-block-audio { margin: 0 0 1em 0; } .wp-block-audio figcaption { margin-top: 0.5em; margin-bottom: 1em; } .wp-block-audio audio { width: 100%; min-width: 300px; } .wp-block-button__link { color: #fff; background-color: #32373c; border-radius: 9999px; box-shadow: none; cursor: pointer; display: inline-block; font-size: 1.125em; padding: calc(0.667em + 2px) calc(1.333em + 2px); text-align: center; text-decoration: none; word-break: break-word; box-sizing: border-box; } .wp-block-button__link:hover, .wp-block-button__link:focus, .wp-block-button__link:active, .wp-block-button__link:visited { color: #fff; } .wp-block-button__link.aligncenter { text-align: center; } .wp-block-button__link.alignright { /*rtl:ignore*/ text-align: right; } .wp-block-buttons > .wp-block-button.has-custom-width { max-width: none; } .wp-block-buttons > .wp-block-button.has-custom-width .wp-block-button__link { width: 100%; } .wp-block-buttons > .wp-block-button.has-custom-font-size .wp-block-button__link { font-size: inherit; } .wp-block-buttons > .wp-block-button.wp-block-button__width-25 { width: calc(25% - (var(--wp--style--block-gap, 0.5em) * 0.75)); } .wp-block-buttons > .wp-block-button.wp-block-button__width-50 { width: calc(50% - (var(--wp--style--block-gap, 0.5em) * 0.5)); } .wp-block-buttons > .wp-block-button.wp-block-button__width-75 { width: calc(75% - (var(--wp--style--block-gap, 0.5em) * 0.25)); } .wp-block-buttons > .wp-block-button.wp-block-button__width-100 { width: 100%; flex-basis: 100%; } .wp-block-buttons.is-vertical > .wp-block-button.wp-block-button__width-25 { width: 25%; } .wp-block-buttons.is-vertical > .wp-block-button.wp-block-button__width-50 { width: 50%; } .wp-block-buttons.is-vertical > .wp-block-button.wp-block-button__width-75 { width: 75%; } .wp-block-button.is-style-squared, .wp-block-button__link.wp-block-button.is-style-squared { border-radius: 0; } .wp-block-button.no-border-radius, .wp-block-button__link.no-border-radius { border-radius: 0 !important; } .is-style-outline > :where(.wp-block-button__link), :where(.wp-block-button__link).is-style-outline { border: 2px solid currentColor; padding: 0.667em 1.333em; } .is-style-outline > .wp-block-button__link:not(.has-text-color), .wp-block-button__link.is-style-outline:not(.has-text-color) { color: currentColor; } .is-style-outline > .wp-block-button__link:not(.has-background), .wp-block-button__link.is-style-outline:not(.has-background) { background-color: transparent; } .wp-block-buttons { /* stylelint-disable indentation */ } .wp-block-buttons.is-vertical { flex-direction: column; } .wp-block-buttons.is-vertical > .wp-block-button:last-child { margin-bottom: 0; } .wp-block-buttons > .wp-block-button { display: inline-block; margin: 0; } .wp-block-buttons.is-content-justification-left { justify-content: flex-start; } .wp-block-buttons.is-content-justification-left.is-vertical { align-items: flex-start; } .wp-block-buttons.is-content-justification-center { justify-content: center; } .wp-block-buttons.is-content-justification-center.is-vertical { align-items: center; } .wp-block-buttons.is-content-justification-right { justify-content: flex-end; } .wp-block-buttons.is-content-justification-right.is-vertical { align-items: flex-end; } .wp-block-buttons.is-content-justification-space-between { justify-content: space-between; } .wp-block-buttons.aligncenter { text-align: center; } .wp-block-buttons:not(.is-content-justification-space-between, .is-content-justification-right, .is-content-justification-left, .is-content-justification-center) .wp-block-button.aligncenter { /* stylelint-enable indentation */ margin-left: auto; margin-right: auto; width: 100%; } .wp-block-button.aligncenter { text-align: center; } .wp-block-calendar { text-align: center; } .wp-block-calendar th, .wp-block-calendar tbody td { padding: 0.25em; border: 1px solid #ddd; } .wp-block-calendar tfoot td { border: none; } .wp-block-calendar table { width: 100%; border-collapse: collapse; } .wp-block-calendar table th { font-weight: 400; background: #ddd; } .wp-block-calendar a { text-decoration: underline; } .wp-block-calendar table tbody, .wp-block-calendar table caption { color: #40464d; } .wp-block-categories.alignleft { /*rtl:ignore*/ margin-right: 2em; } .wp-block-categories.alignright { /*rtl:ignore*/ margin-left: 2em; } .wp-block-code code { display: block; white-space: pre-wrap; overflow-wrap: break-word; } .wp-block-columns { display: flex; margin-bottom: 1.75em; box-sizing: border-box; flex-wrap: wrap; /** * All Columns Alignment */ } @media (min-width: 782px) { .wp-block-columns { flex-wrap: nowrap; } } .wp-block-columns:where(.has-background) { padding: 1.25em 2.375em; } .wp-block-columns.are-vertically-aligned-top { align-items: flex-start; } .wp-block-columns.are-vertically-aligned-center { align-items: center; } .wp-block-columns.are-vertically-aligned-bottom { align-items: flex-end; } @media (max-width: 599px) { .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column { flex-basis: 100% !important; } } @media (min-width: 600px) and (max-width: 781px) { .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column:not(:only-child) { flex-basis: calc(50% - calc(var(--wp--style--block-gap, 2em) / 2)) !important; flex-grow: 0; } .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column:nth-child(even) { margin-left: var(--wp--style--block-gap, 2em); } } @media (min-width: 782px) { .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column { flex-basis: 0; flex-grow: 1; } .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*=flex-basis] { flex-grow: 0; } .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column:not(:first-child) { margin-left: var(--wp--style--block-gap, 2em); } } .wp-block-columns.is-not-stacked-on-mobile { flex-wrap: nowrap; } .wp-block-columns.is-not-stacked-on-mobile > .wp-block-column { flex-basis: 0; flex-grow: 1; } .wp-block-columns.is-not-stacked-on-mobile > .wp-block-column[style*=flex-basis] { flex-grow: 0; } .wp-block-columns.is-not-stacked-on-mobile > .wp-block-column:not(:first-child) { margin-left: var(--wp--style--block-gap, 2em); } .wp-block-column { flex-grow: 1; min-width: 0; word-break: break-word; overflow-wrap: break-word; /** * Individual Column Alignment */ } .wp-block-column.is-vertically-aligned-top { align-self: flex-start; } .wp-block-column.is-vertically-aligned-center { align-self: center; } .wp-block-column.is-vertically-aligned-bottom { align-self: flex-end; } .wp-block-column.is-vertically-aligned-top, .wp-block-column.is-vertically-aligned-center, .wp-block-column.is-vertically-aligned-bottom { width: 100%; } .wp-block-cover-image, .wp-block-cover { position: relative; background-size: cover; background-position: center center; min-height: 430px; width: 100%; display: flex; justify-content: center; align-items: center; padding: 1em; box-sizing: border-box; /** * Set a default background color for has-background-dim _unless_ it includes another * background-color class (e.g. has-green-background-color). The presence of another * background-color class implies that another style will provide the background color * for the overlay. * * See: * - Issue with background color specificity: https://github.com/WordPress/gutenberg/issues/26545 * - Issue with alternative fix: https://github.com/WordPress/gutenberg/issues/26545 */ } .wp-block-cover-image.has-parallax, .wp-block-cover.has-parallax { background-attachment: fixed; } @supports (-webkit-overflow-scrolling: touch) { .wp-block-cover-image.has-parallax, .wp-block-cover.has-parallax { background-attachment: scroll; } } @media (prefers-reduced-motion: reduce) { .wp-block-cover-image.has-parallax, .wp-block-cover.has-parallax { background-attachment: scroll; } } .wp-block-cover-image.is-repeated, .wp-block-cover.is-repeated { background-repeat: repeat; background-size: auto; } .wp-block-cover-image.has-background-dim:not([class*=-background-color]), .wp-block-cover-image .has-background-dim:not([class*=-background-color]), .wp-block-cover.has-background-dim:not([class*=-background-color]), .wp-block-cover .has-background-dim:not([class*=-background-color]) { background-color: #000; } .wp-block-cover-image .has-background-dim.has-background-gradient, .wp-block-cover .has-background-dim.has-background-gradient { background-color: transparent; } .wp-block-cover-image.has-background-dim::before, .wp-block-cover.has-background-dim::before { content: ""; background-color: inherit; } .wp-block-cover-image.has-background-dim:not(.has-background-gradient)::before, .wp-block-cover-image .wp-block-cover__background, .wp-block-cover-image .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim:not(.has-background-gradient)::before, .wp-block-cover .wp-block-cover__background, .wp-block-cover .wp-block-cover__gradient-background { position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 1; opacity: 0.5; } .wp-block-cover-image.has-background-dim.has-background-dim-10:not(.has-background-gradient)::before, .wp-block-cover-image.has-background-dim.has-background-dim-10 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-10:not(.has-background-gradient)::before, .wp-block-cover.has-background-dim.has-background-dim-10 .wp-block-cover__gradient-background { opacity: 0.1; } .wp-block-cover-image.has-background-dim.has-background-dim-20:not(.has-background-gradient)::before, .wp-block-cover-image.has-background-dim.has-background-dim-20 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-20:not(.has-background-gradient)::before, .wp-block-cover.has-background-dim.has-background-dim-20 .wp-block-cover__gradient-background { opacity: 0.2; } .wp-block-cover-image.has-background-dim.has-background-dim-30:not(.has-background-gradient)::before, .wp-block-cover-image.has-background-dim.has-background-dim-30 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-30:not(.has-background-gradient)::before, .wp-block-cover.has-background-dim.has-background-dim-30 .wp-block-cover__gradient-background { opacity: 0.3; } .wp-block-cover-image.has-background-dim.has-background-dim-40:not(.has-background-gradient)::before, .wp-block-cover-image.has-background-dim.has-background-dim-40 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-40:not(.has-background-gradient)::before, .wp-block-cover.has-background-dim.has-background-dim-40 .wp-block-cover__gradient-background { opacity: 0.4; } .wp-block-cover-image.has-background-dim.has-background-dim-50:not(.has-background-gradient)::before, .wp-block-cover-image.has-background-dim.has-background-dim-50 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-50:not(.has-background-gradient)::before, .wp-block-cover.has-background-dim.has-background-dim-50 .wp-block-cover__gradient-background { opacity: 0.5; } .wp-block-cover-image.has-background-dim.has-background-dim-60:not(.has-background-gradient)::before, .wp-block-cover-image.has-background-dim.has-background-dim-60 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-60:not(.has-background-gradient)::before, .wp-block-cover.has-background-dim.has-background-dim-60 .wp-block-cover__gradient-background { opacity: 0.6; } .wp-block-cover-image.has-background-dim.has-background-dim-70:not(.has-background-gradient)::before, .wp-block-cover-image.has-background-dim.has-background-dim-70 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-70:not(.has-background-gradient)::before, .wp-block-cover.has-background-dim.has-background-dim-70 .wp-block-cover__gradient-background { opacity: 0.7; } .wp-block-cover-image.has-background-dim.has-background-dim-80:not(.has-background-gradient)::before, .wp-block-cover-image.has-background-dim.has-background-dim-80 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-80:not(.has-background-gradient)::before, .wp-block-cover.has-background-dim.has-background-dim-80 .wp-block-cover__gradient-background { opacity: 0.8; } .wp-block-cover-image.has-background-dim.has-background-dim-90:not(.has-background-gradient)::before, .wp-block-cover-image.has-background-dim.has-background-dim-90 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-90:not(.has-background-gradient)::before, .wp-block-cover.has-background-dim.has-background-dim-90 .wp-block-cover__gradient-background { opacity: 0.9; } .wp-block-cover-image.has-background-dim.has-background-dim-100:not(.has-background-gradient)::before, .wp-block-cover-image.has-background-dim.has-background-dim-100 .wp-block-cover__gradient-background, .wp-block-cover.has-background-dim.has-background-dim-100:not(.has-background-gradient)::before, .wp-block-cover.has-background-dim.has-background-dim-100 .wp-block-cover__gradient-background { opacity: 1; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-0, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-0 { opacity: 0; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-10, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-10 { opacity: 0.1; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-20, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-20 { opacity: 0.2; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-30, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-30 { opacity: 0.3; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-40, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-40 { opacity: 0.4; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-50, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-50 { opacity: 0.5; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-60, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-60 { opacity: 0.6; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-70, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-70 { opacity: 0.7; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-80, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-80 { opacity: 0.8; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-90, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-90 { opacity: 0.9; } .wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-100, .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-100 { opacity: 1; } .wp-block-cover-image.alignleft, .wp-block-cover-image.alignright, .wp-block-cover.alignleft, .wp-block-cover.alignright { max-width: 420px; width: 100%; } .wp-block-cover-image::after, .wp-block-cover::after { display: block; content: ""; font-size: 0; min-height: inherit; } @supports (position: sticky) { .wp-block-cover-image::after, .wp-block-cover::after { content: none; } } .wp-block-cover-image.aligncenter, .wp-block-cover-image.alignleft, .wp-block-cover-image.alignright, .wp-block-cover.aligncenter, .wp-block-cover.alignleft, .wp-block-cover.alignright { display: flex; } .wp-block-cover-image .wp-block-cover__inner-container, .wp-block-cover .wp-block-cover__inner-container { width: 100%; z-index: 1; color: #fff; } .wp-block-cover-image.is-light .wp-block-cover__inner-container, .wp-block-cover.is-light .wp-block-cover__inner-container { color: #000; } .wp-block-cover-image p:not(.has-text-color), .wp-block-cover-image h1:not(.has-text-color), .wp-block-cover-image h2:not(.has-text-color), .wp-block-cover-image h3:not(.has-text-color), .wp-block-cover-image h4:not(.has-text-color), .wp-block-cover-image h5:not(.has-text-color), .wp-block-cover-image h6:not(.has-text-color), .wp-block-cover p:not(.has-text-color), .wp-block-cover h1:not(.has-text-color), .wp-block-cover h2:not(.has-text-color), .wp-block-cover h3:not(.has-text-color), .wp-block-cover h4:not(.has-text-color), .wp-block-cover h5:not(.has-text-color), .wp-block-cover h6:not(.has-text-color) { color: inherit; } .wp-block-cover-image.is-position-top-left, .wp-block-cover.is-position-top-left { align-items: flex-start; justify-content: flex-start; } .wp-block-cover-image.is-position-top-center, .wp-block-cover.is-position-top-center { align-items: flex-start; justify-content: center; } .wp-block-cover-image.is-position-top-right, .wp-block-cover.is-position-top-right { align-items: flex-start; justify-content: flex-end; } .wp-block-cover-image.is-position-center-left, .wp-block-cover.is-position-center-left { align-items: center; justify-content: flex-start; } .wp-block-cover-image.is-position-center-center, .wp-block-cover.is-position-center-center { align-items: center; justify-content: center; } .wp-block-cover-image.is-position-center-right, .wp-block-cover.is-position-center-right { align-items: center; justify-content: flex-end; } .wp-block-cover-image.is-position-bottom-left, .wp-block-cover.is-position-bottom-left { align-items: flex-end; justify-content: flex-start; } .wp-block-cover-image.is-position-bottom-center, .wp-block-cover.is-position-bottom-center { align-items: flex-end; justify-content: center; } .wp-block-cover-image.is-position-bottom-right, .wp-block-cover.is-position-bottom-right { align-items: flex-end; justify-content: flex-end; } .wp-block-cover-image.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container, .wp-block-cover.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container { margin: 0; width: auto; } .wp-block-cover-image img.wp-block-cover__image-background, .wp-block-cover-image video.wp-block-cover__video-background, .wp-block-cover img.wp-block-cover__image-background, .wp-block-cover video.wp-block-cover__video-background { position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: 0; padding: 0; width: 100%; height: 100%; max-width: none; max-height: none; -o-object-fit: cover; object-fit: cover; outline: none; border: none; box-shadow: none; } .wp-block-cover__video-background { z-index: 0; } .wp-block-cover__image-background { z-index: 0; } section.wp-block-cover-image h2, .wp-block-cover-image-text, .wp-block-cover-text { color: #fff; } section.wp-block-cover-image h2 a, section.wp-block-cover-image h2 a:hover, section.wp-block-cover-image h2 a:focus, section.wp-block-cover-image h2 a:active, .wp-block-cover-image-text a, .wp-block-cover-image-text a:hover, .wp-block-cover-image-text a:focus, .wp-block-cover-image-text a:active, .wp-block-cover-text a, .wp-block-cover-text a:hover, .wp-block-cover-text a:focus, .wp-block-cover-text a:active { color: #fff; } .wp-block-cover-image .wp-block-cover.has-left-content { justify-content: flex-start; } .wp-block-cover-image .wp-block-cover.has-right-content { justify-content: flex-end; } section.wp-block-cover-image.has-left-content > h2, .wp-block-cover-image.has-left-content .wp-block-cover-image-text, .wp-block-cover.has-left-content .wp-block-cover-text { margin-left: 0; text-align: left; } section.wp-block-cover-image.has-right-content > h2, .wp-block-cover-image.has-right-content .wp-block-cover-image-text, .wp-block-cover.has-right-content .wp-block-cover-text { margin-right: 0; text-align: right; } section.wp-block-cover-image > h2, .wp-block-cover-image .wp-block-cover-image-text, .wp-block-cover .wp-block-cover-text { font-size: 2em; line-height: 1.25; z-index: 1; margin-bottom: 0; max-width: 840px; padding: 0.44em; text-align: center; } .wp-block[data-align=left] > [data-type="core/embed"], .wp-block[data-align=right] > [data-type="core/embed"], .wp-block-embed.alignleft, .wp-block-embed.alignright { max-width: 360px; width: 100%; } .wp-block[data-align=left] > [data-type="core/embed"] .wp-block-embed__wrapper, .wp-block[data-align=right] > [data-type="core/embed"] .wp-block-embed__wrapper, .wp-block-embed.alignleft .wp-block-embed__wrapper, .wp-block-embed.alignright .wp-block-embed__wrapper { min-width: 280px; } .wp-block-cover .wp-block-embed { min-width: 320px; min-height: 240px; } .wp-block-embed { margin: 0 0 1em 0; overflow-wrap: break-word; } .wp-block-embed figcaption { margin-top: 0.5em; margin-bottom: 1em; } .wp-block-embed iframe { max-width: 100%; } .wp-block-embed__wrapper { position: relative; } .wp-embed-responsive .wp-has-aspect-ratio .wp-block-embed__wrapper::before { content: ""; display: block; padding-top: 50%; } .wp-embed-responsive .wp-has-aspect-ratio iframe { position: absolute; top: 0; right: 0; bottom: 0; left: 0; height: 100%; width: 100%; } .wp-embed-responsive .wp-embed-aspect-21-9 .wp-block-embed__wrapper::before { padding-top: 42.85%; } .wp-embed-responsive .wp-embed-aspect-18-9 .wp-block-embed__wrapper::before { padding-top: 50%; } .wp-embed-responsive .wp-embed-aspect-16-9 .wp-block-embed__wrapper::before { padding-top: 56.25%; } .wp-embed-responsive .wp-embed-aspect-4-3 .wp-block-embed__wrapper::before { padding-top: 75%; } .wp-embed-responsive .wp-embed-aspect-1-1 .wp-block-embed__wrapper::before { padding-top: 100%; } .wp-embed-responsive .wp-embed-aspect-9-16 .wp-block-embed__wrapper::before { padding-top: 177.77%; } .wp-embed-responsive .wp-embed-aspect-1-2 .wp-block-embed__wrapper::before { padding-top: 200%; } .wp-block-file { margin-bottom: 1.5em; } .wp-block-file.aligncenter { text-align: center; } .wp-block-file.alignright { /*rtl:ignore*/ text-align: right; } .wp-block-file .wp-block-file__embed { margin-bottom: 1em; } .wp-block-file .wp-block-file__button { background: #32373c; border-radius: 2em; color: #fff; font-size: 0.8em; padding: 0.5em 1em; } .wp-block-file a.wp-block-file__button { text-decoration: none; } .wp-block-file a.wp-block-file__button:hover, .wp-block-file a.wp-block-file__button:visited, .wp-block-file a.wp-block-file__button:focus, .wp-block-file a.wp-block-file__button:active { box-shadow: none; color: #fff; opacity: 0.85; text-decoration: none; } .wp-block-file * + .wp-block-file__button { margin-left: 0.75em; } .wp-block-gallery, .blocks-gallery-grid { display: flex; flex-wrap: wrap; list-style-type: none; padding: 0; margin: 0; } .wp-block-gallery .blocks-gallery-image, .wp-block-gallery .blocks-gallery-item, .blocks-gallery-grid .blocks-gallery-image, .blocks-gallery-grid .blocks-gallery-item { margin: 0 1em 1em 0; display: flex; flex-grow: 1; flex-direction: column; justify-content: center; position: relative; width: calc(50% - 1em); } .wp-block-gallery .blocks-gallery-image:nth-of-type(even), .wp-block-gallery .blocks-gallery-item:nth-of-type(even), .blocks-gallery-grid .blocks-gallery-image:nth-of-type(even), .blocks-gallery-grid .blocks-gallery-item:nth-of-type(even) { margin-right: 0; } .wp-block-gallery .blocks-gallery-image figure, .wp-block-gallery .blocks-gallery-item figure, .blocks-gallery-grid .blocks-gallery-image figure, .blocks-gallery-grid .blocks-gallery-item figure { margin: 0; height: 100%; display: flex; align-items: flex-end; justify-content: flex-start; } .wp-block-gallery .blocks-gallery-image img, .wp-block-gallery .blocks-gallery-item img, .blocks-gallery-grid .blocks-gallery-image img, .blocks-gallery-grid .blocks-gallery-item img { display: block; max-width: 100%; height: auto; width: auto; } .wp-block-gallery .blocks-gallery-image figcaption, .wp-block-gallery .blocks-gallery-item figcaption, .blocks-gallery-grid .blocks-gallery-image figcaption, .blocks-gallery-grid .blocks-gallery-item figcaption { position: absolute; bottom: 0; width: 100%; max-height: 100%; overflow: auto; padding: 3em 0.77em 0.7em; color: #fff; text-align: center; font-size: 0.8em; background: linear-gradient(0deg, rgba(0, 0, 0, 0.7) 0, rgba(0, 0, 0, 0.3) 70%, transparent); box-sizing: border-box; margin: 0; z-index: 2; } .wp-block-gallery .blocks-gallery-image figcaption img, .wp-block-gallery .blocks-gallery-item figcaption img, .blocks-gallery-grid .blocks-gallery-image figcaption img, .blocks-gallery-grid .blocks-gallery-item figcaption img { display: inline; } .wp-block-gallery figcaption, .blocks-gallery-grid figcaption { flex-grow: 1; } .wp-block-gallery.is-cropped .blocks-gallery-image a, .wp-block-gallery.is-cropped .blocks-gallery-image img, .wp-block-gallery.is-cropped .blocks-gallery-item a, .wp-block-gallery.is-cropped .blocks-gallery-item img, .blocks-gallery-grid.is-cropped .blocks-gallery-image a, .blocks-gallery-grid.is-cropped .blocks-gallery-image img, .blocks-gallery-grid.is-cropped .blocks-gallery-item a, .blocks-gallery-grid.is-cropped .blocks-gallery-item img { width: 100%; height: 100%; flex: 1; -o-object-fit: cover; object-fit: cover; } .wp-block-gallery.columns-1 .blocks-gallery-image, .wp-block-gallery.columns-1 .blocks-gallery-item, .blocks-gallery-grid.columns-1 .blocks-gallery-image, .blocks-gallery-grid.columns-1 .blocks-gallery-item { width: 100%; margin-right: 0; } @media (min-width: 600px) { .wp-block-gallery.columns-3 .blocks-gallery-image, .wp-block-gallery.columns-3 .blocks-gallery-item, .blocks-gallery-grid.columns-3 .blocks-gallery-image, .blocks-gallery-grid.columns-3 .blocks-gallery-item { width: calc(33.3333333333% - 0.6666666667em); margin-right: 1em; } .wp-block-gallery.columns-4 .blocks-gallery-image, .wp-block-gallery.columns-4 .blocks-gallery-item, .blocks-gallery-grid.columns-4 .blocks-gallery-image, .blocks-gallery-grid.columns-4 .blocks-gallery-item { width: calc(25% - 0.75em); margin-right: 1em; } .wp-block-gallery.columns-5 .blocks-gallery-image, .wp-block-gallery.columns-5 .blocks-gallery-item, .blocks-gallery-grid.columns-5 .blocks-gallery-image, .blocks-gallery-grid.columns-5 .blocks-gallery-item { width: calc(20% - 0.8em); margin-right: 1em; } .wp-block-gallery.columns-6 .blocks-gallery-image, .wp-block-gallery.columns-6 .blocks-gallery-item, .blocks-gallery-grid.columns-6 .blocks-gallery-image, .blocks-gallery-grid.columns-6 .blocks-gallery-item { width: calc(16.6666666667% - 0.8333333333em); margin-right: 1em; } .wp-block-gallery.columns-7 .blocks-gallery-image, .wp-block-gallery.columns-7 .blocks-gallery-item, .blocks-gallery-grid.columns-7 .blocks-gallery-image, .blocks-gallery-grid.columns-7 .blocks-gallery-item { width: calc(14.2857142857% - 0.8571428571em); margin-right: 1em; } .wp-block-gallery.columns-8 .blocks-gallery-image, .wp-block-gallery.columns-8 .blocks-gallery-item, .blocks-gallery-grid.columns-8 .blocks-gallery-image, .blocks-gallery-grid.columns-8 .blocks-gallery-item { width: calc(12.5% - 0.875em); margin-right: 1em; } .wp-block-gallery.columns-1 .blocks-gallery-image:nth-of-type(1n), .wp-block-gallery.columns-1 .blocks-gallery-item:nth-of-type(1n), .blocks-gallery-grid.columns-1 .blocks-gallery-image:nth-of-type(1n), .blocks-gallery-grid.columns-1 .blocks-gallery-item:nth-of-type(1n) { margin-right: 0; } .wp-block-gallery.columns-2 .blocks-gallery-image:nth-of-type(2n), .wp-block-gallery.columns-2 .blocks-gallery-item:nth-of-type(2n), .blocks-gallery-grid.columns-2 .blocks-gallery-image:nth-of-type(2n), .blocks-gallery-grid.columns-2 .blocks-gallery-item:nth-of-type(2n) { margin-right: 0; } .wp-block-gallery.columns-3 .blocks-gallery-image:nth-of-type(3n), .wp-block-gallery.columns-3 .blocks-gallery-item:nth-of-type(3n), .blocks-gallery-grid.columns-3 .blocks-gallery-image:nth-of-type(3n), .blocks-gallery-grid.columns-3 .blocks-gallery-item:nth-of-type(3n) { margin-right: 0; } .wp-block-gallery.columns-4 .blocks-gallery-image:nth-of-type(4n), .wp-block-gallery.columns-4 .blocks-gallery-item:nth-of-type(4n), .blocks-gallery-grid.columns-4 .blocks-gallery-image:nth-of-type(4n), .blocks-gallery-grid.columns-4 .blocks-gallery-item:nth-of-type(4n) { margin-right: 0; } .wp-block-gallery.columns-5 .blocks-gallery-image:nth-of-type(5n), .wp-block-gallery.columns-5 .blocks-gallery-item:nth-of-type(5n), .blocks-gallery-grid.columns-5 .blocks-gallery-image:nth-of-type(5n), .blocks-gallery-grid.columns-5 .blocks-gallery-item:nth-of-type(5n) { margin-right: 0; } .wp-block-gallery.columns-6 .blocks-gallery-image:nth-of-type(6n), .wp-block-gallery.columns-6 .blocks-gallery-item:nth-of-type(6n), .blocks-gallery-grid.columns-6 .blocks-gallery-image:nth-of-type(6n), .blocks-gallery-grid.columns-6 .blocks-gallery-item:nth-of-type(6n) { margin-right: 0; } .wp-block-gallery.columns-7 .blocks-gallery-image:nth-of-type(7n), .wp-block-gallery.columns-7 .blocks-gallery-item:nth-of-type(7n), .blocks-gallery-grid.columns-7 .blocks-gallery-image:nth-of-type(7n), .blocks-gallery-grid.columns-7 .blocks-gallery-item:nth-of-type(7n) { margin-right: 0; } .wp-block-gallery.columns-8 .blocks-gallery-image:nth-of-type(8n), .wp-block-gallery.columns-8 .blocks-gallery-item:nth-of-type(8n), .blocks-gallery-grid.columns-8 .blocks-gallery-image:nth-of-type(8n), .blocks-gallery-grid.columns-8 .blocks-gallery-item:nth-of-type(8n) { margin-right: 0; } } .wp-block-gallery .blocks-gallery-image:last-child, .wp-block-gallery .blocks-gallery-item:last-child, .blocks-gallery-grid .blocks-gallery-image:last-child, .blocks-gallery-grid .blocks-gallery-item:last-child { margin-right: 0; } .wp-block-gallery.alignleft, .wp-block-gallery.alignright, .blocks-gallery-grid.alignleft, .blocks-gallery-grid.alignright { max-width: 420px; width: 100%; } .wp-block-gallery.aligncenter .blocks-gallery-item figure, .blocks-gallery-grid.aligncenter .blocks-gallery-item figure { justify-content: center; } .wp-block-gallery:not(.is-cropped) .blocks-gallery-item { align-self: flex-start; } .wp-block-gallery.has-nested-images { display: flex; flex-wrap: wrap; } .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) { margin: 0 var(--gallery-block--gutter-size, 16px) var(--gallery-block--gutter-size, 16px) 0; width: calc(50% - (var(--gallery-block--gutter-size, 16px) / 2)); } .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image):last-of-type:not(#individual-image) { margin-right: 0; } .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image):nth-of-type(even) { margin-right: 0; } .wp-block-gallery.has-nested-images figure.wp-block-image { display: flex; flex-grow: 1; justify-content: center; position: relative; margin-top: auto; margin-bottom: auto; flex-direction: column; max-width: 100%; } .wp-block-gallery.has-nested-images figure.wp-block-image > div, .wp-block-gallery.has-nested-images figure.wp-block-image > a { margin: 0; flex-direction: column; flex-grow: 1; } .wp-block-gallery.has-nested-images figure.wp-block-image img { display: block; height: auto; max-width: 100% !important; width: auto; } .wp-block-gallery.has-nested-images figure.wp-block-image figcaption { background: linear-gradient(0deg, rgba(0, 0, 0, 0.7) 0, rgba(0, 0, 0, 0.3) 70%, transparent); bottom: 0; color: #fff; font-size: 13px; left: 0; margin-bottom: 0; max-height: 60%; overflow: auto; padding: 0 8px 8px; position: absolute; text-align: center; width: 100%; box-sizing: border-box; } .wp-block-gallery.has-nested-images figure.wp-block-image figcaption img { display: inline; } .wp-block-gallery.has-nested-images figure.wp-block-image.is-style-rounded > div, .wp-block-gallery.has-nested-images figure.wp-block-image.is-style-rounded > a { flex: 1 1 auto; } .wp-block-gallery.has-nested-images figure.wp-block-image.is-style-rounded figcaption { flex: initial; background: none; color: inherit; margin: 0; padding: 10px 10px 9px; position: relative; } .wp-block-gallery.has-nested-images figcaption { flex-grow: 1; flex-basis: 100%; text-align: center; } .wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image) { margin-top: 0; margin-bottom: auto; } .wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image) img { margin-bottom: var(--gallery-block--gutter-size, 16px); } .wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image) figcaption { bottom: var(--gallery-block--gutter-size, 16px); } .wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) { align-self: inherit; } .wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) > div:not(.components-drop-zone), .wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) > a { display: flex; } .wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) a, .wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) img { width: 100%; flex: 1 0 0%; height: 100%; -o-object-fit: cover; object-fit: cover; } .wp-block-gallery.has-nested-images.columns-1 figure.wp-block-image:not(#individual-image) { margin-right: 0; width: 100%; } @media (min-width: 600px) { .wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image) { margin-right: var(--gallery-block--gutter-size, 16px); width: calc(33.3333333333% - (var(--gallery-block--gutter-size, 16px) * 0.6666666667)); } .wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image).is-dragging ~ figure.wp-block-image:not(#individual-image) { margin-right: var(--gallery-block--gutter-size, 16px); } .wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image) { margin-right: var(--gallery-block--gutter-size, 16px); width: calc(25% - (var(--gallery-block--gutter-size, 16px) * 0.75)); } .wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image).is-dragging ~ figure.wp-block-image:not(#individual-image) { margin-right: var(--gallery-block--gutter-size, 16px); } .wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image:not(#individual-image) { margin-right: var(--gallery-block--gutter-size, 16px); width: calc(20% - (var(--gallery-block--gutter-size, 16px) * 0.8)); } .wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image:not(#individual-image).is-dragging ~ figure.wp-block-image:not(#individual-image) { margin-right: var(--gallery-block--gutter-size, 16px); } .wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#individual-image) { margin-right: var(--gallery-block--gutter-size, 16px); width: calc(16.6666666667% - (var(--gallery-block--gutter-size, 16px) * 0.8333333333)); } .wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#individual-image).is-dragging ~ figure.wp-block-image:not(#individual-image) { margin-right: var(--gallery-block--gutter-size, 16px); } .wp-block-gallery.has-nested-images.columns-7 figure.wp-block-image:not(#individual-image) { margin-right: var(--gallery-block--gutter-size, 16px); width: calc(14.2857142857% - (var(--gallery-block--gutter-size, 16px) * 0.8571428571)); } .wp-block-gallery.has-nested-images.columns-7 figure.wp-block-image:not(#individual-image).is-dragging ~ figure.wp-block-image:not(#individual-image) { margin-right: var(--gallery-block--gutter-size, 16px); } .wp-block-gallery.has-nested-images.columns-8 figure.wp-block-image:not(#individual-image) { margin-right: var(--gallery-block--gutter-size, 16px); width: calc(12.5% - (var(--gallery-block--gutter-size, 16px) * 0.875)); } .wp-block-gallery.has-nested-images.columns-8 figure.wp-block-image:not(#individual-image).is-dragging ~ figure.wp-block-image:not(#individual-image) { margin-right: var(--gallery-block--gutter-size, 16px); } .wp-block-gallery.has-nested-images.columns-1 figure.wp-block-image:not(#individual-image):nth-of-type(1n) { margin-right: 0; } .wp-block-gallery.has-nested-images.columns-2 figure.wp-block-image:not(#individual-image):nth-of-type(2n) { margin-right: 0; } .wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image):nth-of-type(3n) { margin-right: 0; } .wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image):nth-of-type(4n) { margin-right: 0; } .wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image:not(#individual-image):nth-of-type(5n) { margin-right: 0; } .wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#individual-image):nth-of-type(6n) { margin-right: 0; } .wp-block-gallery.has-nested-images.columns-7 figure.wp-block-image:not(#individual-image):nth-of-type(7n) { margin-right: 0; } .wp-block-gallery.has-nested-images.columns-8 figure.wp-block-image:not(#individual-image):nth-of-type(8n) { margin-right: 0; } .wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image) { margin-right: var(--gallery-block--gutter-size, 16px); width: calc(33.33% - (var(--gallery-block--gutter-size, 16px) * 0.6666666667)); } .wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):nth-of-type(3n+3) { margin-right: 0; } .wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(2), .wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(2) ~ figure.wp-block-image:not(#individual-image) { width: calc(50% - (var(--gallery-block--gutter-size, 16px) * 0.5)); } .wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(1) { width: 100%; } } .wp-block-gallery.has-nested-images.alignleft, .wp-block-gallery.has-nested-images.alignright { max-width: 420px; width: 100%; } .wp-block-gallery.has-nested-images.aligncenter { justify-content: center; } .wp-block-group { box-sizing: border-box; } h1, h2, h3, h4, h5, h6 { overflow-wrap: break-word; } h1.has-background, h2.has-background, h3.has-background, h4.has-background, h5.has-background, h6.has-background { padding: 1.25em 2.375em; } .wp-block-image { margin: 0 0 1em 0; } .wp-block-image img { height: auto; max-width: 100%; vertical-align: bottom; } .wp-block-image:not(.is-style-rounded) > a, .wp-block-image:not(.is-style-rounded) img { border-radius: inherit; } .wp-block-image.aligncenter { text-align: center; } .wp-block-image.alignfull img, .wp-block-image.alignwide img { height: auto; width: 100%; } .wp-block-image .alignleft, .wp-block-image .alignright, .wp-block-image .aligncenter { display: table; } .wp-block-image .alignleft > figcaption, .wp-block-image .alignright > figcaption, .wp-block-image .aligncenter > figcaption { display: table-caption; caption-side: bottom; } .wp-block-image .alignleft { /*rtl:ignore*/ float: left; /*rtl:ignore*/ margin-left: 0; margin-right: 1em; margin-top: 0.5em; margin-bottom: 0.5em; } .wp-block-image .alignright { /*rtl:ignore*/ float: right; /*rtl:ignore*/ margin-right: 0; margin-left: 1em; margin-top: 0.5em; margin-bottom: 0.5em; } .wp-block-image .aligncenter { margin-left: auto; margin-right: auto; } .wp-block-image figcaption { margin-top: 0.5em; margin-bottom: 1em; } .wp-block-image.is-style-rounded img { border-radius: 9999px; } .wp-block-image.is-style-circle-mask img { border-radius: 9999px; } @supports ((-webkit-mask-image: none) or (mask-image: none)) or (-webkit-mask-image: none) { .wp-block-image.is-style-circle-mask img { /* stylelint-disable */ -webkit-mask-image: url('data:image/svg+xml;utf8,'); mask-image: url('data:image/svg+xml;utf8,'); /* stylelint-enable */ mask-mode: alpha; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; border-radius: 0; } } .wp-block-image figure { margin: 0; } ol.wp-block-latest-comments { margin-left: 0; } .wp-block-latest-comments .wp-block-latest-comments { padding-left: 0; } .wp-block-latest-comments__comment { line-height: 1.1; list-style: none; margin-bottom: 1em; } .has-avatars .wp-block-latest-comments__comment { min-height: 2.25em; list-style: none; } .has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-meta, .has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-excerpt { margin-left: 3.25em; } .has-dates .wp-block-latest-comments__comment, .has-excerpts .wp-block-latest-comments__comment { line-height: 1.5; } .wp-block-latest-comments__comment-excerpt p { font-size: 0.875em; line-height: 1.8; margin: 0.36em 0 1.4em; } .wp-block-latest-comments__comment-date { display: block; font-size: 0.75em; } .wp-block-latest-comments .avatar, .wp-block-latest-comments__comment-avatar { border-radius: 1.5em; display: block; float: left; height: 2.5em; margin-right: 0.75em; width: 2.5em; } .wp-block-latest-posts.alignleft { /*rtl:ignore*/ margin-right: 2em; } .wp-block-latest-posts.alignright { /*rtl:ignore*/ margin-left: 2em; } .wp-block-latest-posts.wp-block-latest-posts__list { list-style: none; padding-left: 0; } .wp-block-latest-posts.wp-block-latest-posts__list li { clear: both; } .wp-block-latest-posts.is-grid { display: flex; flex-wrap: wrap; padding: 0; } .wp-block-latest-posts.is-grid li { margin: 0 1.25em 1.25em 0; width: 100%; } @media (min-width: 600px) { .wp-block-latest-posts.columns-2 li { width: calc((100% / 2) - 1.25em + (1.25em / 2)); } .wp-block-latest-posts.columns-2 li:nth-child(2n) { margin-right: 0; } .wp-block-latest-posts.columns-3 li { width: calc((100% / 3) - 1.25em + (1.25em / 3)); } .wp-block-latest-posts.columns-3 li:nth-child(3n) { margin-right: 0; } .wp-block-latest-posts.columns-4 li { width: calc((100% / 4) - 1.25em + (1.25em / 4)); } .wp-block-latest-posts.columns-4 li:nth-child(4n) { margin-right: 0; } .wp-block-latest-posts.columns-5 li { width: calc((100% / 5) - 1.25em + (1.25em / 5)); } .wp-block-latest-posts.columns-5 li:nth-child(5n) { margin-right: 0; } .wp-block-latest-posts.columns-6 li { width: calc((100% / 6) - 1.25em + (1.25em / 6)); } .wp-block-latest-posts.columns-6 li:nth-child(6n) { margin-right: 0; } } .wp-block-latest-posts__post-date, .wp-block-latest-posts__post-author { display: block; font-size: 0.8125em; } .wp-block-latest-posts__post-excerpt { margin-top: 0.5em; margin-bottom: 1em; } .wp-block-latest-posts__featured-image a { display: inline-block; } .wp-block-latest-posts__featured-image img { height: auto; width: auto; max-width: 100%; } .wp-block-latest-posts__featured-image.alignleft { /*rtl:ignore*/ margin-right: 1em; } .wp-block-latest-posts__featured-image.alignright { /*rtl:ignore*/ margin-left: 1em; } .wp-block-latest-posts__featured-image.aligncenter { margin-bottom: 1em; text-align: center; } .block-editor-image-alignment-control__row .components-base-control__field { display: flex; justify-content: space-between; align-items: center; } .block-editor-image-alignment-control__row .components-base-control__field .components-base-control__label { margin-bottom: 0; } ol, ul { overflow-wrap: break-word; } ol.has-background, ul.has-background { padding: 1.25em 2.375em; } .wp-block-media-text { /*!rtl:begin:ignore*/ direction: ltr; /*!rtl:end:ignore*/ display: grid; grid-template-columns: 50% 1fr; grid-template-rows: auto; } .wp-block-media-text.has-media-on-the-right { grid-template-columns: 1fr 50%; } .wp-block-media-text.is-vertically-aligned-top .wp-block-media-text__content, .wp-block-media-text.is-vertically-aligned-top .wp-block-media-text__media { align-self: start; } .wp-block-media-text .wp-block-media-text__content, .wp-block-media-text .wp-block-media-text__media, .wp-block-media-text.is-vertically-aligned-center .wp-block-media-text__content, .wp-block-media-text.is-vertically-aligned-center .wp-block-media-text__media { align-self: center; } .wp-block-media-text.is-vertically-aligned-bottom .wp-block-media-text__content, .wp-block-media-text.is-vertically-aligned-bottom .wp-block-media-text__media { align-self: end; } .wp-block-media-text .wp-block-media-text__media { /*!rtl:begin:ignore*/ grid-column: 1; grid-row: 1; /*!rtl:end:ignore*/ margin: 0; } .wp-block-media-text .wp-block-media-text__content { direction: ltr; /*!rtl:begin:ignore*/ grid-column: 2; grid-row: 1; /*!rtl:end:ignore*/ padding: 0 8% 0 8%; word-break: break-word; } .wp-block-media-text.has-media-on-the-right .wp-block-media-text__media { /*!rtl:begin:ignore*/ grid-column: 2; grid-row: 1; /*!rtl:end:ignore*/ } .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content { /*!rtl:begin:ignore*/ grid-column: 1; grid-row: 1; /*!rtl:end:ignore*/ } .wp-block-media-text__media img, .wp-block-media-text__media video { height: auto; max-width: unset; width: 100%; vertical-align: middle; } .wp-block-media-text.is-image-fill .wp-block-media-text__media { height: 100%; min-height: 250px; background-size: cover; } .wp-block-media-text.is-image-fill .wp-block-media-text__media > a { display: block; height: 100%; } .wp-block-media-text.is-image-fill .wp-block-media-text__media img { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; } /* * Here we here not able to use a mobile first CSS approach. * Custom widths are set using inline styles, and on mobile, * we need 100% width, so we use important to overwrite the inline style. * If the style were set on mobile first, on desktop styles, * we would have no way of setting the style again to the inline style. */ @media (max-width: 600px) { .wp-block-media-text.is-stacked-on-mobile { grid-template-columns: 100% !important; } .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media { grid-column: 1; grid-row: 1; } .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content { grid-column: 1; grid-row: 2; } } .wp-block-navigation { position: relative; --navigation-layout-justification-setting: flex-start; --navigation-layout-direction: row; --navigation-layout-wrap: wrap; --navigation-layout-justify: flex-start; --navigation-layout-align: center; } .wp-block-navigation ul { margin-top: 0; margin-bottom: 0; margin-left: 0; padding-left: 0; } .wp-block-navigation ul, .wp-block-navigation ul li { list-style: none; padding: 0; } .wp-block-navigation .wp-block-navigation-item { display: flex; align-items: center; position: relative; } .wp-block-navigation .wp-block-navigation-item .wp-block-navigation__submenu-container:empty { display: none; } .wp-block-navigation .wp-block-navigation-item__content { color: inherit; display: block; padding: 0; } .wp-block-navigation[style*=text-decoration] .wp-block-navigation-item, .wp-block-navigation[style*=text-decoration] .wp-block-navigation__submenu-container { text-decoration: inherit; } .wp-block-navigation[style*=text-decoration] a { text-decoration: inherit; } .wp-block-navigation[style*=text-decoration] a:focus, .wp-block-navigation[style*=text-decoration] a:active { text-decoration: inherit; } .wp-block-navigation:not([style*=text-decoration]) a { text-decoration: none; } .wp-block-navigation:not([style*=text-decoration]) a:focus, .wp-block-navigation:not([style*=text-decoration]) a:active { text-decoration: none; } .wp-block-navigation .wp-block-navigation__submenu-icon { align-self: center; line-height: 0; display: inline-block; vertical-align: middle; font-size: inherit; padding: 0; background-color: inherit; color: currentColor; border: none; margin-left: 0.25em; width: 0.6em; height: 0.6em; } .wp-block-navigation .wp-block-navigation__submenu-icon svg { display: inline-block; stroke: currentColor; width: inherit; height: inherit; } .wp-block-navigation.is-vertical { --navigation-layout-direction: column; --navigation-layout-justify: initial; --navigation-layout-align: flex-start; } .wp-block-navigation.no-wrap { --navigation-layout-wrap: nowrap; } .wp-block-navigation.items-justified-center { --navigation-layout-justification-setting: center; --navigation-layout-justify: center; } .wp-block-navigation.items-justified-center.is-vertical { --navigation-layout-align: center; } .wp-block-navigation.items-justified-right { --navigation-layout-justification-setting: flex-end; --navigation-layout-justify: flex-end; } .wp-block-navigation.items-justified-right.is-vertical { --navigation-layout-align: flex-end; } .wp-block-navigation.items-justified-space-between { --navigation-layout-justification-setting: space-between; --navigation-layout-justify: space-between; } .wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) { background-color: inherit; color: inherit; position: absolute; z-index: 2; display: flex; flex-direction: column; align-items: normal; opacity: 0; transition: opacity 0.1s linear; visibility: hidden; width: 0; height: 0; overflow: hidden; left: -1px; top: 100%; } .wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) > .wp-block-navigation-item > .wp-block-navigation-item__content { display: flex; flex-grow: 1; } .wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) > .wp-block-navigation-item > .wp-block-navigation-item__content .wp-block-navigation__submenu-icon { margin-right: 0; margin-left: auto; } .wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) .wp-block-navigation-item__content { margin: 0; } @media (min-width: 782px) { .wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) .wp-block-navigation__submenu-container { left: 100%; top: -1px; } .wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) .wp-block-navigation__submenu-container::before { content: ""; position: absolute; right: 100%; height: 100%; display: block; width: 0.5em; background: transparent; } .wp-block-navigation .has-child :where(.wp-block-navigation__submenu-container) .wp-block-navigation__submenu-icon svg { transform: rotate(-90deg); } } .wp-block-navigation .has-child:where(:not(.open-on-click)):hover > .wp-block-navigation__submenu-container { visibility: visible; overflow: visible; opacity: 1; width: auto; height: auto; min-width: 200px; } .wp-block-navigation .has-child:where(:not(.open-on-click):not(.open-on-hover-click)):focus-within > .wp-block-navigation__submenu-container { visibility: visible; overflow: visible; opacity: 1; width: auto; height: auto; min-width: 200px; } .wp-block-navigation .has-child .wp-block-navigation-submenu__toggle[aria-expanded=true] + .wp-block-navigation__submenu-container { visibility: visible; overflow: visible; opacity: 1; width: auto; height: auto; min-width: 200px; } .wp-block-navigation.has-background .has-child .wp-block-navigation__submenu-container { left: 0; top: 100%; } @media (min-width: 782px) { .wp-block-navigation.has-background .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container { left: 100%; top: 0; } } .wp-block-navigation-submenu { position: relative; display: flex; } .wp-block-navigation-submenu .wp-block-navigation__submenu-icon svg { stroke: currentColor; } button.wp-block-navigation-item__content { background-color: transparent; border: none; color: currentColor; font-size: inherit; font-family: inherit; line-height: inherit; text-align: left; } .wp-block-navigation-submenu__toggle { cursor: pointer; } /** * Margins */ .wp-block-navigation, .wp-block-navigation .wp-block-page-list, .wp-block-navigation__container, .wp-block-navigation__responsive-container-content { gap: var(--wp--style--block-gap, 2em); } .wp-block-navigation:where(.has-background), .wp-block-navigation:where(.has-background) .wp-block-navigation .wp-block-page-list, .wp-block-navigation:where(.has-background) .wp-block-navigation__container { gap: var(--wp--style--block-gap, 0.5em); } /** * Paddings */ .wp-block-navigation:where(.has-background) .wp-block-navigation-item__content { padding: 0.5em 1em; } .wp-block-navigation :where(.wp-block-navigation__submenu-container) .wp-block-navigation-item__content { padding: 0.5em 1em; } /** * Justifications. */ .wp-block-navigation.items-justified-space-between .wp-block-page-list > .has-child:last-child .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-space-between > .wp-block-navigation__container > .has-child:last-child .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-right .wp-block-page-list > .has-child .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container { left: auto; right: 0; } .wp-block-navigation.items-justified-space-between .wp-block-page-list > .has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-space-between > .wp-block-navigation__container > .has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-right .wp-block-page-list > .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container { left: -1px; right: -1px; } @media (min-width: 782px) { .wp-block-navigation.items-justified-space-between .wp-block-page-list > .has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-space-between > .wp-block-navigation__container > .has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-right .wp-block-page-list > .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container { left: auto; right: 100%; } } .wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container { background-color: #fff; color: #000; border: 1px solid rgba(0, 0, 0, 0.15); } .wp-block-navigation__container { display: flex; flex-wrap: var(--navigation-layout-wrap, wrap); flex-direction: var(--navigation-layout-direction, initial); justify-content: var(--navigation-layout-justify, initial); align-items: var(--navigation-layout-align, initial); list-style: none; margin: 0; padding-left: 0; } .wp-block-navigation__container .is-responsive { display: none; } .wp-block-navigation__container:only-child, .wp-block-page-list:only-child { flex-grow: 1; } /** * Mobile menu. */ .wp-block-navigation__responsive-container { display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; } .wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content { display: flex; flex-wrap: var(--navigation-layout-wrap, wrap); flex-direction: var(--navigation-layout-direction, initial); justify-content: var(--navigation-layout-justify, initial); align-items: var(--navigation-layout-align, initial); } .wp-block-navigation__responsive-container:not(.is-menu-open.is-menu-open) { color: inherit !important; background-color: inherit !important; } .wp-block-navigation__responsive-container.is-menu-open { display: flex; flex-direction: column; background-color: inherit; padding: 2em; overflow: auto; z-index: 100000; } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding-top: calc(2em + 24px); overflow: visible; display: flex; flex-direction: column; flex-wrap: nowrap; align-items: var(--navigation-layout-justification-setting, inherit); } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-page-list, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container { justify-content: flex-start; } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-icon { display: none; } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .submenu-container, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container { opacity: 1; visibility: visible; height: auto; width: auto; overflow: initial; min-width: 200px; position: static; border: none; padding-left: 2em; padding-right: 2em; } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container { gap: var(--wp--style--block-gap, 2em); } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container { padding-top: var(--wp--style--block-gap, 2em); } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content { padding: 0; } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-page-list { display: flex; flex-direction: column; align-items: var(--navigation-layout-justification-setting, initial); } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation__submenu-container, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item, .wp-block-navigation__responsive-container.is-menu-open .wp-block-page-list { color: inherit !important; background: transparent !important; } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container { right: auto; left: auto; } @media (min-width: 600px) { .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: block; width: 100%; position: relative; z-index: auto; background-color: inherit; } .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) .wp-block-navigation__responsive-container-close { display: none; } .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container { left: 0; } } .wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open { background-color: #fff; color: #000; } .wp-block-navigation__responsive-container-open, .wp-block-navigation__responsive-container-close { vertical-align: middle; cursor: pointer; color: currentColor; background: transparent; border: none; margin: 0; padding: 0; } .wp-block-navigation__responsive-container-open svg, .wp-block-navigation__responsive-container-close svg { fill: currentColor; pointer-events: none; display: block; width: 24px; height: 24px; } .wp-block-navigation__responsive-container-open { display: flex; } @media (min-width: 600px) { .wp-block-navigation__responsive-container-open:not(.always-shown) { display: none; } } .wp-block-navigation__responsive-container-close { position: absolute; top: 0; right: 0; z-index: 2; } .wp-block-navigation__responsive-close { width: 100%; } .is-menu-open .wp-block-navigation__responsive-close, .is-menu-open .wp-block-navigation__responsive-dialog, .is-menu-open .wp-block-navigation__responsive-container-content { box-sizing: border-box; } .wp-block-navigation__responsive-dialog { position: relative; } html.has-modal-open { overflow: hidden; } .wp-block-navigation .wp-block-navigation-item__label { word-break: normal; overflow-wrap: break-word; } .wp-block-navigation .wp-block-home-link__content { color: inherit; display: block; } .wp-block-navigation[style*=text-decoration] .wp-block-home-link { text-decoration: inherit; } .wp-block-navigation[style*=text-decoration] .wp-block-home-link__content { text-decoration: inherit; } .wp-block-navigation[style*=text-decoration] .wp-block-home-link__content:focus, .wp-block-navigation[style*=text-decoration] .wp-block-home-link__content:active { text-decoration: inherit; } .wp-block-navigation:not([style*=text-decoration]) .wp-block-home-link__content { text-decoration: none; } .wp-block-navigation:not([style*=text-decoration]) .wp-block-home-link__content:focus, .wp-block-navigation:not([style*=text-decoration]) .wp-block-home-link__content:active { text-decoration: none; } .wp-block-navigation:not(.has-background) .wp-block-navigation__container .wp-block-home-link__container { background-color: #fff; color: #000; border: 1px solid rgba(0, 0, 0, 0.15); } .wp-block-navigation:not(.has-background) .wp-block-navigation__container .wp-block-home-link__container .wp-block-home-link__container { top: -1px; } .wp-block-navigation .wp-block-page-list { display: flex; flex-direction: var(--navigation-layout-direction, initial); justify-content: var(--navigation-layout-justify, initial); align-items: var(--navigation-layout-align, initial); flex-wrap: var(--navigation-layout-wrap, wrap); background-color: inherit; } .wp-block-navigation .wp-block-navigation-item { background-color: inherit; } .is-small-text { font-size: 0.875em; } .is-regular-text { font-size: 1em; } .is-large-text { font-size: 2.25em; } .is-larger-text { font-size: 3em; } .has-drop-cap:not(:focus)::first-letter { float: left; font-size: 8.4em; line-height: 0.68; font-weight: 100; margin: 0.05em 0.1em 0 0; text-transform: uppercase; font-style: normal; } p { overflow-wrap: break-word; } p.has-drop-cap.has-background { overflow: hidden; } p.has-background { padding: 1.25em 2.375em; } :where(p.has-text-color:not(.has-link-color)) a { color: inherit; } .wp-block-post-author { display: flex; flex-wrap: wrap; } .wp-block-post-author__byline { width: 100%; margin-top: 0; margin-bottom: 0; font-size: 0.5em; } .wp-block-post-author__avatar { margin-right: 1em; } .wp-block-post-author__bio { margin-bottom: 0.7em; font-size: 0.7em; } .wp-block-post-author__content { flex-grow: 1; flex-basis: 0; } .wp-block-post-author__name { margin: 0; } .wp-block-post-comments > h3:first-of-type { margin-top: 0; } .wp-block-post-comments .commentlist { list-style: none; margin: 0; padding: 0; } .wp-block-post-comments .commentlist .comment { min-height: 2.25em; padding-left: 3.25em; } .wp-block-post-comments .commentlist .comment p { font-size: 0.875em; line-height: 1.8; margin: 0.36em 0 1.4em; } .wp-block-post-comments .commentlist .children { list-style: none; margin: 0; padding: 0; } .wp-block-post-comments .comment-author { line-height: 1.5; } .wp-block-post-comments .comment-author .avatar { border-radius: 1.5em; display: block; float: left; height: 2.5em; margin-right: 0.75em; width: 2.5em; } .wp-block-post-comments .comment-author cite { font-style: normal; } .wp-block-post-comments .comment-meta { line-height: 1.5; margin-left: -3.25em; } .wp-block-post-comments .comment-body .commentmetadata { font-size: 0.75em; } .wp-block-post-comments .comment-form-comment label, .wp-block-post-comments .comment-form-author label, .wp-block-post-comments .comment-form-email label, .wp-block-post-comments .comment-form-url label { display: block; margin-bottom: 0.25em; } .wp-block-post-comments .comment-form textarea, .wp-block-post-comments .comment-form input:not([type=submit]):not([type=checkbox]) { display: block; box-sizing: border-box; width: 100%; } .wp-block-post-comments .comment-form-cookies-consent { display: flex; gap: 0.25em; } .wp-block-post-comments .comment-form-cookies-consent #wp-comment-cookies-consent { margin-top: 0.35em; } .wp-block-post-comments .reply { font-size: 0.75em; margin-bottom: 1.4em; } .wp-block-post-comments textarea, .wp-block-post-comments input:not([type=submit]) { border: 1px solid #949494; font-size: 1em; font-family: inherit; } .wp-block-post-comments textarea, .wp-block-post-comments input:not([type=submit]):not([type=checkbox]) { padding: calc(0.667em + 2px); } .wp-block-post-comments input[type=submit] { border: none; } .wp-block-post-comments-form[style*=font-weight] :where(.comment-reply-title) { font-weight: inherit; } .wp-block-post-comments-form[style*=font-family] :where(.comment-reply-title) { font-family: inherit; } .wp-block-post-comments-form[class*=-font-size] :where(.comment-reply-title), .wp-block-post-comments-form[style*=font-size] :where(.comment-reply-title) { font-size: inherit; } .wp-block-post-comments-form[style*=line-height] :where(.comment-reply-title) { line-height: inherit; } .wp-block-post-comments-form[style*=font-style] :where(.comment-reply-title) { font-style: inherit; } .wp-block-post-comments-form[style*=letter-spacing] :where(.comment-reply-title) { letter-spacing: inherit; } .wp-block-post-comments-form input[type=submit] { border: none; box-shadow: none; cursor: pointer; display: inline-block; text-align: center; overflow-wrap: break-word; } .wp-block-post-comments-form textarea, .wp-block-post-comments-form input:not([type=submit]) { border: 1px solid #949494; font-size: 1em; font-family: inherit; } .wp-block-post-comments-form textarea, .wp-block-post-comments-form input:not([type=submit]):not([type=checkbox]) { padding: calc(0.667em + 2px); } .wp-block-post-comments-form .comment-form textarea, .wp-block-post-comments-form .comment-form input:not([type=submit]):not([type=checkbox]) { display: block; box-sizing: border-box; width: 100%; } .wp-block-post-comments-form .comment-form-author label, .wp-block-post-comments-form .comment-form-email label, .wp-block-post-comments-form .comment-form-url label { display: block; margin-bottom: 0.25em; } .wp-block-post-comments-form .comment-form-cookies-consent { display: flex; gap: 0.25em; } .wp-block-post-comments-form .comment-form-cookies-consent #wp-comment-cookies-consent { margin-top: 0.35em; } .wp-block-post-excerpt__more-link { display: inline-block; } .wp-block-post-terms__separator { white-space: pre-wrap; } .wp-block-post-title a { display: inline-block; } .wp-block-preformatted { white-space: pre-wrap; } .wp-block-preformatted.has-background { padding: 1.25em 2.375em; } .wp-block-pullquote { margin: 0 0 1em 0; padding: 3em 0; text-align: center; overflow-wrap: break-word; } .wp-block-pullquote p, .wp-block-pullquote blockquote, .wp-block-pullquote cite { color: inherit; } .wp-block-pullquote.has-text-align-left, .wp-block-pullquote.has-text-align-right, .wp-block-pullquote.alignleft, .wp-block-pullquote.alignright { max-width: 420px; } .wp-block-pullquote.has-text-align-left p, .wp-block-pullquote.has-text-align-right p, .wp-block-pullquote.alignleft p, .wp-block-pullquote.alignright p { font-size: 1.25em; } .wp-block-pullquote p { font-size: 1.75em; line-height: 1.6; } .wp-block-pullquote cite, .wp-block-pullquote footer { position: relative; } .wp-block-pullquote .has-text-color a { color: inherit; } .wp-block-pullquote.has-text-align-left blockquote { text-align: left; } .wp-block-pullquote.has-text-align-right blockquote { text-align: right; } .wp-block-pullquote:not(.is-style-solid-color) { background: none; } .wp-block-pullquote.is-style-solid-color { border: none; } .wp-block-pullquote.is-style-solid-color blockquote { margin-left: auto; margin-right: auto; max-width: 60%; } .wp-block-pullquote.is-style-solid-color blockquote p { margin-top: 0; margin-bottom: 0; font-size: 2em; } .wp-block-pullquote.is-style-solid-color blockquote cite { text-transform: none; font-style: normal; } .wp-block-pullquote cite { color: inherit; } .wp-block-post-template, .wp-block-query-loop { margin-top: 0; margin-bottom: 0; max-width: 100%; list-style: none; padding: 0; } .wp-block-post-template.wp-block-post-template, .wp-block-query-loop.wp-block-post-template { background: none; } .wp-block-post-template.is-flex-container, .wp-block-query-loop.is-flex-container { flex-direction: row; display: flex; flex-wrap: wrap; gap: 1.25em; } .wp-block-post-template.is-flex-container li, .wp-block-query-loop.is-flex-container li { margin: 0; width: 100%; } @media (min-width: 600px) { .wp-block-post-template.is-flex-container.is-flex-container.columns-2 > li, .wp-block-query-loop.is-flex-container.is-flex-container.columns-2 > li { width: calc((100% / 2) - 1.25em + (1.25em / 2)); } .wp-block-post-template.is-flex-container.is-flex-container.columns-3 > li, .wp-block-query-loop.is-flex-container.is-flex-container.columns-3 > li { width: calc((100% / 3) - 1.25em + (1.25em / 3)); } .wp-block-post-template.is-flex-container.is-flex-container.columns-4 > li, .wp-block-query-loop.is-flex-container.is-flex-container.columns-4 > li { width: calc((100% / 4) - 1.25em + (1.25em / 4)); } .wp-block-post-template.is-flex-container.is-flex-container.columns-5 > li, .wp-block-query-loop.is-flex-container.is-flex-container.columns-5 > li { width: calc((100% / 5) - 1.25em + (1.25em / 5)); } .wp-block-post-template.is-flex-container.is-flex-container.columns-6 > li, .wp-block-query-loop.is-flex-container.is-flex-container.columns-6 > li { width: calc((100% / 6) - 1.25em + (1.25em / 6)); } } .wp-block-query-pagination > .wp-block-query-pagination-next, .wp-block-query-pagination > .wp-block-query-pagination-previous, .wp-block-query-pagination > .wp-block-query-pagination-numbers { /*rtl:ignore*/ margin-right: 0.5em; margin-bottom: 0.5em; } .wp-block-query-pagination > .wp-block-query-pagination-next:last-child, .wp-block-query-pagination > .wp-block-query-pagination-previous:last-child, .wp-block-query-pagination > .wp-block-query-pagination-numbers:last-child { /*rtl:ignore*/ margin-right: 0; } .wp-block-query-pagination .wp-block-query-pagination-previous-arrow { margin-right: 1ch; display: inline-block; } .wp-block-query-pagination .wp-block-query-pagination-previous-arrow:not(.is-arrow-chevron) { transform: scaleX(1) /*rtl:scaleX(-1);*/; } .wp-block-query-pagination .wp-block-query-pagination-next-arrow { margin-left: 1ch; display: inline-block; } .wp-block-query-pagination .wp-block-query-pagination-next-arrow:not(.is-arrow-chevron) { transform: scaleX(1) /*rtl:scaleX(-1);*/; } .wp-block-query-pagination.aligncenter { justify-content: center; } .wp-block-quote { overflow-wrap: break-word; } .wp-block-quote.is-style-large, .wp-block-quote.is-large { margin-bottom: 1em; padding: 0 1em; } .wp-block-quote.is-style-large p, .wp-block-quote.is-large p { font-size: 1.5em; font-style: italic; line-height: 1.6; } .wp-block-quote.is-style-large cite, .wp-block-quote.is-style-large footer, .wp-block-quote.is-large cite, .wp-block-quote.is-large footer { font-size: 1.125em; text-align: right; } ul.wp-block-rss { list-style: none; padding: 0; } ul.wp-block-rss.wp-block-rss { box-sizing: border-box; } ul.wp-block-rss.alignleft { /*rtl:ignore*/ margin-right: 2em; } ul.wp-block-rss.alignright { /*rtl:ignore*/ margin-left: 2em; } ul.wp-block-rss.is-grid { display: flex; flex-wrap: wrap; padding: 0; list-style: none; } ul.wp-block-rss.is-grid li { margin: 0 1em 1em 0; width: 100%; } @media (min-width: 600px) { ul.wp-block-rss.columns-2 li { width: calc(( 100% / 2 ) - 1em); } ul.wp-block-rss.columns-3 li { width: calc(( 100% / 3 ) - 1em); } ul.wp-block-rss.columns-4 li { width: calc(( 100% / 4 ) - 1em); } ul.wp-block-rss.columns-5 li { width: calc(( 100% / 5 ) - 1em); } ul.wp-block-rss.columns-6 li { width: calc(( 100% / 6 ) - 1em); } } .wp-block-rss__item-publish-date, .wp-block-rss__item-author { display: block; font-size: 0.8125em; } .wp-block-search__button { background: #f7f7f7; border: 1px solid #ccc; padding: 0.375em 0.625em; color: #32373c; margin-left: 0.625em; word-break: normal; font-size: inherit; font-family: inherit; line-height: inherit; } .wp-block-search__button.has-icon { line-height: 0; } .wp-block-search__button svg { min-width: 1.5em; min-height: 1.5em; fill: currentColor; } .wp-block-search__inside-wrapper { display: flex; flex: auto; flex-wrap: nowrap; max-width: 100%; } .wp-block-search__label { width: 100%; } .wp-block-search__input { padding: 8px; flex-grow: 1; min-width: 3em; border: 1px solid #949494; font-size: inherit; font-family: inherit; line-height: inherit; } .wp-block-search.wp-block-search__button-only .wp-block-search__button { margin-left: 0; } .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper { padding: 4px; border: 1px solid #949494; } .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__input { border-radius: 0; border: none; padding: 0 0 0 0.25em; } .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__input:focus { outline: none; } .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__button { padding: 0.125em 0.5em; } .wp-block-search.aligncenter .wp-block-search__inside-wrapper { margin: auto; } .wp-block-separator { border-top: 1px solid currentColor; border-bottom: 1px solid currentColor; } .wp-block-separator.is-style-wide { border-bottom-width: 1px; } .wp-block-separator.is-style-dots { background: none !important; border: none; text-align: center; line-height: 1; height: auto; } .wp-block-separator.is-style-dots::before { content: "···"; color: currentColor; font-size: 1.5em; letter-spacing: 2em; /*rtl:ignore*/ padding-left: 2em; font-family: serif; } .wp-block-site-logo { line-height: 0; } .wp-block-site-logo a { display: inline-block; } .wp-block-site-logo.is-default-size img { width: 120px; height: auto; } .wp-block-site-logo a, .wp-block-site-logo img { border-radius: inherit; } .wp-block-site-logo.aligncenter { margin-left: auto; margin-right: auto; text-align: center; } .wp-block-site-logo.is-style-rounded { border-radius: 9999px; } .wp-block-social-links { padding-left: 0; padding-right: 0; text-indent: 0; margin-left: 0; } .wp-block-social-links .wp-social-link a, .wp-block-social-links .wp-social-link a:hover { text-decoration: none; border-bottom: 0; box-shadow: none; } .wp-block-social-links .wp-social-link a { padding: 0.25em; } .wp-block-social-links .wp-social-link svg { width: 1em; height: 1em; } .wp-block-social-links.has-small-icon-size { font-size: 16px; } .wp-block-social-links, .wp-block-social-links.has-normal-icon-size { font-size: 24px; } .wp-block-social-links.has-large-icon-size { font-size: 36px; } .wp-block-social-links.has-huge-icon-size { font-size: 48px; } .wp-block-social-links.aligncenter { justify-content: center; display: flex; } .wp-block-social-links.alignright { justify-content: flex-end; } .wp-block-social-link { display: block; border-radius: 9999px; transition: transform 0.1s ease; height: auto; } @media (prefers-reduced-motion: reduce) { .wp-block-social-link { transition-duration: 0s; transition-delay: 0s; } } .wp-block-social-link a { display: block; line-height: 0; transition: transform 0.1s ease; } .wp-block-social-link:hover { transform: scale(1.1); } .wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor, .wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:hover, .wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:active, .wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:visited, .wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor svg { color: currentColor; fill: currentColor; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link { background-color: #f0f0f0; color: #444; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-amazon { background-color: #f90; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-bandcamp { background-color: #1ea0c3; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-behance { background-color: #0757fe; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-codepen { background-color: #1e1f26; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-deviantart { background-color: #02e49b; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-dribbble { background-color: #e94c89; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-dropbox { background-color: #4280ff; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-etsy { background-color: #f45800; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-facebook { background-color: #1778f2; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-fivehundredpx { background-color: #000; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-flickr { background-color: #0461dd; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-foursquare { background-color: #e65678; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-github { background-color: #24292d; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-goodreads { background-color: #eceadd; color: #382110; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-google { background-color: #ea4434; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-instagram { background-color: #f00075; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-lastfm { background-color: #e21b24; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-linkedin { background-color: #0d66c2; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-mastodon { background-color: #3288d4; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-medium { background-color: #02ab6c; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-meetup { background-color: #f6405f; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-patreon { background-color: #ff424d; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-pinterest { background-color: #e60122; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-pocket { background-color: #ef4155; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-reddit { background-color: #fe4500; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-skype { background-color: #0478d7; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-snapchat { background-color: #fefc00; color: #fff; stroke: #000; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-soundcloud { background-color: #ff5600; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-spotify { background-color: #1bd760; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-telegram { background-color: #2aabee; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-tiktok { background-color: #000; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-tumblr { background-color: #011835; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-twitch { background-color: #6440a4; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-twitter { background-color: #1da1f2; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-vimeo { background-color: #1eb7ea; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-vk { background-color: #4680c2; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-wordpress { background-color: #3499cd; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-yelp { background-color: #d32422; color: #fff; } .wp-block-social-links:not(.is-style-logos-only) .wp-social-link-youtube { background-color: #f00; color: #fff; } .wp-block-social-links.is-style-logos-only .wp-social-link { background: none; } .wp-block-social-links.is-style-logos-only .wp-social-link a { padding: 0; } .wp-block-social-links.is-style-logos-only .wp-social-link svg { width: 1.25em; height: 1.25em; } .wp-block-social-links.is-style-logos-only .wp-social-link-amazon { color: #f90; } .wp-block-social-links.is-style-logos-only .wp-social-link-bandcamp { color: #1ea0c3; } .wp-block-social-links.is-style-logos-only .wp-social-link-behance { color: #0757fe; } .wp-block-social-links.is-style-logos-only .wp-social-link-codepen { color: #1e1f26; } .wp-block-social-links.is-style-logos-only .wp-social-link-deviantart { color: #02e49b; } .wp-block-social-links.is-style-logos-only .wp-social-link-dribbble { color: #e94c89; } .wp-block-social-links.is-style-logos-only .wp-social-link-dropbox { color: #4280ff; } .wp-block-social-links.is-style-logos-only .wp-social-link-etsy { color: #f45800; } .wp-block-social-links.is-style-logos-only .wp-social-link-facebook { color: #1778f2; } .wp-block-social-links.is-style-logos-only .wp-social-link-fivehundredpx { color: #000; } .wp-block-social-links.is-style-logos-only .wp-social-link-flickr { color: #0461dd; } .wp-block-social-links.is-style-logos-only .wp-social-link-foursquare { color: #e65678; } .wp-block-social-links.is-style-logos-only .wp-social-link-github { color: #24292d; } .wp-block-social-links.is-style-logos-only .wp-social-link-goodreads { color: #382110; } .wp-block-social-links.is-style-logos-only .wp-social-link-google { color: #ea4434; } .wp-block-social-links.is-style-logos-only .wp-social-link-instagram { color: #f00075; } .wp-block-social-links.is-style-logos-only .wp-social-link-lastfm { color: #e21b24; } .wp-block-social-links.is-style-logos-only .wp-social-link-linkedin { color: #0d66c2; } .wp-block-social-links.is-style-logos-only .wp-social-link-mastodon { color: #3288d4; } .wp-block-social-links.is-style-logos-only .wp-social-link-medium { color: #02ab6c; } .wp-block-social-links.is-style-logos-only .wp-social-link-meetup { color: #f6405f; } .wp-block-social-links.is-style-logos-only .wp-social-link-patreon { color: #ff424d; } .wp-block-social-links.is-style-logos-only .wp-social-link-pinterest { color: #e60122; } .wp-block-social-links.is-style-logos-only .wp-social-link-pocket { color: #ef4155; } .wp-block-social-links.is-style-logos-only .wp-social-link-reddit { color: #fe4500; } .wp-block-social-links.is-style-logos-only .wp-social-link-skype { color: #0478d7; } .wp-block-social-links.is-style-logos-only .wp-social-link-snapchat { color: #fff; stroke: #000; } .wp-block-social-links.is-style-logos-only .wp-social-link-soundcloud { color: #ff5600; } .wp-block-social-links.is-style-logos-only .wp-social-link-spotify { color: #1bd760; } .wp-block-social-links.is-style-logos-only .wp-social-link-telegram { color: #2aabee; } .wp-block-social-links.is-style-logos-only .wp-social-link-tiktok { color: #000; } .wp-block-social-links.is-style-logos-only .wp-social-link-tumblr { color: #011835; } .wp-block-social-links.is-style-logos-only .wp-social-link-twitch { color: #6440a4; } .wp-block-social-links.is-style-logos-only .wp-social-link-twitter { color: #1da1f2; } .wp-block-social-links.is-style-logos-only .wp-social-link-vimeo { color: #1eb7ea; } .wp-block-social-links.is-style-logos-only .wp-social-link-vk { color: #4680c2; } .wp-block-social-links.is-style-logos-only .wp-social-link-wordpress { color: #3499cd; } .wp-block-social-links.is-style-logos-only .wp-social-link-yelp { color: #d32422; } .wp-block-social-links.is-style-logos-only .wp-social-link-youtube { color: #f00; } .wp-block-social-links.is-style-pill-shape .wp-social-link { width: auto; } .wp-block-social-links.is-style-pill-shape .wp-social-link a { padding-left: calc((2/3) * 1em); padding-right: calc((2/3) * 1em); } .wp-block-spacer { clear: both; } .wp-block-tag-cloud.aligncenter { text-align: center; } .wp-block-tag-cloud.alignfull { padding-left: 1em; padding-right: 1em; } .wp-block-tag-cloud a { display: inline-block; margin-right: 5px; } .wp-block-tag-cloud span { display: inline-block; margin-left: 5px; text-decoration: none; } .wp-block-table { margin: 0 0 1em 0; overflow-x: auto; } .wp-block-table table { border-collapse: collapse; width: 100%; } .wp-block-table .has-fixed-layout { table-layout: fixed; width: 100%; } .wp-block-table .has-fixed-layout td, .wp-block-table .has-fixed-layout th { word-break: break-word; } .wp-block-table.alignleft, .wp-block-table.aligncenter, .wp-block-table.alignright { display: table; width: auto; } .wp-block-table.alignleft td, .wp-block-table.alignleft th, .wp-block-table.aligncenter td, .wp-block-table.aligncenter th, .wp-block-table.alignright td, .wp-block-table.alignright th { word-break: break-word; } .wp-block-table .has-subtle-light-gray-background-color { background-color: #f3f4f5; } .wp-block-table .has-subtle-pale-green-background-color { background-color: #e9fbe5; } .wp-block-table .has-subtle-pale-blue-background-color { background-color: #e7f5fe; } .wp-block-table .has-subtle-pale-pink-background-color { background-color: #fcf0ef; } .wp-block-table.is-style-stripes { border-spacing: 0; border-collapse: inherit; background-color: transparent; border-bottom: 1px solid #f0f0f0; } .wp-block-table.is-style-stripes tbody tr:nth-child(odd) { background-color: #f0f0f0; } .wp-block-table.is-style-stripes.has-subtle-light-gray-background-color tbody tr:nth-child(odd) { background-color: #f3f4f5; } .wp-block-table.is-style-stripes.has-subtle-pale-green-background-color tbody tr:nth-child(odd) { background-color: #e9fbe5; } .wp-block-table.is-style-stripes.has-subtle-pale-blue-background-color tbody tr:nth-child(odd) { background-color: #e7f5fe; } .wp-block-table.is-style-stripes.has-subtle-pale-pink-background-color tbody tr:nth-child(odd) { background-color: #fcf0ef; } .wp-block-table.is-style-stripes th, .wp-block-table.is-style-stripes td { border-color: transparent; } .wp-block-table .has-border-color > *, .wp-block-table .has-border-color tr, .wp-block-table .has-border-color th, .wp-block-table .has-border-color td { border-color: inherit; } .wp-block-table table[style*=border-style] > *, .wp-block-table table[style*=border-style] tr, .wp-block-table table[style*=border-style] th, .wp-block-table table[style*=border-style] td { border-style: inherit; } .wp-block-table table[style*=border-width] > *, .wp-block-table table[style*=border-width] tr, .wp-block-table table[style*=border-width] th, .wp-block-table table[style*=border-width] td { border-width: inherit; } .wp-block-text-columns { display: flex; } .wp-block-text-columns.aligncenter { display: flex; } .wp-block-text-columns .wp-block-column { margin: 0 1em; padding: 0; } .wp-block-text-columns .wp-block-column:first-child { margin-left: 0; } .wp-block-text-columns .wp-block-column:last-child { margin-right: 0; } .wp-block-text-columns.columns-2 .wp-block-column { width: calc(100% / 2); } .wp-block-text-columns.columns-3 .wp-block-column { width: calc(100% / 3); } .wp-block-text-columns.columns-4 .wp-block-column { width: calc(100% / 4); } pre.wp-block-verse { font-family: inherit; overflow: auto; white-space: pre-wrap; } .wp-block-video { margin: 0 0 1em 0; } .wp-block-video video { width: 100%; } @supports (position: sticky) { .wp-block-video [poster] { -o-object-fit: cover; object-fit: cover; } } .wp-block-video.aligncenter { text-align: center; } .wp-block-video figcaption { margin-top: 0.5em; margin-bottom: 1em; } .wp-block-post-featured-image { margin-left: 0; margin-right: 0; } .wp-block-post-featured-image a { display: inline-block; } .wp-block-post-featured-image img { max-width: 100%; width: 100%; height: auto; vertical-align: bottom; } .wp-block-post-featured-image.alignwide img, .wp-block-post-featured-image.alignfull img { width: 100%; } :root { /* * Our classes uses the same values we set for gradient value attributes, * and we can not use spacing because of WP multi site kses rule. */ /* stylelint-disable function-comma-space-after */ /* stylelint-enable function-comma-space-after */ --wp--preset--font-size--normal: 16px; --wp--preset--font-size--huge: 42px; } :root .has-very-light-gray-background-color { background-color: #eee; } :root .has-very-dark-gray-background-color { background-color: #313131; } :root .has-very-light-gray-color { color: #eee; } :root .has-very-dark-gray-color { color: #313131; } :root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background { background: linear-gradient(135deg, #00d084 0%, #0693e3 100%); } :root .has-purple-crush-gradient-background { background: linear-gradient(135deg, #34e2e4 0%, #4721fb 50%, #ab1dfe 100%); } :root .has-hazy-dawn-gradient-background { background: linear-gradient(135deg, #faaca8 0%, #dad0ec 100%); } :root .has-subdued-olive-gradient-background { background: linear-gradient(135deg, #fafae1 0%, #67a671 100%); } :root .has-atomic-cream-gradient-background { background: linear-gradient(135deg, #fdd79a 0%, #004a59 100%); } :root .has-nightshade-gradient-background { background: linear-gradient(135deg, #330968 0%, #31cdcf 100%); } :root .has-midnight-gradient-background { background: linear-gradient(135deg, #020381 0%, #2874fc 100%); } .has-regular-font-size { font-size: 1em; } .has-larger-font-size { font-size: 2.625em; } .has-normal-font-size { font-size: var(--wp--preset--font-size--normal); } .has-huge-font-size { font-size: var(--wp--preset--font-size--huge); } .has-text-align-center { text-align: center; } .has-text-align-left { /*rtl:ignore*/ text-align: left; } .has-text-align-right { /*rtl:ignore*/ text-align: right; } #end-resizable-editor-section { display: none; } .aligncenter { clear: both; } .items-justified-left { justify-content: flex-start; } .items-justified-center { justify-content: center; } .items-justified-right { justify-content: flex-end; } .items-justified-space-between { justify-content: space-between; } .screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important; } .screen-reader-text:focus { background-color: #ddd; clip: auto !important; -webkit-clip-path: none; clip-path: none; color: #444; display: block; font-size: 1em; height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; } /** * Provide baseline responsiveness for images. */ html :where(img[class*="wp-image-"]) { height: auto; max-width: 100%; }PKj l\K[%css/dist/block-library/editor-rtl.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ ul.wp-block-archives { padding-right: 2.5em; } .wp-block-audio { margin-right: 0; margin-left: 0; } .edit-post-visual-editor .block-library-block__reusable-block-container .is-root-container { padding-right: 0; padding-left: 0; } .edit-post-visual-editor .block-library-block__reusable-block-container .block-editor-writing-flow { display: block; } .edit-post-visual-editor .block-library-block__reusable-block-container .components-disabled .block-list-appender { display: none; } .wp-block[data-align=center] > .wp-block-button { text-align: center; margin-right: auto; margin-left: auto; } .wp-block[data-align=right] > .wp-block-button { text-align: right; } .wp-block-button { position: relative; cursor: text; } .wp-block-button:not(.has-text-color):not(.is-style-outline) [data-rich-text-placeholder]::after { color: #fff; } .wp-block-button:focus { box-shadow: 0 0 0 1px #fff, 0 0 0 3px var(--wp-admin-theme-color); outline: 2px solid transparent; outline-offset: -2px; } .wp-block-button[data-rich-text-placeholder]::after { opacity: 0.8; } .wp-block-button__inline-link { color: #757575; height: 0; overflow: hidden; max-width: 290px; } .wp-block-button__inline-link-input__suggestions { max-width: 290px; } @media (min-width: 782px) { .wp-block-button__inline-link { max-width: 260px; } .wp-block-button__inline-link-input__suggestions { max-width: 260px; } } @media (min-width: 960px) { .wp-block-button__inline-link { max-width: 290px; } .wp-block-button__inline-link-input__suggestions { max-width: 290px; } } .is-selected .wp-block-button__inline-link { height: auto; overflow: visible; } .wp-button-label__width .components-button-group { display: block; } .wp-button-label__width .components-base-control__field { margin-bottom: 12px; } div[data-type="core/button"] { display: table; } .wp-block-buttons { /* stylelint-disable indentation */ } .wp-block-buttons > .wp-block { margin: 0; } .wp-block-buttons > .wp-block-button.wp-block-button.wp-block-button.wp-block-button.wp-block-button { margin: 0; } .wp-block-buttons > .block-list-appender { display: inline-flex; align-items: center; } .wp-block-buttons.is-vertical > .block-list-appender .block-list-appender__toggle { justify-content: flex-start; } .wp-block-buttons > .wp-block-button:focus { box-shadow: none; } .wp-block-buttons:not(.is-content-justification-space-between, .is-content-justification-right, .is-content-justification-left, .is-content-justification-center) .wp-block[data-align=center] { /* stylelint-enable indentation */ margin-right: auto; margin-left: auto; margin-top: 0; width: 100%; } .wp-block-buttons:not(.is-content-justification-space-between, .is-content-justification-right, .is-content-justification-left, .is-content-justification-center) .wp-block[data-align=center] .wp-block-button { margin-bottom: 0; } .wp-block[data-align=center] > .wp-block-buttons { align-items: center; justify-content: center; } .wp-block[data-align=right] > .wp-block-buttons { justify-content: flex-end; } .wp-block-categories ul { padding-right: 2.5em; } .wp-block-categories ul ul { margin-top: 6px; } .wp-block-columns :where(.wp-block) { max-width: none; margin-right: 0; margin-left: 0; } @media (min-width: 600px) { .editor-styles-wrapper .block-editor-block-list__block.wp-block-column:nth-child(even) { margin-right: var(--wp--style--block-gap, 2em); } } @media (min-width: 782px) { .editor-styles-wrapper .block-editor-block-list__block.wp-block-column:not(:first-child) { margin-right: var(--wp--style--block-gap, 2em); } } html :where(.wp-block-column) { margin-top: 0; margin-bottom: 0; } .wp-block-cover { /* Extra specificity needed because the reset.css applied in the editor context is overriding this rule. */ } .editor-styles-wrapper .wp-block-cover { box-sizing: border-box; } .wp-block-cover.is-placeholder { min-height: auto !important; padding: 0 !important; } .wp-block-cover.is-placeholder .block-library-cover__resize-container { display: none; } .wp-block-cover.is-placeholder .components-placeholder.is-large { min-height: 240px; justify-content: flex-start; z-index: 1; } .wp-block-cover.is-placeholder .components-placeholder.is-large + .block-library-cover__resize-container { min-height: 240px; display: block; } .wp-block-cover.components-placeholder h2 { color: inherit; } .wp-block-cover.is-transient::before { background-color: #fff; opacity: 0.3; } .wp-block-cover .components-spinner { position: absolute; z-index: 1; top: 50%; right: 50%; transform: translate(50%, -50%); margin: 0; } .wp-block-cover .block-editor-block-list__layout { width: 100%; } .wp-block-cover .wp-block-cover__inner-container { text-align: right; margin-right: 0; margin-left: 0; } .wp-block-cover .wp-block-cover__placeholder-background-options { width: 100%; } [data-align=left] > .wp-block-cover, [data-align=right] > .wp-block-cover { max-width: 420px; width: 100%; } .block-library-cover__reset-button { margin-right: auto; } .block-library-cover__resize-container { position: absolute !important; top: 0; right: 0; left: 0; bottom: 0; min-height: 50px; } .block-library-cover__resize-container:not(.is-resizing) { height: auto !important; } .wp-block-cover > .components-drop-zone .components-drop-zone__content { opacity: 0.8 !important; } .block-editor-block-patterns-list__list-item .has-parallax.wp-block-cover { background-attachment: scroll; } .wp-block-embed { margin-right: 0; margin-left: 0; clear: both; } .wp-block-embed.is-loading { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 1em; min-height: 200px; text-align: center; border-radius: 2px; background-color: #fff; box-shadow: inset 0 0 0 1px #1e1e1e; } .wp-block-embed.is-loading p { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; } .wp-block-embed .components-placeholder__error { word-break: break-word; } .wp-block-embed .components-placeholder__learn-more { margin-top: 1em; } .block-library-embed__interactive-overlay { position: absolute; top: 0; right: 0; left: 0; bottom: 0; opacity: 0; } .wp-block[data-align=left] > .wp-block-embed, .wp-block[data-align=right] > .wp-block-embed { max-width: 360px; width: 100%; } .wp-block[data-align=left] > .wp-block-embed .wp-block-embed__wrapper, .wp-block[data-align=right] > .wp-block-embed .wp-block-embed__wrapper { min-width: 280px; } .wp-block-file { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; margin-bottom: 0; } .wp-block[data-align=left] > .wp-block-file, .wp-block[data-align=right] > .wp-block-file { height: auto; } .wp-block-file .components-resizable-box__container { margin-bottom: 1em; } .wp-block-file .wp-block-file__preview { margin-bottom: 1em; width: 100%; height: 100%; } .wp-block-file .wp-block-file__preview-overlay { position: absolute; top: 0; left: 0; bottom: 0; right: 0; } .wp-block-file .wp-block-file__content-wrapper { flex-grow: 1; } .wp-block-file a { min-width: 1em; } .wp-block-file .wp-block-file__button-richtext-wrapper { display: inline-block; margin-right: 0.75em; } .wp-block-freeform.block-library-rich-text__tinymce { height: auto; /* Allow height of embed iframes to be calculated properly */ /* Remove blue highlighting of selected images in WebKit */ /* Image captions */ /* WP Views */ } .wp-block-freeform.block-library-rich-text__tinymce p, .wp-block-freeform.block-library-rich-text__tinymce li { line-height: 1.8; } .wp-block-freeform.block-library-rich-text__tinymce ul, .wp-block-freeform.block-library-rich-text__tinymce ol { padding-right: 2.5em; margin-right: 0; } .wp-block-freeform.block-library-rich-text__tinymce blockquote { margin: 0; box-shadow: inset 0 0 0 0 #ddd; border-right: 4px solid #000; padding-right: 1em; } .wp-block-freeform.block-library-rich-text__tinymce pre { white-space: pre-wrap; font-family: Menlo, Consolas, monaco, monospace; font-size: 15px; color: #1e1e1e; } .wp-block-freeform.block-library-rich-text__tinymce > *:first-child { margin-top: 0; } .wp-block-freeform.block-library-rich-text__tinymce > *:last-child { margin-bottom: 0; } .wp-block-freeform.block-library-rich-text__tinymce.mce-edit-focus { outline: none; } .wp-block-freeform.block-library-rich-text__tinymce a { color: var(--wp-admin-theme-color); } .wp-block-freeform.block-library-rich-text__tinymce:focus a[data-mce-selected] { padding: 0 2px; margin: 0 -2px; border-radius: 2px; box-shadow: 0 0 0 1px #e5f5fa; background: #e5f5fa; } .wp-block-freeform.block-library-rich-text__tinymce code { padding: 2px; border-radius: 2px; color: #1e1e1e; background: #f0f0f0; font-family: Menlo, Consolas, monaco, monospace; font-size: 14px; } .wp-block-freeform.block-library-rich-text__tinymce:focus code[data-mce-selected] { background: #ddd; } .wp-block-freeform.block-library-rich-text__tinymce .alignright { float: right; margin: 0.5em 0 0.5em 1em; } .wp-block-freeform.block-library-rich-text__tinymce .alignleft { float: left; margin: 0.5em 1em 0.5em 0; } .wp-block-freeform.block-library-rich-text__tinymce .aligncenter { display: block; margin-right: auto; margin-left: auto; } .wp-block-freeform.block-library-rich-text__tinymce .wp-more-tag { width: 96%; height: 20px; display: block; margin: 15px auto; outline: 0; cursor: default; background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAADtgAAAAoBAMAAAA86gLBAAAAJFBMVEVMaXG7u7vBwcHDw8POzs68vLzGxsbMzMy+vr7AwMDQ0NDGxsYKLGzpAAAADHRSTlMA///zWf+/f///TMxNVGuqAAABwklEQVR4Ae3dMXLaQBTH4bfj8UCpx8hq0vgKvgFNemhT6Qo6gg6R+0ZahM2QLmyBJ99XWP9V5+o3jIUcLQEAAAAAAAAAAAAAAAAAAAAAAABQ8j0WL9lfTtlt18uNXAUA8O/KVtfa1tdcrOdSh9gCQAMlh1hMNbZZ1bsrsQWABsrhLRbz7z5in/32UbfUMUbkMQCAh5RfGYv82UdMdZ6HS2wjT2ILAI8r3XmM2B3WvM59vfO2xXYW2yYAENuPU8S+X/N67mKxzy225yaxBQCxLV392UdcvwV0jPVUj98ntkBWT7C7+9u2/V/vGtvXIWJ6/4rtbottWa6Ri0NUT/u72LYttrb97LHdvUXMxxrb8TO2W2TF1rYbbLG1bbGNjMi4+2Sbi1FsbbvNFlvbFtt5fDnE3d9sP1/XeIyV2Nr2U2/guZUuptNrH/dPI9eLB6SaAEBs6wPJf3/PNk9tYgsAYrv/8TFuzx/fvkFqGtrEFgDEdpcZUb7ejXy6ntrEFgDENvL6gsas4vbdyKt4DACI7TxElJv/Z7udpqFNbAFAbKduy2uU2trttM/x28UWAAAAAAAAAAAAAAAAAAAAAAAAAADgDyPwGmGTCZp7AAAAAElFTkSuQmCC); background-size: 1900px 20px; background-repeat: no-repeat; background-position: center; } .wp-block-freeform.block-library-rich-text__tinymce img::selection { background-color: transparent; } .wp-block-freeform.block-library-rich-text__tinymce div.mceTemp { -ms-user-select: element; } .wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption { margin: 0; /* dl browser reset */ max-width: 100%; } .wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption a, .wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption img { display: block; } .wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption, .wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption * { -webkit-user-drag: none; } .wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption .wp-caption-dd { padding-top: 0.5em; margin: 0; /* browser dd reset */ } .wp-block-freeform.block-library-rich-text__tinymce .wpview { width: 99.99%; /* All IE need hasLayout, incl. 11 (ugh, not again!!) */ position: relative; clear: both; margin-bottom: 16px; border: 1px solid transparent; } .wp-block-freeform.block-library-rich-text__tinymce .wpview iframe { display: block; max-width: 100%; background: transparent; } .wp-block-freeform.block-library-rich-text__tinymce .wpview .mce-shim { position: absolute; top: 0; left: 0; bottom: 0; right: 0; } .wp-block-freeform.block-library-rich-text__tinymce .wpview[data-mce-selected="2"] .mce-shim { display: none; } .wp-block-freeform.block-library-rich-text__tinymce .wpview .loading-placeholder { border: 1px dashed #ddd; padding: 10px; } .wp-block-freeform.block-library-rich-text__tinymce .wpview .wpview-error { border: 1px solid #ddd; padding: 1em 0; margin: 0; word-wrap: break-word; } .wp-block-freeform.block-library-rich-text__tinymce .wpview .wpview-error p { margin: 0; text-align: center; } .wp-block-freeform.block-library-rich-text__tinymce .wpview[data-mce-selected] .loading-placeholder, .wp-block-freeform.block-library-rich-text__tinymce .wpview[data-mce-selected] .wpview-error { border-color: transparent; } .wp-block-freeform.block-library-rich-text__tinymce .wpview .dashicons { display: block; margin: 0 auto; width: 32px; height: 32px; font-size: 32px; } .wp-block-freeform.block-library-rich-text__tinymce .wpview.wpview-type-gallery::after { content: ""; display: table; clear: both; } .wp-block-freeform.block-library-rich-text__tinymce .gallery img[data-mce-selected]:focus { outline: none; } .wp-block-freeform.block-library-rich-text__tinymce .gallery a { cursor: default; } .wp-block-freeform.block-library-rich-text__tinymce .gallery { margin: auto -6px; padding: 6px 0; line-height: 1; overflow-x: hidden; } .wp-block-freeform.block-library-rich-text__tinymce .gallery .gallery-item { float: right; margin: 0; text-align: center; padding: 6px; box-sizing: border-box; } .wp-block-freeform.block-library-rich-text__tinymce .gallery .gallery-caption, .wp-block-freeform.block-library-rich-text__tinymce .gallery .gallery-icon { margin: 0; } .wp-block-freeform.block-library-rich-text__tinymce .gallery .gallery-caption { font-size: 13px; margin: 4px 0; } .wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-1 .gallery-item { width: 100%; } .wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-2 .gallery-item { width: 50%; } .wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-3 .gallery-item { width: 33.3333333333%; } .wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-4 .gallery-item { width: 25%; } .wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-5 .gallery-item { width: 20%; } .wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-6 .gallery-item { width: 16.6666666667%; } .wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-7 .gallery-item { width: 14.2857142857%; } .wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-8 .gallery-item { width: 12.5%; } .wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-9 .gallery-item { width: 11.1111111111%; } .wp-block-freeform.block-library-rich-text__tinymce .gallery img { max-width: 100%; height: auto; border: none; padding: 0; } div[data-type="core/freeform"]::before { transition: border-color 0.1s linear, box-shadow 0.1s linear; border: 1px solid #ddd; outline: 1px solid transparent; } @media (prefers-reduced-motion: reduce) { div[data-type="core/freeform"]::before { transition-duration: 0s; transition-delay: 0s; } } div[data-type="core/freeform"].is-selected::before { border-color: #1e1e1e; } div[data-type="core/freeform"] .block-editor-block-contextual-toolbar + div { margin-top: 0; padding-top: 0; } div[data-type="core/freeform"].is-selected .block-library-rich-text__tinymce::after { content: ""; display: table; clear: both; } .mce-toolbar-grp .mce-btn.mce-active button, .mce-toolbar-grp .mce-btn.mce-active:hover button, .mce-toolbar-grp .mce-btn.mce-active i, .mce-toolbar-grp .mce-btn.mce-active:hover i { color: #1e1e1e; } .mce-toolbar-grp .mce-rtl .mce-flow-layout-item.mce-last { margin-left: 0; margin-right: 8px; } .mce-toolbar-grp .mce-btn i { font-style: normal; } .block-library-classic__toolbar { display: none; width: auto; margin: 0; position: sticky; z-index: 31; top: 0; border: 1px solid #ddd; border-bottom: none; border-radius: 2px; margin-bottom: 8px; padding: 0; } div[data-type="core/freeform"].is-selected .block-library-classic__toolbar { display: block; border-color: #1e1e1e; } .block-library-classic__toolbar .mce-tinymce { box-shadow: none; } @media (min-width: 600px) { .block-library-classic__toolbar { padding: 0; } } .block-library-classic__toolbar:empty { display: block; background: #f5f5f5; border-bottom: 1px solid #e2e4e7; } .block-library-classic__toolbar:empty::before { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; content: attr(data-placeholder); color: #555d66; line-height: 37px; padding: 14px; } .block-library-classic__toolbar div.mce-toolbar-grp { border-bottom: 1px solid #1e1e1e; } .block-library-classic__toolbar .mce-tinymce-inline, .block-library-classic__toolbar .mce-tinymce-inline > div, .block-library-classic__toolbar div.mce-toolbar-grp, .block-library-classic__toolbar div.mce-toolbar-grp > div, .block-library-classic__toolbar .mce-menubar, .block-library-classic__toolbar .mce-menubar > div { height: auto !important; width: 100% !important; } .block-library-classic__toolbar .mce-container-body.mce-abs-layout { overflow: visible; } .block-library-classic__toolbar .mce-menubar, .block-library-classic__toolbar div.mce-toolbar-grp { position: static; } .block-library-classic__toolbar .mce-toolbar-grp > div { padding: 1px 3px; } .block-library-classic__toolbar .mce-toolbar-grp .mce-toolbar:not(:first-child) { display: none; } .block-library-classic__toolbar.has-advanced-toolbar .mce-toolbar-grp .mce-toolbar { display: block; } figure.wp-block-gallery { display: block; margin: 0; } figure.wp-block-gallery.has-nested-images .components-drop-zone { display: none; pointer-events: none; } figure.wp-block-gallery > .blocks-gallery-caption { flex: 0 0 100%; } figure.wp-block-gallery > .blocks-gallery-media-placeholder-wrapper { flex-basis: 100%; } figure.wp-block-gallery .wp-block-image .components-notice.is-error { display: block; } figure.wp-block-gallery .wp-block-image .components-notice__content { margin: 4px 0; } figure.wp-block-gallery .wp-block-image .components-notice__dismiss { position: absolute; top: 0; left: 5px; } figure.wp-block-gallery .block-editor-media-placeholder.is-appender .components-placeholder__label { display: none; } figure.wp-block-gallery .block-editor-media-placeholder.is-appender .block-editor-media-placeholder__button { margin-bottom: 0; } figure.wp-block-gallery .block-editor-media-placeholder { margin: 0; } figure.wp-block-gallery .block-editor-media-placeholder::before { box-shadow: 0 0 0 1px #fff inset, 0 0 0 3px var(--wp-admin-theme-color) inset; content: ""; outline: 2px solid transparent; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 1; pointer-events: none; } figure.wp-block-gallery .block-editor-media-placeholder .components-placeholder__label { display: flex; } figure.wp-block-gallery .block-editor-media-placeholder figcaption { z-index: 2; } figure.wp-block-gallery .components-spinner { position: absolute; top: 50%; right: 50%; margin-top: -9px; margin-right: -9px; } /** * Gallery inspector controls settings. */ .gallery-settings-buttons .components-button:first-child { margin-left: 8px; } .gallery-image-sizes .components-base-control__label { display: block; margin-bottom: 4px; } .gallery-image-sizes .gallery-image-sizes__loading { display: flex; align-items: center; color: #757575; font-size: 12px; } .gallery-image-sizes .components-spinner { margin: 0 4px 0 8px; } /** * Deprecated css past this point. This can be removed once all galleries are migrated * to V2. */ .blocks-gallery-item figure:not(.is-selected):focus, .blocks-gallery-item img:focus { outline: none; } .blocks-gallery-item figure.is-selected::before { box-shadow: 0 0 0 1px #fff inset, 0 0 0 3px var(--wp-admin-theme-color) inset; content: ""; outline: 2px solid transparent; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 1; pointer-events: none; } .blocks-gallery-item figure.is-transient img { opacity: 0.3; } .blocks-gallery-item .is-selected .block-library-gallery-item__inline-menu { display: inline-flex; } .blocks-gallery-item .block-editor-media-placeholder { margin: 0; height: 100%; } .blocks-gallery-item .block-editor-media-placeholder .components-placeholder__label { display: flex; } .block-library-gallery-item__inline-menu { display: none; position: absolute; top: -2px; margin: 8px; z-index: 20; transition: box-shadow 0.2s ease-out; border-radius: 2px; background: #fff; border: 1px solid #1e1e1e; } @media (prefers-reduced-motion: reduce) { .block-library-gallery-item__inline-menu { transition-duration: 0s; transition-delay: 0s; } } .block-library-gallery-item__inline-menu:hover { box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05); } @media (min-width: 600px) { .columns-7 .block-library-gallery-item__inline-menu, .columns-8 .block-library-gallery-item__inline-menu { padding: 2px; } } .block-library-gallery-item__inline-menu .components-button.has-icon:not(:focus) { border: none; box-shadow: none; } @media (min-width: 600px) { .columns-7 .block-library-gallery-item__inline-menu .components-button.has-icon, .columns-8 .block-library-gallery-item__inline-menu .components-button.has-icon { padding: 0; width: inherit; height: inherit; } } .block-library-gallery-item__inline-menu.is-left { right: -2px; } .block-library-gallery-item__inline-menu.is-right { left: -2px; } .wp-block-gallery ul.blocks-gallery-grid { padding: 0; margin: 0; } .wp-block-update-gallery-modal { max-width: 400px; } .wp-block-update-gallery-modal .wp-block-update-gallery-modal-buttons { display: flex; justify-content: flex-end; } .wp-block-update-gallery-modal .wp-block-update-gallery-modal-buttons .components-button { margin-right: 12px; } /** * Group: All Alignment Settings */ .wp-block-group .block-editor-block-list__insertion-point { right: 0; left: 0; } [data-type="core/group"].is-selected .block-list-appender { margin-right: 0; margin-left: 0; } [data-type="core/group"].is-selected .has-background .block-list-appender { margin-top: 18px; margin-bottom: 18px; } .block-library-html__edit .block-library-html__preview-overlay { position: absolute; width: 100%; height: 100%; top: 0; right: 0; } .block-library-html__edit .block-editor-plain-text { font-family: Menlo, Consolas, monaco, monospace !important; color: #1e1e1e !important; background: #fff !important; padding: 12px !important; border: 1px solid #1e1e1e !important; box-shadow: none !important; border-radius: 2px !important; max-height: 250px; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px !important; } @media (min-width: 600px) { .block-library-html__edit .block-editor-plain-text { font-size: 13px !important; } } .block-library-html__edit .block-editor-plain-text:focus { border-color: var(--wp-admin-theme-color) !important; box-shadow: 0 0 0 1px var(--wp-admin-theme-color) !important; outline: 2px solid transparent !important; } figure.wp-block-image:not(.wp-block) { margin: 0; } .wp-block-image { position: relative; } .wp-block-image .is-applying img, .wp-block-image.is-transient img { opacity: 0.3; } .wp-block-image figcaption img { display: inline; } .wp-block-image .components-spinner { position: absolute; top: 50%; right: 50%; margin-top: -9px; margin-right: -9px; } .wp-block-image:not(.is-style-rounded) > div:not(.components-placeholder) { border-radius: inherit; } .wp-block-image .components-resizable-box__container { display: inline-block; } .wp-block-image .components-resizable-box__container img { display: block; width: inherit; height: inherit; } .block-editor-block-list__block[data-type="core/image"] .block-editor-block-toolbar .block-editor-url-input__button-modal { position: absolute; right: 0; left: 0; margin: -1px 0; } @media (min-width: 600px) { .block-editor-block-list__block[data-type="core/image"] .block-editor-block-toolbar .block-editor-url-input__button-modal { margin: -1px; } } [data-align=wide] > .wp-block-image img, [data-align=full] > .wp-block-image img { height: auto; width: 100%; } .wp-block[data-align=left] > .wp-block-image, .wp-block[data-align=center] > .wp-block-image, .wp-block[data-align=right] > .wp-block-image { display: table; } .wp-block[data-align=left] > .wp-block-image > figcaption, .wp-block[data-align=center] > .wp-block-image > figcaption, .wp-block[data-align=right] > .wp-block-image > figcaption { display: table-caption; caption-side: bottom; } *:not([data-align]) > .wp-block-image { display: grid; grid-template-columns: [image] minmax(0, max-content) [placeholder] auto; } *:not([data-align]) > .wp-block-image .components-placeholder { grid-column: placeholder; } *:not([data-align]) > .wp-block-image > div:not(.components-placeholder) { grid-column: image; } *:not([data-align]) > .wp-block-image > figcaption { grid-column: image; display: table-caption; caption-side: bottom; } .wp-block[data-align=left] > .wp-block-image { margin-left: 1em; margin-right: 0; margin-top: 0.5em; margin-bottom: 0.5em; } .wp-block[data-align=right] > .wp-block-image { margin-right: 1em; margin-left: 0; margin-top: 0.5em; margin-bottom: 0.5em; } .wp-block[data-align=center] > .wp-block-image { margin-right: auto; margin-left: auto; text-align: center; } .wp-block-image__crop-area { position: relative; max-width: 100%; width: 100%; } .wp-block-image__crop-icon { padding: 0 8px; min-width: 48px; display: flex; justify-content: center; align-items: center; } .wp-block-image__crop-icon svg { fill: currentColor; } .wp-block-image__zoom .components-popover__content { overflow: visible; min-width: 260px; } .wp-block-image__zoom .components-range-control { flex: 1; } .wp-block-image__zoom .components-base-control__field { display: flex; margin-bottom: 0; flex-direction: column; align-items: flex-start; } .wp-block-image__aspect-ratio { height: 46px; margin-bottom: -8px; display: flex; align-items: center; } .wp-block-image__aspect-ratio .components-button { width: 36px; padding-right: 0; padding-left: 0; } .wp-block-latest-posts { padding-right: 2.5em; } .wp-block-latest-posts.is-grid { padding-right: 0; } .wp-block-latest-posts li a > div { display: inline; } .edit-post-visual-editor .wp-block-latest-posts.is-grid li { margin-bottom: 20px; } .wp-block-media-text__media { position: relative; } .wp-block-media-text__media.is-transient img { opacity: 0.3; } .wp-block-media-text__media .components-spinner { position: absolute; top: 50%; right: 50%; margin-top: -9px; margin-right: -9px; } .wp-block-media-text .__resizable_base__ { grid-column: 1/span 2; grid-row: 2; } .wp-block-media-text .editor-media-container__resizer { width: 100% !important; } .wp-block-media-text.is-image-fill .editor-media-container__resizer { height: 100% !important; } .wp-block-media-text > .block-editor-block-list__layout > .block-editor-block-list__block { max-width: unset; } .block-editor-block-list__block[data-type="core/more"] { max-width: 100%; text-align: center; margin-top: 28px; margin-bottom: 28px; } .wp-block-more { display: block; text-align: center; white-space: nowrap; } .wp-block-more input[type=text] { position: relative; font-size: 13px; text-transform: uppercase; font-weight: 600; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; color: #757575; border: none; box-shadow: none; white-space: nowrap; text-align: center; margin: 0; border-radius: 4px; background: #fff; padding: 6px 8px; height: 24px; max-width: 100%; } .wp-block-more input[type=text]:focus { box-shadow: none; } .wp-block-more::before { content: ""; position: absolute; top: calc(50%); right: 0; left: 0; border-top: 3px dashed #ccc; } /** * Editor only CSS. */ .editor-styles-wrapper .wp-block-navigation ul { margin-top: 0; margin-bottom: 0; margin-right: 0; padding-right: 0; } .editor-styles-wrapper .wp-block-navigation .wp-block-navigation-item.wp-block { margin-right: revert; margin-left: revert; } .wp-block-navigation-item__label { display: inline; } /** * Submenus. */ .wp-block-navigation__container.is-parent-of-selected-block { visibility: visible; opacity: 1; overflow: visible; } .wp-block-navigation__container, .wp-block-navigation-item { background-color: inherit; } .wp-block-navigation:not(.is-selected):not(.has-child-selected) .has-child:hover > .wp-block-navigation__submenu-container { opacity: 0; visibility: hidden; } .has-child.is-selected > .wp-block-navigation__submenu-container, .has-child.has-child-selected > .wp-block-navigation__submenu-container { display: flex; opacity: 1; visibility: visible; } .is-dragging-components-draggable .has-child.is-dragging-within > .wp-block-navigation__submenu-container { opacity: 1; visibility: visible; } .is-editing > .wp-block-navigation__container { visibility: visible; opacity: 1; display: flex; flex-direction: column; } .is-dragging-components-draggable .wp-block-navigation-link > .wp-block-navigation__container { opacity: 1; visibility: hidden; } .is-dragging-components-draggable .wp-block-navigation-link > .wp-block-navigation__container .block-editor-block-draggable-chip-wrapper { visibility: visible; } .is-editing > .wp-block-navigation__submenu-container > .block-list-appender { display: block; position: static; width: 100%; } .wp-block-navigation__submenu-container .block-list-appender { display: none; } /** * Colors Selector component */ .block-library-colors-selector { width: auto; } .block-library-colors-selector .block-library-colors-selector__toggle { display: block; margin: 0 auto; padding: 3px; width: auto; } .block-library-colors-selector .block-library-colors-selector__icon-container { height: 30px; position: relative; margin: 0 auto; padding: 3px; display: flex; align-items: center; border-radius: 4px; } .block-library-colors-selector .block-library-colors-selector__state-selection { margin-right: auto; margin-left: auto; border-radius: 11px; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.2); width: 22px; min-width: 22px; height: 22px; min-height: 22px; line-height: 20px; padding: 2px; } .block-library-colors-selector .block-library-colors-selector__state-selection > svg { min-width: auto !important; } .block-library-colors-selector .block-library-colors-selector__state-selection.has-text-color > svg, .block-library-colors-selector .block-library-colors-selector__state-selection.has-text-color > svg path { color: inherit; } .block-library-colors-selector__popover .color-palette-controller-container { padding: 16px; } .block-library-colors-selector__popover .components-base-control__label { height: 20px; line-height: 20px; } .block-library-colors-selector__popover .component-color-indicator { float: left; margin-top: 2px; } .block-library-colors-selector__popover .components-panel__body-title { display: none; } .wp-block-navigation .block-editor-button-block-appender { justify-content: flex-start; } /** * Setup state */ .components-placeholder.wp-block-navigation-placeholder { outline: none; padding: 0; box-shadow: none; background: none; min-height: 0; color: inherit; } .components-placeholder.wp-block-navigation-placeholder .components-placeholder__fieldset { font-size: inherit; } .components-placeholder.wp-block-navigation-placeholder .components-placeholder__fieldset .components-button { margin-bottom: 0; } .is-selected .components-placeholder.wp-block-navigation-placeholder { color: #1e1e1e; } .wp-block-navigation-placeholder .components-spinner { margin-top: -4px; margin-right: 4px; vertical-align: middle; margin-left: 7px; } @keyframes loadingpulse { 0% { opacity: 1; } 50% { opacity: 0.5; } 100% { opacity: 1; } } .wp-block-navigation-placeholder__preview { display: flex; flex-direction: row; align-items: center; flex-wrap: nowrap; width: 100%; overflow: hidden; } .wp-block-navigation-placeholder__preview.is-loading { animation: loadingpulse 1s linear infinite; animation-delay: 0.5s; } .wp-block-navigation-placeholder__preview .wp-block-navigation-item.wp-block-navigation-item { position: relative; min-width: 72px; } .wp-block-navigation-placeholder__preview .wp-block-navigation-item.wp-block-navigation-item::before { display: block; content: ""; border-radius: 2px; background: currentColor; height: 16px; width: 100%; } .wp-block-navigation-placeholder__preview .wp-block-navigation-placeholder__preview-search-icon { height: 24px; } .wp-block-navigation-placeholder__preview .wp-block-navigation-placeholder__preview-search-icon svg { fill: currentColor; } .wp-block-navigation-placeholder__preview .wp-block-navigation-item.wp-block-navigation-item, .wp-block-navigation-placeholder__preview .wp-block-navigation-placeholder__preview-search-icon { opacity: 0.3; } .wp-block-navigation.is-selected .wp-block-navigation-placeholder__preview:not(.is-loading) { display: flex; opacity: 0; width: 0; overflow: hidden; flex-wrap: nowrap; flex: 0; } .wp-block-navigation.is-selected .is-small .wp-block-navigation-placeholder__preview:not(.is-loading), .wp-block-navigation.is-selected .is-medium .wp-block-navigation-placeholder__preview:not(.is-loading) { display: none; } .wp-block-navigation-placeholder__controls { border-radius: 2px; background-color: #fff; box-shadow: inset 0 0 0 1px #1e1e1e; flex-direction: row; align-items: center; display: none; position: relative; z-index: 1; padding: 4px 8px; float: right; width: 100%; } .wp-block-navigation.is-selected .wp-block-navigation-placeholder__controls { display: flex; } .is-medium .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions__indicator, .is-medium .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions__indicator + hr, .is-medium .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions > :nth-last-child(3), .is-medium .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions > :nth-last-child(2) { display: none; } .is-small .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions { flex-direction: column; } .is-small .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions hr { display: none; } .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__icon { margin-left: 12px; height: 36px; } .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions__indicator { display: flex; padding: 0 0 0 6px; align-items: center; justify-content: flex-start; line-height: 0; min-height: 36px; margin-right: 4px; } .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions__indicator svg { margin-left: 4px; } .wp-block-navigation .components-placeholder.is-medium .components-placeholder__fieldset { flex-direction: row !important; } .wp-block-navigation-placeholder__actions { display: flex; font-size: 13px; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; gap: 6px; align-items: center; height: 100%; } .wp-block-navigation-placeholder__actions .components-dropdown, .wp-block-navigation-placeholder__actions > .components-button { margin-left: 0; } .wp-block-navigation-placeholder__actions.wp-block-navigation-placeholder__actions hr { border: 0; min-height: 1px; min-width: 1px; background-color: #1e1e1e; margin: auto 0; height: 100%; max-height: 16px; } /** * Mobile menu. */ @media (min-width: 600px) { .wp-block-navigation__responsive-container:not(.is-menu-open) .components-button.wp-block-navigation__responsive-container-close { display: none; } } .wp-block-navigation__responsive-container.is-menu-open { position: fixed; top: 155px; } @media (min-width: 782px) { .wp-block-navigation__responsive-container.is-menu-open { top: 93px; } } @media (min-width: 782px) { .wp-block-navigation__responsive-container.is-menu-open { right: 36px; } } @media (min-width: 960px) { .wp-block-navigation__responsive-container.is-menu-open { right: 160px; } } @media (min-width: 782px) { .has-fixed-toolbar .wp-block-navigation__responsive-container.is-menu-open { top: 141px; } } .is-mobile-preview .wp-block-navigation__responsive-container.is-menu-open, .is-tablet-preview .wp-block-navigation__responsive-container.is-menu-open { top: 141px; } .is-sidebar-opened .wp-block-navigation__responsive-container.is-menu-open { left: 280px; } .is-fullscreen-mode .wp-block-navigation__responsive-container.is-menu-open { right: 0; top: 155px; } @media (min-width: 782px) { .is-fullscreen-mode .wp-block-navigation__responsive-container.is-menu-open { top: 61px; } } @media (min-width: 782px) { .is-fullscreen-mode .has-fixed-toolbar .wp-block-navigation__responsive-container.is-menu-open { top: 109px; } } .is-fullscreen-mode .is-mobile-preview .wp-block-navigation__responsive-container.is-menu-open, .is-fullscreen-mode .is-tablet-preview .wp-block-navigation__responsive-container.is-menu-open { top: 109px; } body.editor-styles-wrapper .wp-block-navigation__responsive-container.is-menu-open { top: 0; left: 0; bottom: 0; right: 0; } @media (min-width: 600px) { .wp-block-navigation__responsive-close { pointer-events: none; } .wp-block-navigation__responsive-close .wp-block-navigation__responsive-container-close, .wp-block-navigation__responsive-close .block-editor-block-list__layout * { pointer-events: all; } } .wp-block-navigation__responsive-close .wp-block-pages-list__item__link { pointer-events: none; } .components-button.wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open, .components-button.wp-block-navigation__responsive-container-close.wp-block-navigation__responsive-container-close { padding: 0; height: auto; color: inherit; } .is-menu-open .wp-block-navigation__responsive-container-content * .block-list-appender { margin-top: 16px; } @keyframes fadein { 0% { opacity: 0; } 100% { opacity: 1; } } .wp-block-navigation__unsaved-changes { position: relative; } .wp-block-navigation__unsaved-changes .components-spinner { position: absolute; top: calc(50% - 18px / 2); right: calc(50% - 18px / 2); opacity: 0; animation: 0.5s linear 2s normal forwards fadein; } @keyframes fadeouthalf { 0% { opacity: 1; } 100% { opacity: 0.5; } } .wp-block-navigation__unsaved-changes-overlay.is-saving { opacity: 1; animation: 0.5s linear 2s normal forwards fadeouthalf; } .wp-block-navigation-delete-menu-button { width: 100%; justify-content: center; margin-bottom: 16px; } /** * Submenus. */ .wp-block-navigation .has-child { cursor: pointer; } .wp-block-navigation .has-child .wp-block-navigation__submenu-container { z-index: 28; } .wp-block-navigation .has-child:hover .wp-block-navigation__submenu-container { z-index: 29; } .wp-block-navigation .has-child.is-selected > .wp-block-navigation__submenu-container, .wp-block-navigation .has-child.has-child-selected > .wp-block-navigation__submenu-container { visibility: visible !important; opacity: 1 !important; min-width: 200px !important; height: auto !important; width: auto !important; overflow: visible !important; } /** * Navigation Items. */ .wp-block-navigation-item .wp-block-navigation-item__content { cursor: text; } .wp-block-navigation-item.is-editing, .wp-block-navigation-item.is-selected { min-width: 20px; } .wp-block-navigation-item .block-list-appender { margin-top: 16px; margin-left: auto; margin-bottom: 16px; margin-right: 16px; } /** * Menu item setup state. Is shown when a menu item has no URL configured. */ .wp-block-navigation-link__placeholder { position: relative; text-decoration: none !important; box-shadow: none !important; background-image: none !important; } .wp-block-navigation-link__placeholder .wp-block-navigation-link__placeholder-text span { --wp-underline-color: var(--wp-admin-theme-color); background-image: linear-gradient(-45deg, transparent 20%, var(--wp-underline-color) 30%, var(--wp-underline-color) 36%, transparent 46%), linear-gradient(-135deg, transparent 54%, var(--wp-underline-color) 64%, var(--wp-underline-color) 70%, transparent 80%); background-position: 100% 100%; background-size: 6px 3px; background-repeat: repeat-x; padding-bottom: 0.1em; } .is-dark-theme .wp-block-navigation-link__placeholder .wp-block-navigation-link__placeholder-text span { --wp-underline-color: #fff; } .wp-block-navigation-link__placeholder.wp-block-navigation-item__content { cursor: pointer; } /** * Link Control Transforms */ .link-control-transform { border-top: 1px solid #ccc; padding: 0 16px 8px 16px; } .link-control-transform__subheading { font-size: 11px; text-transform: uppercase; font-weight: 500; color: #1e1e1e; margin-bottom: 1.5em; } .link-control-transform__items { display: flex; justify-content: space-between; } .link-control-transform__item { flex-basis: 33%; flex-direction: column; gap: 8px; height: auto; } .wp-block-navigation-submenu { display: block; } .wp-block-navigation-submenu .wp-block-navigation__submenu-container { z-index: 28; } .wp-block-navigation-submenu.is-selected > .wp-block-navigation__submenu-container, .wp-block-navigation-submenu.has-child-selected > .wp-block-navigation__submenu-container { visibility: visible !important; opacity: 1 !important; min-width: 200px !important; height: auto !important; width: auto !important; position: absolute; right: -1px; top: 100%; } @media (min-width: 782px) { .wp-block-navigation-submenu.is-selected > .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container, .wp-block-navigation-submenu.has-child-selected > .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container { right: 100%; top: -1px; } .wp-block-navigation-submenu.is-selected > .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container::before, .wp-block-navigation-submenu.has-child-selected > .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container::before { content: ""; position: absolute; left: 100%; height: 100%; display: block; width: 0.5em; background: transparent; } } .block-editor-block-list__block[data-type="core/nextpage"] { max-width: 100%; text-align: center; margin-top: 28px; margin-bottom: 28px; } .wp-block-nextpage { display: block; text-align: center; white-space: nowrap; } .wp-block-nextpage > span { font-size: 13px; position: relative; text-transform: uppercase; font-weight: 600; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; color: #757575; border-radius: 4px; background: #fff; padding: 6px 8px; height: 24px; } .wp-block-nextpage::before { content: ""; position: absolute; top: calc(50%); right: 0; left: 0; border-top: 3px dashed #ccc; } .wp-block-navigation .wp-block-page-list > div, .wp-block-navigation .wp-block-page-list { background-color: inherit; } .wp-block-navigation.items-justified-space-between .wp-block-page-list > div, .wp-block-navigation.items-justified-space-between .wp-block-page-list { display: contents; flex: 1; } .wp-block-navigation.items-justified-space-between.has-child-selected .wp-block-page-list > div, .wp-block-navigation.items-justified-space-between.has-child-selected .wp-block-page-list, .wp-block-navigation.items-justified-space-between.is-selected .wp-block-page-list > div, .wp-block-navigation.items-justified-space-between.is-selected .wp-block-page-list { flex: inherit; } .wp-block-pages-list__item__link { pointer-events: none; } .wp-block-page-list .components-placeholder { min-height: 0; padding: 0; background-color: inherit; } .wp-block-page-list .components-placeholder .components-spinner { margin: 0.5em; } .wp-block-page-list-modal { max-width: 400px; } .wp-block-page-list-modal-buttons { display: flex; justify-content: flex-end; } .wp-block-page-list-modal-buttons .components-button { margin-right: 12px; } .wp-block-page-list .open-on-click:focus-within > .wp-block-navigation__submenu-container { visibility: visible; opacity: 1; width: auto; height: auto; min-width: 200px; } .wp-block-page-list .components-notice { margin-right: 0; } .block-editor-block-list__block[data-type="core/paragraph"].has-drop-cap:focus { min-height: auto !important; } .block-editor-block-list__block[data-empty=true] [data-rich-text-placeholder] { opacity: 1; } .block-editor-block-list__block[data-empty=true] + .block-editor-block-list__block[data-empty=true] [data-rich-text-placeholder] { opacity: 0; } .wp-block-post-excerpt .wp-block-post-excerpt__excerpt.is-inline { display: inline-block; } .wp-block-pullquote.has-text-align-left p, .wp-block-pullquote.has-text-align-right p, .wp-block[data-align=left] > .wp-block-pullquote p, .wp-block[data-align=right] > .wp-block-pullquote p { font-size: 20px; } .wp-block-pullquote blockquote p { font-size: 28px; line-height: 1.6; } .wp-block-pullquote.is-style-solid-color blockquote p { font-size: 32px; } .wp-block-pullquote.is-style-solid-color .wp-block-pullquote__citation { text-transform: none; font-style: normal; } .wp-block-pullquote .wp-block-pullquote__citation { color: inherit; } .wp-block-rss li a > div { display: inline; } .wp-block-rss__placeholder-form { display: flex; align-items: stretch; } .wp-block-rss__placeholder-form > * { margin-bottom: 8px; } @media (min-width: 782px) { .wp-block-rss__placeholder-form > * { margin-bottom: 0; } } .wp-block-rss__placeholder-input { display: flex; align-items: stretch; flex-grow: 1; } .wp-block-rss__placeholder-input .components-base-control__field { margin: 0; display: flex; align-items: stretch; flex-grow: 1; margin-left: 8px; } .wp-block[data-align=center] .wp-block-search .wp-block-search__inside-wrapper { margin: auto; } .wp-block-search .wp-block-search__button { height: auto; border-radius: initial; display: flex; align-items: center; } .wp-block-search__components-button-group { margin-top: 10px; } .block-editor-block-list__block[data-type="core/separator"] { padding-top: 0.1px; padding-bottom: 0.1px; } [data-type="core/shortcode"] .block-editor-plain-text { max-height: 250px; } [data-type="core/shortcode"].components-placeholder { min-height: 0; } .blocks-shortcode__textarea { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; } @media (prefers-reduced-motion: reduce) { .blocks-shortcode__textarea { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .blocks-shortcode__textarea { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .blocks-shortcode__textarea:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .blocks-shortcode__textarea::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .blocks-shortcode__textarea::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .blocks-shortcode__textarea:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .wp-block[data-align=center] > .wp-block-site-logo { display: table; margin-right: auto; margin-left: auto; } .wp-block-site-logo a { pointer-events: none; } .wp-block-site-logo .custom-logo-link { cursor: inherit; } .wp-block-site-logo .custom-logo-link:focus { box-shadow: none; } .wp-block-site-logo .custom-logo-link.is-transient img { opacity: 0.3; } .wp-block-site-logo img { display: block; height: auto; max-width: 100%; } .wp-block-site-logo.wp-block-site-logo .components-placeholder, .wp-block-site-logo.wp-block-site-logo .components-resizable-box__container { border-radius: inherit; } .wp-block-site-logo.wp-block-site-logo.is-default-size .components-placeholder { height: 120px; width: 120px; } .wp-block-site-logo.wp-block-site-logo .components-placeholder { justify-content: center; align-items: center; box-shadow: none; padding: 0; min-height: 48px; min-width: 48px; height: 100%; width: 100%; color: currentColor; background: transparent; } .wp-block-site-logo.wp-block-site-logo .components-placeholder .components-form-file-upload { display: none; } .wp-block-site-logo.wp-block-site-logo .components-placeholder .components-placeholder__preview { position: absolute; top: 4px; left: 4px; bottom: 4px; right: 4px; background: rgba(255, 255, 255, 0.8); display: flex; align-items: center; justify-content: center; } .wp-block-site-logo.wp-block-site-logo .components-placeholder .components-drop-zone__content-text { display: none; } .wp-block-site-logo.wp-block-site-logo .components-placeholder::before { content: ""; display: block; position: absolute; top: 0; left: 0; bottom: 0; right: 0; border: 1px dashed currentColor; opacity: 0.4; pointer-events: none; border-radius: inherit; } .wp-block-site-logo.wp-block-site-logo .components-placeholder .components-placeholder__fieldset { width: auto; } .wp-block-site-logo.wp-block-site-logo .components-placeholder .components-button.components-button { color: inherit; padding: 0; display: flex; justify-content: center; align-items: center; width: 48px; height: 48px; border-radius: 50%; position: relative; visibility: hidden; background: transparent; transition: all 0.1s linear; } @media (prefers-reduced-motion: reduce) { .wp-block-site-logo.wp-block-site-logo .components-placeholder .components-button.components-button { transition-duration: 0s; transition-delay: 0s; } } .wp-block-site-logo.wp-block-site-logo .components-placeholder .components-button.components-button > svg { color: #fff; } .wp-block-site-logo.wp-block-site-logo .components-placeholder .components-placeholder__illustration { position: absolute; top: 0; left: 0; bottom: 0; right: 0; width: 100%; height: 100%; stroke: currentColor; stroke-dasharray: 3; opacity: 0.4; } .wp-block-site-logo.wp-block-site-logo.is-selected .components-button.components-button { background: var(--wp-admin-theme-color); border-color: var(--wp-admin-theme-color); border-style: solid; color: #fff; opacity: 1; visibility: visible; } .wp-block-site-tagline__placeholder { padding: 1em 0; border: 1px dashed; } .wp-block-site-title__placeholder { padding: 1em 0; border: 1px dashed; } .wp-block-social-links .wp-social-link { line-height: 0; } .wp-block-social-links .wp-social-link button { font-size: inherit; color: currentColor; height: auto; line-height: 0; padding: 0.25em; } .wp-block-social-links.is-style-pill-shape .wp-social-link button { padding-right: calc((2/3) * 1em); padding-left: calc((2/3) * 1em); } .wp-block-social-links.is-style-logos-only .wp-social-link button { padding: 0; } .wp-block-social-links div.block-editor-url-input { display: inline-block; margin-right: 8px; } .wp-social-link:hover { transform: none; } .editor-styles-wrapper .wp-block-social-links { padding: 0; } .wp-block-social-links__social-placeholder { display: flex; opacity: 0.8; list-style: none; } .wp-block-social-links__social-placeholder > .wp-social-link { padding-right: 0 !important; margin-right: 0 !important; padding-left: 0 !important; margin-left: 0 !important; width: 0 !important; visibility: hidden; } .wp-block-social-links__social-placeholder > .wp-block-social-links__social-placeholder-icons { display: flex; } .wp-block-social-links__social-placeholder .wp-social-link { padding: 0.25em; } .is-style-pill-shape .wp-block-social-links__social-placeholder .wp-social-link { padding-right: calc((2/3) * 1em); padding-left: calc((2/3) * 1em); } .is-style-logos-only .wp-block-social-links__social-placeholder .wp-social-link { padding: 0; } .wp-block-social-links__social-placeholder .wp-social-link::before { content: ""; display: block; width: 1em; height: 1em; border-radius: 50%; } .is-style-logos-only .wp-block-social-links__social-placeholder .wp-social-link::before { background: currentColor; } .wp-block-social-links .wp-block-social-links__social-prompt { min-height: 24px; list-style: none; order: 2; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; line-height: 24px; margin-top: auto; margin-bottom: auto; cursor: default; padding-left: 8px; } .wp-block[data-align=center] > .wp-block-social-links { justify-content: center; } .block-editor-block-preview__content .components-button:disabled { opacity: 1; } .wp-social-link.wp-social-link__is-incomplete { opacity: 0.5; } @media (prefers-reduced-motion: reduce) { .wp-social-link.wp-social-link__is-incomplete { transition-duration: 0s; transition-delay: 0s; } } .wp-block-social-links .is-selected .wp-social-link__is-incomplete, .wp-social-link.wp-social-link__is-incomplete:hover, .wp-social-link.wp-social-link__is-incomplete:focus { opacity: 1; } .block-editor-block-list__block[data-type="core/spacer"]::before { content: ""; display: block; position: absolute; z-index: 1; width: 100%; min-height: 8px; min-width: 8px; height: 100%; } .wp-block-spacer.is-hovered .block-library-spacer__resize-container, .block-library-spacer__resize-container.has-show-handle { background: rgba(0, 0, 0, 0.1); } .is-dark-theme .wp-block-spacer.is-hovered .block-library-spacer__resize-container, .is-dark-theme .block-library-spacer__resize-container.has-show-handle { background: rgba(255, 255, 255, 0.15); } .block-library-spacer__resize-container { clear: both; } .block-library-spacer__resize-container:not(.is-resizing) { height: 100% !important; width: 100% !important; } .block-library-spacer__resize-container .components-resizable-box__handle::before { content: none; } .block-library-spacer__resize-container.resize-horizontal { margin-bottom: 0; } .wp-block-table { margin: 0; } .wp-block[data-align=left] > .wp-block-table, .wp-block[data-align=right] > .wp-block-table, .wp-block[data-align=center] > .wp-block-table { height: auto; } .wp-block[data-align=left] > .wp-block-table table, .wp-block[data-align=right] > .wp-block-table table, .wp-block[data-align=center] > .wp-block-table table { width: auto; } .wp-block[data-align=left] > .wp-block-table td, .wp-block[data-align=left] > .wp-block-table th, .wp-block[data-align=right] > .wp-block-table td, .wp-block[data-align=right] > .wp-block-table th, .wp-block[data-align=center] > .wp-block-table td, .wp-block[data-align=center] > .wp-block-table th { word-break: break-word; } .wp-block[data-align=center] > .wp-block-table { text-align: initial; } .wp-block[data-align=center] > .wp-block-table table { margin: 0 auto; } .wp-block-table td, .wp-block-table th { border: 1px solid; } .wp-block-table td.is-selected, .wp-block-table th.is-selected { border-color: var(--wp-admin-theme-color); box-shadow: inset 0 0 0 1px var(--wp-admin-theme-color); border-style: double; } .wp-block-table figcaption { color: #555; font-size: 13px; text-align: center; } .is-dark-theme .wp-block-table figcaption { color: rgba(255, 255, 255, 0.65); } .blocks-table__placeholder-form.blocks-table__placeholder-form { display: flex; flex-direction: column; align-items: flex-start; } .blocks-table__placeholder-form.blocks-table__placeholder-form > * { margin-bottom: 8px; } @media (min-width: 782px) { .blocks-table__placeholder-form.blocks-table__placeholder-form { flex-direction: row; align-items: flex-end; } .blocks-table__placeholder-form.blocks-table__placeholder-form > * { margin-bottom: 0; } } .blocks-table__placeholder-input { width: 112px; margin-left: 8px; margin-bottom: 0; } .blocks-table__placeholder-input input { height: 36px; } .blocks-table__placeholder-input .components-base-control__field { margin-bottom: 0; } .wp-block-template-part__placeholder-preview-dropdown-content .components-popover__content, .wp-block-template-part__preview-dropdown-content .components-popover__content { min-width: 320px; padding: 0; } .wp-block-template-part__selection-preview-search-form { border-bottom: 1px solid #ddd; } .wp-block-template-part__selection-preview-container { background: #fff; padding-bottom: 16px; } .wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item { border-radius: 2px; cursor: pointer; margin-top: 16px; transition: all 0.05s ease-in-out; border: 1px solid #ddd; width: 100%; background-color: #fff; } .wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item:hover { border: 1px solid var(--wp-admin-theme-color); } .wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item:focus { box-shadow: inset 0 0 0 1px #fff, 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); outline: 2px solid transparent; } .wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item.is-placeholder { min-height: 100px; } .wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item .block-editor-block-preview__container { border-bottom: 1px solid #ddd; } .wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item-title { padding: 4px; font-size: 12px; text-align: right; } .wp-block-template-part__selection-preview-container .wp-block-template-part__selection-panel-group-header { padding: 16px 16px 0; } .wp-block-template-part__selection-preview-container .wp-block-template-part__selection-panel-group-content { padding: 0 16px; } .wp-block-template-part__selection-preview-container .wp-block-template-part__selection-panel-group-title { color: var(--wp-admin-theme-color); text-transform: uppercase; font-size: 11px; font-weight: 500; } .wp-block-template-part__placeholder-create-new__title-form .wp-block-template-part__placeholder-create-new__title-form-actions { padding-top: 12px; display: flex; justify-content: flex-end; } .wp-block-template-part__placeholder-create-new__title-form .wp-block-template-part__placeholder-create-new__title-form-actions .components-flex-item { margin-right: 12px; } .wp-block-text-columns .block-editor-rich-text__editable:focus { outline: 1px solid #ddd; } .wp-block[data-align=center] > .wp-block-video { text-align: center; } .wp-block-video { position: relative; } .wp-block-video.is-transient video { opacity: 0.3; } .wp-block-video .components-spinner { position: absolute; top: 50%; right: 50%; margin-top: -9px; margin-right: -9px; } .editor-video-poster-control .components-base-control__label { display: block; } .editor-video-poster-control .components-button { margin-left: 8px; } .block-library-video-tracks-editor { z-index: 159990; } .block-library-video-tracks-editor > .components-popover__content { width: 360px; } .block-library-video-tracks-editor__track-list-track { display: flex; place-content: space-between; align-items: baseline; padding-right: 12px; } .block-library-video-tracks-editor__single-track-editor-label-language { display: flex; margin-top: 12px; } .block-library-video-tracks-editor__single-track-editor-label-language > .components-base-control { width: 50%; } .block-library-video-tracks-editor__single-track-editor-label-language > .components-base-control:first-child { margin-left: 16px; } .block-library-video-tracks-editor__single-track-editor-kind-select { max-width: 240px; } .block-library-video-tracks-editor__single-track-editor-buttons-container { display: flex; place-content: space-between; margin-top: 32px; } .block-library-video-tracks-editor__single-track-editor-edit-track-label { margin-top: 4px; margin-bottom: 12px; color: #757575; text-transform: uppercase; font-size: 11px; font-weight: 500; display: block; } .block-library-video-tracks-editor > .components-popover__content > div { padding: 0; } .block-library-video-tracks-editor__track-list .components-menu-group__label, .block-library-video-tracks-editor__add-tracks-container .components-menu-group__label { padding: 0; } .block-library-video-tracks-editor__single-track-editor, .block-library-video-tracks-editor__track-list, .block-library-video-tracks-editor__add-tracks-container { padding: 12px; } .block-library-video-tracks-editor__single-track-editor .components-base-control .components-base-control__label { margin-bottom: 4px; } .block-library-video-tracks-editor__single-track-editor .components-base-control .components-base-control__field { margin-bottom: 12px; } .block-library-video-tracks-editor__single-track-editor .components-base-control .components-text-control__input { margin-right: 0; } .block-library-video-tracks-editor__single-track-editor .components-base-control .components-input-control__label { margin-bottom: 4px; } .editor-styles-wrapper ul.wp-block-post-template { padding-right: 0; margin-right: 0; list-style: none; } .block-library-query-toolbar__popover .components-popover__content { min-width: 230px; } .wp-block-query__create-new-link { padding: 0 56px 16px 16px; } .wp-block[data-align=center] > .wp-block-query-pagination { justify-content: center; } .editor-styles-wrapper .wp-block-query-pagination { max-width: 100%; } .editor-styles-wrapper .wp-block-query-pagination.block-editor-block-list__layout { margin: 0; } .block-library-query-pagination-toolbar__popover .components-popover__content { min-width: 230px; } .wp-block-query-pagination > .wp-block-query-pagination-next, .wp-block-query-pagination > .wp-block-query-pagination-previous, .wp-block-query-pagination > .wp-block-query-pagination-numbers { margin-right: 0; margin-top: 0.5em; margin-right: 0.5em; margin-bottom: 0.5em; } .wp-block-query-pagination > .wp-block-query-pagination-next:last-child, .wp-block-query-pagination > .wp-block-query-pagination-previous:last-child, .wp-block-query-pagination > .wp-block-query-pagination-numbers:last-child { margin-right: 0; } .wp-block-query-pagination-numbers a { text-decoration: underline; } .wp-block-query-pagination-numbers .page-numbers { margin-left: 2px; } .wp-block-query-pagination-numbers .page-numbers:last-child { margin-right: 0; } .wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder, .wp-block-post-featured-image.wp-block-post-featured-image .components-resizable-box__container { border-radius: inherit; } .wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder, .wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder { justify-content: center; align-items: center; box-shadow: none; padding: 0; color: currentColor; background: transparent; min-height: 200px; } .wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-form-file-upload, .wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-form-file-upload { display: none; } .wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-placeholder__preview, .wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-placeholder__preview { position: absolute; top: 4px; left: 4px; bottom: 4px; right: 4px; background: rgba(255, 255, 255, 0.8); display: flex; align-items: center; justify-content: center; } .wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder::before, .wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder::before { content: ""; display: block; position: absolute; top: 0; left: 0; bottom: 0; right: 0; border: 1px dashed currentColor; opacity: 0.4; pointer-events: none; border-radius: inherit; } .wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-placeholder__fieldset, .wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-placeholder__fieldset { width: auto; } .wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-button.components-button, .wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-button.components-button { color: inherit; padding: 0; display: flex; justify-content: center; align-items: center; width: 48px; height: 48px; border-radius: 50%; position: relative; visibility: hidden; background: transparent; transition: all 0.1s linear; } @media (prefers-reduced-motion: reduce) { .wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-button.components-button, .wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-button.components-button { transition-duration: 0s; transition-delay: 0s; } } .wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-button.components-button > svg, .wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-button.components-button > svg { color: #fff; } .wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-placeholder__illustration, .wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-placeholder__illustration { position: absolute; top: 0; left: 0; bottom: 0; right: 0; width: 100%; height: 100%; stroke: currentColor; stroke-dasharray: 3; opacity: 0.4; } .wp-block-post-featured-image.wp-block-post-featured-image[style*=height] .components-placeholder { min-height: 48px; min-width: 48px; height: 100%; width: 100%; } .wp-block-post-featured-image.wp-block-post-featured-image.is-selected .components-button.components-button { background: var(--wp-admin-theme-color); border-color: var(--wp-admin-theme-color); border-style: solid; color: #fff; opacity: 1; visibility: visible; } div[data-type="core/post-featured-image"] img { max-width: 100%; height: auto; display: block; } :root .editor-styles-wrapper { /* * Our classes uses the same values we set for gradient value attributes, * and we can not use spacing because of WP multi site kses rule. */ /* stylelint-disable function-comma-space-after */ /* stylelint-enable function-comma-space-after */ } :root .editor-styles-wrapper .has-very-light-gray-background-color { background-color: #eee; } :root .editor-styles-wrapper .has-very-dark-gray-background-color { background-color: #313131; } :root .editor-styles-wrapper .has-very-light-gray-color { color: #eee; } :root .editor-styles-wrapper .has-very-dark-gray-color { color: #313131; } :root .editor-styles-wrapper .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background { background: linear-gradient(-135deg, #00d084 0%, #0693e3 100%); } :root .editor-styles-wrapper .has-purple-crush-gradient-background { background: linear-gradient(-135deg, #34e2e4 0%, #4721fb 50%, #ab1dfe 100%); } :root .editor-styles-wrapper .has-hazy-dawn-gradient-background { background: linear-gradient(-135deg, #faaca8 0%, #dad0ec 100%); } :root .editor-styles-wrapper .has-subdued-olive-gradient-background { background: linear-gradient(-135deg, #fafae1 0%, #67a671 100%); } :root .editor-styles-wrapper .has-atomic-cream-gradient-background { background: linear-gradient(-135deg, #fdd79a 0%, #004a59 100%); } :root .editor-styles-wrapper .has-nightshade-gradient-background { background: linear-gradient(-135deg, #330968 0%, #31cdcf 100%); } :root .editor-styles-wrapper .has-midnight-gradient-background { background: linear-gradient(-135deg, #020381 0%, #2874fc 100%); } .editor-styles-wrapper { --wp--preset--font-size--normal: 16px; --wp--preset--font-size--huge: 42px; } .editor-styles-wrapper .has-regular-font-size { font-size: 16px; } .editor-styles-wrapper .has-larger-font-size { font-size: 42px; } .editor-styles-wrapper .has-normal-font-size { font-size: var(--wp--preset--font-size--normal); } .editor-styles-wrapper .has-huge-font-size { font-size: var(--wp--preset--font-size--huge); } /** * Editor Normalization Styles * * These are only output in the editor, but styles here are NOT prefixed .editor-styles-wrapper. * This allows us to create normalization styles that are easily overridden by editor styles. */PKj l\A  (css/dist/block-library/theme-rtl.min.cssnu[.wp-block-audio figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-audio figcaption{color:hsla(0,0%,100%,.65)}.wp-block-code>code{font-family:Menlo,Consolas,monaco,monospace;color:#1e1e1e;padding:.8em 1em;border:1px solid #ddd;border-radius:4px}.wp-block-embed figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-embed figcaption{color:hsla(0,0%,100%,.65)}.blocks-gallery-caption{color:#555;font-size:13px;text-align:center}.is-dark-theme .blocks-gallery-caption{color:hsla(0,0%,100%,.65)}.wp-block-image figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-image figcaption{color:hsla(0,0%,100%,.65)}.wp-block-pullquote{border-top:4px solid;border-bottom:4px solid;margin-bottom:1.75em;color:currentColor}.wp-block-pullquote__citation,.wp-block-pullquote cite,.wp-block-pullquote footer{color:currentColor;text-transform:uppercase;font-size:.8125em;font-style:normal}.wp-block-quote{border-right:.25em solid;margin:0 0 1.75em;padding-right:1em}.wp-block-quote cite,.wp-block-quote footer{color:currentColor;font-size:.8125em;position:relative;font-style:normal}.wp-block-quote.has-text-align-right{border-right:none;border-left:.25em solid;padding-right:0;padding-left:1em}.wp-block-quote.has-text-align-center{border:none;padding-right:0}.wp-block-quote.is-large,.wp-block-quote.is-style-large,.wp-block-quote.is-style-plain{border:none}.wp-block-search .wp-block-search__label{font-weight:700}.wp-block-group:where(.has-background){padding:1.25em 2.375em}.wp-block-separator{border:none;border-bottom:2px solid;margin-right:auto;margin-left:auto;opacity:.4}.wp-block-separator:not(.is-style-wide):not(.is-style-dots){width:100px}.wp-block-separator.has-background:not(.is-style-dots){border-bottom:none;height:1px}.wp-block-separator.has-background:not(.is-style-wide):not(.is-style-dots){height:2px}.wp-block-table thead{border-bottom:3px solid}.wp-block-table tfoot{border-top:3px solid}.wp-block-table td,.wp-block-table th{padding:.5em;border:1px solid;word-break:normal}.wp-block-table figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-table figcaption{color:hsla(0,0%,100%,.65)}.wp-block-video figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-video figcaption{color:hsla(0,0%,100%,.65)}.wp-block-template-part.has-background{padding:1.25em 2.375em;margin-top:0;margin-bottom:0}PKj l\5lgg$css/dist/block-library/reset.min.cssnu[html :where(.editor-styles-wrapper){font-family:serif;font-size:medium;line-height:normal;color:initial;background:#fff}html :where(.editor-styles-wrapper) .wp-align-wrapper{max-width:840px}html :where(.editor-styles-wrapper) .wp-align-wrapper.wp-align-full,html :where(.editor-styles-wrapper) .wp-align-wrapper>.wp-block{max-width:none}html :where(.editor-styles-wrapper) .wp-align-wrapper.wp-align-wide{max-width:840px}html :where(.editor-styles-wrapper) a{transition:none}html :where(.editor-styles-wrapper) code,html :where(.editor-styles-wrapper) kbd{padding:0;margin:0;background:inherit;font-size:inherit;font-family:monospace}html :where(.editor-styles-wrapper) p{font-size:revert;line-height:revert;margin:revert}html :where(.editor-styles-wrapper) ol,html :where(.editor-styles-wrapper) ul{margin:revert;padding:revert;list-style-type:revert;box-sizing:revert}html :where(.editor-styles-wrapper) ol li,html :where(.editor-styles-wrapper) ol ol,html :where(.editor-styles-wrapper) ol ul,html :where(.editor-styles-wrapper) ul li,html :where(.editor-styles-wrapper) ul ol,html :where(.editor-styles-wrapper) ul ul{margin:revert}html :where(.editor-styles-wrapper) ol ul,html :where(.editor-styles-wrapper) ul ul{list-style-type:revert}html :where(.editor-styles-wrapper) h1,html :where(.editor-styles-wrapper) h2,html :where(.editor-styles-wrapper) h3,html :where(.editor-styles-wrapper) h4,html :where(.editor-styles-wrapper) h5,html :where(.editor-styles-wrapper) h6,html :where(.editor-styles-wrapper) select{font-size:revert;margin:revert;color:revert;line-height:revert;font-weight:revert}html :where(.editor-styles-wrapper) select{font-family:system-ui;-webkit-appearance:revert;border:revert;border-radius:revert;background:revert;box-shadow:revert;text-shadow:revert;outline:revert;cursor:revert;transform:revert;padding:revert;min-height:revert;max-width:revert;vertical-align:revert}html :where(.editor-styles-wrapper) select:disabled,html :where(.editor-styles-wrapper) select:focus{color:revert;border-color:revert;background-color:revert;background-image:revert;box-shadow:revert;text-shadow:revert;cursor:revert;transform:revert}PKj l\-~#%css/dist/block-library/editor.min.cssnu[ul.wp-block-archives{padding-left:2.5em}.wp-block-audio{margin-left:0;margin-right:0}.edit-post-visual-editor .block-library-block__reusable-block-container .is-root-container{padding-left:0;padding-right:0}.edit-post-visual-editor .block-library-block__reusable-block-container .block-editor-writing-flow{display:block}.edit-post-visual-editor .block-library-block__reusable-block-container .components-disabled .block-list-appender{display:none}.wp-block[data-align=center]>.wp-block-button{text-align:center;margin-left:auto;margin-right:auto}.wp-block[data-align=right]>.wp-block-button{ /*!rtl:ignore*/text-align:right}.wp-block-button{position:relative;cursor:text}.wp-block-button:not(.has-text-color):not(.is-style-outline) [data-rich-text-placeholder]:after{color:#fff}.wp-block-button:focus{box-shadow:0 0 0 1px #fff,0 0 0 3px var(--wp-admin-theme-color);outline:2px solid transparent;outline-offset:-2px}.wp-block-button[data-rich-text-placeholder]:after{opacity:.8}.wp-block-button__inline-link{color:#757575;height:0;overflow:hidden;max-width:290px}.wp-block-button__inline-link-input__suggestions{max-width:290px}@media (min-width:782px){.wp-block-button__inline-link,.wp-block-button__inline-link-input__suggestions{max-width:260px}}@media (min-width:960px){.wp-block-button__inline-link,.wp-block-button__inline-link-input__suggestions{max-width:290px}}.is-selected .wp-block-button__inline-link{height:auto;overflow:visible}.wp-button-label__width .components-button-group{display:block}.wp-button-label__width .components-base-control__field{margin-bottom:12px}div[data-type="core/button"]{display:table}.wp-block-buttons>.wp-block,.wp-block-buttons>.wp-block-button.wp-block-button.wp-block-button.wp-block-button.wp-block-button{margin:0}.wp-block-buttons>.block-list-appender{display:inline-flex;align-items:center}.wp-block-buttons.is-vertical>.block-list-appender .block-list-appender__toggle{justify-content:flex-start}.wp-block-buttons>.wp-block-button:focus{box-shadow:none}.wp-block-buttons:not(.is-content-justification-space-between,.is-content-justification-right,.is-content-justification-left,.is-content-justification-center) .wp-block[data-align=center]{margin-left:auto;margin-right:auto;margin-top:0;width:100%}.wp-block-buttons:not(.is-content-justification-space-between,.is-content-justification-right,.is-content-justification-left,.is-content-justification-center) .wp-block[data-align=center] .wp-block-button{margin-bottom:0}.wp-block[data-align=center]>.wp-block-buttons{align-items:center;justify-content:center}.wp-block[data-align=right]>.wp-block-buttons{justify-content:flex-end}.wp-block-categories ul{padding-left:2.5em}.wp-block-categories ul ul{margin-top:6px}.wp-block-columns :where(.wp-block){max-width:none;margin-left:0;margin-right:0}@media (min-width:600px){.editor-styles-wrapper .block-editor-block-list__block.wp-block-column:nth-child(2n){margin-left:var(--wp--style--block-gap,2em)}}@media (min-width:782px){.editor-styles-wrapper .block-editor-block-list__block.wp-block-column:not(:first-child){margin-left:var(--wp--style--block-gap,2em)}}html :where(.wp-block-column){margin-top:0;margin-bottom:0}.editor-styles-wrapper .wp-block-cover{box-sizing:border-box}.wp-block-cover.is-placeholder{min-height:auto!important;padding:0!important}.wp-block-cover.is-placeholder .block-library-cover__resize-container{display:none}.wp-block-cover.is-placeholder .components-placeholder.is-large{min-height:240px;justify-content:flex-start;z-index:1}.wp-block-cover.is-placeholder .components-placeholder.is-large+.block-library-cover__resize-container{min-height:240px;display:block}.wp-block-cover.components-placeholder h2{color:inherit}.wp-block-cover.is-transient:before{background-color:#fff;opacity:.3}.wp-block-cover .components-spinner{position:absolute;z-index:1;top:50%;left:50%;transform:translate(-50%,-50%);margin:0}.wp-block-cover .block-editor-block-list__layout{width:100%}.wp-block-cover .wp-block-cover__inner-container{text-align:left;margin-left:0;margin-right:0}.wp-block-cover .wp-block-cover__placeholder-background-options{width:100%}[data-align=left]>.wp-block-cover,[data-align=right]>.wp-block-cover{max-width:420px;width:100%}.block-library-cover__reset-button{margin-left:auto}.block-library-cover__resize-container{position:absolute!important;top:0;left:0;right:0;bottom:0;min-height:50px}.block-library-cover__resize-container:not(.is-resizing){height:auto!important}.wp-block-cover>.components-drop-zone .components-drop-zone__content{opacity:.8!important}.block-editor-block-patterns-list__list-item .has-parallax.wp-block-cover{background-attachment:scroll}.wp-block-embed{margin-left:0;margin-right:0;clear:both}.wp-block-embed.is-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1em;min-height:200px;text-align:center;border-radius:2px;background-color:#fff;box-shadow:inset 0 0 0 1px #1e1e1e}.wp-block-embed.is-loading p{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px}.wp-block-embed .components-placeholder__error{word-break:break-word}.wp-block-embed .components-placeholder__learn-more{margin-top:1em}.block-library-embed__interactive-overlay{position:absolute;top:0;left:0;right:0;bottom:0;opacity:0}.wp-block[data-align=left]>.wp-block-embed,.wp-block[data-align=right]>.wp-block-embed{max-width:360px;width:100%}.wp-block[data-align=left]>.wp-block-embed .wp-block-embed__wrapper,.wp-block[data-align=right]>.wp-block-embed .wp-block-embed__wrapper{min-width:280px}.wp-block-file{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;margin-bottom:0}.wp-block[data-align=left]>.wp-block-file,.wp-block[data-align=right]>.wp-block-file{height:auto}.wp-block-file .components-resizable-box__container{margin-bottom:1em}.wp-block-file .wp-block-file__preview{margin-bottom:1em;width:100%;height:100%}.wp-block-file .wp-block-file__preview-overlay{position:absolute;top:0;right:0;bottom:0;left:0}.wp-block-file .wp-block-file__content-wrapper{flex-grow:1}.wp-block-file a{min-width:1em}.wp-block-file .wp-block-file__button-richtext-wrapper{display:inline-block;margin-left:.75em}.wp-block-freeform.block-library-rich-text__tinymce{height:auto}.wp-block-freeform.block-library-rich-text__tinymce li,.wp-block-freeform.block-library-rich-text__tinymce p{line-height:1.8}.wp-block-freeform.block-library-rich-text__tinymce ol,.wp-block-freeform.block-library-rich-text__tinymce ul{padding-left:2.5em;margin-left:0}.wp-block-freeform.block-library-rich-text__tinymce blockquote{margin:0;box-shadow:inset 0 0 0 0 #ddd;border-left:4px solid #000;padding-left:1em}.wp-block-freeform.block-library-rich-text__tinymce pre{white-space:pre-wrap;font-family:Menlo,Consolas,monaco,monospace;font-size:15px;color:#1e1e1e}.wp-block-freeform.block-library-rich-text__tinymce>:first-child{margin-top:0}.wp-block-freeform.block-library-rich-text__tinymce>:last-child{margin-bottom:0}.wp-block-freeform.block-library-rich-text__tinymce.mce-edit-focus{outline:none}.wp-block-freeform.block-library-rich-text__tinymce a{color:var(--wp-admin-theme-color)}.wp-block-freeform.block-library-rich-text__tinymce:focus a[data-mce-selected]{padding:0 2px;margin:0 -2px;border-radius:2px;box-shadow:0 0 0 1px #e5f5fa;background:#e5f5fa}.wp-block-freeform.block-library-rich-text__tinymce code{padding:2px;border-radius:2px;color:#1e1e1e;background:#f0f0f0;font-family:Menlo,Consolas,monaco,monospace;font-size:14px}.wp-block-freeform.block-library-rich-text__tinymce:focus code[data-mce-selected]{background:#ddd}.wp-block-freeform.block-library-rich-text__tinymce .alignright{float:right;margin:.5em 0 .5em 1em}.wp-block-freeform.block-library-rich-text__tinymce .alignleft{float:left;margin:.5em 1em .5em 0}.wp-block-freeform.block-library-rich-text__tinymce .aligncenter{display:block;margin-left:auto;margin-right:auto}.wp-block-freeform.block-library-rich-text__tinymce .wp-more-tag{width:96%;height:20px;display:block;margin:15px auto;outline:0;cursor:default;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAADtgAAAAoBAMAAAA86gLBAAAAJFBMVEVMaXG7u7vBwcHDw8POzs68vLzGxsbMzMy+vr7AwMDQ0NDGxsYKLGzpAAAADHRSTlMA///zWf+/f///TMxNVGuqAAABwklEQVR4Ae3dMXLaQBTH4bfj8UCpx8hq0vgKvgFNemhT6Qo6gg6R+0ZahM2QLmyBJ99XWP9V5+o3jIUcLQEAAAAAAAAAAAAAAAAAAAAAAABQ8j0WL9lfTtlt18uNXAUA8O/KVtfa1tdcrOdSh9gCQAMlh1hMNbZZ1bsrsQWABsrhLRbz7z5in/32UbfUMUbkMQCAh5RfGYv82UdMdZ6HS2wjT2ILAI8r3XmM2B3WvM59vfO2xXYW2yYAENuPU8S+X/N67mKxzy225yaxBQCxLV392UdcvwV0jPVUj98ntkBWT7C7+9u2/V/vGtvXIWJ6/4rtbottWa6Ri0NUT/u72LYttrb97LHdvUXMxxrb8TO2W2TF1rYbbLG1bbGNjMi4+2Sbi1FsbbvNFlvbFtt5fDnE3d9sP1/XeIyV2Nr2U2/guZUuptNrH/dPI9eLB6SaAEBs6wPJf3/PNk9tYgsAYrv/8TFuzx/fvkFqGtrEFgDEdpcZUb7ejXy6ntrEFgDENvL6gsas4vbdyKt4DACI7TxElJv/Z7udpqFNbAFAbKduy2uU2trttM/x28UWAAAAAAAAAAAAAAAAAAAAAAAAAADgDyPwGmGTCZp7AAAAAElFTkSuQmCC);background-size:1900px 20px;background-repeat:no-repeat;background-position:50%}.wp-block-freeform.block-library-rich-text__tinymce img::selection{background-color:transparent}.wp-block-freeform.block-library-rich-text__tinymce div.mceTemp{-ms-user-select:element}.wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption{margin:0;max-width:100%}.wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption a,.wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption img{display:block}.wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption,.wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption *{-webkit-user-drag:none}.wp-block-freeform.block-library-rich-text__tinymce dl.wp-caption .wp-caption-dd{padding-top:.5em;margin:0}.wp-block-freeform.block-library-rich-text__tinymce .wpview{width:99.99%;position:relative;clear:both;margin-bottom:16px;border:1px solid transparent}.wp-block-freeform.block-library-rich-text__tinymce .wpview iframe{display:block;max-width:100%;background:transparent}.wp-block-freeform.block-library-rich-text__tinymce .wpview .mce-shim{position:absolute;top:0;right:0;bottom:0;left:0}.wp-block-freeform.block-library-rich-text__tinymce .wpview[data-mce-selected="2"] .mce-shim{display:none}.wp-block-freeform.block-library-rich-text__tinymce .wpview .loading-placeholder{border:1px dashed #ddd;padding:10px}.wp-block-freeform.block-library-rich-text__tinymce .wpview .wpview-error{border:1px solid #ddd;padding:1em 0;margin:0;word-wrap:break-word}.wp-block-freeform.block-library-rich-text__tinymce .wpview .wpview-error p{margin:0;text-align:center}.wp-block-freeform.block-library-rich-text__tinymce .wpview[data-mce-selected] .loading-placeholder,.wp-block-freeform.block-library-rich-text__tinymce .wpview[data-mce-selected] .wpview-error{border-color:transparent}.wp-block-freeform.block-library-rich-text__tinymce .wpview .dashicons{display:block;margin:0 auto;width:32px;height:32px;font-size:32px}.wp-block-freeform.block-library-rich-text__tinymce .wpview.wpview-type-gallery:after{content:"";display:table;clear:both}.wp-block-freeform.block-library-rich-text__tinymce .gallery img[data-mce-selected]:focus{outline:none}.wp-block-freeform.block-library-rich-text__tinymce .gallery a{cursor:default}.wp-block-freeform.block-library-rich-text__tinymce .gallery{margin:auto -6px;padding:6px 0;line-height:1;overflow-x:hidden}.wp-block-freeform.block-library-rich-text__tinymce .gallery .gallery-item{float:left;margin:0;text-align:center;padding:6px;box-sizing:border-box}.wp-block-freeform.block-library-rich-text__tinymce .gallery .gallery-caption,.wp-block-freeform.block-library-rich-text__tinymce .gallery .gallery-icon{margin:0}.wp-block-freeform.block-library-rich-text__tinymce .gallery .gallery-caption{font-size:13px;margin:4px 0}.wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-1 .gallery-item{width:100%}.wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-2 .gallery-item{width:50%}.wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-3 .gallery-item{width:33.3333333333%}.wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-4 .gallery-item{width:25%}.wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-5 .gallery-item{width:20%}.wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-6 .gallery-item{width:16.6666666667%}.wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-7 .gallery-item{width:14.2857142857%}.wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-8 .gallery-item{width:12.5%}.wp-block-freeform.block-library-rich-text__tinymce .gallery-columns-9 .gallery-item{width:11.1111111111%}.wp-block-freeform.block-library-rich-text__tinymce .gallery img{max-width:100%;height:auto;border:none;padding:0}div[data-type="core/freeform"]:before{transition:border-color .1s linear,box-shadow .1s linear;border:1px solid #ddd;outline:1px solid transparent}@media (prefers-reduced-motion:reduce){div[data-type="core/freeform"]:before{transition-duration:0s;transition-delay:0s}}div[data-type="core/freeform"].is-selected:before{border-color:#1e1e1e}div[data-type="core/freeform"] .block-editor-block-contextual-toolbar+div{margin-top:0;padding-top:0}div[data-type="core/freeform"].is-selected .block-library-rich-text__tinymce:after{content:"";display:table;clear:both}.mce-toolbar-grp .mce-btn.mce-active:hover button,.mce-toolbar-grp .mce-btn.mce-active:hover i,.mce-toolbar-grp .mce-btn.mce-active button,.mce-toolbar-grp .mce-btn.mce-active i{color:#1e1e1e}.mce-toolbar-grp .mce-rtl .mce-flow-layout-item.mce-last{margin-right:0;margin-left:8px}.mce-toolbar-grp .mce-btn i{font-style:normal}.block-library-classic__toolbar{display:none;width:auto;position:sticky;z-index:31;top:0;border:1px solid #ddd;border-bottom:none;border-radius:2px;margin:0 0 8px;padding:0}div[data-type="core/freeform"].is-selected .block-library-classic__toolbar{display:block;border-color:#1e1e1e}.block-library-classic__toolbar .mce-tinymce{box-shadow:none}@media (min-width:600px){.block-library-classic__toolbar{padding:0}}.block-library-classic__toolbar:empty{display:block;background:#f5f5f5;border-bottom:1px solid #e2e4e7}.block-library-classic__toolbar:empty:before{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;content:attr(data-placeholder);color:#555d66;line-height:37px;padding:14px}.block-library-classic__toolbar div.mce-toolbar-grp{border-bottom:1px solid #1e1e1e}.block-library-classic__toolbar .mce-menubar,.block-library-classic__toolbar .mce-menubar>div,.block-library-classic__toolbar .mce-tinymce-inline,.block-library-classic__toolbar .mce-tinymce-inline>div,.block-library-classic__toolbar div.mce-toolbar-grp,.block-library-classic__toolbar div.mce-toolbar-grp>div{height:auto!important;width:100%!important}.block-library-classic__toolbar .mce-container-body.mce-abs-layout{overflow:visible}.block-library-classic__toolbar .mce-menubar,.block-library-classic__toolbar div.mce-toolbar-grp{position:static}.block-library-classic__toolbar .mce-toolbar-grp>div{padding:1px 3px}.block-library-classic__toolbar .mce-toolbar-grp .mce-toolbar:not(:first-child){display:none}.block-library-classic__toolbar.has-advanced-toolbar .mce-toolbar-grp .mce-toolbar{display:block}figure.wp-block-gallery{display:block;margin:0}figure.wp-block-gallery.has-nested-images .components-drop-zone{display:none;pointer-events:none}figure.wp-block-gallery>.blocks-gallery-caption{flex:0 0 100%}figure.wp-block-gallery>.blocks-gallery-media-placeholder-wrapper{flex-basis:100%}figure.wp-block-gallery .wp-block-image .components-notice.is-error{display:block}figure.wp-block-gallery .wp-block-image .components-notice__content{margin:4px 0}figure.wp-block-gallery .wp-block-image .components-notice__dismiss{position:absolute;top:0;right:5px}figure.wp-block-gallery .block-editor-media-placeholder.is-appender .components-placeholder__label{display:none}figure.wp-block-gallery .block-editor-media-placeholder.is-appender .block-editor-media-placeholder__button{margin-bottom:0}figure.wp-block-gallery .block-editor-media-placeholder{margin:0}figure.wp-block-gallery .block-editor-media-placeholder:before{box-shadow:0 0 0 1px #fff inset,0 0 0 3px var(--wp-admin-theme-color) inset;content:"";outline:2px solid transparent;position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none}figure.wp-block-gallery .block-editor-media-placeholder .components-placeholder__label{display:flex}figure.wp-block-gallery .block-editor-media-placeholder figcaption{z-index:2}figure.wp-block-gallery .components-spinner{position:absolute;top:50%;left:50%;margin-top:-9px;margin-left:-9px}.gallery-settings-buttons .components-button:first-child{margin-right:8px}.gallery-image-sizes .components-base-control__label{display:block;margin-bottom:4px}.gallery-image-sizes .gallery-image-sizes__loading{display:flex;align-items:center;color:#757575;font-size:12px}.gallery-image-sizes .components-spinner{margin:0 8px 0 4px}.blocks-gallery-item figure:not(.is-selected):focus,.blocks-gallery-item img:focus{outline:none}.blocks-gallery-item figure.is-selected:before{box-shadow:0 0 0 1px #fff inset,0 0 0 3px var(--wp-admin-theme-color) inset;content:"";outline:2px solid transparent;position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none}.blocks-gallery-item figure.is-transient img{opacity:.3}.blocks-gallery-item .is-selected .block-library-gallery-item__inline-menu{display:inline-flex}.blocks-gallery-item .block-editor-media-placeholder{margin:0;height:100%}.blocks-gallery-item .block-editor-media-placeholder .components-placeholder__label{display:flex}.block-library-gallery-item__inline-menu{display:none;position:absolute;top:-2px;margin:8px;z-index:20;transition:box-shadow .2s ease-out;border-radius:2px;background:#fff;border:1px solid #1e1e1e}@media (prefers-reduced-motion:reduce){.block-library-gallery-item__inline-menu{transition-duration:0s;transition-delay:0s}}.block-library-gallery-item__inline-menu:hover{box-shadow:0 2px 6px rgba(0,0,0,.05)}@media (min-width:600px){.columns-7 .block-library-gallery-item__inline-menu,.columns-8 .block-library-gallery-item__inline-menu{padding:2px}}.block-library-gallery-item__inline-menu .components-button.has-icon:not(:focus){border:none;box-shadow:none}@media (min-width:600px){.columns-7 .block-library-gallery-item__inline-menu .components-button.has-icon,.columns-8 .block-library-gallery-item__inline-menu .components-button.has-icon{padding:0;width:inherit;height:inherit}}.block-library-gallery-item__inline-menu.is-left{left:-2px}.block-library-gallery-item__inline-menu.is-right{right:-2px}.wp-block-gallery ul.blocks-gallery-grid{padding:0;margin:0}.wp-block-update-gallery-modal{max-width:400px}.wp-block-update-gallery-modal .wp-block-update-gallery-modal-buttons{display:flex;justify-content:flex-end}.wp-block-update-gallery-modal .wp-block-update-gallery-modal-buttons .components-button{margin-left:12px}.wp-block-group .block-editor-block-list__insertion-point{left:0;right:0}[data-type="core/group"].is-selected .block-list-appender{margin-left:0;margin-right:0}[data-type="core/group"].is-selected .has-background .block-list-appender{margin-top:18px;margin-bottom:18px}.block-library-html__edit .block-library-html__preview-overlay{position:absolute;width:100%;height:100%;top:0;left:0}.block-library-html__edit .block-editor-plain-text{font-family:Menlo,Consolas,monaco,monospace!important;color:#1e1e1e!important;background:#fff!important;padding:12px!important;border:1px solid #1e1e1e!important;box-shadow:none!important;border-radius:2px!important;max-height:250px;font-size:16px!important}@media (min-width:600px){.block-library-html__edit .block-editor-plain-text{font-size:13px!important}}.block-library-html__edit .block-editor-plain-text:focus{border-color:var(--wp-admin-theme-color)!important;box-shadow:0 0 0 1px var(--wp-admin-theme-color)!important;outline:2px solid transparent!important}figure.wp-block-image:not(.wp-block){margin:0}.wp-block-image{position:relative}.wp-block-image .is-applying img,.wp-block-image.is-transient img{opacity:.3}.wp-block-image figcaption img{display:inline}.wp-block-image .components-spinner{position:absolute;top:50%;left:50%;margin-top:-9px;margin-left:-9px}.wp-block-image:not(.is-style-rounded)>div:not(.components-placeholder){border-radius:inherit}.wp-block-image .components-resizable-box__container{display:inline-block}.wp-block-image .components-resizable-box__container img{display:block;width:inherit;height:inherit}.block-editor-block-list__block[data-type="core/image"] .block-editor-block-toolbar .block-editor-url-input__button-modal{position:absolute;left:0;right:0;margin:-1px 0}@media (min-width:600px){.block-editor-block-list__block[data-type="core/image"] .block-editor-block-toolbar .block-editor-url-input__button-modal{margin:-1px}}[data-align=full]>.wp-block-image img,[data-align=wide]>.wp-block-image img{height:auto;width:100%}.wp-block[data-align=center]>.wp-block-image,.wp-block[data-align=left]>.wp-block-image,.wp-block[data-align=right]>.wp-block-image{display:table}.wp-block[data-align=center]>.wp-block-image>figcaption,.wp-block[data-align=left]>.wp-block-image>figcaption,.wp-block[data-align=right]>.wp-block-image>figcaption{display:table-caption;caption-side:bottom}:not([data-align])>.wp-block-image{display:grid;grid-template-columns:[image] minmax(0,max-content) [placeholder] auto}:not([data-align])>.wp-block-image .components-placeholder{grid-column:placeholder}:not([data-align])>.wp-block-image>div:not(.components-placeholder){grid-column:image}:not([data-align])>.wp-block-image>figcaption{grid-column:image;display:table-caption;caption-side:bottom}.wp-block[data-align=left]>.wp-block-image{margin:.5em 1em .5em 0}.wp-block[data-align=right]>.wp-block-image{margin:.5em 0 .5em 1em}.wp-block[data-align=center]>.wp-block-image{margin-left:auto;margin-right:auto;text-align:center}.wp-block-image__crop-area{position:relative;max-width:100%;width:100%}.wp-block-image__crop-icon{padding:0 8px;min-width:48px;display:flex;justify-content:center;align-items:center}.wp-block-image__crop-icon svg{fill:currentColor}.wp-block-image__zoom .components-popover__content{overflow:visible;min-width:260px}.wp-block-image__zoom .components-range-control{flex:1}.wp-block-image__zoom .components-base-control__field{display:flex;margin-bottom:0;flex-direction:column;align-items:flex-start}.wp-block-image__aspect-ratio{height:46px;margin-bottom:-8px;display:flex;align-items:center}.wp-block-image__aspect-ratio .components-button{width:36px;padding-left:0;padding-right:0}.wp-block-latest-posts{padding-left:2.5em}.wp-block-latest-posts.is-grid{padding-left:0}.wp-block-latest-posts li a>div{display:inline}.edit-post-visual-editor .wp-block-latest-posts.is-grid li{margin-bottom:20px}.wp-block-media-text__media{position:relative}.wp-block-media-text__media.is-transient img{opacity:.3}.wp-block-media-text__media .components-spinner{position:absolute;top:50%;left:50%;margin-top:-9px;margin-left:-9px}.wp-block-media-text .__resizable_base__{grid-column:1/span 2;grid-row:2}.wp-block-media-text .editor-media-container__resizer{width:100%!important}.wp-block-media-text.is-image-fill .editor-media-container__resizer{height:100%!important}.wp-block-media-text>.block-editor-block-list__layout>.block-editor-block-list__block{max-width:unset}.block-editor-block-list__block[data-type="core/more"]{max-width:100%;text-align:center;margin-top:28px;margin-bottom:28px}.wp-block-more{display:block;text-align:center;white-space:nowrap}.wp-block-more input[type=text]{position:relative;font-size:13px;text-transform:uppercase;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;color:#757575;border:none;box-shadow:none;white-space:nowrap;text-align:center;margin:0;border-radius:4px;background:#fff;padding:6px 8px;height:24px;max-width:100%}.wp-block-more input[type=text]:focus{box-shadow:none}.wp-block-more:before{content:"";position:absolute;top:50%;left:0;right:0;border-top:3px dashed #ccc}.editor-styles-wrapper .wp-block-navigation ul{margin-top:0;margin-bottom:0;margin-left:0;padding-left:0}.editor-styles-wrapper .wp-block-navigation .wp-block-navigation-item.wp-block{margin-left:revert;margin-right:revert}.wp-block-navigation-item__label{display:inline}.wp-block-navigation__container.is-parent-of-selected-block{visibility:visible;opacity:1;overflow:visible}.wp-block-navigation-item,.wp-block-navigation__container{background-color:inherit}.wp-block-navigation:not(.is-selected):not(.has-child-selected) .has-child:hover>.wp-block-navigation__submenu-container{opacity:0;visibility:hidden}.has-child.has-child-selected>.wp-block-navigation__submenu-container,.has-child.is-selected>.wp-block-navigation__submenu-container{display:flex;opacity:1;visibility:visible}.is-dragging-components-draggable .has-child.is-dragging-within>.wp-block-navigation__submenu-container{opacity:1;visibility:visible}.is-editing>.wp-block-navigation__container{visibility:visible;opacity:1;display:flex;flex-direction:column}.is-dragging-components-draggable .wp-block-navigation-link>.wp-block-navigation__container{opacity:1;visibility:hidden}.is-dragging-components-draggable .wp-block-navigation-link>.wp-block-navigation__container .block-editor-block-draggable-chip-wrapper{visibility:visible}.is-editing>.wp-block-navigation__submenu-container>.block-list-appender{display:block;position:static;width:100%}.wp-block-navigation__submenu-container .block-list-appender{display:none}.block-library-colors-selector{width:auto}.block-library-colors-selector .block-library-colors-selector__toggle{display:block;margin:0 auto;padding:3px;width:auto}.block-library-colors-selector .block-library-colors-selector__icon-container{height:30px;position:relative;margin:0 auto;padding:3px;display:flex;align-items:center;border-radius:4px}.block-library-colors-selector .block-library-colors-selector__state-selection{margin-left:auto;margin-right:auto;border-radius:11px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.2);width:22px;min-width:22px;height:22px;min-height:22px;line-height:20px;padding:2px}.block-library-colors-selector .block-library-colors-selector__state-selection>svg{min-width:auto!important}.block-library-colors-selector .block-library-colors-selector__state-selection.has-text-color>svg,.block-library-colors-selector .block-library-colors-selector__state-selection.has-text-color>svg path{color:inherit}.block-library-colors-selector__popover .color-palette-controller-container{padding:16px}.block-library-colors-selector__popover .components-base-control__label{height:20px;line-height:20px}.block-library-colors-selector__popover .component-color-indicator{float:right;margin-top:2px}.block-library-colors-selector__popover .components-panel__body-title{display:none}.wp-block-navigation .block-editor-button-block-appender{justify-content:flex-start}.components-placeholder.wp-block-navigation-placeholder{outline:none;padding:0;box-shadow:none;background:none;min-height:0;color:inherit}.components-placeholder.wp-block-navigation-placeholder .components-placeholder__fieldset{font-size:inherit}.components-placeholder.wp-block-navigation-placeholder .components-placeholder__fieldset .components-button{margin-bottom:0}.is-selected .components-placeholder.wp-block-navigation-placeholder{color:#1e1e1e}.wp-block-navigation-placeholder .components-spinner{margin-top:-4px;margin-left:4px;vertical-align:middle;margin-right:7px}@keyframes loadingpulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.wp-block-navigation-placeholder__preview{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;width:100%;overflow:hidden}.wp-block-navigation-placeholder__preview.is-loading{animation:loadingpulse 1s linear infinite;animation-delay:.5s}.wp-block-navigation-placeholder__preview .wp-block-navigation-item.wp-block-navigation-item{position:relative;min-width:72px}.wp-block-navigation-placeholder__preview .wp-block-navigation-item.wp-block-navigation-item:before{display:block;content:"";border-radius:2px;background:currentColor;height:16px;width:100%}.wp-block-navigation-placeholder__preview .wp-block-navigation-placeholder__preview-search-icon{height:24px}.wp-block-navigation-placeholder__preview .wp-block-navigation-placeholder__preview-search-icon svg{fill:currentColor}.wp-block-navigation-placeholder__preview .wp-block-navigation-item.wp-block-navigation-item,.wp-block-navigation-placeholder__preview .wp-block-navigation-placeholder__preview-search-icon{opacity:.3}.wp-block-navigation.is-selected .wp-block-navigation-placeholder__preview:not(.is-loading){display:flex;opacity:0;width:0;overflow:hidden;flex-wrap:nowrap;flex:0}.wp-block-navigation.is-selected .is-medium .wp-block-navigation-placeholder__preview:not(.is-loading),.wp-block-navigation.is-selected .is-small .wp-block-navigation-placeholder__preview:not(.is-loading){display:none}.wp-block-navigation-placeholder__controls{border-radius:2px;background-color:#fff;box-shadow:inset 0 0 0 1px #1e1e1e;flex-direction:row;align-items:center;display:none;position:relative;z-index:1;padding:4px 8px;float:left;width:100%}.wp-block-navigation.is-selected .wp-block-navigation-placeholder__controls{display:flex}.is-medium .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions>:nth-last-child(2),.is-medium .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions>:nth-last-child(3),.is-medium .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions__indicator,.is-medium .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions__indicator+hr{display:none}.is-small .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions{flex-direction:column}.is-small .wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions hr{display:none}.wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__icon{margin-right:12px;height:36px}.wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions__indicator{display:flex;padding:0 6px 0 0;align-items:center;justify-content:flex-start;line-height:0;min-height:36px;margin-left:4px}.wp-block-navigation-placeholder__controls .wp-block-navigation-placeholder__actions__indicator svg{margin-right:4px}.wp-block-navigation .components-placeholder.is-medium .components-placeholder__fieldset{flex-direction:row!important}.wp-block-navigation-placeholder__actions{display:flex;font-size:13px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;gap:6px;align-items:center;height:100%}.wp-block-navigation-placeholder__actions .components-dropdown,.wp-block-navigation-placeholder__actions>.components-button{margin-right:0}.wp-block-navigation-placeholder__actions.wp-block-navigation-placeholder__actions hr{border:0;min-height:1px;min-width:1px;background-color:#1e1e1e;margin:auto 0;height:100%;max-height:16px}@media (min-width:600px){.wp-block-navigation__responsive-container:not(.is-menu-open) .components-button.wp-block-navigation__responsive-container-close{display:none}}.wp-block-navigation__responsive-container.is-menu-open{position:fixed;top:155px}@media (min-width:782px){.wp-block-navigation__responsive-container.is-menu-open{top:93px;left:36px}}@media (min-width:960px){.wp-block-navigation__responsive-container.is-menu-open{left:160px}}@media (min-width:782px){.has-fixed-toolbar .wp-block-navigation__responsive-container.is-menu-open{top:141px}}.is-mobile-preview .wp-block-navigation__responsive-container.is-menu-open,.is-tablet-preview .wp-block-navigation__responsive-container.is-menu-open{top:141px}.is-sidebar-opened .wp-block-navigation__responsive-container.is-menu-open{right:280px}.is-fullscreen-mode .wp-block-navigation__responsive-container.is-menu-open{left:0;top:155px}@media (min-width:782px){.is-fullscreen-mode .wp-block-navigation__responsive-container.is-menu-open{top:61px}}@media (min-width:782px){.is-fullscreen-mode .has-fixed-toolbar .wp-block-navigation__responsive-container.is-menu-open{top:109px}}.is-fullscreen-mode .is-mobile-preview .wp-block-navigation__responsive-container.is-menu-open,.is-fullscreen-mode .is-tablet-preview .wp-block-navigation__responsive-container.is-menu-open{top:109px}body.editor-styles-wrapper .wp-block-navigation__responsive-container.is-menu-open{top:0;right:0;bottom:0;left:0}@media (min-width:600px){.wp-block-navigation__responsive-close{pointer-events:none}.wp-block-navigation__responsive-close .block-editor-block-list__layout *,.wp-block-navigation__responsive-close .wp-block-navigation__responsive-container-close{pointer-events:all}}.wp-block-navigation__responsive-close .wp-block-pages-list__item__link{pointer-events:none}.components-button.wp-block-navigation__responsive-container-close.wp-block-navigation__responsive-container-close,.components-button.wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open{padding:0;height:auto;color:inherit}.is-menu-open .wp-block-navigation__responsive-container-content * .block-list-appender{margin-top:16px}@keyframes fadein{0%{opacity:0}to{opacity:1}}.wp-block-navigation__unsaved-changes{position:relative}.wp-block-navigation__unsaved-changes .components-spinner{position:absolute;top:calc(50% - 9px);left:calc(50% - 9px);opacity:0;animation:fadein .5s linear 2s normal forwards}@keyframes fadeouthalf{0%{opacity:1}to{opacity:.5}}.wp-block-navigation__unsaved-changes-overlay.is-saving{opacity:1;animation:fadeouthalf .5s linear 2s normal forwards}.wp-block-navigation-delete-menu-button{width:100%;justify-content:center;margin-bottom:16px}.wp-block-navigation .has-child{cursor:pointer}.wp-block-navigation .has-child .wp-block-navigation__submenu-container{z-index:28}.wp-block-navigation .has-child:hover .wp-block-navigation__submenu-container{z-index:29}.wp-block-navigation .has-child.has-child-selected>.wp-block-navigation__submenu-container,.wp-block-navigation .has-child.is-selected>.wp-block-navigation__submenu-container{visibility:visible!important;opacity:1!important;min-width:200px!important;height:auto!important;width:auto!important;overflow:visible!important}.wp-block-navigation-item .wp-block-navigation-item__content{cursor:text}.wp-block-navigation-item.is-editing,.wp-block-navigation-item.is-selected{min-width:20px}.wp-block-navigation-item .block-list-appender{margin:16px auto 16px 16px}.wp-block-navigation-link__placeholder{position:relative;text-decoration:none!important;box-shadow:none!important;background-image:none!important}.wp-block-navigation-link__placeholder .wp-block-navigation-link__placeholder-text span{--wp-underline-color:var(--wp-admin-theme-color);background-image:linear-gradient(45deg,transparent 20%,var(--wp-underline-color) 30%,var(--wp-underline-color) 36%,transparent 46%),linear-gradient(135deg,transparent 54%,var(--wp-underline-color) 64%,var(--wp-underline-color) 70%,transparent 80%);background-position:0 100%;background-size:6px 3px;background-repeat:repeat-x;padding-bottom:.1em}.is-dark-theme .wp-block-navigation-link__placeholder .wp-block-navigation-link__placeholder-text span{--wp-underline-color:#fff}.wp-block-navigation-link__placeholder.wp-block-navigation-item__content{cursor:pointer}.link-control-transform{border-top:1px solid #ccc;padding:0 16px 8px}.link-control-transform__subheading{font-size:11px;text-transform:uppercase;font-weight:500;color:#1e1e1e;margin-bottom:1.5em}.link-control-transform__items{display:flex;justify-content:space-between}.link-control-transform__item{flex-basis:33%;flex-direction:column;gap:8px;height:auto}.wp-block-navigation-submenu{display:block}.wp-block-navigation-submenu .wp-block-navigation__submenu-container{z-index:28}.wp-block-navigation-submenu.has-child-selected>.wp-block-navigation__submenu-container,.wp-block-navigation-submenu.is-selected>.wp-block-navigation__submenu-container{visibility:visible!important;opacity:1!important;min-width:200px!important;height:auto!important;width:auto!important;position:absolute;left:-1px;top:100%}@media (min-width:782px){.wp-block-navigation-submenu.has-child-selected>.wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation-submenu.is-selected>.wp-block-navigation__submenu-container .wp-block-navigation__submenu-container{left:100%;top:-1px}.wp-block-navigation-submenu.has-child-selected>.wp-block-navigation__submenu-container .wp-block-navigation__submenu-container:before,.wp-block-navigation-submenu.is-selected>.wp-block-navigation__submenu-container .wp-block-navigation__submenu-container:before{content:"";position:absolute;right:100%;height:100%;display:block;width:.5em;background:transparent}}.block-editor-block-list__block[data-type="core/nextpage"]{max-width:100%;text-align:center;margin-top:28px;margin-bottom:28px}.wp-block-nextpage{display:block;text-align:center;white-space:nowrap}.wp-block-nextpage>span{font-size:13px;position:relative;text-transform:uppercase;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;color:#757575;border-radius:4px;background:#fff;padding:6px 8px;height:24px}.wp-block-nextpage:before{content:"";position:absolute;top:50%;left:0;right:0;border-top:3px dashed #ccc}.wp-block-navigation .wp-block-page-list,.wp-block-navigation .wp-block-page-list>div{background-color:inherit}.wp-block-navigation.items-justified-space-between .wp-block-page-list,.wp-block-navigation.items-justified-space-between .wp-block-page-list>div{display:contents;flex:1}.wp-block-navigation.items-justified-space-between.has-child-selected .wp-block-page-list,.wp-block-navigation.items-justified-space-between.has-child-selected .wp-block-page-list>div,.wp-block-navigation.items-justified-space-between.is-selected .wp-block-page-list,.wp-block-navigation.items-justified-space-between.is-selected .wp-block-page-list>div{flex:inherit}.wp-block-pages-list__item__link{pointer-events:none}.wp-block-page-list .components-placeholder{min-height:0;padding:0;background-color:inherit}.wp-block-page-list .components-placeholder .components-spinner{margin:.5em}.wp-block-page-list-modal{max-width:400px}.wp-block-page-list-modal-buttons{display:flex;justify-content:flex-end}.wp-block-page-list-modal-buttons .components-button{margin-left:12px}.wp-block-page-list .open-on-click:focus-within>.wp-block-navigation__submenu-container{visibility:visible;opacity:1;width:auto;height:auto;min-width:200px}.wp-block-page-list .components-notice{margin-left:0}.block-editor-block-list__block[data-type="core/paragraph"].has-drop-cap:focus{min-height:auto!important}.block-editor-block-list__block[data-empty=true] [data-rich-text-placeholder]{opacity:1}.block-editor-block-list__block[data-empty=true]+.block-editor-block-list__block[data-empty=true] [data-rich-text-placeholder]{opacity:0}.wp-block-post-excerpt .wp-block-post-excerpt__excerpt.is-inline{display:inline-block}.wp-block-pullquote.has-text-align-left p,.wp-block-pullquote.has-text-align-right p,.wp-block[data-align=left]>.wp-block-pullquote p,.wp-block[data-align=right]>.wp-block-pullquote p{font-size:20px}.wp-block-pullquote blockquote p{font-size:28px;line-height:1.6}.wp-block-pullquote.is-style-solid-color blockquote p{font-size:32px}.wp-block-pullquote.is-style-solid-color .wp-block-pullquote__citation{text-transform:none;font-style:normal}.wp-block-pullquote .wp-block-pullquote__citation{color:inherit}.wp-block-rss li a>div{display:inline}.wp-block-rss__placeholder-form{display:flex;align-items:stretch}.wp-block-rss__placeholder-form>*{margin-bottom:8px}@media (min-width:782px){.wp-block-rss__placeholder-form>*{margin-bottom:0}}.wp-block-rss__placeholder-input{display:flex;align-items:stretch;flex-grow:1}.wp-block-rss__placeholder-input .components-base-control__field{display:flex;align-items:stretch;flex-grow:1;margin:0 8px 0 0}.wp-block[data-align=center] .wp-block-search .wp-block-search__inside-wrapper{margin:auto}.wp-block-search .wp-block-search__button{height:auto;border-radius:initial;display:flex;align-items:center}.wp-block-search__components-button-group{margin-top:10px}.block-editor-block-list__block[data-type="core/separator"]{padding-top:.1px;padding-bottom:.1px}[data-type="core/shortcode"] .block-editor-plain-text{max-height:250px}[data-type="core/shortcode"].components-placeholder{min-height:0}.blocks-shortcode__textarea{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;padding:6px 8px;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;border:1px solid #757575;font-size:16px;line-height:normal}@media (prefers-reduced-motion:reduce){.blocks-shortcode__textarea{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.blocks-shortcode__textarea{font-size:13px;line-height:normal}}.blocks-shortcode__textarea:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.blocks-shortcode__textarea::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.blocks-shortcode__textarea::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.blocks-shortcode__textarea:-ms-input-placeholder{color:rgba(30,30,30,.62)}.wp-block[data-align=center]>.wp-block-site-logo{display:table;margin-left:auto;margin-right:auto}.wp-block-site-logo a{pointer-events:none}.wp-block-site-logo .custom-logo-link{cursor:inherit}.wp-block-site-logo .custom-logo-link:focus{box-shadow:none}.wp-block-site-logo .custom-logo-link.is-transient img{opacity:.3}.wp-block-site-logo img{display:block;height:auto;max-width:100%}.wp-block-site-logo.wp-block-site-logo .components-placeholder,.wp-block-site-logo.wp-block-site-logo .components-resizable-box__container{border-radius:inherit}.wp-block-site-logo.wp-block-site-logo.is-default-size .components-placeholder{height:120px;width:120px}.wp-block-site-logo.wp-block-site-logo .components-placeholder{justify-content:center;align-items:center;box-shadow:none;padding:0;min-height:48px;min-width:48px;height:100%;width:100%;color:currentColor;background:transparent}.wp-block-site-logo.wp-block-site-logo .components-placeholder .components-form-file-upload{display:none}.wp-block-site-logo.wp-block-site-logo .components-placeholder .components-placeholder__preview{position:absolute;top:4px;right:4px;bottom:4px;left:4px;background:hsla(0,0%,100%,.8);display:flex;align-items:center;justify-content:center}.wp-block-site-logo.wp-block-site-logo .components-placeholder .components-drop-zone__content-text{display:none}.wp-block-site-logo.wp-block-site-logo .components-placeholder:before{content:"";display:block;position:absolute;top:0;right:0;bottom:0;left:0;border:1px dashed;opacity:.4;pointer-events:none;border-radius:inherit}.wp-block-site-logo.wp-block-site-logo .components-placeholder .components-placeholder__fieldset{width:auto}.wp-block-site-logo.wp-block-site-logo .components-placeholder .components-button.components-button{color:inherit;padding:0;display:flex;justify-content:center;align-items:center;width:48px;height:48px;border-radius:50%;position:relative;visibility:hidden;background:transparent;transition:all .1s linear}@media (prefers-reduced-motion:reduce){.wp-block-site-logo.wp-block-site-logo .components-placeholder .components-button.components-button{transition-duration:0s;transition-delay:0s}}.wp-block-site-logo.wp-block-site-logo .components-placeholder .components-button.components-button>svg{color:#fff}.wp-block-site-logo.wp-block-site-logo .components-placeholder .components-placeholder__illustration{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;stroke:currentColor;stroke-dasharray:3;opacity:.4}.wp-block-site-logo.wp-block-site-logo.is-selected .components-button.components-button{background:var(--wp-admin-theme-color);border-color:var(--wp-admin-theme-color);border-style:solid;color:#fff;opacity:1;visibility:visible}.wp-block-site-tagline__placeholder,.wp-block-site-title__placeholder{padding:1em 0;border:1px dashed}.wp-block-social-links .wp-social-link{line-height:0}.wp-block-social-links .wp-social-link button{font-size:inherit;color:currentColor;height:auto;line-height:0;padding:.25em}.wp-block-social-links.is-style-pill-shape .wp-social-link button{padding-left:.66667em;padding-right:.66667em}.wp-block-social-links.is-style-logos-only .wp-social-link button{padding:0}.wp-block-social-links div.block-editor-url-input{display:inline-block;margin-left:8px}.wp-social-link:hover{transform:none}.editor-styles-wrapper .wp-block-social-links{padding:0}.wp-block-social-links__social-placeholder{display:flex;opacity:.8;list-style:none}.wp-block-social-links__social-placeholder>.wp-social-link{padding-left:0!important;margin-left:0!important;padding-right:0!important;margin-right:0!important;width:0!important;visibility:hidden}.wp-block-social-links__social-placeholder>.wp-block-social-links__social-placeholder-icons{display:flex}.wp-block-social-links__social-placeholder .wp-social-link{padding:.25em}.is-style-pill-shape .wp-block-social-links__social-placeholder .wp-social-link{padding-left:.66667em;padding-right:.66667em}.is-style-logos-only .wp-block-social-links__social-placeholder .wp-social-link{padding:0}.wp-block-social-links__social-placeholder .wp-social-link:before{content:"";display:block;width:1em;height:1em;border-radius:50%}.is-style-logos-only .wp-block-social-links__social-placeholder .wp-social-link:before{background:currentColor}.wp-block-social-links .wp-block-social-links__social-prompt{min-height:24px;list-style:none;order:2;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;line-height:24px;margin-top:auto;margin-bottom:auto;cursor:default;padding-right:8px}.wp-block[data-align=center]>.wp-block-social-links{justify-content:center}.block-editor-block-preview__content .components-button:disabled{opacity:1}.wp-social-link.wp-social-link__is-incomplete{opacity:.5}@media (prefers-reduced-motion:reduce){.wp-social-link.wp-social-link__is-incomplete{transition-duration:0s;transition-delay:0s}}.wp-block-social-links .is-selected .wp-social-link__is-incomplete,.wp-social-link.wp-social-link__is-incomplete:focus,.wp-social-link.wp-social-link__is-incomplete:hover{opacity:1}.block-editor-block-list__block[data-type="core/spacer"]:before{content:"";display:block;position:absolute;z-index:1;width:100%;min-height:8px;min-width:8px;height:100%}.block-library-spacer__resize-container.has-show-handle,.wp-block-spacer.is-hovered .block-library-spacer__resize-container{background:rgba(0,0,0,.1)}.is-dark-theme .block-library-spacer__resize-container.has-show-handle,.is-dark-theme .wp-block-spacer.is-hovered .block-library-spacer__resize-container{background:hsla(0,0%,100%,.15)}.block-library-spacer__resize-container{clear:both}.block-library-spacer__resize-container:not(.is-resizing){height:100%!important;width:100%!important}.block-library-spacer__resize-container .components-resizable-box__handle:before{content:none}.block-library-spacer__resize-container.resize-horizontal{margin-bottom:0}.wp-block-table{margin:0}.wp-block[data-align=center]>.wp-block-table,.wp-block[data-align=left]>.wp-block-table,.wp-block[data-align=right]>.wp-block-table{height:auto}.wp-block[data-align=center]>.wp-block-table table,.wp-block[data-align=left]>.wp-block-table table,.wp-block[data-align=right]>.wp-block-table table{width:auto}.wp-block[data-align=center]>.wp-block-table td,.wp-block[data-align=center]>.wp-block-table th,.wp-block[data-align=left]>.wp-block-table td,.wp-block[data-align=left]>.wp-block-table th,.wp-block[data-align=right]>.wp-block-table td,.wp-block[data-align=right]>.wp-block-table th{word-break:break-word}.wp-block[data-align=center]>.wp-block-table{text-align:initial}.wp-block[data-align=center]>.wp-block-table table{margin:0 auto}.wp-block-table td,.wp-block-table th{border:1px solid}.wp-block-table td.is-selected,.wp-block-table th.is-selected{border-color:var(--wp-admin-theme-color);box-shadow:inset 0 0 0 1px var(--wp-admin-theme-color);border-style:double}.wp-block-table figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-table figcaption{color:hsla(0,0%,100%,.65)}.blocks-table__placeholder-form.blocks-table__placeholder-form{display:flex;flex-direction:column;align-items:flex-start}.blocks-table__placeholder-form.blocks-table__placeholder-form>*{margin-bottom:8px}@media (min-width:782px){.blocks-table__placeholder-form.blocks-table__placeholder-form{flex-direction:row;align-items:flex-end}.blocks-table__placeholder-form.blocks-table__placeholder-form>*{margin-bottom:0}}.blocks-table__placeholder-input{width:112px;margin-right:8px;margin-bottom:0}.blocks-table__placeholder-input input{height:36px}.blocks-table__placeholder-input .components-base-control__field{margin-bottom:0}.wp-block-template-part__placeholder-preview-dropdown-content .components-popover__content,.wp-block-template-part__preview-dropdown-content .components-popover__content{min-width:320px;padding:0}.wp-block-template-part__selection-preview-search-form{border-bottom:1px solid #ddd}.wp-block-template-part__selection-preview-container{background:#fff;padding-bottom:16px}.wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item{border-radius:2px;cursor:pointer;margin-top:16px;transition:all .05s ease-in-out;border:1px solid #ddd;width:100%;background-color:#fff}.wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item:hover{border:1px solid var(--wp-admin-theme-color)}.wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item:focus{box-shadow:inset 0 0 0 1px #fff,0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);outline:2px solid transparent}.wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item.is-placeholder{min-height:100px}.wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item .block-editor-block-preview__container{border-bottom:1px solid #ddd}.wp-block-template-part__selection-preview-container .wp-block-template-part__selection-preview-item-title{padding:4px;font-size:12px;text-align:left}.wp-block-template-part__selection-preview-container .wp-block-template-part__selection-panel-group-header{padding:16px 16px 0}.wp-block-template-part__selection-preview-container .wp-block-template-part__selection-panel-group-content{padding:0 16px}.wp-block-template-part__selection-preview-container .wp-block-template-part__selection-panel-group-title{color:var(--wp-admin-theme-color);text-transform:uppercase;font-size:11px;font-weight:500}.wp-block-template-part__placeholder-create-new__title-form .wp-block-template-part__placeholder-create-new__title-form-actions{padding-top:12px;display:flex;justify-content:flex-end}.wp-block-template-part__placeholder-create-new__title-form .wp-block-template-part__placeholder-create-new__title-form-actions .components-flex-item{margin-left:12px}.wp-block-text-columns .block-editor-rich-text__editable:focus{outline:1px solid #ddd}.wp-block[data-align=center]>.wp-block-video{text-align:center}.wp-block-video{position:relative}.wp-block-video.is-transient video{opacity:.3}.wp-block-video .components-spinner{position:absolute;top:50%;left:50%;margin-top:-9px;margin-left:-9px}.editor-video-poster-control .components-base-control__label{display:block}.editor-video-poster-control .components-button{margin-right:8px}.block-library-video-tracks-editor{z-index:159990}.block-library-video-tracks-editor>.components-popover__content{width:360px}.block-library-video-tracks-editor__track-list-track{display:flex;place-content:space-between;align-items:baseline;padding-left:12px}.block-library-video-tracks-editor__single-track-editor-label-language{display:flex;margin-top:12px}.block-library-video-tracks-editor__single-track-editor-label-language>.components-base-control{width:50%}.block-library-video-tracks-editor__single-track-editor-label-language>.components-base-control:first-child{margin-right:16px}.block-library-video-tracks-editor__single-track-editor-kind-select{max-width:240px}.block-library-video-tracks-editor__single-track-editor-buttons-container{display:flex;place-content:space-between;margin-top:32px}.block-library-video-tracks-editor__single-track-editor-edit-track-label{margin-top:4px;margin-bottom:12px;color:#757575;text-transform:uppercase;font-size:11px;font-weight:500;display:block}.block-library-video-tracks-editor>.components-popover__content>div,.block-library-video-tracks-editor__add-tracks-container .components-menu-group__label,.block-library-video-tracks-editor__track-list .components-menu-group__label{padding:0}.block-library-video-tracks-editor__add-tracks-container,.block-library-video-tracks-editor__single-track-editor,.block-library-video-tracks-editor__track-list{padding:12px}.block-library-video-tracks-editor__single-track-editor .components-base-control .components-base-control__label{margin-bottom:4px}.block-library-video-tracks-editor__single-track-editor .components-base-control .components-base-control__field{margin-bottom:12px}.block-library-video-tracks-editor__single-track-editor .components-base-control .components-text-control__input{margin-left:0}.block-library-video-tracks-editor__single-track-editor .components-base-control .components-input-control__label{margin-bottom:4px}.editor-styles-wrapper ul.wp-block-post-template{padding-left:0;margin-left:0;list-style:none}.block-library-query-toolbar__popover .components-popover__content{min-width:230px}.wp-block-query__create-new-link{padding:0 16px 16px 56px}.wp-block[data-align=center]>.wp-block-query-pagination{justify-content:center}.editor-styles-wrapper .wp-block-query-pagination{max-width:100%}.editor-styles-wrapper .wp-block-query-pagination.block-editor-block-list__layout{margin:0}.block-library-query-pagination-toolbar__popover .components-popover__content{min-width:230px}.wp-block-query-pagination>.wp-block-query-pagination-next,.wp-block-query-pagination>.wp-block-query-pagination-numbers,.wp-block-query-pagination>.wp-block-query-pagination-previous{margin:.5em .5em .5em 0}.wp-block-query-pagination>.wp-block-query-pagination-next:last-child,.wp-block-query-pagination>.wp-block-query-pagination-numbers:last-child,.wp-block-query-pagination>.wp-block-query-pagination-previous:last-child{margin-right:0}.wp-block-query-pagination-numbers a{text-decoration:underline}.wp-block-query-pagination-numbers .page-numbers{margin-right:2px}.wp-block-query-pagination-numbers .page-numbers:last-child{margin-right:0}.wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder,.wp-block-post-featured-image.wp-block-post-featured-image .components-resizable-box__container{border-radius:inherit}.wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder,.wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder{justify-content:center;align-items:center;box-shadow:none;padding:0;color:currentColor;background:transparent;min-height:200px}.wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-form-file-upload,.wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-form-file-upload{display:none}.wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-placeholder__preview,.wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-placeholder__preview{position:absolute;top:4px;right:4px;bottom:4px;left:4px;background:hsla(0,0%,100%,.8);display:flex;align-items:center;justify-content:center}.wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder:before,.wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder:before{content:"";display:block;position:absolute;top:0;right:0;bottom:0;left:0;border:1px dashed;opacity:.4;pointer-events:none;border-radius:inherit}.wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-placeholder__fieldset,.wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-placeholder__fieldset{width:auto}.wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-button.components-button,.wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-button.components-button{color:inherit;padding:0;display:flex;justify-content:center;align-items:center;width:48px;height:48px;border-radius:50%;position:relative;visibility:hidden;background:transparent;transition:all .1s linear}@media (prefers-reduced-motion:reduce){.wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-button.components-button,.wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-button.components-button{transition-duration:0s;transition-delay:0s}}.wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-button.components-button>svg,.wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-button.components-button>svg{color:#fff}.wp-block-post-featured-image.wp-block-post-featured-image .components-placeholder .components-placeholder__illustration,.wp-block-post-featured-image.wp-block-post-featured-image .wp-block-post-featured-image__placeholder .components-placeholder__illustration{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;stroke:currentColor;stroke-dasharray:3;opacity:.4}.wp-block-post-featured-image.wp-block-post-featured-image[style*=height] .components-placeholder{min-height:48px;min-width:48px;height:100%;width:100%}.wp-block-post-featured-image.wp-block-post-featured-image.is-selected .components-button.components-button{background:var(--wp-admin-theme-color);border-color:var(--wp-admin-theme-color);border-style:solid;color:#fff;opacity:1;visibility:visible}div[data-type="core/post-featured-image"] img{max-width:100%;height:auto;display:block}:root .editor-styles-wrapper .has-very-light-gray-background-color{background-color:#eee}:root .editor-styles-wrapper .has-very-dark-gray-background-color{background-color:#313131}:root .editor-styles-wrapper .has-very-light-gray-color{color:#eee}:root .editor-styles-wrapper .has-very-dark-gray-color{color:#313131}:root .editor-styles-wrapper .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .editor-styles-wrapper .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .editor-styles-wrapper .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .editor-styles-wrapper .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .editor-styles-wrapper .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .editor-styles-wrapper .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .editor-styles-wrapper .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}.editor-styles-wrapper{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}.editor-styles-wrapper .has-regular-font-size{font-size:16px}.editor-styles-wrapper .has-larger-font-size{font-size:42px}.editor-styles-wrapper .has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.editor-styles-wrapper .has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}PKj l\BroRR$css/dist/block-library/theme-rtl.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ .wp-block-audio figcaption { color: #555; font-size: 13px; text-align: center; } .is-dark-theme .wp-block-audio figcaption { color: rgba(255, 255, 255, 0.65); } .wp-block-code > code { font-family: Menlo, Consolas, monaco, monospace; color: #1e1e1e; padding: 0.8em 1em; border: 1px solid #ddd; border-radius: 4px; } .wp-block-embed figcaption { color: #555; font-size: 13px; text-align: center; } .is-dark-theme .wp-block-embed figcaption { color: rgba(255, 255, 255, 0.65); } .blocks-gallery-caption { color: #555; font-size: 13px; text-align: center; } .is-dark-theme .blocks-gallery-caption { color: rgba(255, 255, 255, 0.65); } .wp-block-image figcaption { color: #555; font-size: 13px; text-align: center; } .is-dark-theme .wp-block-image figcaption { color: rgba(255, 255, 255, 0.65); } .wp-block-pullquote { border-top: 4px solid currentColor; border-bottom: 4px solid currentColor; margin-bottom: 1.75em; color: currentColor; } .wp-block-pullquote cite, .wp-block-pullquote footer, .wp-block-pullquote__citation { color: currentColor; text-transform: uppercase; font-size: 0.8125em; font-style: normal; } .wp-block-quote { border-right: 0.25em solid currentColor; margin: 0 0 1.75em 0; padding-right: 1em; } .wp-block-quote cite, .wp-block-quote footer { color: currentColor; font-size: 0.8125em; position: relative; font-style: normal; } .wp-block-quote.has-text-align-right { border-right: none; border-left: 0.25em solid currentColor; padding-right: 0; padding-left: 1em; } .wp-block-quote.has-text-align-center { border: none; padding-right: 0; } .wp-block-quote.is-style-plain, .wp-block-quote.is-style-large, .wp-block-quote.is-large { border: none; } .wp-block-search .wp-block-search__label { font-weight: bold; } .wp-block-group:where(.has-background) { padding: 1.25em 2.375em; } .wp-block-separator { border: none; border-bottom: 2px solid currentColor; margin-right: auto; margin-left: auto; opacity: 0.4; } .wp-block-separator:not(.is-style-wide):not(.is-style-dots) { width: 100px; } .wp-block-separator.has-background:not(.is-style-dots) { border-bottom: none; height: 1px; } .wp-block-separator.has-background:not(.is-style-wide):not(.is-style-dots) { height: 2px; } .wp-block-table thead { border-bottom: 3px solid; } .wp-block-table tfoot { border-top: 3px solid; } .wp-block-table td, .wp-block-table th { padding: 0.5em; border: 1px solid; word-break: normal; } .wp-block-table figcaption { color: #555; font-size: 13px; text-align: center; } .is-dark-theme .wp-block-table figcaption { color: rgba(255, 255, 255, 0.65); } .wp-block-video figcaption { color: #555; font-size: 13px; text-align: center; } .is-dark-theme .wp-block-video figcaption { color: rgba(255, 255, 255, 0.65); } .wp-block-template-part.has-background { padding: 1.25em 2.375em; margin-top: 0; margin-bottom: 0; }PKj l\HH(css/dist/customize-widgets/style.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}#customize-theme-controls .customize-pane-child.accordion-section-content.customize-widgets-layout__inspector{background:#fff;box-sizing:border-box}#customize-theme-controls .customize-pane-child.accordion-section-content.customize-widgets-layout__inspector *{box-sizing:inherit}#customize-theme-controls .customize-pane-child.accordion-section-content.customize-widgets-layout__inspector .block-editor-block-inspector{margin:-12px}#customize-theme-controls .customize-pane-child.accordion-section-content.customize-widgets-layout__inspector .block-editor-block-inspector h3{margin-bottom:0}#customize-theme-controls .customize-pane-child.control-section-sidebar.is-sub-section-open{transform:translateX(-100%)}.customize-widgets-header{display:flex;justify-content:flex-end;margin:-15px -12px 0;background:#f0f0f1;border-bottom:1px solid #e0e0e0;z-index:8}@media (min-width:782px){.customize-widgets-header{margin-bottom:76px}}.customize-widgets-header.is-fixed-toolbar-active{margin-bottom:0}.customize-widgets-header-toolbar{display:flex;border:none;width:100%;align-items:center}.customize-widgets-header-toolbar .customize-widgets-header-toolbar__inserter-toggle.components-button.has-icon{border-radius:2px;color:#fff;padding:0;min-width:24px;height:24px;margin:12px 0 12px auto}.customize-widgets-header-toolbar .customize-widgets-header-toolbar__inserter-toggle.components-button.has-icon:before{content:none}.customize-widgets-header-toolbar .customize-widgets-header-toolbar__inserter-toggle.components-button.has-icon.is-pressed{background:#1e1e1e}.customize-widgets-header-toolbar .components-button.has-icon.customize-widgets-editor-history-button.redo-button{margin-left:-12px}#customize-sidebar-outer-content{width:auto;min-width:100%}#customize-outer-theme-controls .widgets-inserter{padding:0}#customize-outer-theme-controls .widgets-inserter .customize-section-description-container{display:none}.customize-widgets-layout__inserter-panel{background:#fff}.customize-widgets-layout__inserter-panel-header{display:flex;justify-content:space-between;align-items:center;padding:16px;height:46px;box-sizing:border-box;border-bottom:1px solid #ddd}.customize-widgets-layout__inserter-panel-header .customize-widgets-layout__inserter-panel-header-title{margin:0}.block-editor-inserter__quick-inserter .block-editor-inserter__panel-content{background:#fff}.customize-widgets-keyboard-shortcut-help-modal__section{margin:0 0 2rem}.customize-widgets-keyboard-shortcut-help-modal__main-shortcuts .customize-widgets-keyboard-shortcut-help-modal__shortcut-list{margin-top:-25px}.customize-widgets-keyboard-shortcut-help-modal__section-title{font-size:.9rem;font-weight:600}.customize-widgets-keyboard-shortcut-help-modal__shortcut{display:flex;align-items:baseline;padding:.6rem 0;border-top:1px solid #ddd;margin-bottom:0}.customize-widgets-keyboard-shortcut-help-modal__shortcut:last-child{border-bottom:1px solid #ddd}.customize-widgets-keyboard-shortcut-help-modal__shortcut:empty{display:none}.customize-widgets-keyboard-shortcut-help-modal__shortcut-term{font-weight:600;margin:0 0 0 1rem;text-align:right}.customize-widgets-keyboard-shortcut-help-modal__shortcut-description{flex:1;margin:0;flex-basis:auto}.customize-widgets-keyboard-shortcut-help-modal__shortcut-key-combination{display:block;background:none;margin:0;padding:0}.customize-widgets-keyboard-shortcut-help-modal__shortcut-key-combination+.customize-widgets-keyboard-shortcut-help-modal__shortcut-key-combination{margin-top:10px}.customize-widgets-keyboard-shortcut-help-modal__shortcut-key{padding:.25rem .5rem;border-radius:8%;margin:0 .2rem}.customize-widgets-keyboard-shortcut-help-modal__shortcut-key:last-child{margin:0 0 0 .2rem}.customize-widgets-more-menu{margin-left:-4px}.customize-widgets-more-menu .components-button{width:auto;padding:0 2px}@media (min-width:600px){.customize-widgets-more-menu{margin-left:0}.customize-widgets-more-menu .components-button{padding:0 4px}}.customize-widgets-more-menu__content .components-popover__content{min-width:280px}@media (min-width:480px){.customize-widgets-more-menu__content .components-popover__content{width:auto;max-width:480px}}.customize-widgets-more-menu__content .components-popover__content .components-dropdown-menu__menu{padding:0}.components-popover.customize-widgets-more-menu__content{z-index:99998}.block-editor-block-contextual-toolbar.is-fixed{top:0;margin-left:-12px;margin-right:-12px;width:calc(100% + 24px);overflow-y:auto;z-index:7}.customize-control-sidebar_block_editor .block-editor-block-list__block-popover{position:fixed;z-index:7}.customize-widgets-welcome-guide__image__wrapper{background:#00a0d2;text-align:center;margin-bottom:8px}.customize-widgets-welcome-guide__image{height:auto}.wrap .customize-widgets-welcome-guide__heading{font-size:18px;font-weight:600}.customize-widgets-welcome-guide__text{line-height:1.7}.customize-widgets-welcome-guide__button{justify-content:center;margin:1em 0;width:100%}.customize-widgets-welcome-guide__separator{margin:1em 0}.customize-widgets-welcome-guide__more-info{line-height:1.4}#customize-theme-controls .customize-pane-child.customize-widgets__sidebar-section{min-height:100%;background-color:#fff;padding-top:12px!important}#customize-theme-controls .customize-pane-child.customize-widgets__sidebar-section.open{overflow:unset}#customize-theme-controls .customize-pane-child.customize-widgets__sidebar-section .customize-section-title{position:static!important;margin-top:-12px!important;width:unset!important}.components-modal__screen-overlay{z-index:999999}.customize-control-sidebar_block_editor,.customize-widgets-layout__inspector,.customize-widgets-popover{box-sizing:border-box}.customize-control-sidebar_block_editor *,.customize-control-sidebar_block_editor :after,.customize-control-sidebar_block_editor :before,.customize-widgets-layout__inspector *,.customize-widgets-layout__inspector :after,.customize-widgets-layout__inspector :before,.customize-widgets-popover *,.customize-widgets-popover :after,.customize-widgets-popover :before{box-sizing:inherit}PKj l\=%II,css/dist/customize-widgets/style-rtl.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}#customize-theme-controls .customize-pane-child.accordion-section-content.customize-widgets-layout__inspector{background:#fff;box-sizing:border-box}#customize-theme-controls .customize-pane-child.accordion-section-content.customize-widgets-layout__inspector *{box-sizing:inherit}#customize-theme-controls .customize-pane-child.accordion-section-content.customize-widgets-layout__inspector .block-editor-block-inspector{margin:-12px}#customize-theme-controls .customize-pane-child.accordion-section-content.customize-widgets-layout__inspector .block-editor-block-inspector h3{margin-bottom:0}#customize-theme-controls .customize-pane-child.control-section-sidebar.is-sub-section-open{transform:translateX(100%)}.customize-widgets-header{display:flex;justify-content:flex-end;margin:-15px -12px 0;background:#f0f0f1;border-bottom:1px solid #e0e0e0;z-index:8}@media (min-width:782px){.customize-widgets-header{margin-bottom:76px}}.customize-widgets-header.is-fixed-toolbar-active{margin-bottom:0}.customize-widgets-header-toolbar{display:flex;border:none;width:100%;align-items:center}.customize-widgets-header-toolbar .customize-widgets-header-toolbar__inserter-toggle.components-button.has-icon{border-radius:2px;color:#fff;padding:0;min-width:24px;height:24px;margin:12px auto 12px 0}.customize-widgets-header-toolbar .customize-widgets-header-toolbar__inserter-toggle.components-button.has-icon:before{content:none}.customize-widgets-header-toolbar .customize-widgets-header-toolbar__inserter-toggle.components-button.has-icon.is-pressed{background:#1e1e1e}.customize-widgets-header-toolbar .components-button.has-icon.customize-widgets-editor-history-button.redo-button{margin-right:-12px}#customize-sidebar-outer-content{width:auto;min-width:100%}#customize-outer-theme-controls .widgets-inserter{padding:0}#customize-outer-theme-controls .widgets-inserter .customize-section-description-container{display:none}.customize-widgets-layout__inserter-panel{background:#fff}.customize-widgets-layout__inserter-panel-header{display:flex;justify-content:space-between;align-items:center;padding:16px;height:46px;box-sizing:border-box;border-bottom:1px solid #ddd}.customize-widgets-layout__inserter-panel-header .customize-widgets-layout__inserter-panel-header-title{margin:0}.block-editor-inserter__quick-inserter .block-editor-inserter__panel-content{background:#fff}.customize-widgets-keyboard-shortcut-help-modal__section{margin:0 0 2rem}.customize-widgets-keyboard-shortcut-help-modal__main-shortcuts .customize-widgets-keyboard-shortcut-help-modal__shortcut-list{margin-top:-25px}.customize-widgets-keyboard-shortcut-help-modal__section-title{font-size:.9rem;font-weight:600}.customize-widgets-keyboard-shortcut-help-modal__shortcut{display:flex;align-items:baseline;padding:.6rem 0;border-top:1px solid #ddd;margin-bottom:0}.customize-widgets-keyboard-shortcut-help-modal__shortcut:last-child{border-bottom:1px solid #ddd}.customize-widgets-keyboard-shortcut-help-modal__shortcut:empty{display:none}.customize-widgets-keyboard-shortcut-help-modal__shortcut-term{font-weight:600;margin:0 1rem 0 0;text-align:left}.customize-widgets-keyboard-shortcut-help-modal__shortcut-description{flex:1;margin:0;flex-basis:auto}.customize-widgets-keyboard-shortcut-help-modal__shortcut-key-combination{display:block;background:none;margin:0;padding:0}.customize-widgets-keyboard-shortcut-help-modal__shortcut-key-combination+.customize-widgets-keyboard-shortcut-help-modal__shortcut-key-combination{margin-top:10px}.customize-widgets-keyboard-shortcut-help-modal__shortcut-key{padding:.25rem .5rem;border-radius:8%;margin:0 .2rem}.customize-widgets-keyboard-shortcut-help-modal__shortcut-key:last-child{margin:0 .2rem 0 0}.customize-widgets-more-menu{margin-right:-4px}.customize-widgets-more-menu .components-button{width:auto;padding:0 2px}@media (min-width:600px){.customize-widgets-more-menu{margin-right:0}.customize-widgets-more-menu .components-button{padding:0 4px}}.customize-widgets-more-menu__content .components-popover__content{min-width:280px}@media (min-width:480px){.customize-widgets-more-menu__content .components-popover__content{width:auto;max-width:480px}}.customize-widgets-more-menu__content .components-popover__content .components-dropdown-menu__menu{padding:0}.components-popover.customize-widgets-more-menu__content{z-index:99998}.block-editor-block-contextual-toolbar.is-fixed{top:0;margin-right:-12px;margin-left:-12px;width:calc(100% + 24px);overflow-y:auto;z-index:7}.customize-control-sidebar_block_editor .block-editor-block-list__block-popover{position:fixed;z-index:7}.customize-widgets-welcome-guide__image__wrapper{background:#00a0d2;text-align:center;margin-bottom:8px}.customize-widgets-welcome-guide__image{height:auto}.wrap .customize-widgets-welcome-guide__heading{font-size:18px;font-weight:600}.customize-widgets-welcome-guide__text{line-height:1.7}.customize-widgets-welcome-guide__button{justify-content:center;margin:1em 0;width:100%}.customize-widgets-welcome-guide__separator{margin:1em 0}.customize-widgets-welcome-guide__more-info{line-height:1.4}#customize-theme-controls .customize-pane-child.customize-widgets__sidebar-section{min-height:100%;background-color:#fff;padding-top:12px!important}#customize-theme-controls .customize-pane-child.customize-widgets__sidebar-section.open{overflow:unset}#customize-theme-controls .customize-pane-child.customize-widgets__sidebar-section .customize-section-title{position:static!important;margin-top:-12px!important;width:unset!important}.components-modal__screen-overlay{z-index:999999}.customize-control-sidebar_block_editor,.customize-widgets-layout__inspector,.customize-widgets-popover{box-sizing:border-box}.customize-control-sidebar_block_editor *,.customize-control-sidebar_block_editor :after,.customize-control-sidebar_block_editor :before,.customize-widgets-layout__inspector *,.customize-widgets-layout__inspector :after,.customize-widgets-layout__inspector :before,.customize-widgets-popover *,.customize-widgets-popover :after,.customize-widgets-popover :before{box-sizing:inherit}PKj l\hT5"5"(css/dist/customize-widgets/style-rtl.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } #customize-theme-controls .customize-pane-child.accordion-section-content.customize-widgets-layout__inspector { background: #fff; box-sizing: border-box; } #customize-theme-controls .customize-pane-child.accordion-section-content.customize-widgets-layout__inspector * { box-sizing: inherit; } #customize-theme-controls .customize-pane-child.accordion-section-content.customize-widgets-layout__inspector .block-editor-block-inspector { margin: -12px; } #customize-theme-controls .customize-pane-child.accordion-section-content.customize-widgets-layout__inspector .block-editor-block-inspector h3 { margin-bottom: 0; } #customize-theme-controls .customize-pane-child.control-section-sidebar.is-sub-section-open { transform: translateX(100%); } .customize-widgets-header { display: flex; justify-content: flex-end; margin: -15px -12px 0 -12px; background: #f0f0f1; border-bottom: 1px solid #e0e0e0; z-index: 8; } @media (min-width: 782px) { .customize-widgets-header { margin-bottom: 76px; } } .customize-widgets-header.is-fixed-toolbar-active { margin-bottom: 0; } .customize-widgets-header-toolbar { display: flex; border: none; width: 100%; align-items: center; } .customize-widgets-header-toolbar .customize-widgets-header-toolbar__inserter-toggle.components-button.has-icon { border-radius: 2px; color: #fff; padding: 0; min-width: 24px; height: 24px; margin: 12px auto 12px 0; } .customize-widgets-header-toolbar .customize-widgets-header-toolbar__inserter-toggle.components-button.has-icon::before { content: none; } .customize-widgets-header-toolbar .customize-widgets-header-toolbar__inserter-toggle.components-button.has-icon.is-pressed { background: #1e1e1e; } .customize-widgets-header-toolbar .components-button.has-icon.customize-widgets-editor-history-button.redo-button { margin-right: -12px; } #customize-sidebar-outer-content { width: auto; min-width: 100%; } #customize-outer-theme-controls .widgets-inserter { padding: 0; } #customize-outer-theme-controls .widgets-inserter .customize-section-description-container { display: none; } .customize-widgets-layout__inserter-panel { background: #fff; } .customize-widgets-layout__inserter-panel-header { display: flex; justify-content: space-between; align-items: center; padding: 16px; height: 46px; box-sizing: border-box; border-bottom: 1px solid #ddd; } .customize-widgets-layout__inserter-panel-header .customize-widgets-layout__inserter-panel-header-title { margin: 0; } .block-editor-inserter__quick-inserter .block-editor-inserter__panel-content { background: #fff; } .customize-widgets-keyboard-shortcut-help-modal__section { margin: 0 0 2rem 0; } .customize-widgets-keyboard-shortcut-help-modal__main-shortcuts .customize-widgets-keyboard-shortcut-help-modal__shortcut-list { margin-top: -25px; } .customize-widgets-keyboard-shortcut-help-modal__section-title { font-size: 0.9rem; font-weight: 600; } .customize-widgets-keyboard-shortcut-help-modal__shortcut { display: flex; align-items: baseline; padding: 0.6rem 0; border-top: 1px solid #ddd; margin-bottom: 0; } .customize-widgets-keyboard-shortcut-help-modal__shortcut:last-child { border-bottom: 1px solid #ddd; } .customize-widgets-keyboard-shortcut-help-modal__shortcut:empty { display: none; } .customize-widgets-keyboard-shortcut-help-modal__shortcut-term { font-weight: 600; margin: 0 1rem 0 0; text-align: left; } .customize-widgets-keyboard-shortcut-help-modal__shortcut-description { flex: 1; margin: 0; flex-basis: auto; } .customize-widgets-keyboard-shortcut-help-modal__shortcut-key-combination { display: block; background: none; margin: 0; padding: 0; } .customize-widgets-keyboard-shortcut-help-modal__shortcut-key-combination + .customize-widgets-keyboard-shortcut-help-modal__shortcut-key-combination { margin-top: 10px; } .customize-widgets-keyboard-shortcut-help-modal__shortcut-key { padding: 0.25rem 0.5rem; border-radius: 8%; margin: 0 0.2rem 0 0.2rem; } .customize-widgets-keyboard-shortcut-help-modal__shortcut-key:last-child { margin: 0 0.2rem 0 0; } .customize-widgets-more-menu { margin-right: -4px; } .customize-widgets-more-menu .components-button { width: auto; padding: 0 2px; } @media (min-width: 600px) { .customize-widgets-more-menu { margin-right: 0; } .customize-widgets-more-menu .components-button { padding: 0 4px; } } .customize-widgets-more-menu__content .components-popover__content { min-width: 280px; } @media (min-width: 480px) { .customize-widgets-more-menu__content .components-popover__content { width: auto; max-width: 480px; } } .customize-widgets-more-menu__content .components-popover__content .components-dropdown-menu__menu { padding: 0; } .components-popover.customize-widgets-more-menu__content { z-index: 99998; } .block-editor-block-contextual-toolbar.is-fixed { top: 0; margin-right: -12px; margin-left: -12px; width: calc(100% + 24px); overflow-y: auto; z-index: 7; } .customize-control-sidebar_block_editor .block-editor-block-list__block-popover { position: fixed; z-index: 7; } .customize-widgets-welcome-guide__image__wrapper { background: #00a0d2; text-align: center; margin-bottom: 8px; } .customize-widgets-welcome-guide__image { height: auto; } .wrap .customize-widgets-welcome-guide__heading { font-size: 18px; font-weight: 600; } .customize-widgets-welcome-guide__text { line-height: 1.7; } .customize-widgets-welcome-guide__button { justify-content: center; margin: 1em 0; width: 100%; } .customize-widgets-welcome-guide__separator { margin: 1em 0; } .customize-widgets-welcome-guide__more-info { line-height: 1.4; } #customize-theme-controls .customize-pane-child.customize-widgets__sidebar-section { min-height: 100%; background-color: #fff; padding-top: 12px !important; } #customize-theme-controls .customize-pane-child.customize-widgets__sidebar-section.open { overflow: unset; } #customize-theme-controls .customize-pane-child.customize-widgets__sidebar-section .customize-section-title { position: static !important; margin-top: -12px !important; width: unset !important; } .components-modal__screen-overlay { z-index: 999999; } .customize-control-sidebar_block_editor, .customize-widgets-layout__inspector, .customize-widgets-popover { box-sizing: border-box; } .customize-control-sidebar_block_editor *, .customize-control-sidebar_block_editor *::before, .customize-control-sidebar_block_editor *::after, .customize-widgets-layout__inspector *, .customize-widgets-layout__inspector *::before, .customize-widgets-layout__inspector *::after, .customize-widgets-popover *, .customize-widgets-popover *::before, .customize-widgets-popover *::after { box-sizing: inherit; }PKj l\\4"4"$css/dist/customize-widgets/style.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } #customize-theme-controls .customize-pane-child.accordion-section-content.customize-widgets-layout__inspector { background: #fff; box-sizing: border-box; } #customize-theme-controls .customize-pane-child.accordion-section-content.customize-widgets-layout__inspector * { box-sizing: inherit; } #customize-theme-controls .customize-pane-child.accordion-section-content.customize-widgets-layout__inspector .block-editor-block-inspector { margin: -12px; } #customize-theme-controls .customize-pane-child.accordion-section-content.customize-widgets-layout__inspector .block-editor-block-inspector h3 { margin-bottom: 0; } #customize-theme-controls .customize-pane-child.control-section-sidebar.is-sub-section-open { transform: translateX(-100%); } .customize-widgets-header { display: flex; justify-content: flex-end; margin: -15px -12px 0 -12px; background: #f0f0f1; border-bottom: 1px solid #e0e0e0; z-index: 8; } @media (min-width: 782px) { .customize-widgets-header { margin-bottom: 76px; } } .customize-widgets-header.is-fixed-toolbar-active { margin-bottom: 0; } .customize-widgets-header-toolbar { display: flex; border: none; width: 100%; align-items: center; } .customize-widgets-header-toolbar .customize-widgets-header-toolbar__inserter-toggle.components-button.has-icon { border-radius: 2px; color: #fff; padding: 0; min-width: 24px; height: 24px; margin: 12px 0 12px auto; } .customize-widgets-header-toolbar .customize-widgets-header-toolbar__inserter-toggle.components-button.has-icon::before { content: none; } .customize-widgets-header-toolbar .customize-widgets-header-toolbar__inserter-toggle.components-button.has-icon.is-pressed { background: #1e1e1e; } .customize-widgets-header-toolbar .components-button.has-icon.customize-widgets-editor-history-button.redo-button { margin-left: -12px; } #customize-sidebar-outer-content { width: auto; min-width: 100%; } #customize-outer-theme-controls .widgets-inserter { padding: 0; } #customize-outer-theme-controls .widgets-inserter .customize-section-description-container { display: none; } .customize-widgets-layout__inserter-panel { background: #fff; } .customize-widgets-layout__inserter-panel-header { display: flex; justify-content: space-between; align-items: center; padding: 16px; height: 46px; box-sizing: border-box; border-bottom: 1px solid #ddd; } .customize-widgets-layout__inserter-panel-header .customize-widgets-layout__inserter-panel-header-title { margin: 0; } .block-editor-inserter__quick-inserter .block-editor-inserter__panel-content { background: #fff; } .customize-widgets-keyboard-shortcut-help-modal__section { margin: 0 0 2rem 0; } .customize-widgets-keyboard-shortcut-help-modal__main-shortcuts .customize-widgets-keyboard-shortcut-help-modal__shortcut-list { margin-top: -25px; } .customize-widgets-keyboard-shortcut-help-modal__section-title { font-size: 0.9rem; font-weight: 600; } .customize-widgets-keyboard-shortcut-help-modal__shortcut { display: flex; align-items: baseline; padding: 0.6rem 0; border-top: 1px solid #ddd; margin-bottom: 0; } .customize-widgets-keyboard-shortcut-help-modal__shortcut:last-child { border-bottom: 1px solid #ddd; } .customize-widgets-keyboard-shortcut-help-modal__shortcut:empty { display: none; } .customize-widgets-keyboard-shortcut-help-modal__shortcut-term { font-weight: 600; margin: 0 0 0 1rem; text-align: right; } .customize-widgets-keyboard-shortcut-help-modal__shortcut-description { flex: 1; margin: 0; flex-basis: auto; } .customize-widgets-keyboard-shortcut-help-modal__shortcut-key-combination { display: block; background: none; margin: 0; padding: 0; } .customize-widgets-keyboard-shortcut-help-modal__shortcut-key-combination + .customize-widgets-keyboard-shortcut-help-modal__shortcut-key-combination { margin-top: 10px; } .customize-widgets-keyboard-shortcut-help-modal__shortcut-key { padding: 0.25rem 0.5rem; border-radius: 8%; margin: 0 0.2rem 0 0.2rem; } .customize-widgets-keyboard-shortcut-help-modal__shortcut-key:last-child { margin: 0 0 0 0.2rem; } .customize-widgets-more-menu { margin-left: -4px; } .customize-widgets-more-menu .components-button { width: auto; padding: 0 2px; } @media (min-width: 600px) { .customize-widgets-more-menu { margin-left: 0; } .customize-widgets-more-menu .components-button { padding: 0 4px; } } .customize-widgets-more-menu__content .components-popover__content { min-width: 280px; } @media (min-width: 480px) { .customize-widgets-more-menu__content .components-popover__content { width: auto; max-width: 480px; } } .customize-widgets-more-menu__content .components-popover__content .components-dropdown-menu__menu { padding: 0; } .components-popover.customize-widgets-more-menu__content { z-index: 99998; } .block-editor-block-contextual-toolbar.is-fixed { top: 0; margin-left: -12px; margin-right: -12px; width: calc(100% + 24px); overflow-y: auto; z-index: 7; } .customize-control-sidebar_block_editor .block-editor-block-list__block-popover { position: fixed; z-index: 7; } .customize-widgets-welcome-guide__image__wrapper { background: #00a0d2; text-align: center; margin-bottom: 8px; } .customize-widgets-welcome-guide__image { height: auto; } .wrap .customize-widgets-welcome-guide__heading { font-size: 18px; font-weight: 600; } .customize-widgets-welcome-guide__text { line-height: 1.7; } .customize-widgets-welcome-guide__button { justify-content: center; margin: 1em 0; width: 100%; } .customize-widgets-welcome-guide__separator { margin: 1em 0; } .customize-widgets-welcome-guide__more-info { line-height: 1.4; } #customize-theme-controls .customize-pane-child.customize-widgets__sidebar-section { min-height: 100%; background-color: #fff; padding-top: 12px !important; } #customize-theme-controls .customize-pane-child.customize-widgets__sidebar-section.open { overflow: unset; } #customize-theme-controls .customize-pane-child.customize-widgets__sidebar-section .customize-section-title { position: static !important; margin-top: -12px !important; width: unset !important; } .components-modal__screen-overlay { z-index: 999999; } .customize-control-sidebar_block_editor, .customize-widgets-layout__inspector, .customize-widgets-popover { box-sizing: border-box; } .customize-control-sidebar_block_editor *, .customize-control-sidebar_block_editor *::before, .customize-control-sidebar_block_editor *::after, .customize-widgets-layout__inspector *, .customize-widgets-layout__inspector *::before, .customize-widgets-layout__inspector *::after, .customize-widgets-popover *, .customize-widgets-popover *::before, .customize-widgets-popover *::after { box-sizing: inherit; }PKj l\,gD11!css/dist/components/style.min.cssnu[@charset "UTF-8";:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.components-animate__appear{animation:components-animate__appear-animation .1s cubic-bezier(0,0,.2,1) 0s;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.components-animate__appear{animation-duration:1ms;animation-delay:0s}}.components-animate__appear.is-from-top,.components-animate__appear.is-from-top.is-from-left{transform-origin:top left}.components-animate__appear.is-from-top.is-from-right{transform-origin:top right}.components-animate__appear.is-from-bottom,.components-animate__appear.is-from-bottom.is-from-left{transform-origin:bottom left}.components-animate__appear.is-from-bottom.is-from-right{transform-origin:bottom right}@keyframes components-animate__appear-animation{0%{transform:translateY(-2em) scaleY(0) scaleX(0)}to{transform:translateY(0) scaleY(1) scaleX(1)}}.components-animate__slide-in{animation:components-animate__slide-in-animation .1s cubic-bezier(0,0,.2,1);animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.components-animate__slide-in{animation-duration:1ms;animation-delay:0s}}.components-animate__slide-in.is-from-left{transform:translateX(100%)}.components-animate__slide-in.is-from-right{transform:translateX(-100%)}@keyframes components-animate__slide-in-animation{to{transform:translateX(0)}}.components-animate__loading{animation:components-animate__loading 1.6s ease-in-out infinite}@keyframes components-animate__loading{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}.components-autocomplete__popover .components-popover__content>div{padding:16px;min-width:220px}.components-autocomplete__result.components-button{display:flex;height:auto;min-height:36px;text-align:left;width:100%}.components-autocomplete__result.components-button.is-selected{box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.components-button-group{display:inline-block}.components-button-group .components-button{border-radius:0;display:inline-flex;color:#1e1e1e;box-shadow:inset 0 0 0 1px #1e1e1e}.components-button-group .components-button+.components-button{margin-left:-1px}.components-button-group .components-button:first-child{border-radius:2px 0 0 2px}.components-button-group .components-button:last-child{border-radius:0 2px 2px 0}.components-button-group .components-button.is-primary,.components-button-group .components-button:focus{position:relative;z-index:1}.components-button-group .components-button.is-primary{box-shadow:inset 0 0 0 1px #1e1e1e}.components-button{display:inline-flex;text-decoration:none;font-weight:400;font-size:13px;margin:0;border:0;cursor:pointer;-webkit-appearance:none;background:none;transition:box-shadow .1s linear;height:36px;align-items:center;box-sizing:border-box;padding:6px 12px;border-radius:2px;color:#1e1e1e}@media (prefers-reduced-motion:reduce){.components-button{transition-duration:0s;transition-delay:0s}}.components-button:hover,.components-button[aria-expanded=true]{color:var(--wp-admin-theme-color)}.components-button[aria-disabled=true]:hover{color:initial}.components-button:focus:not(:disabled){box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);outline:3px solid transparent}.components-button.is-primary{white-space:nowrap;background:var(--wp-admin-theme-color);color:#fff;text-decoration:none;text-shadow:none;outline:1px solid transparent}.components-button.is-primary:hover:not(:disabled){background:var(--wp-admin-theme-color-darker-10);color:#fff}.components-button.is-primary:active:not(:disabled){background:var(--wp-admin-theme-color-darker-20);border-color:var(--wp-admin-theme-color-darker-20);color:#fff}.components-button.is-primary:focus:not(:disabled){box-shadow:inset 0 0 0 1px #fff,0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.components-button.is-primary:disabled,.components-button.is-primary:disabled:active:enabled,.components-button.is-primary[aria-disabled=true],.components-button.is-primary[aria-disabled=true]:active:enabled,.components-button.is-primary[aria-disabled=true]:enabled{color:hsla(0,0%,100%,.4);background:var(--wp-admin-theme-color);border-color:var(--wp-admin-theme-color);opacity:1;outline:none}.components-button.is-primary:disabled:active:enabled:focus:enabled,.components-button.is-primary:disabled:focus:enabled,.components-button.is-primary[aria-disabled=true]:active:enabled:focus:enabled,.components-button.is-primary[aria-disabled=true]:enabled:focus:enabled,.components-button.is-primary[aria-disabled=true]:focus:enabled{box-shadow:0 0 0 1px #fff,0 0 0 3px var(--wp-admin-theme-color)}.components-button.is-primary.is-busy,.components-button.is-primary.is-busy:disabled,.components-button.is-primary.is-busy[aria-disabled=true]{color:#fff;background-size:100px 100%;background-image:linear-gradient(-45deg,var(--wp-admin-theme-color) 33%,var(--wp-admin-theme-color-darker-20) 0,var(--wp-admin-theme-color-darker-20) 70%,var(--wp-admin-theme-color) 0);border-color:var(--wp-admin-theme-color)}.components-button.is-secondary,.components-button.is-tertiary{outline:1px solid transparent}.components-button.is-secondary:active:not(:disabled),.components-button.is-tertiary:active:not(:disabled){background:#ddd;color:var(--wp-admin-theme-color-darker-10);box-shadow:none}.components-button.is-secondary:hover:not(:disabled),.components-button.is-tertiary:hover:not(:disabled){color:var(--wp-admin-theme-color-darker-10);box-shadow:inset 0 0 0 1px var(--wp-admin-theme-color-darker-10)}.components-button.is-secondary:disabled,.components-button.is-secondary[aria-disabled=true],.components-button.is-secondary[aria-disabled=true]:hover,.components-button.is-tertiary:disabled,.components-button.is-tertiary[aria-disabled=true],.components-button.is-tertiary[aria-disabled=true]:hover{color:#828282;background:#eaeaea;transform:none;opacity:1;box-shadow:none;outline:none}.components-button.is-secondary{box-shadow:inset 0 0 0 1px var(--wp-admin-theme-color);outline:1px solid transparent}.components-button.is-secondary,.components-button.is-tertiary{white-space:nowrap;color:var(--wp-admin-theme-color);background:transparent}.components-button.is-tertiary{padding:6px}.components-button.is-tertiary .dashicon{display:inline-block;flex:0 0 auto}p+.components-button.is-tertiary{margin-left:-6px}.components-button.is-destructive{color:#cc1818;box-shadow:inset 0 0 0 1px #cc1818}.components-button.is-destructive:hover:not(:disabled){color:#710d0d;box-shadow:inset 0 0 0 1px #710d0d}.components-button.is-destructive:focus:not(:disabled){color:var(--wp-admin-theme-color)}.components-button.is-destructive:active:not(:disabled){background:#ccc}.components-button.is-destructive.is-primary{color:#fff;background:#cc1818;box-shadow:inset 0 0 0 1px #cc1818}.components-button.is-destructive.is-primary:hover:not(:disabled){color:#fff;background:#710d0d;box-shadow:inset 0 0 0 1px #710d0d}.components-button.is-link{margin:0;padding:0;box-shadow:none;border:0;border-radius:0;background:none;outline:none;text-align:left;color:var(--wp-admin-theme-color);text-decoration:underline;transition-property:border,background,color;transition-duration:.05s;transition-timing-function:ease-in-out;height:auto}@media (prefers-reduced-motion:reduce){.components-button.is-link{transition-duration:0s;transition-delay:0s}}.components-button.is-link:focus{border-radius:2px}.components-button.is-link.is-destructive{color:#cc1818}.components-button.is-link.is-destructive:active:not(:disabled),.components-button.is-link.is-destructive:hover:not(:disabled){color:#710d0d;background:none}.components-button.is-link.is-destructive:focus:not(:disabled){color:var(--wp-admin-theme-color)}.components-button:not([aria-disabled=true]):active{color:inherit}.components-button:disabled,.components-button[aria-disabled=true]{cursor:default;opacity:.3}.components-button.is-busy,.components-button.is-secondary.is-busy,.components-button.is-secondary.is-busy:disabled,.components-button.is-secondary.is-busy[aria-disabled=true]{animation:components-button__busy-animation 2.5s linear infinite;opacity:1;background-size:100px 100%;background-image:linear-gradient(-45deg,#fafafa 33%,#e0e0e0 0,#e0e0e0 70%,#fafafa 0)}.components-button.is-small{height:24px;line-height:22px;padding:0 8px;font-size:11px}.components-button.is-small.has-icon:not(.has-text){padding:0 8px;width:24px}.components-button.has-icon{padding:6px;min-width:36px;justify-content:center}.components-button.has-icon .dashicon{display:inline-block;flex:0 0 auto;margin-left:2px;margin-right:2px}.components-button.has-icon.has-text{justify-content:left}.components-button.has-icon.has-text svg{margin-right:8px}.components-button.has-icon.has-text .dashicon{margin-right:10px}.components-button.is-pressed{color:#fff;background:#1e1e1e}.components-button.is-pressed:focus:not(:disabled){box-shadow:inset 0 0 0 1px #fff,0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);outline:2px solid transparent}.components-button.is-pressed:hover:not(:disabled){color:#fff;background:#1e1e1e}.components-button svg{fill:currentColor;outline:none}@media (forced-colors:active){.components-button svg{fill:CanvasText}}.components-button .components-visually-hidden{height:auto}@keyframes components-button__busy-animation{0%{background-position:200px 0}}.components-checkbox-control__input[type=checkbox]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;padding:6px 8px;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;font-size:16px;line-height:normal;border:1px solid #1e1e1e;transition:none;border-radius:2px;background:#fff;color:#1e1e1e;clear:none;cursor:pointer;display:inline-block;line-height:0;margin:0 4px 0 0;outline:0;padding:0!important;text-align:center;vertical-align:top;width:24px;height:24px;-webkit-appearance:none;appearance:none;transition:border-color .1s ease-in-out}@media (min-width:600px){.components-checkbox-control__input[type=checkbox]{font-size:13px;line-height:normal}}.components-checkbox-control__input[type=checkbox]:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color)}.components-checkbox-control__input[type=checkbox]::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.components-checkbox-control__input[type=checkbox]::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.components-checkbox-control__input[type=checkbox]:-ms-input-placeholder{color:rgba(30,30,30,.62)}.components-checkbox-control__input[type=checkbox]:checked:before,.components-checkbox-control__input[type=checkbox][aria-checked=mixed]:before{margin:-3px -5px;color:#fff}@media (min-width:782px){.components-checkbox-control__input[type=checkbox]:checked:before,.components-checkbox-control__input[type=checkbox][aria-checked=mixed]:before{margin:-4px 0 0 -5px}}.components-checkbox-control__input[type=checkbox][aria-checked=mixed]{background:var(--wp-admin-theme-color);border-color:var(--wp-admin-theme-color)}.components-checkbox-control__input[type=checkbox][aria-checked=mixed]:before{content:"";float:left;display:inline-block;vertical-align:middle;width:16px;font:normal 30px/1 dashicons;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (min-width:782px){.components-checkbox-control__input[type=checkbox][aria-checked=mixed]:before{float:none;font-size:21px}}@media (min-width:600px){.components-checkbox-control__input[type=checkbox]{height:20px;width:20px}}@media (prefers-reduced-motion:reduce){.components-checkbox-control__input[type=checkbox]{transition-duration:0s;transition-delay:0s}}.components-checkbox-control__input[type=checkbox]:focus{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--wp-admin-theme-color);outline:2px solid transparent}.components-checkbox-control__input[type=checkbox]:checked{background:var(--wp-admin-theme-color);border-color:var(--wp-admin-theme-color)}.components-checkbox-control__input[type=checkbox]:checked::-ms-check{opacity:0}.components-checkbox-control__input[type=checkbox]:checked:before{content:none}.components-checkbox-control__input-container{position:relative;display:inline-block;margin-right:12px;vertical-align:middle;width:24px;height:24px}@media (min-width:600px){.components-checkbox-control__input-container{width:20px;height:20px}}svg.components-checkbox-control__checked{fill:#fff;cursor:pointer;position:absolute;left:0;top:0;width:24px;height:24px;-webkit-user-select:none;user-select:none;pointer-events:none}@media (min-width:600px){svg.components-checkbox-control__checked{left:-2px;top:-2px}}.components-circular-option-picker{display:inline-block;width:100%;min-width:188px}.components-circular-option-picker .components-circular-option-picker__custom-clear-wrapper{display:flex;justify-content:flex-end;margin-top:12px}.components-circular-option-picker .components-circular-option-picker__swatches{display:flex;flex-wrap:wrap;gap:12px}.components-circular-option-picker__option-wrapper{display:inline-block;height:28px;width:28px;vertical-align:top;transform:scale(1);transition:transform .1s ease}@media (prefers-reduced-motion:reduce){.components-circular-option-picker__option-wrapper{transition-duration:0s;transition-delay:0s}}.components-circular-option-picker__option-wrapper:hover{transform:scale(1.2)}.components-circular-option-picker__option-wrapper>div{height:100%;width:100%}.components-circular-option-picker__option-wrapper:before{content:"";position:absolute;top:1px;left:1px;bottom:1px;right:1px;border-radius:50%;z-index:-1;background:url("data:image/svg+xml;charset=utf-8,%3Csvg width='28' height='28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 8V6H4v2h2zm2 0V6h2v2H8zm2 8H8v-2h2v2zm2 0v-2h2v2h-2zm0 2v-2h-2v2H8v2h2v-2h2zm2 0v2h-2v-2h2zm2 0h-2v-2h2v2z' fill='%23555D65'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M18 18h2v-2h-2v-2h2v-2h-2v-2h2V8h-2v2h-2V8h-2v2h2v2h-2v2h2v2h2v2zm-2-4v-2h2v2h-2z' fill='%23555D65'/%3E%3Cpath d='M18 18v2h-2v-2h2z' fill='%23555D65'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M8 10V8H6v2H4v2h2v2H4v2h2v2H4v2h2v2H4v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2V8h-2V6h2V4h-2v2h-2V4h-2v2h-2V4h-2v2h-2V4h-2v2h2v2h-2v2H8zm0 2v-2H6v2h2zm2 0v-2h2v2h-2zm0 2v-2H8v2H6v2h2v2H6v2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2V8h-2V6h-2v2h-2V6h-2v2h-2v2h2v2h-2v2h-2z' fill='%23555D65'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M4 0H2v2H0v2h2v2H0v2h2v2H0v2h2v2H0v2h2v2H0v2h2v2H0v2h2v2H0v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2V8h-2V6h2V4h-2V2h2V0h-2v2h-2V0h-2v2h-2V0h-2v2h-2V0h-2v2h-2V0h-2v2H8V0H6v2H4V0zm0 4V2H2v2h2zm2 0V2h2v2H6zm0 2V4H4v2H2v2h2v2H2v2h2v2H2v2h2v2H2v2h2v2H2v2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2V8h-2V6h2V4h-2V2h-2v2h-2V2h-2v2h-2V2h-2v2h-2V2h-2v2H8v2H6z' fill='%23555D65'/%3E%3C/svg%3E")}.components-circular-option-picker__option{display:inline-block;vertical-align:top;height:100%;width:100%;border:none;border-radius:50%;background:transparent;box-shadow:inset 0 0 0 14px;transition:box-shadow .1s ease;cursor:pointer}@media (prefers-reduced-motion:reduce){.components-circular-option-picker__option{transition-duration:0s;transition-delay:0s}}.components-circular-option-picker__option:hover{box-shadow:inset 0 0 0 14px!important}.components-circular-option-picker__option.is-pressed{box-shadow:inset 0 0 0 4px;position:relative;z-index:1;overflow:visible}.components-circular-option-picker__option.is-pressed+svg{position:absolute;left:2px;top:2px;border-radius:50%;z-index:2;pointer-events:none}.components-circular-option-picker__option:after{content:"";position:absolute;top:-1px;left:-1px;bottom:-1px;right:-1px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.2);border:1px solid transparent}.components-circular-option-picker__option:focus:after{content:"";border:2px solid #757575;width:32px;height:32px;position:absolute;top:-2px;left:-2px;border-radius:50%;box-shadow:inset 0 0 0 2px #fff}.components-circular-option-picker__option.components-button:focus{background-color:transparent;box-shadow:inset 0 0 0 14px;outline:none}.components-circular-option-picker__button-action .components-circular-option-picker__option{color:#fff;background:#fff}.components-circular-option-picker__dropdown-link-action{margin-right:16px}.components-circular-option-picker__dropdown-link-action .components-button{line-height:22px}@media (min-width:782px){.components-palette-edit__popover.components-popover .components-popover__content.components-popover__content.components-popover__content{margin-right:156px;margin-top:-49px}}.components-palette-edit__popover .components-custom-gradient-picker__gradient-bar{margin-top:0}.components-palette-edit__popover .components-custom-gradient-picker__ui-line{margin-bottom:0}.components-palette-edit__popover .components-custom-gradient-picker{width:280px;padding:8px}.components-dropdown-menu__menu .components-palette-edit__menu-button{width:100%}.component-color-indicator{width:25px;height:16px;margin-left:.8rem;border:1px solid #dadada;display:inline-block}.component-color-indicator+.component-color-indicator{margin-left:.5rem}.components-combobox-control{width:100%}input.components-combobox-control__input[type=text]{width:100%;border:none;box-shadow:none;font-size:16px;padding:2px;margin:0;line-height:inherit;min-height:auto}@media (min-width:600px){input.components-combobox-control__input[type=text]{font-size:13px}}input.components-combobox-control__input[type=text]:focus{outline:none;box-shadow:none}.components-combobox-control__suggestions-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;border:1px solid #757575;font-size:16px;line-height:normal;display:flex;flex-wrap:wrap;align-items:flex-start;width:100%;margin:0 0 8px;padding:4px}@media (prefers-reduced-motion:reduce){.components-combobox-control__suggestions-container{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.components-combobox-control__suggestions-container{font-size:13px;line-height:normal}}.components-combobox-control__suggestions-container:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.components-combobox-control__suggestions-container::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.components-combobox-control__suggestions-container::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.components-combobox-control__suggestions-container:-ms-input-placeholder{color:rgba(30,30,30,.62)}.components-combobox-control__suggestions-container:focus-within{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.components-combobox-control__reset.components-button{display:flex;height:24px;min-width:24px;padding:0}.components-color-list-picker,.components-color-list-picker__swatch-button{width:100%}.components-color-list-picker__color-picker{margin:8px 0}.components-color-palette__custom-color{position:relative;border:none;background:none;display:block;border-radius:2px;height:48px;text-align:right;width:100%;background-image:repeating-linear-gradient(45deg,#e0e0e0 25%,transparent 0,transparent 75%,#e0e0e0 0,#e0e0e0),repeating-linear-gradient(45deg,#e0e0e0 25%,transparent 0,transparent 75%,#e0e0e0 0,#e0e0e0);background-position:0 0,25px 25px;background-size:50px 50px;box-sizing:border-box;color:#fff;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(0,0,0,.2);outline:1px solid transparent}.components-color-palette__custom-color:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);outline-width:2px}.components-dropdown__content.components-color-palette__custom-color-dropdown-content .components-popover__content{overflow:visible;box-shadow:0 4px 4px rgba(0,0,0,.05);border:none;border-radius:2px;max-height:-moz-fit-content!important;max-height:fit-content!important}.components-dropdown__content.components-color-palette__custom-color-dropdown-content .components-popover__content>div{padding:0}.components-dropdown__content.components-color-palette__custom-color-dropdown-content .components-popover__content .react-colorful__saturation{border-top-right-radius:2px;border-top-left-radius:2px}@media (min-width:782px){.components-dropdown__content.components-color-palette__custom-color-dropdown-content.is-rendered-in-sidebar .components-popover__content.components-popover__content{margin-right:156px}.components-dropdown__content.components-color-palette__custom-color-dropdown-content.is-rendered-in-sidebar.is-from-top .components-popover__content{margin-top:-60px}.components-dropdown__content.components-color-palette__custom-color-dropdown-content.is-rendered-in-sidebar.is-from-bottom .components-popover__content{margin-bottom:-60px}}.components-custom-gradient-picker__gradient-bar:not(.has-gradient){opacity:.4}.components-custom-gradient-picker__gradient-bar{border-radius:2px;margin-top:12px;width:100%;height:48px;margin-bottom:20px;padding-right:16px}.components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__markers-container{position:relative;width:calc(100% - 32px);margin-left:auto;margin-right:auto}.components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__insert-point{border-radius:50%;background:#fff;padding:2px;top:16px;min-width:16px;width:16px;height:16px;position:relative;color:#1e1e1e}.components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__insert-point svg{height:100%;width:100%}.components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__control-point-button{border-radius:50%;height:16px;width:16px;padding:0;position:absolute;top:16px;box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) #fff,0 0 2px 0 rgba(0,0,0,.25);outline:2px solid transparent}.components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__control-point-button.is-active,.components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__control-point-button:focus{box-shadow:inset 0 0 0 calc(var(--wp-admin-border-width-focus)*2) #fff,0 0 2px 0 rgba(0,0,0,.25);outline:4px solid transparent}.components-custom-gradient-picker__color-picker-popover .components-custom-gradient-picker__remove-control-point{margin-left:auto;margin-right:auto;display:block;margin-bottom:8px}.components-custom-gradient-picker__inserter{direction:ltr;width:100%}.components-custom-gradient-picker__liner-gradient-indicator{display:inline-block;flex:0 auto;width:20px;height:20px}.components-custom-gradient-picker .components-custom-gradient-picker__ui-line{margin-bottom:16px}.components-custom-gradient-picker .components-custom-gradient-picker__ui-line .components-base-control.components-angle-picker,.components-custom-gradient-picker .components-custom-gradient-picker__ui-line .components-base-control.components-custom-gradient-picker__type-picker{margin-bottom:0}.components-custom-gradient-picker .components-custom-gradient-picker__toolbar{border:none}.components-custom-gradient-picker .components-custom-gradient-picker__toolbar>div+div{margin-left:1px}.components-custom-gradient-picker .components-custom-gradient-picker__toolbar button.is-pressed>svg{background:#fff;border:1px solid #949494;border-radius:2px}.components-custom-gradient-picker .components-input-control__input,.components-custom-gradient-picker .components-select-control__input{height:40px!important}.components-custom-gradient-picker .components-input-control__label{line-height:1;padding-bottom:8px!important}.components-custom-gradient-picker label{text-transform:uppercase;font-size:11px;font-weight:500}.components-custom-select-control{position:relative}.components-custom-select-control__label{display:block;margin-bottom:8px}.components-custom-select-control__button{border:1px solid #757575;border-radius:2px;min-height:30px;min-width:130px;position:relative;text-align:left}.components-custom-select-control__button.components-custom-select-control__button{padding-right:24px}.components-custom-select-control__button:focus:not(:disabled){border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color)}.components-custom-select-control__button .components-custom-select-control__button-icon{height:100%;padding:0;position:absolute;right:0;top:0}.components-custom-select-control__menu{border:1px solid #1e1e1e;background-color:#fff;border-radius:2px;outline:none;transition:none;max-height:400px;min-width:100%;overflow:auto;padding:0;position:absolute;z-index:1000000}.components-custom-select-control__menu[aria-hidden=true]{display:none}.components-custom-select-control__item{align-items:center;display:grid;grid-template-columns:auto auto;list-style-type:none;padding:8px;cursor:default;line-height:28px}.components-custom-select-control__item.has-hint{grid-template-columns:auto auto 30px}.components-custom-select-control__item.is-highlighted{background:#ddd}.components-custom-select-control__item .components-custom-select-control__item-hint{color:#757575;text-align:right;padding-right:4px}.components-custom-select-control__item .components-custom-select-control__item-icon{margin-left:auto}.components-custom-select-control__item:last-child{margin-bottom:0}.PresetDateRangePicker_panel{padding:0 22px 11px}.PresetDateRangePicker_button{position:relative;height:100%;text-align:center;background:0 0;border:2px solid #00a699;color:#00a699;padding:4px 12px;margin-right:8px;font:inherit;font-weight:700;line-height:normal;overflow:visible;box-sizing:border-box;cursor:pointer}.PresetDateRangePicker_button:active{outline:0}.PresetDateRangePicker_button__selected{color:#fff;background:#00a699}.SingleDatePickerInput{display:inline-block;background-color:#fff}.SingleDatePickerInput__withBorder{border-radius:2px;border:1px solid #dbdbdb}.SingleDatePickerInput__rtl{direction:rtl}.SingleDatePickerInput__disabled{background-color:#f2f2f2}.SingleDatePickerInput__block{display:block}.SingleDatePickerInput__showClearDate{padding-right:30px}.SingleDatePickerInput_clearDate{background:0 0;border:0;color:inherit;font:inherit;line-height:normal;overflow:visible;cursor:pointer;padding:10px;margin:0 10px 0 5px;position:absolute;right:0;top:50%;transform:translateY(-50%)}.SingleDatePickerInput_clearDate__default:focus,.SingleDatePickerInput_clearDate__default:hover{background:#dbdbdb;border-radius:50%}.SingleDatePickerInput_clearDate__small{padding:6px}.SingleDatePickerInput_clearDate__hide{visibility:hidden}.SingleDatePickerInput_clearDate_svg{fill:#82888a;height:12px;width:15px;vertical-align:middle}.SingleDatePickerInput_clearDate_svg__small{height:9px}.SingleDatePickerInput_calendarIcon{background:0 0;border:0;color:inherit;font:inherit;line-height:normal;overflow:visible;cursor:pointer;display:inline-block;vertical-align:middle;padding:10px;margin:0 5px 0 10px}.SingleDatePickerInput_calendarIcon_svg{fill:#82888a;height:15px;width:14px;vertical-align:middle}.SingleDatePicker{position:relative;display:inline-block}.SingleDatePicker__block{display:block}.SingleDatePicker_picker{z-index:1;background-color:#fff;position:absolute}.SingleDatePicker_picker__rtl{direction:rtl}.SingleDatePicker_picker__directionLeft{left:0}.SingleDatePicker_picker__directionRight{right:0}.SingleDatePicker_picker__portal{background-color:rgba(0,0,0,.3);position:fixed;top:0;left:0;height:100%;width:100%}.SingleDatePicker_picker__fullScreenPortal{background-color:#fff}.SingleDatePicker_closeButton{background:0 0;border:0;color:inherit;font:inherit;line-height:normal;overflow:visible;cursor:pointer;position:absolute;top:0;right:0;padding:15px;z-index:2}.SingleDatePicker_closeButton:focus,.SingleDatePicker_closeButton:hover{color:#b0b3b4;text-decoration:none}.SingleDatePicker_closeButton_svg{height:15px;width:15px;fill:#cacccd}.DayPickerKeyboardShortcuts_buttonReset{background:0 0;border:0;border-radius:0;color:inherit;font:inherit;line-height:normal;overflow:visible;padding:0;cursor:pointer;font-size:14px}.DayPickerKeyboardShortcuts_buttonReset:active{outline:0}.DayPickerKeyboardShortcuts_show{width:22px;position:absolute;z-index:2}.DayPickerKeyboardShortcuts_show__bottomRight{border-top:26px solid transparent;border-right:33px solid #00a699;bottom:0;right:0}.DayPickerKeyboardShortcuts_show__bottomRight:hover{border-right:33px solid #008489}.DayPickerKeyboardShortcuts_show__topRight{border-bottom:26px solid transparent;border-right:33px solid #00a699;top:0;right:0}.DayPickerKeyboardShortcuts_show__topRight:hover{border-right:33px solid #008489}.DayPickerKeyboardShortcuts_show__topLeft{border-bottom:26px solid transparent;border-left:33px solid #00a699;top:0;left:0}.DayPickerKeyboardShortcuts_show__topLeft:hover{border-left:33px solid #008489}.DayPickerKeyboardShortcuts_showSpan{color:#fff;position:absolute}.DayPickerKeyboardShortcuts_showSpan__bottomRight{bottom:0;right:-28px}.DayPickerKeyboardShortcuts_showSpan__topRight{top:1px;right:-28px}.DayPickerKeyboardShortcuts_showSpan__topLeft{top:1px;left:-28px}.DayPickerKeyboardShortcuts_panel{overflow:auto;background:#fff;border:1px solid #dbdbdb;border-radius:2px;position:absolute;top:0;bottom:0;right:0;left:0;z-index:2;padding:22px;margin:33px}.DayPickerKeyboardShortcuts_title{font-size:16px;font-weight:700;margin:0}.DayPickerKeyboardShortcuts_list{list-style:none;padding:0;font-size:14px}.DayPickerKeyboardShortcuts_close{position:absolute;right:22px;top:22px;z-index:2}.DayPickerKeyboardShortcuts_close:active{outline:0}.DayPickerKeyboardShortcuts_closeSvg{height:15px;width:15px;fill:#cacccd}.DayPickerKeyboardShortcuts_closeSvg:focus,.DayPickerKeyboardShortcuts_closeSvg:hover{fill:#82888a}.CalendarDay{box-sizing:border-box;cursor:pointer;font-size:14px;text-align:center}.CalendarDay:active{outline:0}.CalendarDay__defaultCursor{cursor:default}.CalendarDay__default{border:1px solid #e4e7e7;color:#484848;background:#fff}.CalendarDay__default:hover{background:#e4e7e7;border:1px double #e4e7e7;color:inherit}.CalendarDay__hovered_offset{background:#f4f5f5;border:1px double #e4e7e7;color:inherit}.CalendarDay__outside{border:0;background:#fff;color:#484848}.CalendarDay__outside:hover{border:0}.CalendarDay__blocked_minimum_nights{background:#fff;border:1px solid #eceeee;color:#cacccd}.CalendarDay__blocked_minimum_nights:active,.CalendarDay__blocked_minimum_nights:hover{background:#fff;color:#cacccd}.CalendarDay__highlighted_calendar{background:#ffe8bc;color:#484848}.CalendarDay__highlighted_calendar:active,.CalendarDay__highlighted_calendar:hover{background:#ffce71;color:#484848}.CalendarDay__selected_span{background:#66e2da;border:1px solid #33dacd;color:#fff}.CalendarDay__selected_span:active,.CalendarDay__selected_span:hover{background:#33dacd;border:1px solid #33dacd;color:#fff}.CalendarDay__last_in_range{border-right:#00a699}.CalendarDay__selected,.CalendarDay__selected:active,.CalendarDay__selected:hover{background:#00a699;border:1px solid #00a699;color:#fff}.CalendarDay__hovered_span,.CalendarDay__hovered_span:hover{background:#b2f1ec;border:1px solid #80e8e0;color:#007a87}.CalendarDay__hovered_span:active{background:#80e8e0;border:1px solid #80e8e0;color:#007a87}.CalendarDay__blocked_calendar,.CalendarDay__blocked_calendar:active,.CalendarDay__blocked_calendar:hover{background:#cacccd;border:1px solid #cacccd;color:#82888a}.CalendarDay__blocked_out_of_range,.CalendarDay__blocked_out_of_range:active,.CalendarDay__blocked_out_of_range:hover{background:#fff;border:1px solid #e4e7e7;color:#cacccd}.CalendarMonth{background:#fff;text-align:center;vertical-align:top;-webkit-user-select:none;user-select:none}.CalendarMonth_table{border-collapse:collapse;border-spacing:0}.CalendarMonth_verticalSpacing{border-collapse:separate}.CalendarMonth_caption{color:#484848;font-size:18px;text-align:center;padding-top:22px;padding-bottom:37px;caption-side:top}.CalendarMonth_caption__verticalScrollable{padding-top:12px;padding-bottom:7px}.CalendarMonthGrid{background:#fff;text-align:left;z-index:0}.CalendarMonthGrid__animating{z-index:1}.CalendarMonthGrid__horizontal{position:absolute;left:0}.CalendarMonthGrid__vertical{margin:0 auto}.CalendarMonthGrid__vertical_scrollable{margin:0 auto;overflow-y:scroll}.CalendarMonthGrid_month__horizontal{display:inline-block;vertical-align:top;min-height:100%}.CalendarMonthGrid_month__hideForAnimation{position:absolute;z-index:-1;opacity:0;pointer-events:none}.CalendarMonthGrid_month__hidden{visibility:hidden}.DayPickerNavigation{position:relative;z-index:2}.DayPickerNavigation__horizontal{height:0}.DayPickerNavigation__verticalDefault{position:absolute;width:100%;height:52px;bottom:0;left:0}.DayPickerNavigation__verticalScrollableDefault{position:relative}.DayPickerNavigation_button{cursor:pointer;-webkit-user-select:none;user-select:none;border:0;padding:0;margin:0}.DayPickerNavigation_button__default{border:1px solid #e4e7e7;background-color:#fff;color:#757575}.DayPickerNavigation_button__default:focus,.DayPickerNavigation_button__default:hover{border:1px solid #c4c4c4}.DayPickerNavigation_button__default:active{background:#f2f2f2}.DayPickerNavigation_button__horizontalDefault{position:absolute;top:18px;line-height:.78;border-radius:3px;padding:6px 9px}.DayPickerNavigation_leftButton__horizontalDefault{left:22px}.DayPickerNavigation_rightButton__horizontalDefault{right:22px}.DayPickerNavigation_button__verticalDefault{padding:5px;background:#fff;box-shadow:0 0 5px 2px rgba(0,0,0,.1);position:relative;display:inline-block;height:100%;width:50%}.DayPickerNavigation_nextButton__verticalDefault{border-left:0}.DayPickerNavigation_nextButton__verticalScrollableDefault{width:100%}.DayPickerNavigation_svg__horizontal{height:19px;width:19px;fill:#82888a;display:block}.DayPickerNavigation_svg__vertical{height:42px;width:42px;fill:#484848;display:block}.DayPicker{position:relative;text-align:left}.DayPicker,.DayPicker__horizontal{background:#fff}.DayPicker__verticalScrollable{height:100%}.DayPicker__hidden{visibility:hidden}.DayPicker__withBorder{box-shadow:0 2px 6px rgba(0,0,0,.05),0 0 0 1px rgba(0,0,0,.07);border-radius:3px}.DayPicker_portal__horizontal{box-shadow:none;position:absolute;left:50%;top:50%}.DayPicker_portal__vertical{position:static}.DayPicker_focusRegion{outline:0}.DayPicker_calendarInfo__horizontal,.DayPicker_wrapper__horizontal{display:inline-block;vertical-align:top}.DayPicker_weekHeaders{position:relative}.DayPicker_weekHeaders__horizontal{margin-left:13px}.DayPicker_weekHeader{color:#757575;position:absolute;top:62px;z-index:2;text-align:left;padding:0!important}.DayPicker_weekHeader__vertical{left:50%}.DayPicker_weekHeader__verticalScrollable{top:0;display:table-row;border-bottom:1px solid #dbdbdb;background:#fff;margin-left:0;left:0;width:100%;text-align:center}.DayPicker_weekHeader_ul{list-style:none;margin:1px 0;padding-left:0;padding-right:0;font-size:14px}.DayPicker_weekHeader_li{display:inline-block;text-align:center;margin:0 1px}.DayPicker_transitionContainer{position:relative;overflow:hidden;border-radius:3px}.DayPicker_transitionContainer__horizontal{transition:height .2s ease-in-out}.DayPicker_transitionContainer__vertical{width:100%}.DayPicker_transitionContainer__verticalScrollable{padding-top:20px;height:100%;position:absolute;top:0;bottom:0;right:0;left:0;overflow-y:scroll}.DateInput{margin:0;padding:0;background:#fff;position:relative;display:inline-block;width:130px;vertical-align:middle}.DateInput__small{width:97px}.DateInput__block{width:100%}.DateInput__disabled{background:#f2f2f2;color:#dbdbdb}.DateInput_input{font-weight:200;font-size:19px;line-height:24px;color:#484848;background-color:#fff;width:100%;padding:11px 11px 9px;border:0;border-bottom:2px solid transparent;border-radius:0}.DateInput_input__small{font-size:15px;line-height:18px;letter-spacing:.2px;padding:7px 7px 5px}.DateInput_input__regular{font-weight:auto}.DateInput_input__readOnly{-webkit-user-select:none;user-select:none}.DateInput_input__focused{outline:0;background:#fff;border:0;border-bottom:2px solid #008489}.DateInput_input__disabled{background:#f2f2f2;font-style:italic}.DateInput_screenReaderMessage{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.DateInput_fang{position:absolute;width:20px;height:10px;left:22px;z-index:2}.DateInput_fangShape{fill:#fff}.DateInput_fangStroke{stroke:#dbdbdb;fill:transparent}.DateRangePickerInput{background-color:#fff;display:inline-block}.DateRangePickerInput__disabled{background:#f2f2f2}.DateRangePickerInput__withBorder{border-radius:2px;border:1px solid #dbdbdb}.DateRangePickerInput__rtl{direction:rtl}.DateRangePickerInput__block{display:block}.DateRangePickerInput__showClearDates{padding-right:30px}.DateRangePickerInput_arrow{display:inline-block;vertical-align:middle;color:#484848}.DateRangePickerInput_arrow_svg{vertical-align:middle;fill:#484848;height:24px;width:24px}.DateRangePickerInput_clearDates{background:0 0;border:0;color:inherit;font:inherit;line-height:normal;overflow:visible;cursor:pointer;padding:10px;margin:0 10px 0 5px;position:absolute;right:0;top:50%;transform:translateY(-50%)}.DateRangePickerInput_clearDates__small{padding:6px}.DateRangePickerInput_clearDates_default:focus,.DateRangePickerInput_clearDates_default:hover{background:#dbdbdb;border-radius:50%}.DateRangePickerInput_clearDates__hide{visibility:hidden}.DateRangePickerInput_clearDates_svg{fill:#82888a;height:12px;width:15px;vertical-align:middle}.DateRangePickerInput_clearDates_svg__small{height:9px}.DateRangePickerInput_calendarIcon{background:0 0;border:0;color:inherit;font:inherit;line-height:normal;overflow:visible;cursor:pointer;display:inline-block;vertical-align:middle;padding:10px;margin:0 5px 0 10px}.DateRangePickerInput_calendarIcon_svg{fill:#82888a;height:15px;width:14px;vertical-align:middle}.DateRangePicker{position:relative;display:inline-block}.DateRangePicker__block{display:block}.DateRangePicker_picker{z-index:1;background-color:#fff;position:absolute}.DateRangePicker_picker__rtl{direction:rtl}.DateRangePicker_picker__directionLeft{left:0}.DateRangePicker_picker__directionRight{right:0}.DateRangePicker_picker__portal{background-color:rgba(0,0,0,.3);position:fixed;top:0;left:0;height:100%;width:100%}.DateRangePicker_picker__fullScreenPortal{background-color:#fff}.DateRangePicker_closeButton{background:0 0;border:0;color:inherit;font:inherit;line-height:normal;overflow:visible;cursor:pointer;position:absolute;top:0;right:0;padding:15px;z-index:2}.DateRangePicker_closeButton:focus,.DateRangePicker_closeButton:hover{color:#b0b3b4;text-decoration:none}.DateRangePicker_closeButton_svg{height:15px;width:15px;fill:#cacccd}.components-datetime{padding:16px}.components-panel__body .components-datetime{padding:0}.components-datetime .components-datetime__calendar-help{padding:16px;min-width:260px}.components-datetime .components-datetime__calendar-help h4{margin:0}.components-datetime .components-datetime__buttons{display:flex;justify-content:space-between}.components-datetime .components-datetime__date-help-toggle{display:block;margin-left:auto}.components-datetime fieldset{border:0;padding:0;margin:0}.components-datetime input,.components-datetime select{box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;border:1px solid #757575}@media (prefers-reduced-motion:reduce){.components-datetime input,.components-datetime select{transition-duration:0s;transition-delay:0s}}.components-datetime .components-button,.components-datetime input[type=number],.components-datetime select{height:30px;margin-top:0;margin-bottom:0}.components-datetime .components-button:focus{z-index:1}.components-datetime__date{min-height:236px;border-top:1px solid #ddd}.components-datetime__date .DayPickerNavigation_leftButton__horizontalDefault{ /*!rtl:begin:ignore*/left:13px /*!rtl:end:ignore*/}.components-datetime__date .CalendarMonth_caption{font-size:13px}.components-datetime__date .CalendarMonth_table{border-collapse:separate;border-spacing:2px}.components-datetime__date .CalendarDay{font-size:13px;border:none;border-radius:50%;text-align:center}.components-datetime__date .CalendarDay:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 0 0 3px #fff;outline:2px solid transparent}.components-datetime__date .CalendarDay__selected{background:var(--wp-admin-theme-color);border:2px solid transparent}.components-datetime__date .CalendarDay__selected:hover{background:var(--wp-admin-theme-color-darker-20)}.components-datetime__date .CalendarDay__selected:focus{box-shadow:inset 0 0 0 1px #fff}.components-datetime__date .DayPickerNavigation_button__horizontalDefault{padding:2px 8px;top:20px}.components-datetime__date .DayPickerNavigation_button__horizontalDefault:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.components-datetime__date .DayPicker_weekHeader{top:50px}.components-datetime__date .DayPicker_weekHeader .DayPicker_weekHeader_ul{margin:1px;padding-left:0;padding-right:0}.components-datetime__date.is-description-visible .DayPicker{visibility:hidden}.components-datetime__date .CalendarDay .components-datetime__date__day{height:100%;display:flex;justify-content:center;align-content:center;flex-direction:column;position:relative}.components-datetime__date .CalendarDay .components-datetime__date__day.has-events:before{content:" ";width:4px;height:4px;border-radius:2px;position:absolute;left:50%;margin-left:-2px;bottom:0;background-color:#fff}.components-datetime__date .CalendarDay:not(.CalendarDay__selected) .components-datetime__date__day.has-events:before{background:var(--wp-admin-theme-color)}.components-datetime__time{padding-bottom:16px}.components-datetime__time fieldset{position:relative;margin-bottom:.5em}.components-datetime__time fieldset+fieldset{margin-bottom:0}.components-datetime__time .components-datetime__time-field-am-pm fieldset{margin-top:0}.components-datetime__time .components-datetime__time-wrapper{display:flex}.components-datetime__time .components-datetime__time-wrapper .components-datetime__time-separator{display:inline-block;padding:0 3px 0 0}.components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field-time{direction:ltr}.components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field select{margin-right:4px}.components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field select:focus{position:relative;z-index:1}.components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field input[type=number]{padding:2px;margin-right:4px;text-align:center;-moz-appearance:textfield}.components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field input[type=number]:focus{position:relative;z-index:1}.components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.components-datetime__time.is-12-hour .components-datetime__time-field-day input{margin:-4px 0 0!important;border-radius:2px 0 0 2px!important}.components-datetime__time.is-12-hour .components-datetime__time-field-year input{border-radius:0 2px 2px 0!important}.components-datetime__timezone{line-height:30px;margin-left:4px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.components-datetime__time-legend{font-weight:600;margin-top:.5em}.components-datetime__time-legend.invisible{position:absolute;top:-999em;left:-999em}.components-datetime__time-field-day-input,.components-datetime__time-field-hours-input,.components-datetime__time-field-minutes-input{width:35px}.components-datetime__time-field-year-input{width:55px}.components-datetime__time-field-month-select{max-width:145px}.components-popover .components-datetime__date{padding-left:4px}.block-editor-dimension-control .components-base-control__field{display:flex;align-items:center}.block-editor-dimension-control .components-base-control__label{display:flex;align-items:center;margin-right:1em;margin-bottom:0}.block-editor-dimension-control .components-base-control__label .dashicon{margin-right:.5em}.block-editor-dimension-control.is-manual .components-base-control__label{width:10em}body.is-dragging-components-draggable{cursor:move;cursor:grabbing!important}.components-draggable__invisible-drag-image{position:fixed;left:-1000px;height:50px;width:50px}.components-draggable__clone{position:fixed;padding:0;background:transparent;pointer-events:none;z-index:1000000000}.components-drop-zone{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;visibility:hidden;opacity:0;border-radius:2px}.components-drop-zone.is-active{opacity:1;visibility:visible}.components-drop-zone__content{position:absolute;top:0;bottom:0;left:0;right:0;height:100%;width:100%;display:flex;background-color:var(--wp-admin-theme-color);align-items:center;justify-content:center;z-index:50;text-align:center;color:#fff}.components-drop-zone__content-icon,.components-drop-zone__content-text{display:block}.components-drop-zone__content-icon{margin:0 auto;line-height:0;fill:currentColor;pointer-events:none}.components-drop-zone__content-text{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px}.components-dropdown{display:inline-block}.components-dropdown__content .components-popover__content>div{padding:8px}.components-dropdown__content [role=menuitem]{white-space:nowrap}.components-dropdown-menu__menu{width:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;line-height:1.4}.components-dropdown-menu__menu .components-dropdown-menu__menu-item,.components-dropdown-menu__menu .components-menu-item{width:100%;padding:6px;outline:none;cursor:pointer;white-space:nowrap}.components-dropdown-menu__menu .components-dropdown-menu__menu-item.has-separator,.components-dropdown-menu__menu .components-menu-item.has-separator{margin-top:6px;position:relative;overflow:visible}.components-dropdown-menu__menu .components-dropdown-menu__menu-item.has-separator:before,.components-dropdown-menu__menu .components-menu-item.has-separator:before{display:block;content:"";box-sizing:content-box;background-color:#ddd;position:absolute;top:-3px;left:0;right:0;height:1px}.components-dropdown-menu__menu .components-dropdown-menu__menu-item.is-active svg,.components-dropdown-menu__menu .components-menu-item.is-active svg{color:#fff;background:#1e1e1e;box-shadow:0 0 0 1px #1e1e1e;border-radius:1px}.components-dropdown-menu__menu .components-dropdown-menu__menu-item>svg,.components-dropdown-menu__menu .components-menu-item>svg{border-radius:2px;width:24px;height:24px}.components-dropdown-menu__menu .components-dropdown-menu__menu-item.is-icon-only,.components-dropdown-menu__menu .components-menu-item.is-icon-only{width:auto}.components-dropdown-menu__menu .components-menu-item__button,.components-dropdown-menu__menu .components-menu-item__button.components-button{min-height:36px;height:auto;text-align:left;padding-left:8px;padding-right:8px}.components-dropdown-menu__menu .components-menu-group{padding:8px;margin:0 -8px}.components-dropdown-menu__menu .components-menu-group:first-child{margin-top:-8px}.components-dropdown-menu__menu .components-menu-group:last-child{margin-bottom:-8px}.components-dropdown-menu__menu .components-menu-group+.components-menu-group{margin-top:0;border-top:1px solid #ccc;padding:8px}.is-alternate .components-dropdown-menu__menu .components-menu-group+.components-menu-group{border-color:#1e1e1e}.components-font-size-picker__header__hint{margin-left:4px;color:#757575}.components-font-size-picker__header .components-button.is-small.has-icon:not(.has-text){min-width:24px;padding:0}.components-font-size-picker__controls{max-width:248px;align-items:center;margin-top:8px;margin-bottom:24px}.components-font-size-picker__controls .components-unit-control-wrapper .components-input-control__label{font-weight:300;padding-bottom:0!important;margin-bottom:8px!important}.components-font-size-picker__controls .components-custom-select-control__button{width:100%}.components-font-size-picker__controls .components-font-size-picker__number{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;padding:6px 8px;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;border:1px solid #757575;font-size:16px;line-height:normal;display:inline-block;font-weight:500;height:30px;margin:8px 8px 0 0;width:54px}@media (prefers-reduced-motion:reduce){.components-font-size-picker__controls .components-font-size-picker__number{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.components-font-size-picker__controls .components-font-size-picker__number{font-size:13px;line-height:normal}}.components-font-size-picker__controls .components-font-size-picker__number:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.components-font-size-picker__controls .components-font-size-picker__number::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.components-font-size-picker__controls .components-font-size-picker__number::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.components-font-size-picker__controls .components-font-size-picker__number:-ms-input-placeholder{color:rgba(30,30,30,.62)}.components-font-size-picker__controls .components-font-size-picker__number[value=""]+.components-button{cursor:default;opacity:.3;pointer-events:none}.components-font-size-picker__controls .components-font-size-picker__number-container{display:flex;flex-direction:column}.components-font-size-picker__controls .components-color-palette__clear{height:30px}.components-font-size-picker__custom-input .components-range-control__slider+.dashicon{width:30px;height:30px}.components-font-size-picker{border:0;padding:0;margin:0}.components-form-toggle{position:relative;display:inline-block}.components-form-toggle .components-form-toggle__track{content:"";display:inline-block;box-sizing:border-box;vertical-align:top;background-color:#fff;border:1px solid #1e1e1e;width:36px;height:18px;border-radius:9px;transition:background .2s ease}@media (prefers-reduced-motion:reduce){.components-form-toggle .components-form-toggle__track{transition-duration:0s;transition-delay:0s}}.components-form-toggle .components-form-toggle__thumb{display:block;position:absolute;box-sizing:border-box;top:3px;left:3px;width:12px;height:12px;border-radius:50%;transition:transform .1s ease;background-color:#1e1e1e;border:5px solid #1e1e1e}@media (prefers-reduced-motion:reduce){.components-form-toggle .components-form-toggle__thumb{transition-duration:0s;transition-delay:0s}}.components-form-toggle.is-checked .components-form-toggle__track{background-color:var(--wp-admin-theme-color);border:9px solid transparent}.components-form-toggle .components-form-toggle__input:focus+.components-form-toggle__track{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--wp-admin-theme-color);outline:2px solid transparent;outline-offset:2px}.components-form-toggle.is-checked .components-form-toggle__thumb{background-color:#fff;border-width:0;transform:translateX(18px)}.components-disabled .components-form-toggle,.components-form-toggle.is-disabled{opacity:.3}.components-form-toggle input.components-form-toggle__input[type=checkbox]{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;margin:0;padding:0;z-index:1;border:none}.components-form-toggle input.components-form-toggle__input[type=checkbox]:checked{background:none}.components-form-toggle input.components-form-toggle__input[type=checkbox]:before{content:""}.components-form-token-field__input-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;border:1px solid #757575;font-size:16px;line-height:normal;display:flex;flex-wrap:wrap;align-items:center;width:100%;margin:0 0 8px;padding:2px 4px;cursor:text}@media (prefers-reduced-motion:reduce){.components-form-token-field__input-container{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.components-form-token-field__input-container{font-size:13px;line-height:normal}}.components-form-token-field__input-container:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.components-form-token-field__input-container::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.components-form-token-field__input-container::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.components-form-token-field__input-container:-ms-input-placeholder{color:rgba(30,30,30,.62)}.components-form-token-field__input-container.is-disabled{background:#ddd;border-color:#ddd}.components-form-token-field__input-container.is-active{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.components-form-token-field__input-container input[type=text].components-form-token-field__input{display:inline-block;flex:1;font-size:16px;width:100%;max-width:100%;margin-left:4px;padding:0;min-height:24px;min-width:50px;background:inherit;border:0;color:#1e1e1e;box-shadow:none}@media (min-width:600px){.components-form-token-field__input-container input[type=text].components-form-token-field__input{font-size:13px}}.components-form-token-field.is-active .components-form-token-field__input-container input[type=text].components-form-token-field__input,.components-form-token-field__input-container input[type=text].components-form-token-field__input:focus{outline:none;box-shadow:none}.components-form-token-field__input-container .components-form-token-field__token+input[type=text].components-form-token-field__input{width:auto}.components-form-token-field__label{display:inline-block;margin-bottom:4px}.components-form-token-field__help{font-size:12px;font-style:normal;color:#757575}.components-form-token-field__token{font-size:13px;display:flex;margin:2px 4px 2px 0;color:#1e1e1e;max-width:100%}.components-form-token-field__token.is-success .components-form-token-field__remove-token,.components-form-token-field__token.is-success .components-form-token-field__token-text{background:#4ab866}.components-form-token-field__token.is-error .components-form-token-field__remove-token,.components-form-token-field__token.is-error .components-form-token-field__token-text{background:#cc1818}.components-form-token-field__token.is-validating .components-form-token-field__remove-token,.components-form-token-field__token.is-validating .components-form-token-field__token-text{color:#757575}.components-form-token-field__token.is-borderless{position:relative;padding:0 16px 0 0}.components-form-token-field__token.is-borderless .components-form-token-field__token-text{background:transparent;color:var(--wp-admin-theme-color)}.components-form-token-field__token.is-borderless .components-form-token-field__remove-token{background:transparent;color:#757575;position:absolute;top:1px;right:0}.components-form-token-field__token.is-borderless.is-success .components-form-token-field__token-text{color:#4ab866}.components-form-token-field__token.is-borderless.is-error .components-form-token-field__token-text{color:#cc1818;border-radius:4px 0 0 4px;padding:0 4px 0 6px}.components-form-token-field__token.is-borderless.is-validating .components-form-token-field__token-text{color:#1e1e1e}.components-form-token-field__token.is-disabled .components-form-token-field__remove-token{cursor:default}.components-form-token-field__remove-token.components-button,.components-form-token-field__token-text{display:inline-block;line-height:24px;height:auto;background:#ddd;min-width:unset;transition:all .2s cubic-bezier(.4,1,.4,1)}@media (prefers-reduced-motion:reduce){.components-form-token-field__remove-token.components-button,.components-form-token-field__token-text{transition-duration:0s;transition-delay:0s;animation-duration:1ms;animation-delay:0s}}.components-form-token-field__token-text{border-radius:2px 0 0 2px;padding:0 0 0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.components-form-token-field__remove-token.components-button{cursor:pointer;border-radius:0 2px 2px 0;padding:0 2px;color:#1e1e1e;line-height:10px;overflow:initial}.components-form-token-field__remove-token.components-button:hover{color:#1e1e1e}.components-form-token-field__suggestions-list{flex:1 0 100%;min-width:100%;max-height:9em;overflow-y:auto;transition:all .15s ease-in-out;list-style:none;border-top:1px solid #757575;margin:4px -4px -4px;padding:0}@media (prefers-reduced-motion:reduce){.components-form-token-field__suggestions-list{transition-duration:0s;transition-delay:0s}}.components-form-token-field__suggestion{color:#757575;display:block;font-size:13px;padding:4px 8px;margin:0;cursor:pointer}.components-form-token-field__suggestion.is-selected{background:var(--wp-admin-theme-color);color:#fff}.components-form-token-field__suggestion-match{text-decoration:underline}@media (min-width:600px){.components-guide{width:600px}}.components-guide .components-modal__content{padding:0;margin-top:0;border-radius:2px}.components-guide .components-modal__content:before{content:none}.components-guide .components-modal__header{border-bottom:none;padding:0;position:sticky}.components-guide .components-modal__header .components-button{align-self:flex-start;margin:8px 8px 0 0;position:static}.components-guide .components-modal__header .components-button:hover svg{fill:#fff}.components-guide__container{display:flex;flex-direction:column;justify-content:space-between;margin-top:-60px;min-height:100%}.components-guide__page{display:flex;flex-direction:column;justify-content:center;position:relative}@media (min-width:600px){.components-guide__page{min-height:300px}}.components-guide__footer{align-content:center;display:flex;height:30px;justify-content:center;margin:0 0 24px;padding:0 32px;position:relative;width:100%}.components-guide__page-control{margin:0;text-align:center}.components-guide__page-control li{display:inline-block;margin:0}.components-guide__page-control .components-button{height:30px;min-width:20px;margin:-6px 0}.components-modal__frame.components-guide{border:none;min-width:312px;height:80vh;max-height:575px}@media (max-width:600px){.components-modal__frame.components-guide{margin:auto;max-width:calc(100vw - 32px)}}.components-button.components-guide__back-button,.components-button.components-guide__finish-button,.components-button.components-guide__forward-button{height:30px;position:absolute}.components-button.components-guide__back-button,.components-button.components-guide__forward-button{font-size:13px;padding:4px 2px}.components-button.components-guide__back-button.has-text svg,.components-button.components-guide__forward-button.has-text svg{margin:0}.components-button.components-guide__back-button:hover,.components-button.components-guide__forward-button:hover{text-decoration:underline}.components-button.components-guide__back-button{left:32px}.components-button.components-guide__forward-button{right:32px;color:#1386bf;font-weight:700}.components-button.components-guide__finish-button{right:32px}.components-button.components-guide__inline-finish-button{display:none}[role=region]{position:relative}.is-focusing-regions [role=region]:focus:after{content:"";position:absolute;top:0;bottom:0;left:0;right:0;pointer-events:none;outline:4px solid transparent;box-shadow:inset 0 0 0 4px var(--wp-admin-theme-color)}@supports (outline-offset:1px){.is-focusing-regions [role=region]:focus:after{content:none}.is-focusing-regions [role=region]:focus{outline-style:solid;outline-color:var(--wp-admin-theme-color);outline-width:4px;outline-offset:-4px}}.components-menu-group+.components-menu-group{margin-top:8px;padding-top:8px;border-top:1px solid #1e1e1e}.components-menu-group+.components-menu-group.has-hidden-separator{border-top:none;margin-top:0;padding-top:0}.components-menu-group__label{padding:0 8px;margin-top:4px;margin-bottom:12px;color:#757575;text-transform:uppercase;font-size:11px;font-weight:500;white-space:nowrap}.components-menu-item__button,.components-menu-item__button.components-button{width:100%}.components-menu-item__button.components-button[role=menuitemcheckbox] .components-menu-item__item:only-child,.components-menu-item__button.components-button[role=menuitemradio] .components-menu-item__item:only-child,.components-menu-item__button[role=menuitemcheckbox] .components-menu-item__item:only-child,.components-menu-item__button[role=menuitemradio] .components-menu-item__item:only-child{padding-right:48px}.components-menu-item__button.components-button .components-menu-items__item-icon,.components-menu-item__button .components-menu-items__item-icon{display:inline-block;flex:0 0 auto}.components-menu-item__button.components-button .components-menu-items__item-icon.has-icon-right,.components-menu-item__button .components-menu-items__item-icon.has-icon-right{margin-right:-2px;margin-left:24px}.components-menu-item__button.components-button .components-menu-item__shortcut+.components-menu-items__item-icon.has-icon-right,.components-menu-item__button .components-menu-item__shortcut+.components-menu-items__item-icon.has-icon-right{margin-left:8px}.components-menu-item__button .block-editor-block-icon,.components-menu-item__button.components-button .block-editor-block-icon{margin-left:-2px;margin-right:8px}.components-menu-item__button.components-button.is-primary,.components-menu-item__button.is-primary{justify-content:center}.components-menu-item__button.components-button.is-primary .components-menu-item__item,.components-menu-item__button.is-primary .components-menu-item__item{margin-right:0}.components-menu-item__info-wrapper{display:flex;flex-direction:column;margin-right:auto}.components-menu-item__info{margin-top:4px;font-size:12px;color:#757575;white-space:normal}.components-menu-item__item{white-space:nowrap;min-width:160px;margin-right:auto;display:inline-flex;align-items:center}.components-menu-item__shortcut{align-self:center;margin-right:0;margin-left:auto;padding-left:24px;color:currentColor;display:none}@media (min-width:480px){.components-menu-item__shortcut{display:inline}}.components-menu-items-choice.components-button svg,.components-menu-items-choice svg{margin-right:12px}.components-menu-items-choice.components-button.has-icon,.components-menu-items-choice.has-icon{padding-left:12px}.components-modal__screen-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:rgba(0,0,0,.35);z-index:100000;display:flex;animation:edit-post__fade-in-animation .2s ease-out 0s;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.components-modal__screen-overlay{animation-duration:1ms;animation-delay:0s}}.components-modal__frame{margin:0;width:100%;background:#fff;box-shadow:0 10px 10px rgba(0,0,0,.25);border-radius:2px;overflow:hidden;display:flex}@media (min-width:600px){.components-modal__frame{margin:auto;width:auto;min-width:360px;max-width:calc(100% - 32px);max-height:calc(100% - 120px);animation:components-modal__appear-animation .1s ease-out;animation-fill-mode:forwards}}@media (min-width:600px) and (prefers-reduced-motion:reduce){.components-modal__frame{animation-duration:1ms;animation-delay:0s}}@media (min-width:600px){.components-modal__frame.is-full-screen{width:90vw;min-height:90vh}}@media (min-width:960px){.components-modal__frame{max-height:70%}}@keyframes components-modal__appear-animation{0%{transform:translateY(32px)}to{transform:translateY(0)}}.components-modal__header{box-sizing:border-box;border-bottom:1px solid #ddd;padding:0 32px;display:flex;flex-direction:row;justify-content:space-between;align-items:center;height:60px;width:100%;z-index:10;position:absolute;top:0;left:0}.components-modal__header .components-modal__header-heading{font-size:1rem;font-weight:600}.components-modal__header h1{line-height:1;margin:0}.components-modal__header .components-button{position:relative;left:8px}.components-modal__header-heading-container{align-items:center;flex-grow:1;display:flex;flex-direction:row;justify-content:left}.components-modal__header-icon-container{display:inline-block}.components-modal__header-icon-container svg{max-width:36px;max-height:36px;padding:8px}.components-modal__content{flex:1;margin-top:60px;padding:0 32px 24px;overflow:auto}.components-modal__content:before{content:"";display:block;margin-bottom:24px}.components-notice{display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;background-color:#fff;border-left:4px solid var(--wp-admin-theme-color);margin:5px 15px 2px;padding:8px 12px;align-items:center}.components-notice.is-dismissible{padding-right:36px;position:relative}.components-notice.is-success{border-left-color:#4ab866;background-color:#eff9f1}.components-notice.is-warning{border-left-color:#f0b849;background-color:#fef8ee}.components-notice.is-error{border-left-color:#cc1818;background-color:#f4a2a2}.components-notice__content{flex-grow:1;margin:4px 25px 4px 0}.components-notice__actions{display:flex;flex-wrap:wrap}.components-notice__action.components-button{margin-right:8px}.components-notice__action.components-button,.components-notice__action.components-button.is-link{margin-left:12px}.components-notice__action.components-button.is-secondary{vertical-align:initial}.components-notice__dismiss{color:#757575;align-self:flex-start;flex-shrink:0}.components-notice__dismiss:not(:disabled):not([aria-disabled=true]):focus,.components-notice__dismiss:not(:disabled):not([aria-disabled=true]):not(.is-secondary):active,.components-notice__dismiss:not(:disabled):not([aria-disabled=true]):not(.is-secondary):hover{color:#1e1e1e;background-color:transparent}.components-notice__dismiss:not(:disabled):not([aria-disabled=true]):not(.is-secondary):hover{box-shadow:none}.components-notice-list{max-width:100vw;box-sizing:border-box}.components-notice-list .components-notice__content{margin-top:12px;margin-bottom:12px;line-height:2}.components-notice-list .components-notice__action.components-button{display:block;margin-left:0;margin-top:8px}.components-panel{background:#fff;border:1px solid #e0e0e0}.components-panel>.components-panel__body:first-child,.components-panel>.components-panel__header:first-child{margin-top:-1px}.components-panel>.components-panel__body:last-child,.components-panel>.components-panel__header:last-child{border-bottom-width:0}.components-panel+.components-panel{margin-top:-1px}.components-panel__body{border-top:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0}.components-panel__body h3{margin:0 0 .5em}.components-panel__body.is-opened{padding:16px}.components-panel__header{display:flex;justify-content:space-between;align-items:center;padding:0 16px;height:48px;border-bottom:1px solid #ddd}.components-panel__header h2{margin:0;font-size:inherit;color:inherit}.components-panel__body+.components-panel__body,.components-panel__body+.components-panel__header,.components-panel__header+.components-panel__body,.components-panel__header+.components-panel__header{margin-top:-1px}.components-panel__body>.components-panel__body-title{display:block;padding:0;font-size:inherit;margin-top:0;margin-bottom:0;transition:background .1s ease-in-out}@media (prefers-reduced-motion:reduce){.components-panel__body>.components-panel__body-title{transition-duration:0s;transition-delay:0s}}.components-panel__body.is-opened>.components-panel__body-title{margin:-16px -16px 5px}.components-panel__body>.components-panel__body-title:hover{background:#f0f0f0;border:none}.components-panel__body-toggle.components-button{position:relative;padding:16px 48px 16px 16px;outline:none;width:100%;font-weight:500;text-align:left;color:#1e1e1e;border:none;box-shadow:none;transition:background .1s ease-in-out;height:auto}@media (prefers-reduced-motion:reduce){.components-panel__body-toggle.components-button{transition-duration:0s;transition-delay:0s}}.components-panel__body-toggle.components-button:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);border-radius:0}.components-panel__body-toggle.components-button .components-panel__arrow{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:#1e1e1e;fill:currentColor;transition:color .1s ease-in-out}@media (prefers-reduced-motion:reduce){.components-panel__body-toggle.components-button .components-panel__arrow{transition-duration:0s;transition-delay:0s}}body.rtl .components-panel__body-toggle.components-button .dashicons-arrow-right{transform:scaleX(-1);-ms-filter:fliph;filter:FlipH;margin-top:-10px}.components-panel__icon{color:#757575;margin:-2px 0 -2px 6px}.components-panel__body-toggle-icon{margin-right:-5px}.components-panel__color-title{float:left;height:19px}.components-panel__row{display:flex;justify-content:space-between;align-items:center;margin-top:8px;min-height:36px}.components-panel__row select{min-width:0}.components-panel__row label{margin-right:12px;flex-shrink:0;max-width:75%}.components-panel__row:empty,.components-panel__row:first-of-type{margin-top:0}.components-panel .circle-picker{padding-bottom:20px}.components-placeholder.components-placeholder{box-sizing:border-box;position:relative;padding:1em;min-height:200px;width:100%;text-align:left;margin:0;color:#1e1e1e;-moz-font-smoothing:subpixel-antialiased;-webkit-font-smoothing:subpixel-antialiased;border-radius:2px;background-color:#fff;box-shadow:inset 0 0 0 1px #1e1e1e;outline:1px solid transparent}@supports (position:sticky){.components-placeholder.components-placeholder{display:flex;flex-direction:column;justify-content:center;align-items:flex-start}}.components-placeholder.components-placeholder .components-base-control__label{font-size:13px}.components-placeholder__error,.components-placeholder__fieldset,.components-placeholder__instructions,.components-placeholder__label{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px}.components-placeholder__label{display:flex;font-weight:600;margin-bottom:16px;align-items:center}.components-placeholder__label .block-editor-block-icon,.components-placeholder__label .dashicon,.components-placeholder__label>svg{margin-right:1ch;fill:currentColor}@media (forced-colors:active){.components-placeholder__label .block-editor-block-icon,.components-placeholder__label .dashicon,.components-placeholder__label>svg{fill:CanvasText}}.components-placeholder__label:empty{display:none}.components-placeholder__fieldset,.components-placeholder__fieldset form{display:flex;flex-direction:row;width:100%;flex-wrap:wrap}.components-placeholder__fieldset form p,.components-placeholder__fieldset p{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px}.components-placeholder__fieldset.is-column-layout,.components-placeholder__fieldset.is-column-layout form{flex-direction:column}.components-placeholder__input[type=url]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;padding:6px 8px;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;border:1px solid #757575;font-size:16px;line-height:normal;margin:0 8px 0 0;flex:1 1 auto}@media (prefers-reduced-motion:reduce){.components-placeholder__input[type=url]{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.components-placeholder__input[type=url]{font-size:13px;line-height:normal}}.components-placeholder__input[type=url]:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.components-placeholder__input[type=url]::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.components-placeholder__input[type=url]::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.components-placeholder__input[type=url]:-ms-input-placeholder{color:rgba(30,30,30,.62)}.components-placeholder__instructions{margin-bottom:1em}.components-placeholder__error{margin-top:1em;width:100%}.components-placeholder__preview img{margin:3%;width:50%}.components-placeholder__fieldset .components-button{margin-right:12px;margin-bottom:12px}.components-placeholder__fieldset .components-button:last-child{margin-bottom:0;margin-right:0}.components-placeholder__fieldset .components-button:not(.is-link)~.components-button.is-link{margin-left:10px;margin-right:10px}.components-placeholder__fieldset .components-button:not(.is-link)~.components-button.is-link:last-child{margin-right:0}.components-placeholder.is-large .components-placeholder__label{font-size:18pt;font-weight:400}.components-placeholder.is-medium .components-placeholder__instructions,.components-placeholder.is-small .components-placeholder__instructions{display:none}.components-placeholder.is-medium .components-placeholder__fieldset,.components-placeholder.is-medium .components-placeholder__fieldset form,.components-placeholder.is-small .components-placeholder__fieldset,.components-placeholder.is-small .components-placeholder__fieldset form{flex-direction:column}.components-placeholder.is-medium .components-placeholder__fieldset .components-button,.components-placeholder.is-small .components-placeholder__fieldset .components-button{margin-right:auto}.components-placeholder.is-small .components-button{padding:0 8px 2px} /*!rtl:begin:ignore*/.components-popover{position:fixed;z-index:1000000;top:0;left:0;opacity:0}.components-popover.is-expanded,.components-popover[data-x-axis][data-y-axis]{opacity:1}.components-popover.is-expanded{top:0;left:0;right:0;bottom:0;z-index:1000000!important}.components-popover:not(.is-without-arrow){margin-left:2px}.components-popover:not(.is-without-arrow):before{border:8px solid #ccc}.components-popover:not(.is-without-arrow).is-alternate:before{border-color:#1e1e1e}.components-popover:not(.is-without-arrow):after{border:8px solid #fff}.components-popover:not(.is-without-arrow):after,.components-popover:not(.is-without-arrow):before{content:"";position:absolute;height:0;width:0;line-height:0}.components-popover:not(.is-without-arrow)[data-y-axis=top]{margin-top:-8px}.components-popover:not(.is-without-arrow)[data-y-axis=top]:before{bottom:-8px}.components-popover:not(.is-without-arrow)[data-y-axis=top]:after{bottom:-6px}.components-popover:not(.is-without-arrow)[data-y-axis=top]:after,.components-popover:not(.is-without-arrow)[data-y-axis=top]:before{border-bottom:none;border-left-color:transparent;border-right-color:transparent;border-top-style:solid;margin-left:-10px}.components-popover:not(.is-without-arrow)[data-y-axis=bottom]{margin-top:8px}.components-popover:not(.is-without-arrow)[data-y-axis=bottom]:before{top:-8px}.components-popover:not(.is-without-arrow)[data-y-axis=bottom]:after{top:-6px}.components-popover:not(.is-without-arrow)[data-y-axis=bottom]:after,.components-popover:not(.is-without-arrow)[data-y-axis=bottom]:before{border-bottom-style:solid;border-left-color:transparent;border-right-color:transparent;border-top:none;margin-left:-10px}.components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=left]{margin-left:-8px}.components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=left]:before{right:-8px}.components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=left]:after{right:-6px}.components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=left]:after,.components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=left]:before{border-bottom-color:transparent;border-left-style:solid;border-right:none;border-top-color:transparent}.components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=right]{margin-left:8px}.components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=right]:before{left:-8px}.components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=right]:after{left:-6px}.components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=right]:after,.components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=right]:before{border-bottom-color:transparent;border-left:none;border-right-style:solid;border-top-color:transparent}.components-popover[data-y-axis=top]{bottom:100%}.components-popover[data-y-axis=bottom]{top:100%}.components-popover[data-y-axis=middle]{align-items:center;display:flex}.components-popover.is-from-top{margin-top:12px}.components-popover.is-from-bottom{margin-top:-12px}.components-popover.is-from-left:not(.is-from-top):not(.is-from-bottom){margin-left:12px}.components-popover.is-from-right:not(.is-from-top):not(.is-from-bottom){margin-right:12px}.components-popover__content{height:100%;background:#fff;border:1px solid #ccc;box-shadow:0 2px 6px rgba(0,0,0,.05);border-radius:2px}.is-alternate .components-popover__content{border:1px solid #1e1e1e;box-shadow:none}.components-popover .components-popover__content{position:absolute;height:auto;overflow-y:auto}.components-popover.is-expanded .components-popover__content{position:static;height:calc(100% - 48px);overflow-y:visible;min-width:auto;border:none;border-top:1px solid #1e1e1e}.components-popover[data-y-axis=top] .components-popover__content{bottom:100%}.components-popover[data-x-axis=center] .components-popover__content{left:50%;transform:translateX(-50%)}.components-popover[data-x-axis=right] .components-popover__content{position:absolute;left:100%}.components-popover:not([data-y-axis=middle])[data-x-axis=right] .components-popover__content{margin-left:-25px}.components-popover[data-x-axis=left] .components-popover__content{position:absolute;right:100%}.components-popover:not([data-y-axis=middle])[data-x-axis=left] .components-popover__content{margin-right:-25px}.components-popover__header{align-items:center;background:#fff;display:flex;height:48px;justify-content:space-between;padding:0 8px 0 16px}.components-popover__header-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.components-popover__close.components-button{z-index:5} /*!rtl:end:ignore*/.components-radio-control{display:flex;flex-direction:column}.components-radio-control .components-base-control__help{margin-top:0}.components-radio-control .components-base-control__field{margin-bottom:0}.components-radio-control__option:not(:last-child){margin-bottom:4px}.components-radio-control__input[type=radio]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;padding:6px 8px;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;font-size:16px;line-height:normal;border:1px solid #1e1e1e;transition:none;border-radius:50%;width:24px;height:24px;margin-top:0;margin-right:6px}@media (prefers-reduced-motion:reduce){.components-radio-control__input[type=radio]{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.components-radio-control__input[type=radio]{font-size:13px;line-height:normal}}.components-radio-control__input[type=radio]:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color)}.components-radio-control__input[type=radio]::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.components-radio-control__input[type=radio]::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.components-radio-control__input[type=radio]:-ms-input-placeholder{color:rgba(30,30,30,.62)}@media (min-width:600px){.components-radio-control__input[type=radio]{height:20px;width:20px}}.components-radio-control__input[type=radio]:checked:before{box-sizing:inherit;width:8px;height:8px;transform:translate(7px,7px);margin:0;background-color:#fff;border:4px solid #fff}@media (min-width:600px){.components-radio-control__input[type=radio]:checked:before{transform:translate(5px,5px)}}.components-radio-control__input[type=radio]:focus{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--wp-admin-theme-color);outline:2px solid transparent}.components-radio-control__input[type=radio]:checked{background:var(--wp-admin-theme-color);border-color:var(--wp-admin-theme-color)}.components-resizable-box__handle{display:none;width:23px;height:23px;z-index:2}.components-resizable-box__container.has-show-handle .components-resizable-box__handle{display:block}.components-resizable-box__container>img{width:inherit}.components-resizable-box__handle:after{display:block;content:"";width:15px;height:15px;border-radius:50%;background:#fff;cursor:inherit;position:absolute;top:calc(50% - 8px);right:calc(50% - 8px);box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);outline:2px solid transparent}.components-resizable-box__side-handle:before{display:block;border-radius:2px;content:"";width:3px;height:3px;background:var(--wp-admin-theme-color);cursor:inherit;position:absolute;top:calc(50% - 1px);right:calc(50% - 1px);transition:transform .1s ease-in;opacity:0}@media (prefers-reduced-motion:reduce){.components-resizable-box__side-handle:before{transition-duration:0s;transition-delay:0s}}.components-resizable-box__corner-handle,.components-resizable-box__side-handle{z-index:2}.components-resizable-box__side-handle.components-resizable-box__handle-bottom,.components-resizable-box__side-handle.components-resizable-box__handle-bottom:before,.components-resizable-box__side-handle.components-resizable-box__handle-top,.components-resizable-box__side-handle.components-resizable-box__handle-top:before{width:100%;left:0;border-left:0;border-right:0}.components-resizable-box__side-handle.components-resizable-box__handle-left,.components-resizable-box__side-handle.components-resizable-box__handle-left:before,.components-resizable-box__side-handle.components-resizable-box__handle-right,.components-resizable-box__side-handle.components-resizable-box__handle-right:before{height:100%;top:0;border-top:0;border-bottom:0}.components-resizable-box__side-handle.components-resizable-box__handle-bottom:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-bottom:hover:before,.components-resizable-box__side-handle.components-resizable-box__handle-top:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-top:hover:before{animation:components-resizable-box__top-bottom-animation .1s ease-out 0s;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.components-resizable-box__side-handle.components-resizable-box__handle-bottom:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-bottom:hover:before,.components-resizable-box__side-handle.components-resizable-box__handle-top:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-top:hover:before{animation-duration:1ms;animation-delay:0s}}.components-resizable-box__side-handle.components-resizable-box__handle-left:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-left:hover:before,.components-resizable-box__side-handle.components-resizable-box__handle-right:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-right:hover:before{animation:components-resizable-box__left-right-animation .1s ease-out 0s;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.components-resizable-box__side-handle.components-resizable-box__handle-left:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-left:hover:before,.components-resizable-box__side-handle.components-resizable-box__handle-right:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-right:hover:before{animation-duration:1ms;animation-delay:0s}}@media not all and (-webkit-min-device-pixel-ratio:0),not all and (min-resolution:0.001dpcm){@supports (-webkit-appearance:none){.components-resizable-box__side-handle.components-resizable-box__handle-bottom:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-bottom:hover:before,.components-resizable-box__side-handle.components-resizable-box__handle-left:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-left:hover:before,.components-resizable-box__side-handle.components-resizable-box__handle-right:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-right:hover:before,.components-resizable-box__side-handle.components-resizable-box__handle-top:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-top:hover:before{animation:none}}}@keyframes components-resizable-box__top-bottom-animation{0%{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}@keyframes components-resizable-box__left-right-animation{0%{transform:scaleY(0);opacity:0}to{transform:scaleY(1);opacity:1}} /*!rtl:begin:ignore*/.components-resizable-box__handle-right{right:-11.5px}.components-resizable-box__handle-left{left:-11.5px}.components-resizable-box__handle-top{top:-11.5px}.components-resizable-box__handle-bottom{bottom:-11.5px} /*!rtl:end:ignore*/.components-responsive-wrapper{position:relative;max-width:100%}.components-responsive-wrapper,.components-responsive-wrapper>span{display:block}.components-responsive-wrapper__content{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:auto}.components-sandbox{overflow:hidden}iframe.components-sandbox{width:100%}body.lockscroll,html.lockscroll{overflow:hidden}.components-search-control{position:relative}.components-search-control input[type=search].components-search-control__input{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;line-height:normal;display:block;padding:16px 48px 16px 16px;background:#f0f0f0;border:none;width:100%;height:48px;font-size:16px}@media (prefers-reduced-motion:reduce){.components-search-control input[type=search].components-search-control__input{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.components-search-control input[type=search].components-search-control__input{font-size:13px;line-height:normal}}.components-search-control input[type=search].components-search-control__input:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.components-search-control input[type=search].components-search-control__input::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.components-search-control input[type=search].components-search-control__input::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.components-search-control input[type=search].components-search-control__input:-ms-input-placeholder{color:rgba(30,30,30,.62)}@media (min-width:600px){.components-search-control input[type=search].components-search-control__input{font-size:13px}}.components-search-control input[type=search].components-search-control__input:focus{background:#fff;box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.components-search-control input[type=search].components-search-control__input::placeholder{color:#757575}.components-search-control input[type=search].components-search-control__input::-webkit-search-cancel-button,.components-search-control input[type=search].components-search-control__input::-webkit-search-decoration,.components-search-control input[type=search].components-search-control__input::-webkit-search-results-button,.components-search-control input[type=search].components-search-control__input::-webkit-search-results-decoration{-webkit-appearance:none}.components-search-control__icon{position:absolute;top:0;right:12px;bottom:0;display:flex;align-items:center}.components-search-control__icon>svg{margin:8px 0}.components-search-control__input-wrapper{position:relative}.components-select-control__input{background:#fff;height:36px;line-height:36px;margin:1px;outline:0;width:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)!important}@media (min-width:782px){.components-select-control__input{height:28px;line-height:28px}}@media (max-width:782px){.components-base-control .components-base-control__field .components-select-control__input{font-size:16px}}.components-snackbar{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;background-color:#1e1e1e;border-radius:2px;box-shadow:0 2px 4px rgba(0,0,0,.3);color:#fff;padding:16px 24px;width:100%;max-width:600px;box-sizing:border-box;cursor:pointer;pointer-events:auto}@media (min-width:600px){.components-snackbar{width:-moz-fit-content;width:fit-content}}.components-snackbar:focus{box-shadow:0 0 0 1px #fff,0 0 0 3px var(--wp-admin-theme-color)}.components-snackbar.components-snackbar-explicit-dismiss{cursor:default}.components-snackbar .components-snackbar__content-with-icon{margin-left:24px}.components-snackbar .components-snackbar__icon{position:absolute;top:24px;left:28px}.components-snackbar .components-snackbar__dismiss-button{margin-left:32px;cursor:pointer}.components-snackbar__action.components-button{margin-left:32px;color:#fff;height:auto;flex-shrink:0;line-height:1.4;padding:0}.components-snackbar__action.components-button:not(:disabled):not([aria-disabled=true]):not(.is-secondary){text-decoration:underline;background-color:transparent}.components-snackbar__action.components-button:not(:disabled):not([aria-disabled=true]):not(.is-secondary):focus{color:#fff;box-shadow:none;outline:1px dotted #fff}.components-snackbar__action.components-button:not(:disabled):not([aria-disabled=true]):not(.is-secondary):hover{color:var(--wp-admin-theme-color)}.components-snackbar__content{display:flex;align-items:baseline;justify-content:space-between;line-height:1.4}.components-snackbar-list{position:absolute;z-index:100000;width:100%;box-sizing:border-box;pointer-events:none}.components-snackbar-list__notice-container{position:relative;padding-top:8px}.components-swatch{width:18px;height:18px;border-radius:50%;color:transparent;background:transparent}.components-swatch:after{content:"";display:block;width:100%;height:100%;border:1px solid rgba(0,0,0,.2);border-radius:50%}.components-button.has-icon.has-text .components-swatch{margin-right:8px}.components-tab-panel__tabs{display:flex;align-items:stretch;flex-direction:row}.components-tab-panel__tabs[aria-orientation=vertical]{flex-direction:column}.components-tab-panel__tabs-item{background:transparent;border:none;box-shadow:none;border-radius:0;cursor:pointer;height:48px;padding:3px 16px;margin-left:0;font-weight:500;transition:box-shadow .1s linear;box-sizing:border-box}.components-tab-panel__tabs-item:after{content:attr(data-label);display:block;height:0;overflow:hidden;speak:none;visibility:hidden}.components-tab-panel__tabs-item:focus:not(:disabled){box-shadow:inset 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.components-tab-panel__tabs-item.is-active{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) transparent,inset 0 -4px 0 0 var(--wp-admin-theme-color);position:relative}.components-tab-panel__tabs-item.is-active:before{content:"";position:absolute;top:0;bottom:1px;right:0;left:0;border-bottom:4px solid transparent}.components-tab-panel__tabs-item:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.components-tab-panel__tabs-item.is-active:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 -4px 0 0 var(--wp-admin-theme-color)}.components-text-control__input,.components-text-control__input[type=color],.components-text-control__input[type=date],.components-text-control__input[type=datetime-local],.components-text-control__input[type=datetime],.components-text-control__input[type=email],.components-text-control__input[type=month],.components-text-control__input[type=number],.components-text-control__input[type=password],.components-text-control__input[type=tel],.components-text-control__input[type=text],.components-text-control__input[type=time],.components-text-control__input[type=url],.components-text-control__input[type=week]{width:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;padding:6px 8px;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;border:1px solid #757575;font-size:16px;line-height:normal}@media (prefers-reduced-motion:reduce){.components-text-control__input,.components-text-control__input[type=color],.components-text-control__input[type=date],.components-text-control__input[type=datetime-local],.components-text-control__input[type=datetime],.components-text-control__input[type=email],.components-text-control__input[type=month],.components-text-control__input[type=number],.components-text-control__input[type=password],.components-text-control__input[type=tel],.components-text-control__input[type=text],.components-text-control__input[type=time],.components-text-control__input[type=url],.components-text-control__input[type=week]{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.components-text-control__input,.components-text-control__input[type=color],.components-text-control__input[type=date],.components-text-control__input[type=datetime-local],.components-text-control__input[type=datetime],.components-text-control__input[type=email],.components-text-control__input[type=month],.components-text-control__input[type=number],.components-text-control__input[type=password],.components-text-control__input[type=tel],.components-text-control__input[type=text],.components-text-control__input[type=time],.components-text-control__input[type=url],.components-text-control__input[type=week]{font-size:13px;line-height:normal}}.components-text-control__input:focus,.components-text-control__input[type=color]:focus,.components-text-control__input[type=date]:focus,.components-text-control__input[type=datetime-local]:focus,.components-text-control__input[type=datetime]:focus,.components-text-control__input[type=email]:focus,.components-text-control__input[type=month]:focus,.components-text-control__input[type=number]:focus,.components-text-control__input[type=password]:focus,.components-text-control__input[type=tel]:focus,.components-text-control__input[type=text]:focus,.components-text-control__input[type=time]:focus,.components-text-control__input[type=url]:focus,.components-text-control__input[type=week]:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.components-text-control__input::-webkit-input-placeholder,.components-text-control__input[type=color]::-webkit-input-placeholder,.components-text-control__input[type=date]::-webkit-input-placeholder,.components-text-control__input[type=datetime-local]::-webkit-input-placeholder,.components-text-control__input[type=datetime]::-webkit-input-placeholder,.components-text-control__input[type=email]::-webkit-input-placeholder,.components-text-control__input[type=month]::-webkit-input-placeholder,.components-text-control__input[type=number]::-webkit-input-placeholder,.components-text-control__input[type=password]::-webkit-input-placeholder,.components-text-control__input[type=tel]::-webkit-input-placeholder,.components-text-control__input[type=text]::-webkit-input-placeholder,.components-text-control__input[type=time]::-webkit-input-placeholder,.components-text-control__input[type=url]::-webkit-input-placeholder,.components-text-control__input[type=week]::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.components-text-control__input::-moz-placeholder,.components-text-control__input[type=color]::-moz-placeholder,.components-text-control__input[type=date]::-moz-placeholder,.components-text-control__input[type=datetime-local]::-moz-placeholder,.components-text-control__input[type=datetime]::-moz-placeholder,.components-text-control__input[type=email]::-moz-placeholder,.components-text-control__input[type=month]::-moz-placeholder,.components-text-control__input[type=number]::-moz-placeholder,.components-text-control__input[type=password]::-moz-placeholder,.components-text-control__input[type=tel]::-moz-placeholder,.components-text-control__input[type=text]::-moz-placeholder,.components-text-control__input[type=time]::-moz-placeholder,.components-text-control__input[type=url]::-moz-placeholder,.components-text-control__input[type=week]::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.components-text-control__input:-ms-input-placeholder,.components-text-control__input[type=color]:-ms-input-placeholder,.components-text-control__input[type=date]:-ms-input-placeholder,.components-text-control__input[type=datetime-local]:-ms-input-placeholder,.components-text-control__input[type=datetime]:-ms-input-placeholder,.components-text-control__input[type=email]:-ms-input-placeholder,.components-text-control__input[type=month]:-ms-input-placeholder,.components-text-control__input[type=number]:-ms-input-placeholder,.components-text-control__input[type=password]:-ms-input-placeholder,.components-text-control__input[type=tel]:-ms-input-placeholder,.components-text-control__input[type=text]:-ms-input-placeholder,.components-text-control__input[type=time]:-ms-input-placeholder,.components-text-control__input[type=url]:-ms-input-placeholder,.components-text-control__input[type=week]:-ms-input-placeholder{color:rgba(30,30,30,.62)}.components-tip{display:flex;color:#757575}.components-tip svg{align-self:center;fill:#f0b849;flex-shrink:0;margin-right:16px}.components-tip p{margin:0}.components-toggle-control .components-base-control__field{display:flex;margin-bottom:12px;line-height:normal;align-items:center}.components-toggle-control .components-base-control__field .components-form-toggle{margin-right:12px}.components-toggle-control .components-base-control__field .components-toggle-control__label{display:block}.components-accessible-toolbar{display:inline-flex;border:1px solid #1e1e1e;border-radius:2px;flex-shrink:0}.components-accessible-toolbar>.components-toolbar-group:last-child{border-right:none}.components-accessible-toolbar .components-button,.components-toolbar .components-button{position:relative;height:48px;z-index:1;padding-left:16px;padding-right:16px}.components-accessible-toolbar .components-button:focus:enabled,.components-toolbar .components-button:focus:enabled{box-shadow:none;outline:none}.components-accessible-toolbar .components-button:before,.components-toolbar .components-button:before{content:"";position:absolute;display:block;border-radius:2px;height:32px;left:8px;right:8px;z-index:-1;animation:components-button__appear-animation .1s ease;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.components-accessible-toolbar .components-button:before,.components-toolbar .components-button:before{animation-duration:1ms;animation-delay:0s}}.components-accessible-toolbar .components-button svg,.components-toolbar .components-button svg{position:relative;margin-left:auto;margin-right:auto}.components-accessible-toolbar .components-button.is-pressed,.components-accessible-toolbar .components-button.is-pressed:hover,.components-toolbar .components-button.is-pressed,.components-toolbar .components-button.is-pressed:hover{background:transparent}.components-accessible-toolbar .components-button.is-pressed:before,.components-toolbar .components-button.is-pressed:before{background:#1e1e1e}.components-accessible-toolbar .components-button:focus:before,.components-toolbar .components-button:focus:before{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 0 0 4px #fff;outline:2px solid transparent}.components-accessible-toolbar .components-button.has-icon.has-icon,.components-toolbar .components-button.has-icon.has-icon{padding-left:12px;padding-right:12px;min-width:48px}.components-accessible-toolbar .components-button.components-tab-button,.components-toolbar .components-button.components-tab-button{font-weight:500}.components-accessible-toolbar .components-button.components-tab-button span,.components-toolbar .components-button.components-tab-button span{display:inline-block;padding-left:0;padding-right:0;position:relative}@keyframes components-button__appear-animation{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.components-toolbar__control.components-button{position:relative}.components-toolbar__control.components-button[data-subscript] svg{padding:5px 10px 5px 0}.components-toolbar__control.components-button[data-subscript]:after{content:attr(data-subscript);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;font-weight:600;line-height:12px;position:absolute;right:8px;bottom:10px}.components-toolbar__control.components-button:active:before{display:none}.components-toolbar__control.components-button:not(:disabled).is-pressed[data-subscript]:after{color:#fff}.components-toolbar-group{min-height:48px;border-right:1px solid #1e1e1e;background-color:#fff;display:inline-flex;flex-shrink:0;flex-wrap:wrap;line-height:0}.components-toolbar-group .components-toolbar-group.components-toolbar-group{border-width:0;margin:0}.components-toolbar{min-height:48px;margin:0;border:1px solid #1e1e1e;background-color:#fff;display:inline-flex;flex-shrink:0;flex-wrap:wrap}.components-toolbar .components-toolbar.components-toolbar{border-width:0;margin:0}div.components-toolbar>div{display:block;margin:0}@supports (position:sticky){div.components-toolbar>div{display:flex}}div.components-toolbar>div+div.has-left-divider{margin-left:6px;position:relative;overflow:visible}div.components-toolbar>div+div.has-left-divider:before{display:inline-block;content:"";box-sizing:content-box;background-color:#ddd;position:absolute;top:8px;left:-3px;width:1px;height:20px}.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group.components-dropdown>* .components-button,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group.components-dropdown>.components-button.components-button,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-button:first-child:last-child,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-dropdown:first-child:last-child .components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown.components-dropdown>* .components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown.components-dropdown>.components-button.components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-button:first-child:last-child,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-dropdown:first-child:last-child .components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar.components-dropdown>* .components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar.components-dropdown>.components-button.components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-button:first-child:last-child,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-dropdown:first-child:last-child .components-button,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot.components-dropdown>* .components-button,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot.components-dropdown>.components-button.components-button,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-button:first-child:last-child,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-dropdown:first-child:last-child .components-button,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot.components-dropdown>* .components-button,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot.components-dropdown>.components-button.components-button,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-button:first-child:last-child,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-dropdown:first-child:last-child .components-button{min-width:48px;padding-left:12px;padding-right:12px}.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group.components-dropdown>* .components-button:before,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group.components-dropdown>.components-button.components-button:before,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-button:first-child:last-child:before,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-dropdown:first-child:last-child .components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown.components-dropdown>* .components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown.components-dropdown>.components-button.components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-button:first-child:last-child:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-dropdown:first-child:last-child .components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar.components-dropdown>* .components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar.components-dropdown>.components-button.components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-button:first-child:last-child:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-dropdown:first-child:last-child .components-button:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot.components-dropdown>* .components-button:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot.components-dropdown>.components-button.components-button:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-button:first-child:last-child:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-dropdown:first-child:last-child .components-button:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot.components-dropdown>* .components-button:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot.components-dropdown>.components-button.components-button:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-button:first-child:last-child:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-dropdown:first-child:last-child .components-button:before{left:8px;right:8px}.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-button:first-child,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-dropdown:first-child .components-button,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>div:first-child>.components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-button:first-child,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-dropdown:first-child .components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>div:first-child>.components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-button:first-child,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-dropdown:first-child .components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>div:first-child>.components-button,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-button:first-child,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-dropdown:first-child .components-button,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>div:first-child>.components-button,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-button:first-child,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-dropdown:first-child .components-button,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>div:first-child>.components-button{min-width:42px;padding-left:11px;padding-right:6px}.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-button:first-child:before,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-dropdown:first-child .components-button:before,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>div:first-child>.components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-button:first-child:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-dropdown:first-child .components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>div:first-child>.components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-button:first-child:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-dropdown:first-child .components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>div:first-child>.components-button:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-button:first-child:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-dropdown:first-child .components-button:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>div:first-child>.components-button:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-button:first-child:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-dropdown:first-child .components-button:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>div:first-child>.components-button:before{left:8px;right:2px}.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-button,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-dropdown .components-button,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>div>.components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-dropdown .components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>div>.components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-dropdown .components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>div>.components-button,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-button,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-dropdown .components-button,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>div>.components-button,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-button,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-dropdown .components-button,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>div>.components-button{min-width:36px;padding-left:6px;padding-right:6px}.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-button svg,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-dropdown .components-button svg,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>div>.components-button svg,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-button svg,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-dropdown .components-button svg,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>div>.components-button svg,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-button svg,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-dropdown .components-button svg,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>div>.components-button svg,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-button svg,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-dropdown .components-button svg,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>div>.components-button svg,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-button svg,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-dropdown .components-button svg,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>div>.components-button svg{min-width:24px}.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-button:before,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-dropdown .components-button:before,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>div>.components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-dropdown .components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>div>.components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-dropdown .components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>div>.components-button:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-button:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-dropdown .components-button:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>div>.components-button:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-button:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-dropdown .components-button:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>div>.components-button:before{left:2px;right:2px}.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-button:last-child,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-dropdown:last-child .components-button,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>div:last-child>.components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-button:last-child,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-dropdown:last-child .components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>div:last-child>.components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-button:last-child,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-dropdown:last-child .components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>div:last-child>.components-button,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-button:last-child,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-dropdown:last-child .components-button,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>div:last-child>.components-button,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-button:last-child,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-dropdown:last-child .components-button,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>div:last-child>.components-button{min-width:42px;padding-left:6px;padding-right:11px}.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-button:last-child:before,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-dropdown:last-child .components-button:before,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>div:last-child>.components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-button:last-child:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-dropdown:last-child .components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>div:last-child>.components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-button:last-child:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-dropdown:last-child .components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>div:last-child>.components-button:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-button:last-child:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-dropdown:last-child .components-button:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>div:last-child>.components-button:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-button:last-child:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-dropdown:last-child .components-button:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>div:last-child>.components-button:before{left:2px;right:8px}.components-tooltip.components-popover{z-index:1000002}.components-tooltip.components-popover .components-popover__content{min-width:0}.components-tooltip .components-popover__content{background:#1e1e1e;border-radius:2px;border-width:0;color:#fff;white-space:nowrap;text-align:center;line-height:1.4;font-size:12px;box-shadow:none}.components-tooltip .components-popover__content>div{padding:4px 8px}.components-tooltip__shortcut{display:inline-block;margin-left:8px}.disabled-element-wrapper{position:relative}.disabled-element-wrapper .event-catcher{z-index:100002;position:absolute;width:100%;height:100%;top:0;left:0;bottom:0;right:0}PKj l\%/%css/dist/components/style-rtl.min.cssnu[@charset "UTF-8";:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.components-animate__appear{animation:components-animate__appear-animation .1s cubic-bezier(0,0,.2,1) 0s;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.components-animate__appear{animation-duration:1ms;animation-delay:0s}}.components-animate__appear.is-from-top,.components-animate__appear.is-from-top.is-from-left{transform-origin:top right}.components-animate__appear.is-from-top.is-from-right{transform-origin:top left}.components-animate__appear.is-from-bottom,.components-animate__appear.is-from-bottom.is-from-left{transform-origin:bottom right}.components-animate__appear.is-from-bottom.is-from-right{transform-origin:bottom left}@keyframes components-animate__appear-animation{0%{transform:translateY(-2em) scaleY(0) scaleX(0)}to{transform:translateY(0) scaleY(1) scaleX(1)}}.components-animate__slide-in{animation:components-animate__slide-in-animation .1s cubic-bezier(0,0,.2,1);animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.components-animate__slide-in{animation-duration:1ms;animation-delay:0s}}.components-animate__slide-in.is-from-left{transform:translateX(-100%)}.components-animate__slide-in.is-from-right{transform:translateX(100%)}@keyframes components-animate__slide-in-animation{to{transform:translateX(0)}}.components-animate__loading{animation:components-animate__loading 1.6s ease-in-out infinite}@keyframes components-animate__loading{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}.components-autocomplete__popover .components-popover__content>div{padding:16px;min-width:220px}.components-autocomplete__result.components-button{display:flex;height:auto;min-height:36px;text-align:right;width:100%}.components-autocomplete__result.components-button.is-selected{box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.components-button-group{display:inline-block}.components-button-group .components-button{border-radius:0;display:inline-flex;color:#1e1e1e;box-shadow:inset 0 0 0 1px #1e1e1e}.components-button-group .components-button+.components-button{margin-right:-1px}.components-button-group .components-button:first-child{border-radius:0 2px 2px 0}.components-button-group .components-button:last-child{border-radius:2px 0 0 2px}.components-button-group .components-button.is-primary,.components-button-group .components-button:focus{position:relative;z-index:1}.components-button-group .components-button.is-primary{box-shadow:inset 0 0 0 1px #1e1e1e}.components-button{display:inline-flex;text-decoration:none;font-weight:400;font-size:13px;margin:0;border:0;cursor:pointer;-webkit-appearance:none;background:none;transition:box-shadow .1s linear;height:36px;align-items:center;box-sizing:border-box;padding:6px 12px;border-radius:2px;color:#1e1e1e}@media (prefers-reduced-motion:reduce){.components-button{transition-duration:0s;transition-delay:0s}}.components-button:hover,.components-button[aria-expanded=true]{color:var(--wp-admin-theme-color)}.components-button[aria-disabled=true]:hover{color:initial}.components-button:focus:not(:disabled){box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);outline:3px solid transparent}.components-button.is-primary{white-space:nowrap;background:var(--wp-admin-theme-color);color:#fff;text-decoration:none;text-shadow:none;outline:1px solid transparent}.components-button.is-primary:hover:not(:disabled){background:var(--wp-admin-theme-color-darker-10);color:#fff}.components-button.is-primary:active:not(:disabled){background:var(--wp-admin-theme-color-darker-20);border-color:var(--wp-admin-theme-color-darker-20);color:#fff}.components-button.is-primary:focus:not(:disabled){box-shadow:inset 0 0 0 1px #fff,0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.components-button.is-primary:disabled,.components-button.is-primary:disabled:active:enabled,.components-button.is-primary[aria-disabled=true],.components-button.is-primary[aria-disabled=true]:active:enabled,.components-button.is-primary[aria-disabled=true]:enabled{color:hsla(0,0%,100%,.4);background:var(--wp-admin-theme-color);border-color:var(--wp-admin-theme-color);opacity:1;outline:none}.components-button.is-primary:disabled:active:enabled:focus:enabled,.components-button.is-primary:disabled:focus:enabled,.components-button.is-primary[aria-disabled=true]:active:enabled:focus:enabled,.components-button.is-primary[aria-disabled=true]:enabled:focus:enabled,.components-button.is-primary[aria-disabled=true]:focus:enabled{box-shadow:0 0 0 1px #fff,0 0 0 3px var(--wp-admin-theme-color)}.components-button.is-primary.is-busy,.components-button.is-primary.is-busy:disabled,.components-button.is-primary.is-busy[aria-disabled=true]{color:#fff;background-size:100px 100%;background-image:linear-gradient(45deg,var(--wp-admin-theme-color) 33%,var(--wp-admin-theme-color-darker-20) 0,var(--wp-admin-theme-color-darker-20) 70%,var(--wp-admin-theme-color) 0);border-color:var(--wp-admin-theme-color)}.components-button.is-secondary,.components-button.is-tertiary{outline:1px solid transparent}.components-button.is-secondary:active:not(:disabled),.components-button.is-tertiary:active:not(:disabled){background:#ddd;color:var(--wp-admin-theme-color-darker-10);box-shadow:none}.components-button.is-secondary:hover:not(:disabled),.components-button.is-tertiary:hover:not(:disabled){color:var(--wp-admin-theme-color-darker-10);box-shadow:inset 0 0 0 1px var(--wp-admin-theme-color-darker-10)}.components-button.is-secondary:disabled,.components-button.is-secondary[aria-disabled=true],.components-button.is-secondary[aria-disabled=true]:hover,.components-button.is-tertiary:disabled,.components-button.is-tertiary[aria-disabled=true],.components-button.is-tertiary[aria-disabled=true]:hover{color:#828282;background:#eaeaea;transform:none;opacity:1;box-shadow:none;outline:none}.components-button.is-secondary{box-shadow:inset 0 0 0 1px var(--wp-admin-theme-color);outline:1px solid transparent}.components-button.is-secondary,.components-button.is-tertiary{white-space:nowrap;color:var(--wp-admin-theme-color);background:transparent}.components-button.is-tertiary{padding:6px}.components-button.is-tertiary .dashicon{display:inline-block;flex:0 0 auto}p+.components-button.is-tertiary{margin-right:-6px}.components-button.is-destructive{color:#cc1818;box-shadow:inset 0 0 0 1px #cc1818}.components-button.is-destructive:hover:not(:disabled){color:#710d0d;box-shadow:inset 0 0 0 1px #710d0d}.components-button.is-destructive:focus:not(:disabled){color:var(--wp-admin-theme-color)}.components-button.is-destructive:active:not(:disabled){background:#ccc}.components-button.is-destructive.is-primary{color:#fff;background:#cc1818;box-shadow:inset 0 0 0 1px #cc1818}.components-button.is-destructive.is-primary:hover:not(:disabled){color:#fff;background:#710d0d;box-shadow:inset 0 0 0 1px #710d0d}.components-button.is-link{margin:0;padding:0;box-shadow:none;border:0;border-radius:0;background:none;outline:none;text-align:right;color:var(--wp-admin-theme-color);text-decoration:underline;transition-property:border,background,color;transition-duration:.05s;transition-timing-function:ease-in-out;height:auto}@media (prefers-reduced-motion:reduce){.components-button.is-link{transition-duration:0s;transition-delay:0s}}.components-button.is-link:focus{border-radius:2px}.components-button.is-link.is-destructive{color:#cc1818}.components-button.is-link.is-destructive:active:not(:disabled),.components-button.is-link.is-destructive:hover:not(:disabled){color:#710d0d;background:none}.components-button.is-link.is-destructive:focus:not(:disabled){color:var(--wp-admin-theme-color)}.components-button:not([aria-disabled=true]):active{color:inherit}.components-button:disabled,.components-button[aria-disabled=true]{cursor:default;opacity:.3}.components-button.is-busy,.components-button.is-secondary.is-busy,.components-button.is-secondary.is-busy:disabled,.components-button.is-secondary.is-busy[aria-disabled=true]{animation:components-button__busy-animation 2.5s linear infinite;opacity:1;background-size:100px 100%;background-image:linear-gradient(45deg,#fafafa 33%,#e0e0e0 0,#e0e0e0 70%,#fafafa 0)}.components-button.is-small{height:24px;line-height:22px;padding:0 8px;font-size:11px}.components-button.is-small.has-icon:not(.has-text){padding:0 8px;width:24px}.components-button.has-icon{padding:6px;min-width:36px;justify-content:center}.components-button.has-icon .dashicon{display:inline-block;flex:0 0 auto;margin-right:2px;margin-left:2px}.components-button.has-icon.has-text{justify-content:left}.components-button.has-icon.has-text svg{margin-left:8px}.components-button.has-icon.has-text .dashicon{margin-left:10px}.components-button.is-pressed{color:#fff;background:#1e1e1e}.components-button.is-pressed:focus:not(:disabled){box-shadow:inset 0 0 0 1px #fff,0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);outline:2px solid transparent}.components-button.is-pressed:hover:not(:disabled){color:#fff;background:#1e1e1e}.components-button svg{fill:currentColor;outline:none}@media (forced-colors:active){.components-button svg{fill:CanvasText}}.components-button .components-visually-hidden{height:auto}@keyframes components-button__busy-animation{0%{background-position:200px 0}}.components-checkbox-control__input[type=checkbox]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;padding:6px 8px;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;font-size:16px;line-height:normal;border:1px solid #1e1e1e;transition:none;border-radius:2px;background:#fff;color:#1e1e1e;clear:none;cursor:pointer;display:inline-block;line-height:0;margin:0 0 0 4px;outline:0;padding:0!important;text-align:center;vertical-align:top;width:24px;height:24px;-webkit-appearance:none;appearance:none;transition:border-color .1s ease-in-out}@media (min-width:600px){.components-checkbox-control__input[type=checkbox]{font-size:13px;line-height:normal}}.components-checkbox-control__input[type=checkbox]:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color)}.components-checkbox-control__input[type=checkbox]::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.components-checkbox-control__input[type=checkbox]::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.components-checkbox-control__input[type=checkbox]:-ms-input-placeholder{color:rgba(30,30,30,.62)}.components-checkbox-control__input[type=checkbox]:checked:before,.components-checkbox-control__input[type=checkbox][aria-checked=mixed]:before{margin:-3px -5px;color:#fff}@media (min-width:782px){.components-checkbox-control__input[type=checkbox]:checked:before,.components-checkbox-control__input[type=checkbox][aria-checked=mixed]:before{margin:-4px -5px 0 0}}.components-checkbox-control__input[type=checkbox][aria-checked=mixed]{background:var(--wp-admin-theme-color);border-color:var(--wp-admin-theme-color)}.components-checkbox-control__input[type=checkbox][aria-checked=mixed]:before{content:"";float:right;display:inline-block;vertical-align:middle;width:16px;font:normal 30px/1 dashicons;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (min-width:782px){.components-checkbox-control__input[type=checkbox][aria-checked=mixed]:before{float:none;font-size:21px}}@media (min-width:600px){.components-checkbox-control__input[type=checkbox]{height:20px;width:20px}}@media (prefers-reduced-motion:reduce){.components-checkbox-control__input[type=checkbox]{transition-duration:0s;transition-delay:0s}}.components-checkbox-control__input[type=checkbox]:focus{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--wp-admin-theme-color);outline:2px solid transparent}.components-checkbox-control__input[type=checkbox]:checked{background:var(--wp-admin-theme-color);border-color:var(--wp-admin-theme-color)}.components-checkbox-control__input[type=checkbox]:checked::-ms-check{opacity:0}.components-checkbox-control__input[type=checkbox]:checked:before{content:none}.components-checkbox-control__input-container{position:relative;display:inline-block;margin-left:12px;vertical-align:middle;width:24px;height:24px}@media (min-width:600px){.components-checkbox-control__input-container{width:20px;height:20px}}svg.components-checkbox-control__checked{fill:#fff;cursor:pointer;position:absolute;right:0;top:0;width:24px;height:24px;-webkit-user-select:none;user-select:none;pointer-events:none}@media (min-width:600px){svg.components-checkbox-control__checked{right:-2px;top:-2px}}.components-circular-option-picker{display:inline-block;width:100%;min-width:188px}.components-circular-option-picker .components-circular-option-picker__custom-clear-wrapper{display:flex;justify-content:flex-end;margin-top:12px}.components-circular-option-picker .components-circular-option-picker__swatches{display:flex;flex-wrap:wrap;gap:12px}.components-circular-option-picker__option-wrapper{display:inline-block;height:28px;width:28px;vertical-align:top;transform:scale(1);transition:transform .1s ease}@media (prefers-reduced-motion:reduce){.components-circular-option-picker__option-wrapper{transition-duration:0s;transition-delay:0s}}.components-circular-option-picker__option-wrapper:hover{transform:scale(1.2)}.components-circular-option-picker__option-wrapper>div{height:100%;width:100%}.components-circular-option-picker__option-wrapper:before{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;border-radius:50%;z-index:-1;background:url("data:image/svg+xml;charset=utf-8,%3Csvg width='28' height='28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 8V6H4v2h2zm2 0V6h2v2H8zm2 8H8v-2h2v2zm2 0v-2h2v2h-2zm0 2v-2h-2v2H8v2h2v-2h2zm2 0v2h-2v-2h2zm2 0h-2v-2h2v2z' fill='%23555D65'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M18 18h2v-2h-2v-2h2v-2h-2v-2h2V8h-2v2h-2V8h-2v2h2v2h-2v2h2v2h2v2zm-2-4v-2h2v2h-2z' fill='%23555D65'/%3E%3Cpath d='M18 18v2h-2v-2h2z' fill='%23555D65'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M8 10V8H6v2H4v2h2v2H4v2h2v2H4v2h2v2H4v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2V8h-2V6h2V4h-2v2h-2V4h-2v2h-2V4h-2v2h-2V4h-2v2h2v2h-2v2H8zm0 2v-2H6v2h2zm2 0v-2h2v2h-2zm0 2v-2H8v2H6v2h2v2H6v2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2V8h-2V6h-2v2h-2V6h-2v2h-2v2h2v2h-2v2h-2z' fill='%23555D65'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M4 0H2v2H0v2h2v2H0v2h2v2H0v2h2v2H0v2h2v2H0v2h2v2H0v2h2v2H0v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2V8h-2V6h2V4h-2V2h2V0h-2v2h-2V0h-2v2h-2V0h-2v2h-2V0h-2v2h-2V0h-2v2H8V0H6v2H4V0zm0 4V2H2v2h2zm2 0V2h2v2H6zm0 2V4H4v2H2v2h2v2H2v2h2v2H2v2h2v2H2v2h2v2H2v2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2V8h-2V6h2V4h-2V2h-2v2h-2V2h-2v2h-2V2h-2v2h-2V2h-2v2H8v2H6z' fill='%23555D65'/%3E%3C/svg%3E")}.components-circular-option-picker__option{display:inline-block;vertical-align:top;height:100%;width:100%;border:none;border-radius:50%;background:transparent;box-shadow:inset 0 0 0 14px;transition:box-shadow .1s ease;cursor:pointer}@media (prefers-reduced-motion:reduce){.components-circular-option-picker__option{transition-duration:0s;transition-delay:0s}}.components-circular-option-picker__option:hover{box-shadow:inset 0 0 0 14px!important}.components-circular-option-picker__option.is-pressed{box-shadow:inset 0 0 0 4px;position:relative;z-index:1;overflow:visible}.components-circular-option-picker__option.is-pressed+svg{position:absolute;right:2px;top:2px;border-radius:50%;z-index:2;pointer-events:none}.components-circular-option-picker__option:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.2);border:1px solid transparent}.components-circular-option-picker__option:focus:after{content:"";border:2px solid #757575;width:32px;height:32px;position:absolute;top:-2px;right:-2px;border-radius:50%;box-shadow:inset 0 0 0 2px #fff}.components-circular-option-picker__option.components-button:focus{background-color:transparent;box-shadow:inset 0 0 0 14px;outline:none}.components-circular-option-picker__button-action .components-circular-option-picker__option{color:#fff;background:#fff}.components-circular-option-picker__dropdown-link-action{margin-left:16px}.components-circular-option-picker__dropdown-link-action .components-button{line-height:22px}@media (min-width:782px){.components-palette-edit__popover.components-popover .components-popover__content.components-popover__content.components-popover__content{margin-left:156px;margin-top:-49px}}.components-palette-edit__popover .components-custom-gradient-picker__gradient-bar{margin-top:0}.components-palette-edit__popover .components-custom-gradient-picker__ui-line{margin-bottom:0}.components-palette-edit__popover .components-custom-gradient-picker{width:280px;padding:8px}.components-dropdown-menu__menu .components-palette-edit__menu-button{width:100%}.component-color-indicator{width:25px;height:16px;margin-right:.8rem;border:1px solid #dadada;display:inline-block}.component-color-indicator+.component-color-indicator{margin-right:.5rem}.components-combobox-control{width:100%}input.components-combobox-control__input[type=text]{width:100%;border:none;box-shadow:none;font-size:16px;padding:2px;margin:0;line-height:inherit;min-height:auto}@media (min-width:600px){input.components-combobox-control__input[type=text]{font-size:13px}}input.components-combobox-control__input[type=text]:focus{outline:none;box-shadow:none}.components-combobox-control__suggestions-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;border:1px solid #757575;font-size:16px;line-height:normal;display:flex;flex-wrap:wrap;align-items:flex-start;width:100%;margin:0 0 8px;padding:4px}@media (prefers-reduced-motion:reduce){.components-combobox-control__suggestions-container{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.components-combobox-control__suggestions-container{font-size:13px;line-height:normal}}.components-combobox-control__suggestions-container:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.components-combobox-control__suggestions-container::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.components-combobox-control__suggestions-container::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.components-combobox-control__suggestions-container:-ms-input-placeholder{color:rgba(30,30,30,.62)}.components-combobox-control__suggestions-container:focus-within{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.components-combobox-control__reset.components-button{display:flex;height:24px;min-width:24px;padding:0}.components-color-list-picker,.components-color-list-picker__swatch-button{width:100%}.components-color-list-picker__color-picker{margin:8px 0}.components-color-palette__custom-color{position:relative;border:none;background:none;display:block;border-radius:2px;height:48px;text-align:left;width:100%;background-image:repeating-linear-gradient(-45deg,#e0e0e0 25%,transparent 0,transparent 75%,#e0e0e0 0,#e0e0e0),repeating-linear-gradient(-45deg,#e0e0e0 25%,transparent 0,transparent 75%,#e0e0e0 0,#e0e0e0);background-position:100% 0,25px 25px;background-size:50px 50px;box-sizing:border-box;color:#fff;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(0,0,0,.2);outline:1px solid transparent}.components-color-palette__custom-color:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);outline-width:2px}.components-dropdown__content.components-color-palette__custom-color-dropdown-content .components-popover__content{overflow:visible;box-shadow:0 4px 4px rgba(0,0,0,.05);border:none;border-radius:2px;max-height:-moz-fit-content!important;max-height:fit-content!important}.components-dropdown__content.components-color-palette__custom-color-dropdown-content .components-popover__content>div{padding:0}.components-dropdown__content.components-color-palette__custom-color-dropdown-content .components-popover__content .react-colorful__saturation{border-top-left-radius:2px;border-top-right-radius:2px}@media (min-width:782px){.components-dropdown__content.components-color-palette__custom-color-dropdown-content.is-rendered-in-sidebar .components-popover__content.components-popover__content{margin-left:156px}.components-dropdown__content.components-color-palette__custom-color-dropdown-content.is-rendered-in-sidebar.is-from-top .components-popover__content{margin-top:-60px}.components-dropdown__content.components-color-palette__custom-color-dropdown-content.is-rendered-in-sidebar.is-from-bottom .components-popover__content{margin-bottom:-60px}}.components-custom-gradient-picker__gradient-bar:not(.has-gradient){opacity:.4}.components-custom-gradient-picker__gradient-bar{border-radius:2px;margin-top:12px;width:100%;height:48px;margin-bottom:20px;padding-right:16px}.components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__markers-container{position:relative;width:calc(100% - 32px);margin-right:auto;margin-left:auto}.components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__insert-point{border-radius:50%;background:#fff;padding:2px;top:16px;min-width:16px;width:16px;height:16px;position:relative;color:#1e1e1e}.components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__insert-point svg{height:100%;width:100%}.components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__control-point-button{border-radius:50%;height:16px;width:16px;padding:0;position:absolute;top:16px;box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) #fff,0 0 2px 0 rgba(0,0,0,.25);outline:2px solid transparent}.components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__control-point-button.is-active,.components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__control-point-button:focus{box-shadow:inset 0 0 0 calc(var(--wp-admin-border-width-focus)*2) #fff,0 0 2px 0 rgba(0,0,0,.25);outline:4px solid transparent}.components-custom-gradient-picker__color-picker-popover .components-custom-gradient-picker__remove-control-point{margin-right:auto;margin-left:auto;display:block;margin-bottom:8px}.components-custom-gradient-picker__inserter{direction:ltr;width:100%}.components-custom-gradient-picker__liner-gradient-indicator{display:inline-block;flex:0 auto;width:20px;height:20px}.components-custom-gradient-picker .components-custom-gradient-picker__ui-line{margin-bottom:16px}.components-custom-gradient-picker .components-custom-gradient-picker__ui-line .components-base-control.components-angle-picker,.components-custom-gradient-picker .components-custom-gradient-picker__ui-line .components-base-control.components-custom-gradient-picker__type-picker{margin-bottom:0}.components-custom-gradient-picker .components-custom-gradient-picker__toolbar{border:none}.components-custom-gradient-picker .components-custom-gradient-picker__toolbar>div+div{margin-right:1px}.components-custom-gradient-picker .components-custom-gradient-picker__toolbar button.is-pressed>svg{background:#fff;border:1px solid #949494;border-radius:2px}.components-custom-gradient-picker .components-input-control__input,.components-custom-gradient-picker .components-select-control__input{height:40px!important}.components-custom-gradient-picker .components-input-control__label{line-height:1;padding-bottom:8px!important}.components-custom-gradient-picker label{text-transform:uppercase;font-size:11px;font-weight:500}.components-custom-select-control{position:relative}.components-custom-select-control__label{display:block;margin-bottom:8px}.components-custom-select-control__button{border:1px solid #757575;border-radius:2px;min-height:30px;min-width:130px;position:relative;text-align:right}.components-custom-select-control__button.components-custom-select-control__button{padding-left:24px}.components-custom-select-control__button:focus:not(:disabled){border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color)}.components-custom-select-control__button .components-custom-select-control__button-icon{height:100%;padding:0;position:absolute;left:0;top:0}.components-custom-select-control__menu{border:1px solid #1e1e1e;background-color:#fff;border-radius:2px;outline:none;transition:none;max-height:400px;min-width:100%;overflow:auto;padding:0;position:absolute;z-index:1000000}.components-custom-select-control__menu[aria-hidden=true]{display:none}.components-custom-select-control__item{align-items:center;display:grid;grid-template-columns:auto auto;list-style-type:none;padding:8px;cursor:default;line-height:28px}.components-custom-select-control__item.has-hint{grid-template-columns:auto auto 30px}.components-custom-select-control__item.is-highlighted{background:#ddd}.components-custom-select-control__item .components-custom-select-control__item-hint{color:#757575;text-align:left;padding-left:4px}.components-custom-select-control__item .components-custom-select-control__item-icon{margin-right:auto}.components-custom-select-control__item:last-child{margin-bottom:0}.PresetDateRangePicker_panel{padding:0 22px 11px}.PresetDateRangePicker_button{position:relative;height:100%;text-align:center;background:0 0;border:2px solid #00a699;color:#00a699;padding:4px 12px;margin-right:8px;font:inherit;font-weight:700;line-height:normal;overflow:visible;box-sizing:border-box;cursor:pointer}.PresetDateRangePicker_button:active{outline:0}.PresetDateRangePicker_button__selected{color:#fff;background:#00a699}.SingleDatePickerInput{display:inline-block;background-color:#fff}.SingleDatePickerInput__withBorder{border-radius:2px;border:1px solid #dbdbdb}.SingleDatePickerInput__rtl{direction:rtl}.SingleDatePickerInput__disabled{background-color:#f2f2f2}.SingleDatePickerInput__block{display:block}.SingleDatePickerInput__showClearDate{padding-right:30px}.SingleDatePickerInput_clearDate{background:0 0;border:0;color:inherit;font:inherit;line-height:normal;overflow:visible;cursor:pointer;padding:10px;margin:0 10px 0 5px;position:absolute;right:0;top:50%;transform:translateY(-50%)}.SingleDatePickerInput_clearDate__default:focus,.SingleDatePickerInput_clearDate__default:hover{background:#dbdbdb;border-radius:50%}.SingleDatePickerInput_clearDate__small{padding:6px}.SingleDatePickerInput_clearDate__hide{visibility:hidden}.SingleDatePickerInput_clearDate_svg{fill:#82888a;height:12px;width:15px;vertical-align:middle}.SingleDatePickerInput_clearDate_svg__small{height:9px}.SingleDatePickerInput_calendarIcon{background:0 0;border:0;color:inherit;font:inherit;line-height:normal;overflow:visible;cursor:pointer;display:inline-block;vertical-align:middle;padding:10px;margin:0 5px 0 10px}.SingleDatePickerInput_calendarIcon_svg{fill:#82888a;height:15px;width:14px;vertical-align:middle}.SingleDatePicker{position:relative;display:inline-block}.SingleDatePicker__block{display:block}.SingleDatePicker_picker{z-index:1;background-color:#fff;position:absolute}.SingleDatePicker_picker__rtl{direction:rtl}.SingleDatePicker_picker__directionLeft{left:0}.SingleDatePicker_picker__directionRight{right:0}.SingleDatePicker_picker__portal{background-color:rgba(0,0,0,.3);position:fixed;top:0;left:0;height:100%;width:100%}.SingleDatePicker_picker__fullScreenPortal{background-color:#fff}.SingleDatePicker_closeButton{background:0 0;border:0;color:inherit;font:inherit;line-height:normal;overflow:visible;cursor:pointer;position:absolute;top:0;right:0;padding:15px;z-index:2}.SingleDatePicker_closeButton:focus,.SingleDatePicker_closeButton:hover{color:#b0b3b4;text-decoration:none}.SingleDatePicker_closeButton_svg{height:15px;width:15px;fill:#cacccd}.DayPickerKeyboardShortcuts_buttonReset{background:0 0;border:0;border-radius:0;color:inherit;font:inherit;line-height:normal;overflow:visible;padding:0;cursor:pointer;font-size:14px}.DayPickerKeyboardShortcuts_buttonReset:active{outline:0}.DayPickerKeyboardShortcuts_show{width:22px;position:absolute;z-index:2}.DayPickerKeyboardShortcuts_show__bottomRight{border-top:26px solid transparent;border-right:33px solid #00a699;bottom:0;right:0}.DayPickerKeyboardShortcuts_show__bottomRight:hover{border-right:33px solid #008489}.DayPickerKeyboardShortcuts_show__topRight{border-bottom:26px solid transparent;border-right:33px solid #00a699;top:0;right:0}.DayPickerKeyboardShortcuts_show__topRight:hover{border-right:33px solid #008489}.DayPickerKeyboardShortcuts_show__topLeft{border-bottom:26px solid transparent;border-left:33px solid #00a699;top:0;left:0}.DayPickerKeyboardShortcuts_show__topLeft:hover{border-left:33px solid #008489}.DayPickerKeyboardShortcuts_showSpan{color:#fff;position:absolute}.DayPickerKeyboardShortcuts_showSpan__bottomRight{bottom:0;right:-28px}.DayPickerKeyboardShortcuts_showSpan__topRight{top:1px;right:-28px}.DayPickerKeyboardShortcuts_showSpan__topLeft{top:1px;left:-28px}.DayPickerKeyboardShortcuts_panel{overflow:auto;background:#fff;border:1px solid #dbdbdb;border-radius:2px;position:absolute;top:0;bottom:0;right:0;left:0;z-index:2;padding:22px;margin:33px}.DayPickerKeyboardShortcuts_title{font-size:16px;font-weight:700;margin:0}.DayPickerKeyboardShortcuts_list{list-style:none;padding:0;font-size:14px}.DayPickerKeyboardShortcuts_close{position:absolute;right:22px;top:22px;z-index:2}.DayPickerKeyboardShortcuts_close:active{outline:0}.DayPickerKeyboardShortcuts_closeSvg{height:15px;width:15px;fill:#cacccd}.DayPickerKeyboardShortcuts_closeSvg:focus,.DayPickerKeyboardShortcuts_closeSvg:hover{fill:#82888a}.CalendarDay{box-sizing:border-box;cursor:pointer;font-size:14px;text-align:center}.CalendarDay:active{outline:0}.CalendarDay__defaultCursor{cursor:default}.CalendarDay__default{border:1px solid #e4e7e7;color:#484848;background:#fff}.CalendarDay__default:hover{background:#e4e7e7;border:1px double #e4e7e7;color:inherit}.CalendarDay__hovered_offset{background:#f4f5f5;border:1px double #e4e7e7;color:inherit}.CalendarDay__outside{border:0;background:#fff;color:#484848}.CalendarDay__outside:hover{border:0}.CalendarDay__blocked_minimum_nights{background:#fff;border:1px solid #eceeee;color:#cacccd}.CalendarDay__blocked_minimum_nights:active,.CalendarDay__blocked_minimum_nights:hover{background:#fff;color:#cacccd}.CalendarDay__highlighted_calendar{background:#ffe8bc;color:#484848}.CalendarDay__highlighted_calendar:active,.CalendarDay__highlighted_calendar:hover{background:#ffce71;color:#484848}.CalendarDay__selected_span{background:#66e2da;border:1px solid #33dacd;color:#fff}.CalendarDay__selected_span:active,.CalendarDay__selected_span:hover{background:#33dacd;border:1px solid #33dacd;color:#fff}.CalendarDay__last_in_range{border-right:#00a699}.CalendarDay__selected,.CalendarDay__selected:active,.CalendarDay__selected:hover{background:#00a699;border:1px solid #00a699;color:#fff}.CalendarDay__hovered_span,.CalendarDay__hovered_span:hover{background:#b2f1ec;border:1px solid #80e8e0;color:#007a87}.CalendarDay__hovered_span:active{background:#80e8e0;border:1px solid #80e8e0;color:#007a87}.CalendarDay__blocked_calendar,.CalendarDay__blocked_calendar:active,.CalendarDay__blocked_calendar:hover{background:#cacccd;border:1px solid #cacccd;color:#82888a}.CalendarDay__blocked_out_of_range,.CalendarDay__blocked_out_of_range:active,.CalendarDay__blocked_out_of_range:hover{background:#fff;border:1px solid #e4e7e7;color:#cacccd}.CalendarMonth{background:#fff;text-align:center;vertical-align:top;-webkit-user-select:none;user-select:none}.CalendarMonth_table{border-collapse:collapse;border-spacing:0}.CalendarMonth_verticalSpacing{border-collapse:separate}.CalendarMonth_caption{color:#484848;font-size:18px;text-align:center;padding-top:22px;padding-bottom:37px;caption-side:top}.CalendarMonth_caption__verticalScrollable{padding-top:12px;padding-bottom:7px}.CalendarMonthGrid{background:#fff;text-align:left;z-index:0}.CalendarMonthGrid__animating{z-index:1}.CalendarMonthGrid__horizontal{position:absolute;left:0}.CalendarMonthGrid__vertical{margin:0 auto}.CalendarMonthGrid__vertical_scrollable{margin:0 auto;overflow-y:scroll}.CalendarMonthGrid_month__horizontal{display:inline-block;vertical-align:top;min-height:100%}.CalendarMonthGrid_month__hideForAnimation{position:absolute;z-index:-1;opacity:0;pointer-events:none}.CalendarMonthGrid_month__hidden{visibility:hidden}.DayPickerNavigation{position:relative;z-index:2}.DayPickerNavigation__horizontal{height:0}.DayPickerNavigation__verticalDefault{position:absolute;width:100%;height:52px;bottom:0;left:0}.DayPickerNavigation__verticalScrollableDefault{position:relative}.DayPickerNavigation_button{cursor:pointer;-webkit-user-select:none;user-select:none;border:0;padding:0;margin:0}.DayPickerNavigation_button__default{border:1px solid #e4e7e7;background-color:#fff;color:#757575}.DayPickerNavigation_button__default:focus,.DayPickerNavigation_button__default:hover{border:1px solid #c4c4c4}.DayPickerNavigation_button__default:active{background:#f2f2f2}.DayPickerNavigation_button__horizontalDefault{position:absolute;top:18px;line-height:.78;border-radius:3px;padding:6px 9px}.DayPickerNavigation_leftButton__horizontalDefault{left:22px}.DayPickerNavigation_rightButton__horizontalDefault{right:22px}.DayPickerNavigation_button__verticalDefault{padding:5px;background:#fff;box-shadow:0 0 5px 2px rgba(0,0,0,.1);position:relative;display:inline-block;height:100%;width:50%}.DayPickerNavigation_nextButton__verticalDefault{border-left:0}.DayPickerNavigation_nextButton__verticalScrollableDefault{width:100%}.DayPickerNavigation_svg__horizontal{height:19px;width:19px;fill:#82888a;display:block}.DayPickerNavigation_svg__vertical{height:42px;width:42px;fill:#484848;display:block}.DayPicker{position:relative;text-align:left}.DayPicker,.DayPicker__horizontal{background:#fff}.DayPicker__verticalScrollable{height:100%}.DayPicker__hidden{visibility:hidden}.DayPicker__withBorder{box-shadow:0 2px 6px rgba(0,0,0,.05),0 0 0 1px rgba(0,0,0,.07);border-radius:3px}.DayPicker_portal__horizontal{box-shadow:none;position:absolute;left:50%;top:50%}.DayPicker_portal__vertical{position:static}.DayPicker_focusRegion{outline:0}.DayPicker_calendarInfo__horizontal,.DayPicker_wrapper__horizontal{display:inline-block;vertical-align:top}.DayPicker_weekHeaders{position:relative}.DayPicker_weekHeaders__horizontal{margin-left:13px}.DayPicker_weekHeader{color:#757575;position:absolute;top:62px;z-index:2;text-align:left;padding:0!important}.DayPicker_weekHeader__vertical{left:50%}.DayPicker_weekHeader__verticalScrollable{top:0;display:table-row;border-bottom:1px solid #dbdbdb;background:#fff;margin-left:0;left:0;width:100%;text-align:center}.DayPicker_weekHeader_ul{list-style:none;margin:1px 0;padding-left:0;padding-right:0;font-size:14px}.DayPicker_weekHeader_li{display:inline-block;text-align:center;margin:0 1px}.DayPicker_transitionContainer{position:relative;overflow:hidden;border-radius:3px}.DayPicker_transitionContainer__horizontal{transition:height .2s ease-in-out}.DayPicker_transitionContainer__vertical{width:100%}.DayPicker_transitionContainer__verticalScrollable{padding-top:20px;height:100%;position:absolute;top:0;bottom:0;right:0;left:0;overflow-y:scroll}.DateInput{margin:0;padding:0;background:#fff;position:relative;display:inline-block;width:130px;vertical-align:middle}.DateInput__small{width:97px}.DateInput__block{width:100%}.DateInput__disabled{background:#f2f2f2;color:#dbdbdb}.DateInput_input{font-weight:200;font-size:19px;line-height:24px;color:#484848;background-color:#fff;width:100%;padding:11px 11px 9px;border:0;border-bottom:2px solid transparent;border-radius:0}.DateInput_input__small{font-size:15px;line-height:18px;letter-spacing:.2px;padding:7px 7px 5px}.DateInput_input__regular{font-weight:auto}.DateInput_input__readOnly{-webkit-user-select:none;user-select:none}.DateInput_input__focused{outline:0;background:#fff;border:0;border-bottom:2px solid #008489}.DateInput_input__disabled{background:#f2f2f2;font-style:italic}.DateInput_screenReaderMessage{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.DateInput_fang{position:absolute;width:20px;height:10px;left:22px;z-index:2}.DateInput_fangShape{fill:#fff}.DateInput_fangStroke{stroke:#dbdbdb;fill:transparent}.DateRangePickerInput{background-color:#fff;display:inline-block}.DateRangePickerInput__disabled{background:#f2f2f2}.DateRangePickerInput__withBorder{border-radius:2px;border:1px solid #dbdbdb}.DateRangePickerInput__rtl{direction:rtl}.DateRangePickerInput__block{display:block}.DateRangePickerInput__showClearDates{padding-right:30px}.DateRangePickerInput_arrow{display:inline-block;vertical-align:middle;color:#484848}.DateRangePickerInput_arrow_svg{vertical-align:middle;fill:#484848;height:24px;width:24px}.DateRangePickerInput_clearDates{background:0 0;border:0;color:inherit;font:inherit;line-height:normal;overflow:visible;cursor:pointer;padding:10px;margin:0 10px 0 5px;position:absolute;right:0;top:50%;transform:translateY(-50%)}.DateRangePickerInput_clearDates__small{padding:6px}.DateRangePickerInput_clearDates_default:focus,.DateRangePickerInput_clearDates_default:hover{background:#dbdbdb;border-radius:50%}.DateRangePickerInput_clearDates__hide{visibility:hidden}.DateRangePickerInput_clearDates_svg{fill:#82888a;height:12px;width:15px;vertical-align:middle}.DateRangePickerInput_clearDates_svg__small{height:9px}.DateRangePickerInput_calendarIcon{background:0 0;border:0;color:inherit;font:inherit;line-height:normal;overflow:visible;cursor:pointer;display:inline-block;vertical-align:middle;padding:10px;margin:0 5px 0 10px}.DateRangePickerInput_calendarIcon_svg{fill:#82888a;height:15px;width:14px;vertical-align:middle}.DateRangePicker{position:relative;display:inline-block}.DateRangePicker__block{display:block}.DateRangePicker_picker{z-index:1;background-color:#fff;position:absolute}.DateRangePicker_picker__rtl{direction:rtl}.DateRangePicker_picker__directionLeft{left:0}.DateRangePicker_picker__directionRight{right:0}.DateRangePicker_picker__portal{background-color:rgba(0,0,0,.3);position:fixed;top:0;left:0;height:100%;width:100%}.DateRangePicker_picker__fullScreenPortal{background-color:#fff}.DateRangePicker_closeButton{background:0 0;border:0;color:inherit;font:inherit;line-height:normal;overflow:visible;cursor:pointer;position:absolute;top:0;right:0;padding:15px;z-index:2}.DateRangePicker_closeButton:focus,.DateRangePicker_closeButton:hover{color:#b0b3b4;text-decoration:none}.DateRangePicker_closeButton_svg{height:15px;width:15px;fill:#cacccd}.components-datetime{padding:16px}.components-panel__body .components-datetime{padding:0}.components-datetime .components-datetime__calendar-help{padding:16px;min-width:260px}.components-datetime .components-datetime__calendar-help h4{margin:0}.components-datetime .components-datetime__buttons{display:flex;justify-content:space-between}.components-datetime .components-datetime__date-help-toggle{display:block;margin-right:auto}.components-datetime fieldset{border:0;padding:0;margin:0}.components-datetime input,.components-datetime select{box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;border:1px solid #757575}@media (prefers-reduced-motion:reduce){.components-datetime input,.components-datetime select{transition-duration:0s;transition-delay:0s}}.components-datetime .components-button,.components-datetime input[type=number],.components-datetime select{height:30px;margin-top:0;margin-bottom:0}.components-datetime .components-button:focus{z-index:1}.components-datetime__date{min-height:236px;border-top:1px solid #ddd}.components-datetime__date .DayPickerNavigation_leftButton__horizontalDefault{left:13px}.components-datetime__date .CalendarMonth_caption{font-size:13px}.components-datetime__date .CalendarMonth_table{border-collapse:separate;border-spacing:2px}.components-datetime__date .CalendarDay{font-size:13px;border:none;border-radius:50%;text-align:center}.components-datetime__date .CalendarDay:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 0 0 3px #fff;outline:2px solid transparent}.components-datetime__date .CalendarDay__selected{background:var(--wp-admin-theme-color);border:2px solid transparent}.components-datetime__date .CalendarDay__selected:hover{background:var(--wp-admin-theme-color-darker-20)}.components-datetime__date .CalendarDay__selected:focus{box-shadow:inset 0 0 0 1px #fff}.components-datetime__date .DayPickerNavigation_button__horizontalDefault{padding:2px 8px;top:20px}.components-datetime__date .DayPickerNavigation_button__horizontalDefault:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.components-datetime__date .DayPicker_weekHeader{top:50px}.components-datetime__date .DayPicker_weekHeader .DayPicker_weekHeader_ul{margin:1px;padding-right:0;padding-left:0}.components-datetime__date.is-description-visible .DayPicker{visibility:hidden}.components-datetime__date .CalendarDay .components-datetime__date__day{height:100%;display:flex;justify-content:center;align-content:center;flex-direction:column;position:relative}.components-datetime__date .CalendarDay .components-datetime__date__day.has-events:before{content:" ";width:4px;height:4px;border-radius:2px;position:absolute;right:50%;margin-right:-2px;bottom:0;background-color:#fff}.components-datetime__date .CalendarDay:not(.CalendarDay__selected) .components-datetime__date__day.has-events:before{background:var(--wp-admin-theme-color)}.components-datetime__time{padding-bottom:16px}.components-datetime__time fieldset{position:relative;margin-bottom:.5em}.components-datetime__time fieldset+fieldset{margin-bottom:0}.components-datetime__time .components-datetime__time-field-am-pm fieldset{margin-top:0}.components-datetime__time .components-datetime__time-wrapper{display:flex}.components-datetime__time .components-datetime__time-wrapper .components-datetime__time-separator{display:inline-block;padding:0 0 0 3px}.components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field-time{direction:ltr}.components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field select{margin-left:4px}.components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field select:focus{position:relative;z-index:1}.components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field input[type=number]{padding:2px;margin-left:4px;text-align:center;-moz-appearance:textfield}.components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field input[type=number]:focus{position:relative;z-index:1}.components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.components-datetime__time.is-12-hour .components-datetime__time-field-day input{margin:-4px 0 0!important;border-radius:0 2px 2px 0!important}.components-datetime__time.is-12-hour .components-datetime__time-field-year input{border-radius:2px 0 0 2px!important}.components-datetime__timezone{line-height:30px;margin-right:4px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.components-datetime__time-legend{font-weight:600;margin-top:.5em}.components-datetime__time-legend.invisible{position:absolute;top:-999em;right:-999em}.components-datetime__time-field-day-input,.components-datetime__time-field-hours-input,.components-datetime__time-field-minutes-input{width:35px}.components-datetime__time-field-year-input{width:55px}.components-datetime__time-field-month-select{max-width:145px}.components-popover .components-datetime__date{padding-right:4px}.block-editor-dimension-control .components-base-control__field{display:flex;align-items:center}.block-editor-dimension-control .components-base-control__label{display:flex;align-items:center;margin-left:1em;margin-bottom:0}.block-editor-dimension-control .components-base-control__label .dashicon{margin-left:.5em}.block-editor-dimension-control.is-manual .components-base-control__label{width:10em}body.is-dragging-components-draggable{cursor:move;cursor:grabbing!important}.components-draggable__invisible-drag-image{position:fixed;right:-1000px;height:50px;width:50px}.components-draggable__clone{position:fixed;padding:0;background:transparent;pointer-events:none;z-index:1000000000}.components-drop-zone{position:absolute;top:0;left:0;bottom:0;right:0;z-index:40;visibility:hidden;opacity:0;border-radius:2px}.components-drop-zone.is-active{opacity:1;visibility:visible}.components-drop-zone__content{position:absolute;top:0;bottom:0;right:0;left:0;height:100%;width:100%;display:flex;background-color:var(--wp-admin-theme-color);align-items:center;justify-content:center;z-index:50;text-align:center;color:#fff}.components-drop-zone__content-icon,.components-drop-zone__content-text{display:block}.components-drop-zone__content-icon{margin:0 auto;line-height:0;fill:currentColor;pointer-events:none}.components-drop-zone__content-text{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px}.components-dropdown{display:inline-block}.components-dropdown__content .components-popover__content>div{padding:8px}.components-dropdown__content [role=menuitem]{white-space:nowrap}.components-dropdown-menu__menu{width:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;line-height:1.4}.components-dropdown-menu__menu .components-dropdown-menu__menu-item,.components-dropdown-menu__menu .components-menu-item{width:100%;padding:6px;outline:none;cursor:pointer;white-space:nowrap}.components-dropdown-menu__menu .components-dropdown-menu__menu-item.has-separator,.components-dropdown-menu__menu .components-menu-item.has-separator{margin-top:6px;position:relative;overflow:visible}.components-dropdown-menu__menu .components-dropdown-menu__menu-item.has-separator:before,.components-dropdown-menu__menu .components-menu-item.has-separator:before{display:block;content:"";box-sizing:content-box;background-color:#ddd;position:absolute;top:-3px;right:0;left:0;height:1px}.components-dropdown-menu__menu .components-dropdown-menu__menu-item.is-active svg,.components-dropdown-menu__menu .components-menu-item.is-active svg{color:#fff;background:#1e1e1e;box-shadow:0 0 0 1px #1e1e1e;border-radius:1px}.components-dropdown-menu__menu .components-dropdown-menu__menu-item>svg,.components-dropdown-menu__menu .components-menu-item>svg{border-radius:2px;width:24px;height:24px}.components-dropdown-menu__menu .components-dropdown-menu__menu-item.is-icon-only,.components-dropdown-menu__menu .components-menu-item.is-icon-only{width:auto}.components-dropdown-menu__menu .components-menu-item__button,.components-dropdown-menu__menu .components-menu-item__button.components-button{min-height:36px;height:auto;text-align:right;padding-right:8px;padding-left:8px}.components-dropdown-menu__menu .components-menu-group{padding:8px;margin:0 -8px}.components-dropdown-menu__menu .components-menu-group:first-child{margin-top:-8px}.components-dropdown-menu__menu .components-menu-group:last-child{margin-bottom:-8px}.components-dropdown-menu__menu .components-menu-group+.components-menu-group{margin-top:0;border-top:1px solid #ccc;padding:8px}.is-alternate .components-dropdown-menu__menu .components-menu-group+.components-menu-group{border-color:#1e1e1e}.components-font-size-picker__header__hint{margin-right:4px;color:#757575}.components-font-size-picker__header .components-button.is-small.has-icon:not(.has-text){min-width:24px;padding:0}.components-font-size-picker__controls{max-width:248px;align-items:center;margin-top:8px;margin-bottom:24px}.components-font-size-picker__controls .components-unit-control-wrapper .components-input-control__label{font-weight:300;padding-bottom:0!important;margin-bottom:8px!important}.components-font-size-picker__controls .components-custom-select-control__button{width:100%}.components-font-size-picker__controls .components-font-size-picker__number{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;padding:6px 8px;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;border:1px solid #757575;font-size:16px;line-height:normal;display:inline-block;font-weight:500;height:30px;margin:8px 0 0 8px;width:54px}@media (prefers-reduced-motion:reduce){.components-font-size-picker__controls .components-font-size-picker__number{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.components-font-size-picker__controls .components-font-size-picker__number{font-size:13px;line-height:normal}}.components-font-size-picker__controls .components-font-size-picker__number:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.components-font-size-picker__controls .components-font-size-picker__number::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.components-font-size-picker__controls .components-font-size-picker__number::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.components-font-size-picker__controls .components-font-size-picker__number:-ms-input-placeholder{color:rgba(30,30,30,.62)}.components-font-size-picker__controls .components-font-size-picker__number[value=""]+.components-button{cursor:default;opacity:.3;pointer-events:none}.components-font-size-picker__controls .components-font-size-picker__number-container{display:flex;flex-direction:column}.components-font-size-picker__controls .components-color-palette__clear{height:30px}.components-font-size-picker__custom-input .components-range-control__slider+.dashicon{width:30px;height:30px}.components-font-size-picker{border:0;padding:0;margin:0}.components-form-toggle{position:relative;display:inline-block}.components-form-toggle .components-form-toggle__track{content:"";display:inline-block;box-sizing:border-box;vertical-align:top;background-color:#fff;border:1px solid #1e1e1e;width:36px;height:18px;border-radius:9px;transition:background .2s ease}@media (prefers-reduced-motion:reduce){.components-form-toggle .components-form-toggle__track{transition-duration:0s;transition-delay:0s}}.components-form-toggle .components-form-toggle__thumb{display:block;position:absolute;box-sizing:border-box;top:3px;right:3px;width:12px;height:12px;border-radius:50%;transition:transform .1s ease;background-color:#1e1e1e;border:5px solid #1e1e1e}@media (prefers-reduced-motion:reduce){.components-form-toggle .components-form-toggle__thumb{transition-duration:0s;transition-delay:0s}}.components-form-toggle.is-checked .components-form-toggle__track{background-color:var(--wp-admin-theme-color);border:9px solid transparent}.components-form-toggle .components-form-toggle__input:focus+.components-form-toggle__track{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--wp-admin-theme-color);outline:2px solid transparent;outline-offset:2px}.components-form-toggle.is-checked .components-form-toggle__thumb{background-color:#fff;border-width:0;transform:translateX(-18px)}.components-disabled .components-form-toggle,.components-form-toggle.is-disabled{opacity:.3}.components-form-toggle input.components-form-toggle__input[type=checkbox]{position:absolute;top:0;right:0;width:100%;height:100%;opacity:0;margin:0;padding:0;z-index:1;border:none}.components-form-toggle input.components-form-toggle__input[type=checkbox]:checked{background:none}.components-form-toggle input.components-form-toggle__input[type=checkbox]:before{content:""}.components-form-token-field__input-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;border:1px solid #757575;font-size:16px;line-height:normal;display:flex;flex-wrap:wrap;align-items:center;width:100%;margin:0 0 8px;padding:2px 4px;cursor:text}@media (prefers-reduced-motion:reduce){.components-form-token-field__input-container{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.components-form-token-field__input-container{font-size:13px;line-height:normal}}.components-form-token-field__input-container:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.components-form-token-field__input-container::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.components-form-token-field__input-container::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.components-form-token-field__input-container:-ms-input-placeholder{color:rgba(30,30,30,.62)}.components-form-token-field__input-container.is-disabled{background:#ddd;border-color:#ddd}.components-form-token-field__input-container.is-active{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.components-form-token-field__input-container input[type=text].components-form-token-field__input{display:inline-block;flex:1;font-size:16px;width:100%;max-width:100%;margin-right:4px;padding:0;min-height:24px;min-width:50px;background:inherit;border:0;color:#1e1e1e;box-shadow:none}@media (min-width:600px){.components-form-token-field__input-container input[type=text].components-form-token-field__input{font-size:13px}}.components-form-token-field.is-active .components-form-token-field__input-container input[type=text].components-form-token-field__input,.components-form-token-field__input-container input[type=text].components-form-token-field__input:focus{outline:none;box-shadow:none}.components-form-token-field__input-container .components-form-token-field__token+input[type=text].components-form-token-field__input{width:auto}.components-form-token-field__label{display:inline-block;margin-bottom:4px}.components-form-token-field__help{font-size:12px;font-style:normal;color:#757575}.components-form-token-field__token{font-size:13px;display:flex;margin:2px 0 2px 4px;color:#1e1e1e;max-width:100%}.components-form-token-field__token.is-success .components-form-token-field__remove-token,.components-form-token-field__token.is-success .components-form-token-field__token-text{background:#4ab866}.components-form-token-field__token.is-error .components-form-token-field__remove-token,.components-form-token-field__token.is-error .components-form-token-field__token-text{background:#cc1818}.components-form-token-field__token.is-validating .components-form-token-field__remove-token,.components-form-token-field__token.is-validating .components-form-token-field__token-text{color:#757575}.components-form-token-field__token.is-borderless{position:relative;padding:0 0 0 16px}.components-form-token-field__token.is-borderless .components-form-token-field__token-text{background:transparent;color:var(--wp-admin-theme-color)}.components-form-token-field__token.is-borderless .components-form-token-field__remove-token{background:transparent;color:#757575;position:absolute;top:1px;left:0}.components-form-token-field__token.is-borderless.is-success .components-form-token-field__token-text{color:#4ab866}.components-form-token-field__token.is-borderless.is-error .components-form-token-field__token-text{color:#cc1818;border-radius:0 4px 4px 0;padding:0 6px 0 4px}.components-form-token-field__token.is-borderless.is-validating .components-form-token-field__token-text{color:#1e1e1e}.components-form-token-field__token.is-disabled .components-form-token-field__remove-token{cursor:default}.components-form-token-field__remove-token.components-button,.components-form-token-field__token-text{display:inline-block;line-height:24px;height:auto;background:#ddd;min-width:unset;transition:all .2s cubic-bezier(.4,1,.4,1)}@media (prefers-reduced-motion:reduce){.components-form-token-field__remove-token.components-button,.components-form-token-field__token-text{transition-duration:0s;transition-delay:0s;animation-duration:1ms;animation-delay:0s}}.components-form-token-field__token-text{border-radius:0 2px 2px 0;padding:0 8px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.components-form-token-field__remove-token.components-button{cursor:pointer;border-radius:2px 0 0 2px;padding:0 2px;color:#1e1e1e;line-height:10px;overflow:initial}.components-form-token-field__remove-token.components-button:hover{color:#1e1e1e}.components-form-token-field__suggestions-list{flex:1 0 100%;min-width:100%;max-height:9em;overflow-y:auto;transition:all .15s ease-in-out;list-style:none;border-top:1px solid #757575;margin:4px -4px -4px;padding:0}@media (prefers-reduced-motion:reduce){.components-form-token-field__suggestions-list{transition-duration:0s;transition-delay:0s}}.components-form-token-field__suggestion{color:#757575;display:block;font-size:13px;padding:4px 8px;margin:0;cursor:pointer}.components-form-token-field__suggestion.is-selected{background:var(--wp-admin-theme-color);color:#fff}.components-form-token-field__suggestion-match{text-decoration:underline}@media (min-width:600px){.components-guide{width:600px}}.components-guide .components-modal__content{padding:0;margin-top:0;border-radius:2px}.components-guide .components-modal__content:before{content:none}.components-guide .components-modal__header{border-bottom:none;padding:0;position:sticky}.components-guide .components-modal__header .components-button{align-self:flex-start;margin:8px 0 0 8px;position:static}.components-guide .components-modal__header .components-button:hover svg{fill:#fff}.components-guide__container{display:flex;flex-direction:column;justify-content:space-between;margin-top:-60px;min-height:100%}.components-guide__page{display:flex;flex-direction:column;justify-content:center;position:relative}@media (min-width:600px){.components-guide__page{min-height:300px}}.components-guide__footer{align-content:center;display:flex;height:30px;justify-content:center;margin:0 0 24px;padding:0 32px;position:relative;width:100%}.components-guide__page-control{margin:0;text-align:center}.components-guide__page-control li{display:inline-block;margin:0}.components-guide__page-control .components-button{height:30px;min-width:20px;margin:-6px 0}.components-modal__frame.components-guide{border:none;min-width:312px;height:80vh;max-height:575px}@media (max-width:600px){.components-modal__frame.components-guide{margin:auto;max-width:calc(100vw - 32px)}}.components-button.components-guide__back-button,.components-button.components-guide__finish-button,.components-button.components-guide__forward-button{height:30px;position:absolute}.components-button.components-guide__back-button,.components-button.components-guide__forward-button{font-size:13px;padding:4px 2px}.components-button.components-guide__back-button.has-text svg,.components-button.components-guide__forward-button.has-text svg{margin:0}.components-button.components-guide__back-button:hover,.components-button.components-guide__forward-button:hover{text-decoration:underline}.components-button.components-guide__back-button{right:32px}.components-button.components-guide__forward-button{left:32px;color:#1386bf;font-weight:700}.components-button.components-guide__finish-button{left:32px}.components-button.components-guide__inline-finish-button{display:none}[role=region]{position:relative}.is-focusing-regions [role=region]:focus:after{content:"";position:absolute;top:0;bottom:0;right:0;left:0;pointer-events:none;outline:4px solid transparent;box-shadow:inset 0 0 0 4px var(--wp-admin-theme-color)}@supports (outline-offset:1px){.is-focusing-regions [role=region]:focus:after{content:none}.is-focusing-regions [role=region]:focus{outline-style:solid;outline-color:var(--wp-admin-theme-color);outline-width:4px;outline-offset:-4px}}.components-menu-group+.components-menu-group{margin-top:8px;padding-top:8px;border-top:1px solid #1e1e1e}.components-menu-group+.components-menu-group.has-hidden-separator{border-top:none;margin-top:0;padding-top:0}.components-menu-group__label{padding:0 8px;margin-top:4px;margin-bottom:12px;color:#757575;text-transform:uppercase;font-size:11px;font-weight:500;white-space:nowrap}.components-menu-item__button,.components-menu-item__button.components-button{width:100%}.components-menu-item__button.components-button[role=menuitemcheckbox] .components-menu-item__item:only-child,.components-menu-item__button.components-button[role=menuitemradio] .components-menu-item__item:only-child,.components-menu-item__button[role=menuitemcheckbox] .components-menu-item__item:only-child,.components-menu-item__button[role=menuitemradio] .components-menu-item__item:only-child{padding-left:48px}.components-menu-item__button.components-button .components-menu-items__item-icon,.components-menu-item__button .components-menu-items__item-icon{display:inline-block;flex:0 0 auto}.components-menu-item__button.components-button .components-menu-items__item-icon.has-icon-right,.components-menu-item__button .components-menu-items__item-icon.has-icon-right{margin-left:-2px;margin-right:24px}.components-menu-item__button.components-button .components-menu-item__shortcut+.components-menu-items__item-icon.has-icon-right,.components-menu-item__button .components-menu-item__shortcut+.components-menu-items__item-icon.has-icon-right{margin-right:8px}.components-menu-item__button .block-editor-block-icon,.components-menu-item__button.components-button .block-editor-block-icon{margin-right:-2px;margin-left:8px}.components-menu-item__button.components-button.is-primary,.components-menu-item__button.is-primary{justify-content:center}.components-menu-item__button.components-button.is-primary .components-menu-item__item,.components-menu-item__button.is-primary .components-menu-item__item{margin-left:0}.components-menu-item__info-wrapper{display:flex;flex-direction:column;margin-left:auto}.components-menu-item__info{margin-top:4px;font-size:12px;color:#757575;white-space:normal}.components-menu-item__item{white-space:nowrap;min-width:160px;margin-left:auto;display:inline-flex;align-items:center}.components-menu-item__shortcut{align-self:center;margin-left:0;margin-right:auto;padding-right:24px;color:currentColor;display:none}@media (min-width:480px){.components-menu-item__shortcut{display:inline}}.components-menu-items-choice.components-button svg,.components-menu-items-choice svg{margin-left:12px}.components-menu-items-choice.components-button.has-icon,.components-menu-items-choice.has-icon{padding-right:12px}.components-modal__screen-overlay{position:fixed;top:0;left:0;bottom:0;right:0;background-color:rgba(0,0,0,.35);z-index:100000;display:flex;animation:edit-post__fade-in-animation .2s ease-out 0s;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.components-modal__screen-overlay{animation-duration:1ms;animation-delay:0s}}.components-modal__frame{margin:0;width:100%;background:#fff;box-shadow:0 10px 10px rgba(0,0,0,.25);border-radius:2px;overflow:hidden;display:flex}@media (min-width:600px){.components-modal__frame{margin:auto;width:auto;min-width:360px;max-width:calc(100% - 32px);max-height:calc(100% - 120px);animation:components-modal__appear-animation .1s ease-out;animation-fill-mode:forwards}}@media (min-width:600px) and (prefers-reduced-motion:reduce){.components-modal__frame{animation-duration:1ms;animation-delay:0s}}@media (min-width:600px){.components-modal__frame.is-full-screen{width:90vw;min-height:90vh}}@media (min-width:960px){.components-modal__frame{max-height:70%}}@keyframes components-modal__appear-animation{0%{transform:translateY(32px)}to{transform:translateY(0)}}.components-modal__header{box-sizing:border-box;border-bottom:1px solid #ddd;padding:0 32px;display:flex;flex-direction:row;justify-content:space-between;align-items:center;height:60px;width:100%;z-index:10;position:absolute;top:0;right:0}.components-modal__header .components-modal__header-heading{font-size:1rem;font-weight:600}.components-modal__header h1{line-height:1;margin:0}.components-modal__header .components-button{position:relative;right:8px}.components-modal__header-heading-container{align-items:center;flex-grow:1;display:flex;flex-direction:row;justify-content:left}.components-modal__header-icon-container{display:inline-block}.components-modal__header-icon-container svg{max-width:36px;max-height:36px;padding:8px}.components-modal__content{flex:1;margin-top:60px;padding:0 32px 24px;overflow:auto}.components-modal__content:before{content:"";display:block;margin-bottom:24px}.components-notice{display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;background-color:#fff;border-right:4px solid var(--wp-admin-theme-color);margin:5px 15px 2px;padding:8px 12px;align-items:center}.components-notice.is-dismissible{padding-left:36px;position:relative}.components-notice.is-success{border-right-color:#4ab866;background-color:#eff9f1}.components-notice.is-warning{border-right-color:#f0b849;background-color:#fef8ee}.components-notice.is-error{border-right-color:#cc1818;background-color:#f4a2a2}.components-notice__content{flex-grow:1;margin:4px 0 4px 25px}.components-notice__actions{display:flex;flex-wrap:wrap}.components-notice__action.components-button{margin-left:8px}.components-notice__action.components-button,.components-notice__action.components-button.is-link{margin-right:12px}.components-notice__action.components-button.is-secondary{vertical-align:initial}.components-notice__dismiss{color:#757575;align-self:flex-start;flex-shrink:0}.components-notice__dismiss:not(:disabled):not([aria-disabled=true]):focus,.components-notice__dismiss:not(:disabled):not([aria-disabled=true]):not(.is-secondary):active,.components-notice__dismiss:not(:disabled):not([aria-disabled=true]):not(.is-secondary):hover{color:#1e1e1e;background-color:transparent}.components-notice__dismiss:not(:disabled):not([aria-disabled=true]):not(.is-secondary):hover{box-shadow:none}.components-notice-list{max-width:100vw;box-sizing:border-box}.components-notice-list .components-notice__content{margin-top:12px;margin-bottom:12px;line-height:2}.components-notice-list .components-notice__action.components-button{display:block;margin-right:0;margin-top:8px}.components-panel{background:#fff;border:1px solid #e0e0e0}.components-panel>.components-panel__body:first-child,.components-panel>.components-panel__header:first-child{margin-top:-1px}.components-panel>.components-panel__body:last-child,.components-panel>.components-panel__header:last-child{border-bottom-width:0}.components-panel+.components-panel{margin-top:-1px}.components-panel__body{border-top:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0}.components-panel__body h3{margin:0 0 .5em}.components-panel__body.is-opened{padding:16px}.components-panel__header{display:flex;justify-content:space-between;align-items:center;padding:0 16px;height:48px;border-bottom:1px solid #ddd}.components-panel__header h2{margin:0;font-size:inherit;color:inherit}.components-panel__body+.components-panel__body,.components-panel__body+.components-panel__header,.components-panel__header+.components-panel__body,.components-panel__header+.components-panel__header{margin-top:-1px}.components-panel__body>.components-panel__body-title{display:block;padding:0;font-size:inherit;margin-top:0;margin-bottom:0;transition:background .1s ease-in-out}@media (prefers-reduced-motion:reduce){.components-panel__body>.components-panel__body-title{transition-duration:0s;transition-delay:0s}}.components-panel__body.is-opened>.components-panel__body-title{margin:-16px -16px 5px}.components-panel__body>.components-panel__body-title:hover{background:#f0f0f0;border:none}.components-panel__body-toggle.components-button{position:relative;padding:16px 16px 16px 48px;outline:none;width:100%;font-weight:500;text-align:right;color:#1e1e1e;border:none;box-shadow:none;transition:background .1s ease-in-out;height:auto}@media (prefers-reduced-motion:reduce){.components-panel__body-toggle.components-button{transition-duration:0s;transition-delay:0s}}.components-panel__body-toggle.components-button:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);border-radius:0}.components-panel__body-toggle.components-button .components-panel__arrow{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#1e1e1e;fill:currentColor;transition:color .1s ease-in-out}@media (prefers-reduced-motion:reduce){.components-panel__body-toggle.components-button .components-panel__arrow{transition-duration:0s;transition-delay:0s}}body.rtl .components-panel__body-toggle.components-button .dashicons-arrow-right{transform:scaleX(-1);-ms-filter:fliph;filter:FlipH;margin-top:-10px}.components-panel__icon{color:#757575;margin:-2px 6px -2px 0}.components-panel__body-toggle-icon{margin-left:-5px}.components-panel__color-title{float:right;height:19px}.components-panel__row{display:flex;justify-content:space-between;align-items:center;margin-top:8px;min-height:36px}.components-panel__row select{min-width:0}.components-panel__row label{margin-left:12px;flex-shrink:0;max-width:75%}.components-panel__row:empty,.components-panel__row:first-of-type{margin-top:0}.components-panel .circle-picker{padding-bottom:20px}.components-placeholder.components-placeholder{box-sizing:border-box;position:relative;padding:1em;min-height:200px;width:100%;text-align:right;margin:0;color:#1e1e1e;-moz-font-smoothing:subpixel-antialiased;-webkit-font-smoothing:subpixel-antialiased;border-radius:2px;background-color:#fff;box-shadow:inset 0 0 0 1px #1e1e1e;outline:1px solid transparent}@supports (position:sticky){.components-placeholder.components-placeholder{display:flex;flex-direction:column;justify-content:center;align-items:flex-start}}.components-placeholder.components-placeholder .components-base-control__label{font-size:13px}.components-placeholder__error,.components-placeholder__fieldset,.components-placeholder__instructions,.components-placeholder__label{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px}.components-placeholder__label{display:flex;font-weight:600;margin-bottom:16px;align-items:center}.components-placeholder__label .block-editor-block-icon,.components-placeholder__label .dashicon,.components-placeholder__label>svg{margin-left:1ch;fill:currentColor}@media (forced-colors:active){.components-placeholder__label .block-editor-block-icon,.components-placeholder__label .dashicon,.components-placeholder__label>svg{fill:CanvasText}}.components-placeholder__label:empty{display:none}.components-placeholder__fieldset,.components-placeholder__fieldset form{display:flex;flex-direction:row;width:100%;flex-wrap:wrap}.components-placeholder__fieldset form p,.components-placeholder__fieldset p{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px}.components-placeholder__fieldset.is-column-layout,.components-placeholder__fieldset.is-column-layout form{flex-direction:column}.components-placeholder__input[type=url]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;padding:6px 8px;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;border:1px solid #757575;font-size:16px;line-height:normal;margin:0 0 0 8px;flex:1 1 auto}@media (prefers-reduced-motion:reduce){.components-placeholder__input[type=url]{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.components-placeholder__input[type=url]{font-size:13px;line-height:normal}}.components-placeholder__input[type=url]:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.components-placeholder__input[type=url]::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.components-placeholder__input[type=url]::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.components-placeholder__input[type=url]:-ms-input-placeholder{color:rgba(30,30,30,.62)}.components-placeholder__instructions{margin-bottom:1em}.components-placeholder__error{margin-top:1em;width:100%}.components-placeholder__preview img{margin:3%;width:50%}.components-placeholder__fieldset .components-button{margin-left:12px;margin-bottom:12px}.components-placeholder__fieldset .components-button:last-child{margin-bottom:0;margin-left:0}.components-placeholder__fieldset .components-button:not(.is-link)~.components-button.is-link{margin-right:10px;margin-left:10px}.components-placeholder__fieldset .components-button:not(.is-link)~.components-button.is-link:last-child{margin-left:0}.components-placeholder.is-large .components-placeholder__label{font-size:18pt;font-weight:400}.components-placeholder.is-medium .components-placeholder__instructions,.components-placeholder.is-small .components-placeholder__instructions{display:none}.components-placeholder.is-medium .components-placeholder__fieldset,.components-placeholder.is-medium .components-placeholder__fieldset form,.components-placeholder.is-small .components-placeholder__fieldset,.components-placeholder.is-small .components-placeholder__fieldset form{flex-direction:column}.components-placeholder.is-medium .components-placeholder__fieldset .components-button,.components-placeholder.is-small .components-placeholder__fieldset .components-button{margin-left:auto}.components-placeholder.is-small .components-button{padding:0 8px 2px}.components-popover{position:fixed;z-index:1000000;top:0;left:0;opacity:0}.components-popover.is-expanded,.components-popover[data-x-axis][data-y-axis]{opacity:1}.components-popover.is-expanded{top:0;left:0;right:0;bottom:0;z-index:1000000!important}.components-popover:not(.is-without-arrow){margin-left:2px}.components-popover:not(.is-without-arrow):before{border:8px solid #ccc}.components-popover:not(.is-without-arrow).is-alternate:before{border-color:#1e1e1e}.components-popover:not(.is-without-arrow):after{border:8px solid #fff}.components-popover:not(.is-without-arrow):after,.components-popover:not(.is-without-arrow):before{content:"";position:absolute;height:0;width:0;line-height:0}.components-popover:not(.is-without-arrow)[data-y-axis=top]{margin-top:-8px}.components-popover:not(.is-without-arrow)[data-y-axis=top]:before{bottom:-8px}.components-popover:not(.is-without-arrow)[data-y-axis=top]:after{bottom:-6px}.components-popover:not(.is-without-arrow)[data-y-axis=top]:after,.components-popover:not(.is-without-arrow)[data-y-axis=top]:before{border-bottom:none;border-left-color:transparent;border-right-color:transparent;border-top-style:solid;margin-left:-10px}.components-popover:not(.is-without-arrow)[data-y-axis=bottom]{margin-top:8px}.components-popover:not(.is-without-arrow)[data-y-axis=bottom]:before{top:-8px}.components-popover:not(.is-without-arrow)[data-y-axis=bottom]:after{top:-6px}.components-popover:not(.is-without-arrow)[data-y-axis=bottom]:after,.components-popover:not(.is-without-arrow)[data-y-axis=bottom]:before{border-bottom-style:solid;border-left-color:transparent;border-right-color:transparent;border-top:none;margin-left:-10px}.components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=left]{margin-left:-8px}.components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=left]:before{right:-8px}.components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=left]:after{right:-6px}.components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=left]:after,.components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=left]:before{border-bottom-color:transparent;border-left-style:solid;border-right:none;border-top-color:transparent}.components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=right]{margin-left:8px}.components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=right]:before{left:-8px}.components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=right]:after{left:-6px}.components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=right]:after,.components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=right]:before{border-bottom-color:transparent;border-left:none;border-right-style:solid;border-top-color:transparent}.components-popover[data-y-axis=top]{bottom:100%}.components-popover[data-y-axis=bottom]{top:100%}.components-popover[data-y-axis=middle]{align-items:center;display:flex}.components-popover.is-from-top{margin-top:12px}.components-popover.is-from-bottom{margin-top:-12px}.components-popover.is-from-left:not(.is-from-top):not(.is-from-bottom){margin-left:12px}.components-popover.is-from-right:not(.is-from-top):not(.is-from-bottom){margin-right:12px}.components-popover__content{height:100%;background:#fff;border:1px solid #ccc;box-shadow:0 2px 6px rgba(0,0,0,.05);border-radius:2px}.is-alternate .components-popover__content{border:1px solid #1e1e1e;box-shadow:none}.components-popover .components-popover__content{position:absolute;height:auto;overflow-y:auto}.components-popover.is-expanded .components-popover__content{position:static;height:calc(100% - 48px);overflow-y:visible;min-width:auto;border:none;border-top:1px solid #1e1e1e}.components-popover[data-y-axis=top] .components-popover__content{bottom:100%}.components-popover[data-x-axis=center] .components-popover__content{left:50%;transform:translateX(-50%)}.components-popover[data-x-axis=right] .components-popover__content{position:absolute;left:100%}.components-popover:not([data-y-axis=middle])[data-x-axis=right] .components-popover__content{margin-left:-25px}.components-popover[data-x-axis=left] .components-popover__content{position:absolute;right:100%}.components-popover:not([data-y-axis=middle])[data-x-axis=left] .components-popover__content{margin-right:-25px}.components-popover__header{align-items:center;background:#fff;display:flex;height:48px;justify-content:space-between;padding:0 8px 0 16px}.components-popover__header-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.components-popover__close.components-button{z-index:5}.components-radio-control{display:flex;flex-direction:column}.components-radio-control .components-base-control__help{margin-top:0}.components-radio-control .components-base-control__field{margin-bottom:0}.components-radio-control__option:not(:last-child){margin-bottom:4px}.components-radio-control__input[type=radio]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;padding:6px 8px;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;font-size:16px;line-height:normal;border:1px solid #1e1e1e;transition:none;border-radius:50%;width:24px;height:24px;margin-top:0;margin-left:6px}@media (prefers-reduced-motion:reduce){.components-radio-control__input[type=radio]{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.components-radio-control__input[type=radio]{font-size:13px;line-height:normal}}.components-radio-control__input[type=radio]:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color)}.components-radio-control__input[type=radio]::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.components-radio-control__input[type=radio]::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.components-radio-control__input[type=radio]:-ms-input-placeholder{color:rgba(30,30,30,.62)}@media (min-width:600px){.components-radio-control__input[type=radio]{height:20px;width:20px}}.components-radio-control__input[type=radio]:checked:before{box-sizing:inherit;width:8px;height:8px;transform:translate(-7px,7px);margin:0;background-color:#fff;border:4px solid #fff}@media (min-width:600px){.components-radio-control__input[type=radio]:checked:before{transform:translate(-5px,5px)}}.components-radio-control__input[type=radio]:focus{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--wp-admin-theme-color);outline:2px solid transparent}.components-radio-control__input[type=radio]:checked{background:var(--wp-admin-theme-color);border-color:var(--wp-admin-theme-color)}.components-resizable-box__handle{display:none;width:23px;height:23px;z-index:2}.components-resizable-box__container.has-show-handle .components-resizable-box__handle{display:block}.components-resizable-box__container>img{width:inherit}.components-resizable-box__handle:after{display:block;content:"";width:15px;height:15px;border-radius:50%;background:#fff;cursor:inherit;position:absolute;top:calc(50% - 8px);left:calc(50% - 8px);box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);outline:2px solid transparent}.components-resizable-box__side-handle:before{display:block;border-radius:2px;content:"";width:3px;height:3px;background:var(--wp-admin-theme-color);cursor:inherit;position:absolute;top:calc(50% - 1px);left:calc(50% - 1px);transition:transform .1s ease-in;opacity:0}@media (prefers-reduced-motion:reduce){.components-resizable-box__side-handle:before{transition-duration:0s;transition-delay:0s}}.components-resizable-box__corner-handle,.components-resizable-box__side-handle{z-index:2}.components-resizable-box__side-handle.components-resizable-box__handle-bottom,.components-resizable-box__side-handle.components-resizable-box__handle-bottom:before,.components-resizable-box__side-handle.components-resizable-box__handle-top,.components-resizable-box__side-handle.components-resizable-box__handle-top:before{width:100%;right:0;border-right:0;border-left:0}.components-resizable-box__side-handle.components-resizable-box__handle-left,.components-resizable-box__side-handle.components-resizable-box__handle-left:before,.components-resizable-box__side-handle.components-resizable-box__handle-right,.components-resizable-box__side-handle.components-resizable-box__handle-right:before{height:100%;top:0;border-top:0;border-bottom:0}.components-resizable-box__side-handle.components-resizable-box__handle-bottom:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-bottom:hover:before,.components-resizable-box__side-handle.components-resizable-box__handle-top:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-top:hover:before{animation:components-resizable-box__top-bottom-animation .1s ease-out 0s;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.components-resizable-box__side-handle.components-resizable-box__handle-bottom:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-bottom:hover:before,.components-resizable-box__side-handle.components-resizable-box__handle-top:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-top:hover:before{animation-duration:1ms;animation-delay:0s}}.components-resizable-box__side-handle.components-resizable-box__handle-left:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-left:hover:before,.components-resizable-box__side-handle.components-resizable-box__handle-right:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-right:hover:before{animation:components-resizable-box__left-right-animation .1s ease-out 0s;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.components-resizable-box__side-handle.components-resizable-box__handle-left:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-left:hover:before,.components-resizable-box__side-handle.components-resizable-box__handle-right:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-right:hover:before{animation-duration:1ms;animation-delay:0s}}@media not all and (-webkit-min-device-pixel-ratio:0),not all and (min-resolution:0.001dpcm){@supports (-webkit-appearance:none){.components-resizable-box__side-handle.components-resizable-box__handle-bottom:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-bottom:hover:before,.components-resizable-box__side-handle.components-resizable-box__handle-left:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-left:hover:before,.components-resizable-box__side-handle.components-resizable-box__handle-right:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-right:hover:before,.components-resizable-box__side-handle.components-resizable-box__handle-top:active:before,.components-resizable-box__side-handle.components-resizable-box__handle-top:hover:before{animation:none}}}@keyframes components-resizable-box__top-bottom-animation{0%{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}@keyframes components-resizable-box__left-right-animation{0%{transform:scaleY(0);opacity:0}to{transform:scaleY(1);opacity:1}}.components-resizable-box__handle-right{right:-11.5px}.components-resizable-box__handle-left{left:-11.5px}.components-resizable-box__handle-top{top:-11.5px}.components-resizable-box__handle-bottom{bottom:-11.5px}.components-responsive-wrapper{position:relative;max-width:100%}.components-responsive-wrapper,.components-responsive-wrapper>span{display:block}.components-responsive-wrapper__content{position:absolute;top:0;left:0;bottom:0;right:0;width:100%;height:100%;margin:auto}.components-sandbox{overflow:hidden}iframe.components-sandbox{width:100%}body.lockscroll,html.lockscroll{overflow:hidden}.components-search-control{position:relative}.components-search-control input[type=search].components-search-control__input{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;line-height:normal;display:block;padding:16px 16px 16px 48px;background:#f0f0f0;border:none;width:100%;height:48px;font-size:16px}@media (prefers-reduced-motion:reduce){.components-search-control input[type=search].components-search-control__input{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.components-search-control input[type=search].components-search-control__input{font-size:13px;line-height:normal}}.components-search-control input[type=search].components-search-control__input:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.components-search-control input[type=search].components-search-control__input::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.components-search-control input[type=search].components-search-control__input::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.components-search-control input[type=search].components-search-control__input:-ms-input-placeholder{color:rgba(30,30,30,.62)}@media (min-width:600px){.components-search-control input[type=search].components-search-control__input{font-size:13px}}.components-search-control input[type=search].components-search-control__input:focus{background:#fff;box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.components-search-control input[type=search].components-search-control__input::placeholder{color:#757575}.components-search-control input[type=search].components-search-control__input::-webkit-search-cancel-button,.components-search-control input[type=search].components-search-control__input::-webkit-search-decoration,.components-search-control input[type=search].components-search-control__input::-webkit-search-results-button,.components-search-control input[type=search].components-search-control__input::-webkit-search-results-decoration{-webkit-appearance:none}.components-search-control__icon{position:absolute;top:0;left:12px;bottom:0;display:flex;align-items:center}.components-search-control__icon>svg{margin:8px 0}.components-search-control__input-wrapper{position:relative}.components-select-control__input{background:#fff;height:36px;line-height:36px;margin:1px;outline:0;width:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)!important}@media (min-width:782px){.components-select-control__input{height:28px;line-height:28px}}@media (max-width:782px){.components-base-control .components-base-control__field .components-select-control__input{font-size:16px}}.components-snackbar{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;background-color:#1e1e1e;border-radius:2px;box-shadow:0 2px 4px rgba(0,0,0,.3);color:#fff;padding:16px 24px;width:100%;max-width:600px;box-sizing:border-box;cursor:pointer;pointer-events:auto}@media (min-width:600px){.components-snackbar{width:-moz-fit-content;width:fit-content}}.components-snackbar:focus{box-shadow:0 0 0 1px #fff,0 0 0 3px var(--wp-admin-theme-color)}.components-snackbar.components-snackbar-explicit-dismiss{cursor:default}.components-snackbar .components-snackbar__content-with-icon{margin-right:24px}.components-snackbar .components-snackbar__icon{position:absolute;top:24px;right:28px}.components-snackbar .components-snackbar__dismiss-button{margin-right:32px;cursor:pointer}.components-snackbar__action.components-button{margin-right:32px;color:#fff;height:auto;flex-shrink:0;line-height:1.4;padding:0}.components-snackbar__action.components-button:not(:disabled):not([aria-disabled=true]):not(.is-secondary){text-decoration:underline;background-color:transparent}.components-snackbar__action.components-button:not(:disabled):not([aria-disabled=true]):not(.is-secondary):focus{color:#fff;box-shadow:none;outline:1px dotted #fff}.components-snackbar__action.components-button:not(:disabled):not([aria-disabled=true]):not(.is-secondary):hover{color:var(--wp-admin-theme-color)}.components-snackbar__content{display:flex;align-items:baseline;justify-content:space-between;line-height:1.4}.components-snackbar-list{position:absolute;z-index:100000;width:100%;box-sizing:border-box;pointer-events:none}.components-snackbar-list__notice-container{position:relative;padding-top:8px}.components-swatch{width:18px;height:18px;border-radius:50%;color:transparent;background:transparent}.components-swatch:after{content:"";display:block;width:100%;height:100%;border:1px solid rgba(0,0,0,.2);border-radius:50%}.components-button.has-icon.has-text .components-swatch{margin-left:8px}.components-tab-panel__tabs{display:flex;align-items:stretch;flex-direction:row}.components-tab-panel__tabs[aria-orientation=vertical]{flex-direction:column}.components-tab-panel__tabs-item{background:transparent;border:none;box-shadow:none;border-radius:0;cursor:pointer;height:48px;padding:3px 16px;margin-right:0;font-weight:500;transition:box-shadow .1s linear;box-sizing:border-box}.components-tab-panel__tabs-item:after{content:attr(data-label);display:block;height:0;overflow:hidden;speak:none;visibility:hidden}.components-tab-panel__tabs-item:focus:not(:disabled){box-shadow:inset 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.components-tab-panel__tabs-item.is-active{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) transparent,inset 0 -4px 0 0 var(--wp-admin-theme-color);position:relative}.components-tab-panel__tabs-item.is-active:before{content:"";position:absolute;top:0;bottom:1px;left:0;right:0;border-bottom:4px solid transparent}.components-tab-panel__tabs-item:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.components-tab-panel__tabs-item.is-active:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 -4px 0 0 var(--wp-admin-theme-color)}.components-text-control__input,.components-text-control__input[type=color],.components-text-control__input[type=date],.components-text-control__input[type=datetime-local],.components-text-control__input[type=datetime],.components-text-control__input[type=email],.components-text-control__input[type=month],.components-text-control__input[type=number],.components-text-control__input[type=password],.components-text-control__input[type=tel],.components-text-control__input[type=text],.components-text-control__input[type=time],.components-text-control__input[type=url],.components-text-control__input[type=week]{width:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;padding:6px 8px;box-shadow:0 0 0 transparent;transition:box-shadow .1s linear;border-radius:2px;border:1px solid #757575;font-size:16px;line-height:normal}@media (prefers-reduced-motion:reduce){.components-text-control__input,.components-text-control__input[type=color],.components-text-control__input[type=date],.components-text-control__input[type=datetime-local],.components-text-control__input[type=datetime],.components-text-control__input[type=email],.components-text-control__input[type=month],.components-text-control__input[type=number],.components-text-control__input[type=password],.components-text-control__input[type=tel],.components-text-control__input[type=text],.components-text-control__input[type=time],.components-text-control__input[type=url],.components-text-control__input[type=week]{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.components-text-control__input,.components-text-control__input[type=color],.components-text-control__input[type=date],.components-text-control__input[type=datetime-local],.components-text-control__input[type=datetime],.components-text-control__input[type=email],.components-text-control__input[type=month],.components-text-control__input[type=number],.components-text-control__input[type=password],.components-text-control__input[type=tel],.components-text-control__input[type=text],.components-text-control__input[type=time],.components-text-control__input[type=url],.components-text-control__input[type=week]{font-size:13px;line-height:normal}}.components-text-control__input:focus,.components-text-control__input[type=color]:focus,.components-text-control__input[type=date]:focus,.components-text-control__input[type=datetime-local]:focus,.components-text-control__input[type=datetime]:focus,.components-text-control__input[type=email]:focus,.components-text-control__input[type=month]:focus,.components-text-control__input[type=number]:focus,.components-text-control__input[type=password]:focus,.components-text-control__input[type=tel]:focus,.components-text-control__input[type=text]:focus,.components-text-control__input[type=time]:focus,.components-text-control__input[type=url]:focus,.components-text-control__input[type=week]:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 1px var(--wp-admin-theme-color);outline:2px solid transparent}.components-text-control__input::-webkit-input-placeholder,.components-text-control__input[type=color]::-webkit-input-placeholder,.components-text-control__input[type=date]::-webkit-input-placeholder,.components-text-control__input[type=datetime-local]::-webkit-input-placeholder,.components-text-control__input[type=datetime]::-webkit-input-placeholder,.components-text-control__input[type=email]::-webkit-input-placeholder,.components-text-control__input[type=month]::-webkit-input-placeholder,.components-text-control__input[type=number]::-webkit-input-placeholder,.components-text-control__input[type=password]::-webkit-input-placeholder,.components-text-control__input[type=tel]::-webkit-input-placeholder,.components-text-control__input[type=text]::-webkit-input-placeholder,.components-text-control__input[type=time]::-webkit-input-placeholder,.components-text-control__input[type=url]::-webkit-input-placeholder,.components-text-control__input[type=week]::-webkit-input-placeholder{color:rgba(30,30,30,.62)}.components-text-control__input::-moz-placeholder,.components-text-control__input[type=color]::-moz-placeholder,.components-text-control__input[type=date]::-moz-placeholder,.components-text-control__input[type=datetime-local]::-moz-placeholder,.components-text-control__input[type=datetime]::-moz-placeholder,.components-text-control__input[type=email]::-moz-placeholder,.components-text-control__input[type=month]::-moz-placeholder,.components-text-control__input[type=number]::-moz-placeholder,.components-text-control__input[type=password]::-moz-placeholder,.components-text-control__input[type=tel]::-moz-placeholder,.components-text-control__input[type=text]::-moz-placeholder,.components-text-control__input[type=time]::-moz-placeholder,.components-text-control__input[type=url]::-moz-placeholder,.components-text-control__input[type=week]::-moz-placeholder{opacity:1;color:rgba(30,30,30,.62)}.components-text-control__input:-ms-input-placeholder,.components-text-control__input[type=color]:-ms-input-placeholder,.components-text-control__input[type=date]:-ms-input-placeholder,.components-text-control__input[type=datetime-local]:-ms-input-placeholder,.components-text-control__input[type=datetime]:-ms-input-placeholder,.components-text-control__input[type=email]:-ms-input-placeholder,.components-text-control__input[type=month]:-ms-input-placeholder,.components-text-control__input[type=number]:-ms-input-placeholder,.components-text-control__input[type=password]:-ms-input-placeholder,.components-text-control__input[type=tel]:-ms-input-placeholder,.components-text-control__input[type=text]:-ms-input-placeholder,.components-text-control__input[type=time]:-ms-input-placeholder,.components-text-control__input[type=url]:-ms-input-placeholder,.components-text-control__input[type=week]:-ms-input-placeholder{color:rgba(30,30,30,.62)}.components-tip{display:flex;color:#757575}.components-tip svg{align-self:center;fill:#f0b849;flex-shrink:0;margin-left:16px}.components-tip p{margin:0}.components-toggle-control .components-base-control__field{display:flex;margin-bottom:12px;line-height:normal;align-items:center}.components-toggle-control .components-base-control__field .components-form-toggle{margin-left:12px}.components-toggle-control .components-base-control__field .components-toggle-control__label{display:block}.components-accessible-toolbar{display:inline-flex;border:1px solid #1e1e1e;border-radius:2px;flex-shrink:0}.components-accessible-toolbar>.components-toolbar-group:last-child{border-left:none}.components-accessible-toolbar .components-button,.components-toolbar .components-button{position:relative;height:48px;z-index:1;padding-right:16px;padding-left:16px}.components-accessible-toolbar .components-button:focus:enabled,.components-toolbar .components-button:focus:enabled{box-shadow:none;outline:none}.components-accessible-toolbar .components-button:before,.components-toolbar .components-button:before{content:"";position:absolute;display:block;border-radius:2px;height:32px;right:8px;left:8px;z-index:-1;animation:components-button__appear-animation .1s ease;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.components-accessible-toolbar .components-button:before,.components-toolbar .components-button:before{animation-duration:1ms;animation-delay:0s}}.components-accessible-toolbar .components-button svg,.components-toolbar .components-button svg{position:relative;margin-right:auto;margin-left:auto}.components-accessible-toolbar .components-button.is-pressed,.components-accessible-toolbar .components-button.is-pressed:hover,.components-toolbar .components-button.is-pressed,.components-toolbar .components-button.is-pressed:hover{background:transparent}.components-accessible-toolbar .components-button.is-pressed:before,.components-toolbar .components-button.is-pressed:before{background:#1e1e1e}.components-accessible-toolbar .components-button:focus:before,.components-toolbar .components-button:focus:before{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 0 0 4px #fff;outline:2px solid transparent}.components-accessible-toolbar .components-button.has-icon.has-icon,.components-toolbar .components-button.has-icon.has-icon{padding-right:12px;padding-left:12px;min-width:48px}.components-accessible-toolbar .components-button.components-tab-button,.components-toolbar .components-button.components-tab-button{font-weight:500}.components-accessible-toolbar .components-button.components-tab-button span,.components-toolbar .components-button.components-tab-button span{display:inline-block;padding-right:0;padding-left:0;position:relative}@keyframes components-button__appear-animation{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.components-toolbar__control.components-button{position:relative}.components-toolbar__control.components-button[data-subscript] svg{padding:5px 0 5px 10px}.components-toolbar__control.components-button[data-subscript]:after{content:attr(data-subscript);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;font-weight:600;line-height:12px;position:absolute;left:8px;bottom:10px}.components-toolbar__control.components-button:active:before{display:none}.components-toolbar__control.components-button:not(:disabled).is-pressed[data-subscript]:after{color:#fff}.components-toolbar-group{min-height:48px;border-left:1px solid #1e1e1e;background-color:#fff;display:inline-flex;flex-shrink:0;flex-wrap:wrap;line-height:0}.components-toolbar-group .components-toolbar-group.components-toolbar-group{border-width:0;margin:0}.components-toolbar{min-height:48px;margin:0;border:1px solid #1e1e1e;background-color:#fff;display:inline-flex;flex-shrink:0;flex-wrap:wrap}.components-toolbar .components-toolbar.components-toolbar{border-width:0;margin:0}div.components-toolbar>div{display:block;margin:0}@supports (position:sticky){div.components-toolbar>div{display:flex}}div.components-toolbar>div+div.has-left-divider{margin-right:6px;position:relative;overflow:visible}div.components-toolbar>div+div.has-left-divider:before{display:inline-block;content:"";box-sizing:content-box;background-color:#ddd;position:absolute;top:8px;right:-3px;width:1px;height:20px}.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group.components-dropdown>* .components-button,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group.components-dropdown>.components-button.components-button,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-button:first-child:last-child,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-dropdown:first-child:last-child .components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown.components-dropdown>* .components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown.components-dropdown>.components-button.components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-button:first-child:last-child,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-dropdown:first-child:last-child .components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar.components-dropdown>* .components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar.components-dropdown>.components-button.components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-button:first-child:last-child,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-dropdown:first-child:last-child .components-button,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot.components-dropdown>* .components-button,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot.components-dropdown>.components-button.components-button,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-button:first-child:last-child,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-dropdown:first-child:last-child .components-button,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot.components-dropdown>* .components-button,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot.components-dropdown>.components-button.components-button,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-button:first-child:last-child,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-dropdown:first-child:last-child .components-button{min-width:48px;padding-right:12px;padding-left:12px}.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group.components-dropdown>* .components-button:before,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group.components-dropdown>.components-button.components-button:before,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-button:first-child:last-child:before,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-dropdown:first-child:last-child .components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown.components-dropdown>* .components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown.components-dropdown>.components-button.components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-button:first-child:last-child:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-dropdown:first-child:last-child .components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar.components-dropdown>* .components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar.components-dropdown>.components-button.components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-button:first-child:last-child:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-dropdown:first-child:last-child .components-button:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot.components-dropdown>* .components-button:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot.components-dropdown>.components-button.components-button:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-button:first-child:last-child:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-dropdown:first-child:last-child .components-button:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot.components-dropdown>* .components-button:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot.components-dropdown>.components-button.components-button:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-button:first-child:last-child:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-dropdown:first-child:last-child .components-button:before{right:8px;left:8px}.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-button:first-child,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-dropdown:first-child .components-button,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>div:first-child>.components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-button:first-child,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-dropdown:first-child .components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>div:first-child>.components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-button:first-child,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-dropdown:first-child .components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>div:first-child>.components-button,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-button:first-child,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-dropdown:first-child .components-button,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>div:first-child>.components-button,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-button:first-child,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-dropdown:first-child .components-button,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>div:first-child>.components-button{min-width:42px;padding-right:11px;padding-left:6px}.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-button:first-child:before,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-dropdown:first-child .components-button:before,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>div:first-child>.components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-button:first-child:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-dropdown:first-child .components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>div:first-child>.components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-button:first-child:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-dropdown:first-child .components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>div:first-child>.components-button:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-button:first-child:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-dropdown:first-child .components-button:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>div:first-child>.components-button:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-button:first-child:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-dropdown:first-child .components-button:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>div:first-child>.components-button:before{right:8px;left:2px}.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-button,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-dropdown .components-button,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>div>.components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-dropdown .components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>div>.components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-dropdown .components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>div>.components-button,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-button,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-dropdown .components-button,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>div>.components-button,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-button,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-dropdown .components-button,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>div>.components-button{min-width:36px;padding-right:6px;padding-left:6px}.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-button svg,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-dropdown .components-button svg,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>div>.components-button svg,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-button svg,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-dropdown .components-button svg,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>div>.components-button svg,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-button svg,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-dropdown .components-button svg,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>div>.components-button svg,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-button svg,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-dropdown .components-button svg,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>div>.components-button svg,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-button svg,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-dropdown .components-button svg,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>div>.components-button svg{min-width:24px}.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-button:before,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-dropdown .components-button:before,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>div>.components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-dropdown .components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>div>.components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-dropdown .components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>div>.components-button:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-button:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-dropdown .components-button:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>div>.components-button:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-button:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-dropdown .components-button:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>div>.components-button:before{right:2px;left:2px}.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-button:last-child,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-dropdown:last-child .components-button,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>div:last-child>.components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-button:last-child,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-dropdown:last-child .components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>div:last-child>.components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-button:last-child,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-dropdown:last-child .components-button,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>div:last-child>.components-button,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-button:last-child,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-dropdown:last-child .components-button,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>div:last-child>.components-button,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-button:last-child,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-dropdown:last-child .components-button,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>div:last-child>.components-button{min-width:42px;padding-right:6px;padding-left:11px}.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-button:last-child:before,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>.components-dropdown:last-child .components-button:before,.block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group>div:last-child>.components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-button:last-child:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>.components-dropdown:last-child .components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-dropdown>div:last-child>.components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-button:last-child:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>.components-dropdown:last-child .components-button:before,.block-editor-block-toolbar>.block-editor-block-toolbar__slot>.components-toolbar>div:last-child>.components-button:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-button:last-child:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>.components-dropdown:last-child .components-button:before,.block-editor-block-toolbar>.components-toolbar-group>.block-editor-block-toolbar__slot>div:last-child>.components-button:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-button:last-child:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>.components-dropdown:last-child .components-button:before,.block-editor-block-toolbar>.components-toolbar>.block-editor-block-toolbar__slot>div:last-child>.components-button:before{right:2px;left:8px}.components-tooltip.components-popover{z-index:1000002}.components-tooltip.components-popover .components-popover__content{min-width:0}.components-tooltip .components-popover__content{background:#1e1e1e;border-radius:2px;border-width:0;color:#fff;white-space:nowrap;text-align:center;line-height:1.4;font-size:12px;box-shadow:none}.components-tooltip .components-popover__content>div{padding:4px 8px}.components-tooltip__shortcut{display:inline-block;margin-right:8px}.disabled-element-wrapper{position:relative}.disabled-element-wrapper .event-catcher{z-index:100002;position:absolute;width:100%;height:100%;top:0;right:0;bottom:0;left:0}PKj l\L(22!css/dist/components/style-rtl.cssnu[@charset "UTF-8"; /** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .components-animate__appear { animation: components-animate__appear-animation 0.1s cubic-bezier(0, 0, 0.2, 1) 0s; animation-fill-mode: forwards; } @media (prefers-reduced-motion: reduce) { .components-animate__appear { animation-duration: 1ms; animation-delay: 0s; } } .components-animate__appear.is-from-top, .components-animate__appear.is-from-top.is-from-left { transform-origin: top right; } .components-animate__appear.is-from-top.is-from-right { transform-origin: top left; } .components-animate__appear.is-from-bottom, .components-animate__appear.is-from-bottom.is-from-left { transform-origin: bottom right; } .components-animate__appear.is-from-bottom.is-from-right { transform-origin: bottom left; } @keyframes components-animate__appear-animation { from { transform: translateY(-2em) scaleY(0) scaleX(0); } to { transform: translateY(0%) scaleY(1) scaleX(1); } } .components-animate__slide-in { animation: components-animate__slide-in-animation 0.1s cubic-bezier(0, 0, 0.2, 1); animation-fill-mode: forwards; } @media (prefers-reduced-motion: reduce) { .components-animate__slide-in { animation-duration: 1ms; animation-delay: 0s; } } .components-animate__slide-in.is-from-left { transform: translateX(-100%); } .components-animate__slide-in.is-from-right { transform: translateX(100%); } @keyframes components-animate__slide-in-animation { 100% { transform: translateX(0%); } } .components-animate__loading { animation: components-animate__loading 1.6s ease-in-out infinite; } @keyframes components-animate__loading { 0% { opacity: 0.5; } 50% { opacity: 1; } 100% { opacity: 0.5; } } .components-autocomplete__popover .components-popover__content > div { padding: 16px; min-width: 220px; } .components-autocomplete__result.components-button { display: flex; height: auto; min-height: 36px; text-align: right; width: 100%; } .components-autocomplete__result.components-button.is-selected { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .components-button-group { display: inline-block; } .components-button-group .components-button { border-radius: 0; display: inline-flex; color: #1e1e1e; box-shadow: inset 0 0 0 1px #1e1e1e; } .components-button-group .components-button + .components-button { margin-right: -1px; } .components-button-group .components-button:first-child { border-radius: 0 2px 2px 0; } .components-button-group .components-button:last-child { border-radius: 2px 0 0 2px; } .components-button-group .components-button:focus, .components-button-group .components-button.is-primary { position: relative; z-index: 1; } .components-button-group .components-button.is-primary { box-shadow: inset 0 0 0 1px #1e1e1e; } .components-button { display: inline-flex; text-decoration: none; font-weight: normal; font-size: 13px; margin: 0; border: 0; cursor: pointer; -webkit-appearance: none; background: none; transition: box-shadow 0.1s linear; height: 36px; align-items: center; box-sizing: border-box; padding: 6px 12px; border-radius: 2px; color: #1e1e1e; /** * Primary button style. */ /** * Secondary and tertiary buttons. */ /** * Secondary button style. */ /** * Tertiary buttons. */ /** * Destructive buttons. */ /** * Link buttons. */ } @media (prefers-reduced-motion: reduce) { .components-button { transition-duration: 0s; transition-delay: 0s; } } .components-button[aria-expanded=true], .components-button:hover { color: var(--wp-admin-theme-color); } .components-button[aria-disabled=true]:hover { color: initial; } .components-button:focus:not(:disabled) { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); outline: 3px solid transparent; } .components-button.is-primary { white-space: nowrap; background: var(--wp-admin-theme-color); color: #fff; text-decoration: none; text-shadow: none; outline: 1px solid transparent; } .components-button.is-primary:hover:not(:disabled) { background: var(--wp-admin-theme-color-darker-10); color: #fff; } .components-button.is-primary:active:not(:disabled) { background: var(--wp-admin-theme-color-darker-20); border-color: var(--wp-admin-theme-color-darker-20); color: #fff; } .components-button.is-primary:focus:not(:disabled) { box-shadow: inset 0 0 0 1px #fff, 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .components-button.is-primary:disabled, .components-button.is-primary:disabled:active:enabled, .components-button.is-primary[aria-disabled=true], .components-button.is-primary[aria-disabled=true]:enabled, .components-button.is-primary[aria-disabled=true]:active:enabled { color: rgba(255, 255, 255, 0.4); background: var(--wp-admin-theme-color); border-color: var(--wp-admin-theme-color); opacity: 1; outline: none; } .components-button.is-primary:disabled:focus:enabled, .components-button.is-primary:disabled:active:enabled:focus:enabled, .components-button.is-primary[aria-disabled=true]:focus:enabled, .components-button.is-primary[aria-disabled=true]:enabled:focus:enabled, .components-button.is-primary[aria-disabled=true]:active:enabled:focus:enabled { box-shadow: 0 0 0 1px #fff, 0 0 0 3px var(--wp-admin-theme-color); } .components-button.is-primary.is-busy, .components-button.is-primary.is-busy:disabled, .components-button.is-primary.is-busy[aria-disabled=true] { color: #fff; background-size: 100px 100%; /* stylelint-disable */ background-image: linear-gradient(45deg, var(--wp-admin-theme-color) 33%, var(--wp-admin-theme-color-darker-20) 33%, var(--wp-admin-theme-color-darker-20) 70%, var(--wp-admin-theme-color) 70%); /* stylelint-enable */ border-color: var(--wp-admin-theme-color); } .components-button.is-secondary, .components-button.is-tertiary { outline: 1px solid transparent; } .components-button.is-secondary:active:not(:disabled), .components-button.is-tertiary:active:not(:disabled) { background: #ddd; color: var(--wp-admin-theme-color-darker-10); box-shadow: none; } .components-button.is-secondary:hover:not(:disabled), .components-button.is-tertiary:hover:not(:disabled) { color: var(--wp-admin-theme-color-darker-10); box-shadow: inset 0 0 0 1px var(--wp-admin-theme-color-darker-10); } .components-button.is-secondary:disabled, .components-button.is-secondary[aria-disabled=true], .components-button.is-secondary[aria-disabled=true]:hover, .components-button.is-tertiary:disabled, .components-button.is-tertiary[aria-disabled=true], .components-button.is-tertiary[aria-disabled=true]:hover { color: #828282; background: #eaeaea; transform: none; opacity: 1; box-shadow: none; outline: none; } .components-button.is-secondary { box-shadow: inset 0 0 0 1px var(--wp-admin-theme-color); outline: 1px solid transparent; white-space: nowrap; color: var(--wp-admin-theme-color); background: transparent; } .components-button.is-tertiary { white-space: nowrap; color: var(--wp-admin-theme-color); background: transparent; padding: 6px; } .components-button.is-tertiary .dashicon { display: inline-block; flex: 0 0 auto; } p + .components-button.is-tertiary { margin-right: -6px; } .components-button.is-destructive { color: #cc1818; box-shadow: inset 0 0 0 1px #cc1818; } .components-button.is-destructive:hover:not(:disabled) { color: #710d0d; box-shadow: inset 0 0 0 1px #710d0d; } .components-button.is-destructive:focus:not(:disabled) { color: var(--wp-admin-theme-color); } .components-button.is-destructive:active:not(:disabled) { background: #ccc; } .components-button.is-destructive.is-primary { color: #fff; background: #cc1818; box-shadow: inset 0 0 0 1px #cc1818; } .components-button.is-destructive.is-primary:hover:not(:disabled) { color: #fff; background: #710d0d; box-shadow: inset 0 0 0 1px #710d0d; } .components-button.is-link { margin: 0; padding: 0; box-shadow: none; border: 0; border-radius: 0; background: none; outline: none; text-align: right; color: var(--wp-admin-theme-color); text-decoration: underline; transition-property: border, background, color; transition-duration: 0.05s; transition-timing-function: ease-in-out; height: auto; } @media (prefers-reduced-motion: reduce) { .components-button.is-link { transition-duration: 0s; transition-delay: 0s; } } .components-button.is-link:focus { border-radius: 2px; } .components-button.is-link.is-destructive { color: #cc1818; } .components-button.is-link.is-destructive:active:not(:disabled), .components-button.is-link.is-destructive:hover:not(:disabled) { color: #710d0d; background: none; } .components-button.is-link.is-destructive:focus:not(:disabled) { color: var(--wp-admin-theme-color); } .components-button:not([aria-disabled=true]):active { color: inherit; } .components-button:disabled, .components-button[aria-disabled=true] { cursor: default; opacity: 0.3; } .components-button.is-busy, .components-button.is-secondary.is-busy, .components-button.is-secondary.is-busy:disabled, .components-button.is-secondary.is-busy[aria-disabled=true] { animation: components-button__busy-animation 2500ms infinite linear; opacity: 1; background-size: 100px 100%; /* stylelint-disable */ background-image: linear-gradient(45deg, #fafafa 33%, #e0e0e0 33%, #e0e0e0 70%, #fafafa 70%); /* stylelint-enable */ } .components-button.is-small { height: 24px; line-height: 22px; padding: 0 8px; font-size: 11px; } .components-button.is-small.has-icon:not(.has-text) { padding: 0 8px; width: 24px; } .components-button.has-icon { padding: 6px; min-width: 36px; justify-content: center; } .components-button.has-icon .dashicon { display: inline-block; flex: 0 0 auto; margin-right: 2px; margin-left: 2px; } .components-button.has-icon.has-text { justify-content: left; } .components-button.has-icon.has-text svg { margin-left: 8px; } .components-button.has-icon.has-text .dashicon { margin-left: 10px; } .components-button.is-pressed { color: #fff; background: #1e1e1e; } .components-button.is-pressed:focus:not(:disabled) { box-shadow: inset 0 0 0 1px #fff, 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-button.is-pressed:hover:not(:disabled) { color: #fff; background: #1e1e1e; } .components-button svg { fill: currentColor; outline: none; } @media (forced-colors: active) { .components-button svg { fill: CanvasText; } } .components-button .components-visually-hidden { height: auto; } @keyframes components-button__busy-animation { 0% { background-position: 200px 0; } } .components-checkbox-control__input[type=checkbox] { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; border: 1px solid #1e1e1e; margin-left: 12px; transition: none; border-radius: 2px; background: #fff; color: #1e1e1e; clear: none; cursor: pointer; display: inline-block; line-height: 0; margin: 0 0 0 4px; outline: 0; padding: 0 !important; text-align: center; vertical-align: top; width: 24px; height: 24px; -webkit-appearance: none; appearance: none; transition: 0.1s border-color ease-in-out; } @media (prefers-reduced-motion: reduce) { .components-checkbox-control__input[type=checkbox] { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .components-checkbox-control__input[type=checkbox] { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .components-checkbox-control__input[type=checkbox]:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-checkbox-control__input[type=checkbox]::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-checkbox-control__input[type=checkbox]::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .components-checkbox-control__input[type=checkbox]:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-checkbox-control__input[type=checkbox]:focus { box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-checkbox-control__input[type=checkbox]:checked { background: var(--wp-admin-theme-color); border-color: var(--wp-admin-theme-color); } .components-checkbox-control__input[type=checkbox]:checked::-ms-check { opacity: 0; } .components-checkbox-control__input[type=checkbox]:checked::before, .components-checkbox-control__input[type=checkbox][aria-checked=mixed]::before { margin: -3px -5px; color: #fff; } @media (min-width: 782px) { .components-checkbox-control__input[type=checkbox]:checked::before, .components-checkbox-control__input[type=checkbox][aria-checked=mixed]::before { margin: -4px -5px 0 0; } } .components-checkbox-control__input[type=checkbox][aria-checked=mixed] { background: var(--wp-admin-theme-color); border-color: var(--wp-admin-theme-color); } .components-checkbox-control__input[type=checkbox][aria-checked=mixed]::before { content: ""; float: right; display: inline-block; vertical-align: middle; width: 16px; /* stylelint-disable */ font: normal 30px/1 dashicons; /* stylelint-enable */ speak: none; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } @media (min-width: 782px) { .components-checkbox-control__input[type=checkbox][aria-checked=mixed]::before { float: none; font-size: 21px; } } @media (min-width: 600px) { .components-checkbox-control__input[type=checkbox] { height: 20px; width: 20px; } } @media (prefers-reduced-motion: reduce) { .components-checkbox-control__input[type=checkbox] { transition-duration: 0s; transition-delay: 0s; } } .components-checkbox-control__input[type=checkbox]:focus { box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-checkbox-control__input[type=checkbox]:checked { background: var(--wp-admin-theme-color); border-color: var(--wp-admin-theme-color); } .components-checkbox-control__input[type=checkbox]:checked::-ms-check { opacity: 0; } .components-checkbox-control__input[type=checkbox]:checked::before { content: none; } .components-checkbox-control__input-container { position: relative; display: inline-block; margin-left: 12px; vertical-align: middle; width: 24px; height: 24px; } @media (min-width: 600px) { .components-checkbox-control__input-container { width: 20px; height: 20px; } } svg.components-checkbox-control__checked { fill: #fff; cursor: pointer; position: absolute; right: 0; top: 0; width: 24px; height: 24px; -webkit-user-select: none; user-select: none; pointer-events: none; } @media (min-width: 600px) { svg.components-checkbox-control__checked { right: -2px; top: -2px; } } .components-circular-option-picker { display: inline-block; width: 100%; min-width: 188px; } .components-circular-option-picker .components-circular-option-picker__custom-clear-wrapper { display: flex; justify-content: flex-end; margin-top: 12px; } .components-circular-option-picker .components-circular-option-picker__swatches { display: flex; flex-wrap: wrap; gap: 12px; } .components-circular-option-picker__option-wrapper { display: inline-block; height: 28px; width: 28px; vertical-align: top; transform: scale(1); transition: 100ms transform ease; } @media (prefers-reduced-motion: reduce) { .components-circular-option-picker__option-wrapper { transition-duration: 0s; transition-delay: 0s; } } .components-circular-option-picker__option-wrapper:hover { transform: scale(1.2); } .components-circular-option-picker__option-wrapper > div { height: 100%; width: 100%; } .components-circular-option-picker__option-wrapper::before { content: ""; position: absolute; top: 1px; right: 1px; bottom: 1px; left: 1px; border-radius: 50%; z-index: -1; /* stylelint-disable-next-line function-url-quotes */ background: url('data:image/svg+xml,%3Csvg width="28" height="28" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M6 8V6H4v2h2zM8 8V6h2v2H8zM10 16H8v-2h2v2zM12 16v-2h2v2h-2zM12 18v-2h-2v2H8v2h2v-2h2zM14 18v2h-2v-2h2zM16 18h-2v-2h2v2z" fill="%23555D65"/%3E%3Cpath fill-rule="evenodd" clip-rule="evenodd" d="M18 18h2v-2h-2v-2h2v-2h-2v-2h2V8h-2v2h-2V8h-2v2h2v2h-2v2h2v2h2v2zm-2-4v-2h2v2h-2z" fill="%23555D65"/%3E%3Cpath d="M18 18v2h-2v-2h2z" fill="%23555D65"/%3E%3Cpath fill-rule="evenodd" clip-rule="evenodd" d="M8 10V8H6v2H4v2h2v2H4v2h2v2H4v2h2v2H4v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2V8h-2V6h2V4h-2v2h-2V4h-2v2h-2V4h-2v2h-2V4h-2v2h2v2h-2v2H8zm0 2v-2H6v2h2zm2 0v-2h2v2h-2zm0 2v-2H8v2H6v2h2v2H6v2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2V8h-2V6h-2v2h-2V6h-2v2h-2v2h2v2h-2v2h-2z" fill="%23555D65"/%3E%3Cpath fill-rule="evenodd" clip-rule="evenodd" d="M4 0H2v2H0v2h2v2H0v2h2v2H0v2h2v2H0v2h2v2H0v2h2v2H0v2h2v2H0v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2V8h-2V6h2V4h-2V2h2V0h-2v2h-2V0h-2v2h-2V0h-2v2h-2V0h-2v2h-2V0h-2v2H8V0H6v2H4V0zm0 4V2H2v2h2zm2 0V2h2v2H6zm0 2V4H4v2H2v2h2v2H2v2h2v2H2v2h2v2H2v2h2v2H2v2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2V8h-2V6h2V4h-2V2h-2v2h-2V2h-2v2h-2V2h-2v2h-2V2h-2v2H8v2H6z" fill="%23555D65"/%3E%3C/svg%3E'); } .components-circular-option-picker__option { display: inline-block; vertical-align: top; height: 100%; width: 100%; border: none; border-radius: 50%; background: transparent; box-shadow: inset 0 0 0 14px; transition: 100ms box-shadow ease; cursor: pointer; } @media (prefers-reduced-motion: reduce) { .components-circular-option-picker__option { transition-duration: 0s; transition-delay: 0s; } } .components-circular-option-picker__option:hover { box-shadow: inset 0 0 0 14px !important; } .components-circular-option-picker__option.is-pressed { box-shadow: inset 0 0 0 4px; position: relative; z-index: 1; overflow: visible; } .components-circular-option-picker__option.is-pressed + svg { position: absolute; right: 2px; top: 2px; border-radius: 50%; z-index: 2; pointer-events: none; } .components-circular-option-picker__option::after { content: ""; position: absolute; top: -1px; right: -1px; bottom: -1px; left: -1px; border-radius: 50%; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.2); border: 1px solid transparent; } .components-circular-option-picker__option:focus::after { content: ""; border: 2px solid #757575; width: 32px; height: 32px; position: absolute; top: -2px; right: -2px; border-radius: 50%; box-shadow: inset 0 0 0 2px #fff; } .components-circular-option-picker__option.components-button:focus { background-color: transparent; box-shadow: inset 0 0 0 14px; outline: none; } .components-circular-option-picker__button-action .components-circular-option-picker__option { color: #fff; background: #fff; } .components-circular-option-picker__dropdown-link-action { margin-left: 16px; } .components-circular-option-picker__dropdown-link-action .components-button { line-height: 22px; } @media (min-width: 782px) { .components-palette-edit__popover.components-popover .components-popover__content.components-popover__content.components-popover__content { margin-left: 156px; margin-top: -49px; } } .components-palette-edit__popover .components-custom-gradient-picker__gradient-bar { margin-top: 0; } .components-palette-edit__popover .components-custom-gradient-picker__ui-line { margin-bottom: 0; } .components-palette-edit__popover .components-custom-gradient-picker { width: 280px; padding: 8px; } .components-dropdown-menu__menu .components-palette-edit__menu-button { width: 100%; } .component-color-indicator { width: 25px; height: 16px; margin-right: 0.8rem; border: 1px solid #dadada; display: inline-block; } .component-color-indicator + .component-color-indicator { margin-right: 0.5rem; } .components-combobox-control { width: 100%; } input.components-combobox-control__input[type=text] { width: 100%; border: none; box-shadow: none; font-size: 16px; padding: 2px; margin: 0; line-height: inherit; min-height: auto; } @media (min-width: 600px) { input.components-combobox-control__input[type=text] { font-size: 13px; } } input.components-combobox-control__input[type=text]:focus { outline: none; box-shadow: none; } .components-combobox-control__suggestions-container { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; display: flex; flex-wrap: wrap; align-items: flex-start; width: 100%; margin: 0 0 8px 0; padding: 4px; } @media (prefers-reduced-motion: reduce) { .components-combobox-control__suggestions-container { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .components-combobox-control__suggestions-container { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .components-combobox-control__suggestions-container:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-combobox-control__suggestions-container::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-combobox-control__suggestions-container::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .components-combobox-control__suggestions-container:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-combobox-control__suggestions-container:focus-within { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-combobox-control__reset.components-button { display: flex; height: 24px; min-width: 24px; padding: 0; } .components-color-list-picker, .components-color-list-picker__swatch-button { width: 100%; } .components-color-list-picker__color-picker { margin: 8px 0; } .components-color-palette__custom-color { position: relative; border: none; background: none; display: block; border-radius: 2px; height: 48px; text-align: left; width: 100%; background-image: repeating-linear-gradient(-45deg, #e0e0e0 25%, transparent 25%, transparent 75%, #e0e0e0 75%, #e0e0e0), repeating-linear-gradient(-45deg, #e0e0e0 25%, transparent 25%, transparent 75%, #e0e0e0 75%, #e0e0e0); background-position: 100% 0, 25px 25px; background-size: calc(2 * 25px) calc(2 * 25px); box-sizing: border-box; color: #fff; cursor: pointer; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.2); outline: 1px solid transparent; } .components-color-palette__custom-color:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); outline-width: 2px; } .components-dropdown__content.components-color-palette__custom-color-dropdown-content .components-popover__content { overflow: visible; box-shadow: 0 4px 4px rgba(0, 0, 0, 0.05); border: none; border-radius: 2px; max-height: -moz-fit-content !important; max-height: fit-content !important; } .components-dropdown__content.components-color-palette__custom-color-dropdown-content .components-popover__content > div { padding: 0; } .components-dropdown__content.components-color-palette__custom-color-dropdown-content .components-popover__content .react-colorful__saturation { border-top-left-radius: 2px; border-top-right-radius: 2px; } @media (min-width: 782px) { .components-dropdown__content.components-color-palette__custom-color-dropdown-content.is-rendered-in-sidebar .components-popover__content.components-popover__content { margin-left: 156px; } .components-dropdown__content.components-color-palette__custom-color-dropdown-content.is-rendered-in-sidebar.is-from-top .components-popover__content { margin-top: -60px; } .components-dropdown__content.components-color-palette__custom-color-dropdown-content.is-rendered-in-sidebar.is-from-bottom .components-popover__content { margin-bottom: -60px; } } .components-custom-gradient-picker__gradient-bar:not(.has-gradient) { opacity: 0.4; } .components-custom-gradient-picker__gradient-bar { border-radius: 2px; margin-top: 12px; width: 100%; height: 48px; margin-bottom: 20px; padding-right: 16px; } .components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__markers-container { position: relative; width: calc(100% - 32px); margin-right: auto; margin-left: auto; } .components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__insert-point { border-radius: 50%; background: #fff; padding: 2px; top: 16px; min-width: 16px; width: 16px; height: 16px; position: relative; color: #1e1e1e; } .components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__insert-point svg { height: 100%; width: 100%; } .components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__control-point-button { border-radius: 50%; height: 16px; width: 16px; padding: 0; position: absolute; top: 16px; box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) #fff, 0 0 2px 0 rgba(0, 0, 0, 0.25); outline: 2px solid transparent; } .components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__control-point-button:focus, .components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__control-point-button.is-active { box-shadow: inset 0 0 0 calc(var(--wp-admin-border-width-focus) * 2) #fff, 0 0 2px 0 rgba(0, 0, 0, 0.25); outline: 4px solid transparent; } .components-custom-gradient-picker__color-picker-popover .components-custom-gradient-picker__remove-control-point { margin-right: auto; margin-left: auto; display: block; margin-bottom: 8px; } .components-custom-gradient-picker__inserter { direction: ltr; width: 100%; } .components-custom-gradient-picker__liner-gradient-indicator { display: inline-block; flex: 0 auto; width: 20px; height: 20px; } .components-custom-gradient-picker .components-custom-gradient-picker__ui-line { margin-bottom: 16px; } .components-custom-gradient-picker .components-custom-gradient-picker__ui-line .components-base-control.components-angle-picker, .components-custom-gradient-picker .components-custom-gradient-picker__ui-line .components-base-control.components-custom-gradient-picker__type-picker { margin-bottom: 0; } .components-custom-gradient-picker .components-custom-gradient-picker__toolbar { border: none; } .components-custom-gradient-picker .components-custom-gradient-picker__toolbar > div + div { margin-right: 1px; } .components-custom-gradient-picker .components-custom-gradient-picker__toolbar button.is-pressed > svg { background: #fff; border: 1px solid #949494; border-radius: 2px; } .components-custom-gradient-picker .components-select-control__input, .components-custom-gradient-picker .components-input-control__input { height: 40px !important; } .components-custom-gradient-picker .components-input-control__label { line-height: 1; padding-bottom: 8px !important; } .components-custom-gradient-picker label { text-transform: uppercase; font-size: 11px; font-weight: 500; } .components-custom-select-control { position: relative; } .components-custom-select-control__label { display: block; margin-bottom: 8px; } .components-custom-select-control__button { border: 1px solid #757575; border-radius: 2px; min-height: 30px; min-width: 130px; position: relative; text-align: right; } .components-custom-select-control__button.components-custom-select-control__button { padding-left: 24px; } .components-custom-select-control__button:focus:not(:disabled) { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); } .components-custom-select-control__button .components-custom-select-control__button-icon { height: 100%; padding: 0; position: absolute; left: 0; top: 0; } .components-custom-select-control__menu { border: 1px solid #1e1e1e; background-color: #fff; border-radius: 2px; outline: none; transition: none; max-height: 400px; min-width: 100%; overflow: auto; padding: 0; position: absolute; z-index: 1000000; } .components-custom-select-control__menu[aria-hidden=true] { display: none; } .components-custom-select-control__item { align-items: center; display: grid; grid-template-columns: auto auto; list-style-type: none; padding: 8px; cursor: default; line-height: 28px; } .components-custom-select-control__item.has-hint { grid-template-columns: auto auto 30px; } .components-custom-select-control__item.is-highlighted { background: #ddd; } .components-custom-select-control__item .components-custom-select-control__item-hint { color: #757575; text-align: left; padding-left: 4px; } .components-custom-select-control__item .components-custom-select-control__item-icon { margin-right: auto; } .components-custom-select-control__item:last-child { margin-bottom: 0; } /** * Parts of this source were derived and modified from react-dates, * released under the MIT license. * * https://github.com/airbnb/react-dates * * The MIT License (MIT) * * Copyright (c) 2016 Airbnb * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included in all * copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ .PresetDateRangePicker_panel { padding: 0 22px 11px; } .PresetDateRangePicker_button { position: relative; height: 100%; text-align: center; background: 0 0; border: 2px solid #00a699; color: #00a699; padding: 4px 12px; margin-right: 8px; font: inherit; font-weight: 700; line-height: normal; overflow: visible; box-sizing: border-box; cursor: pointer; } .PresetDateRangePicker_button:active { outline: 0; } .PresetDateRangePicker_button__selected { color: #fff; background: #00a699; } .SingleDatePickerInput { display: inline-block; background-color: #fff; } .SingleDatePickerInput__withBorder { border-radius: 2px; border: 1px solid #dbdbdb; } .SingleDatePickerInput__rtl { direction: rtl; } .SingleDatePickerInput__disabled { background-color: #f2f2f2; } .SingleDatePickerInput__block { display: block; } .SingleDatePickerInput__showClearDate { padding-right: 30px; } .SingleDatePickerInput_clearDate { background: 0 0; border: 0; color: inherit; font: inherit; line-height: normal; overflow: visible; cursor: pointer; padding: 10px; margin: 0 10px 0 5px; position: absolute; right: 0; top: 50%; transform: translateY(-50%); } .SingleDatePickerInput_clearDate__default:focus, .SingleDatePickerInput_clearDate__default:hover { background: #dbdbdb; border-radius: 50%; } .SingleDatePickerInput_clearDate__small { padding: 6px; } .SingleDatePickerInput_clearDate__hide { visibility: hidden; } .SingleDatePickerInput_clearDate_svg { fill: #82888a; height: 12px; width: 15px; vertical-align: middle; } .SingleDatePickerInput_clearDate_svg__small { height: 9px; } .SingleDatePickerInput_calendarIcon { background: 0 0; border: 0; color: inherit; font: inherit; line-height: normal; overflow: visible; cursor: pointer; display: inline-block; vertical-align: middle; padding: 10px; margin: 0 5px 0 10px; } .SingleDatePickerInput_calendarIcon_svg { fill: #82888a; height: 15px; width: 14px; vertical-align: middle; } .SingleDatePicker { position: relative; display: inline-block; } .SingleDatePicker__block { display: block; } .SingleDatePicker_picker { z-index: 1; background-color: #fff; position: absolute; } .SingleDatePicker_picker__rtl { direction: rtl; } .SingleDatePicker_picker__directionLeft { left: 0; } .SingleDatePicker_picker__directionRight { right: 0; } .SingleDatePicker_picker__portal { background-color: rgba(0, 0, 0, 0.3); position: fixed; top: 0; left: 0; height: 100%; width: 100%; } .SingleDatePicker_picker__fullScreenPortal { background-color: #fff; } .SingleDatePicker_closeButton { background: 0 0; border: 0; color: inherit; font: inherit; line-height: normal; overflow: visible; cursor: pointer; position: absolute; top: 0; right: 0; padding: 15px; z-index: 2; } .SingleDatePicker_closeButton:focus, .SingleDatePicker_closeButton:hover { color: #b0b3b4; text-decoration: none; } .SingleDatePicker_closeButton_svg { height: 15px; width: 15px; fill: #cacccd; } .DayPickerKeyboardShortcuts_buttonReset { background: 0 0; border: 0; border-radius: 0; color: inherit; font: inherit; line-height: normal; overflow: visible; padding: 0; cursor: pointer; font-size: 14px; } .DayPickerKeyboardShortcuts_buttonReset:active { outline: 0; } .DayPickerKeyboardShortcuts_show { width: 22px; position: absolute; z-index: 2; } .DayPickerKeyboardShortcuts_show__bottomRight { border-top: 26px solid transparent; border-right: 33px solid #00a699; bottom: 0; right: 0; } .DayPickerKeyboardShortcuts_show__bottomRight:hover { border-right: 33px solid #008489; } .DayPickerKeyboardShortcuts_show__topRight { border-bottom: 26px solid transparent; border-right: 33px solid #00a699; top: 0; right: 0; } .DayPickerKeyboardShortcuts_show__topRight:hover { border-right: 33px solid #008489; } .DayPickerKeyboardShortcuts_show__topLeft { border-bottom: 26px solid transparent; border-left: 33px solid #00a699; top: 0; left: 0; } .DayPickerKeyboardShortcuts_show__topLeft:hover { border-left: 33px solid #008489; } .DayPickerKeyboardShortcuts_showSpan { color: #fff; position: absolute; } .DayPickerKeyboardShortcuts_showSpan__bottomRight { bottom: 0; right: -28px; } .DayPickerKeyboardShortcuts_showSpan__topRight { top: 1px; right: -28px; } .DayPickerKeyboardShortcuts_showSpan__topLeft { top: 1px; left: -28px; } .DayPickerKeyboardShortcuts_panel { overflow: auto; background: #fff; border: 1px solid #dbdbdb; border-radius: 2px; position: absolute; top: 0; bottom: 0; right: 0; left: 0; z-index: 2; padding: 22px; margin: 33px; } .DayPickerKeyboardShortcuts_title { font-size: 16px; font-weight: 700; margin: 0; } .DayPickerKeyboardShortcuts_list { list-style: none; padding: 0; font-size: 14px; } .DayPickerKeyboardShortcuts_close { position: absolute; right: 22px; top: 22px; z-index: 2; } .DayPickerKeyboardShortcuts_close:active { outline: 0; } .DayPickerKeyboardShortcuts_closeSvg { height: 15px; width: 15px; fill: #cacccd; } .DayPickerKeyboardShortcuts_closeSvg:focus, .DayPickerKeyboardShortcuts_closeSvg:hover { fill: #82888a; } .CalendarDay { box-sizing: border-box; cursor: pointer; font-size: 14px; text-align: center; } .CalendarDay:active { outline: 0; } .CalendarDay__defaultCursor { cursor: default; } .CalendarDay__default { border: 1px solid #e4e7e7; color: #484848; background: #fff; } .CalendarDay__default:hover { background: #e4e7e7; border: 1px double #e4e7e7; color: inherit; } .CalendarDay__hovered_offset { background: #f4f5f5; border: 1px double #e4e7e7; color: inherit; } .CalendarDay__outside { border: 0; background: #fff; color: #484848; } .CalendarDay__outside:hover { border: 0; } .CalendarDay__blocked_minimum_nights { background: #fff; border: 1px solid #eceeee; color: #cacccd; } .CalendarDay__blocked_minimum_nights:active, .CalendarDay__blocked_minimum_nights:hover { background: #fff; color: #cacccd; } .CalendarDay__highlighted_calendar { background: #ffe8bc; color: #484848; } .CalendarDay__highlighted_calendar:active, .CalendarDay__highlighted_calendar:hover { background: #ffce71; color: #484848; } .CalendarDay__selected_span { background: #66e2da; border: 1px solid #33dacd; color: #fff; } .CalendarDay__selected_span:active, .CalendarDay__selected_span:hover { background: #33dacd; border: 1px solid #33dacd; color: #fff; } .CalendarDay__last_in_range { border-right: #00a699; } .CalendarDay__selected, .CalendarDay__selected:active, .CalendarDay__selected:hover { background: #00a699; border: 1px solid #00a699; color: #fff; } .CalendarDay__hovered_span, .CalendarDay__hovered_span:hover { background: #b2f1ec; border: 1px solid #80e8e0; color: #007a87; } .CalendarDay__hovered_span:active { background: #80e8e0; border: 1px solid #80e8e0; color: #007a87; } .CalendarDay__blocked_calendar, .CalendarDay__blocked_calendar:active, .CalendarDay__blocked_calendar:hover { background: #cacccd; border: 1px solid #cacccd; color: #82888a; } .CalendarDay__blocked_out_of_range, .CalendarDay__blocked_out_of_range:active, .CalendarDay__blocked_out_of_range:hover { background: #fff; border: 1px solid #e4e7e7; color: #cacccd; } .CalendarMonth { background: #fff; text-align: center; vertical-align: top; -webkit-user-select: none; user-select: none; } .CalendarMonth_table { border-collapse: collapse; border-spacing: 0; } .CalendarMonth_verticalSpacing { border-collapse: separate; } .CalendarMonth_caption { color: #484848; font-size: 18px; text-align: center; padding-top: 22px; padding-bottom: 37px; caption-side: initial; } .CalendarMonth_caption__verticalScrollable { padding-top: 12px; padding-bottom: 7px; } .CalendarMonthGrid { background: #fff; text-align: left; z-index: 0; } .CalendarMonthGrid__animating { z-index: 1; } .CalendarMonthGrid__horizontal { position: absolute; left: 0; } .CalendarMonthGrid__vertical { margin: 0 auto; } .CalendarMonthGrid__vertical_scrollable { margin: 0 auto; overflow-y: scroll; } .CalendarMonthGrid_month__horizontal { display: inline-block; vertical-align: top; min-height: 100%; } .CalendarMonthGrid_month__hideForAnimation { position: absolute; z-index: -1; opacity: 0; pointer-events: none; } .CalendarMonthGrid_month__hidden { visibility: hidden; } .DayPickerNavigation { position: relative; z-index: 2; } .DayPickerNavigation__horizontal { height: 0; } .DayPickerNavigation__verticalDefault { position: absolute; width: 100%; height: 52px; bottom: 0; left: 0; } .DayPickerNavigation__verticalScrollableDefault { position: relative; } .DayPickerNavigation_button { cursor: pointer; -webkit-user-select: none; user-select: none; border: 0; padding: 0; margin: 0; } .DayPickerNavigation_button__default { border: 1px solid #e4e7e7; background-color: #fff; color: #757575; } .DayPickerNavigation_button__default:focus, .DayPickerNavigation_button__default:hover { border: 1px solid #c4c4c4; } .DayPickerNavigation_button__default:active { background: #f2f2f2; } .DayPickerNavigation_button__horizontalDefault { position: absolute; top: 18px; line-height: 0.78; border-radius: 3px; padding: 6px 9px; } .DayPickerNavigation_leftButton__horizontalDefault { left: 22px; } .DayPickerNavigation_rightButton__horizontalDefault { right: 22px; } .DayPickerNavigation_button__verticalDefault { padding: 5px; background: #fff; box-shadow: 0 0 5px 2px rgba(0, 0, 0, 0.1); position: relative; display: inline-block; height: 100%; width: 50%; } .DayPickerNavigation_nextButton__verticalDefault { border-left: 0; } .DayPickerNavigation_nextButton__verticalScrollableDefault { width: 100%; } .DayPickerNavigation_svg__horizontal { height: 19px; width: 19px; fill: #82888a; display: block; } .DayPickerNavigation_svg__vertical { height: 42px; width: 42px; fill: #484848; display: block; } .DayPicker { background: #fff; position: relative; text-align: left; } .DayPicker__horizontal { background: #fff; } .DayPicker__verticalScrollable { height: 100%; } .DayPicker__hidden { visibility: hidden; } .DayPicker__withBorder { box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.07); border-radius: 3px; } .DayPicker_portal__horizontal { box-shadow: none; position: absolute; left: 50%; top: 50%; } .DayPicker_portal__vertical { position: initial; } .DayPicker_focusRegion { outline: 0; } .DayPicker_calendarInfo__horizontal, .DayPicker_wrapper__horizontal { display: inline-block; vertical-align: top; } .DayPicker_weekHeaders { position: relative; } .DayPicker_weekHeaders__horizontal { margin-left: 13px; } .DayPicker_weekHeader { color: #757575; position: absolute; top: 62px; z-index: 2; text-align: left; padding: 0 !important; } .DayPicker_weekHeader__vertical { left: 50%; } .DayPicker_weekHeader__verticalScrollable { top: 0; display: table-row; border-bottom: 1px solid #dbdbdb; background: #fff; margin-left: 0; left: 0; width: 100%; text-align: center; } .DayPicker_weekHeader_ul { list-style: none; margin: 1px 0; padding-left: 0; padding-right: 0; font-size: 14px; } .DayPicker_weekHeader_li { display: inline-block; text-align: center; margin: 0 1px; } .DayPicker_transitionContainer { position: relative; overflow: hidden; border-radius: 3px; } .DayPicker_transitionContainer__horizontal { transition: height 0.2s ease-in-out; } .DayPicker_transitionContainer__vertical { width: 100%; } .DayPicker_transitionContainer__verticalScrollable { padding-top: 20px; height: 100%; position: absolute; top: 0; bottom: 0; right: 0; left: 0; overflow-y: scroll; } .DateInput { margin: 0; padding: 0; background: #fff; position: relative; display: inline-block; width: 130px; vertical-align: middle; } .DateInput__small { width: 97px; } .DateInput__block { width: 100%; } .DateInput__disabled { background: #f2f2f2; color: #dbdbdb; } .DateInput_input { font-weight: 200; font-size: 19px; line-height: 24px; color: #484848; background-color: #fff; width: 100%; padding: 11px 11px 9px; border: 0; border-top: 0; border-right: 0; border-bottom: 2px solid transparent; border-left: 0; border-radius: 0; } .DateInput_input__small { font-size: 15px; line-height: 18px; letter-spacing: 0.2px; padding: 7px 7px 5px; } .DateInput_input__regular { font-weight: auto; } .DateInput_input__readOnly { -webkit-user-select: none; user-select: none; } .DateInput_input__focused { outline: 0; background: #fff; border: 0; border-top: 0; border-right: 0; border-bottom: 2px solid #008489; border-left: 0; } .DateInput_input__disabled { background: #f2f2f2; font-style: italic; } .DateInput_screenReaderMessage { border: 0; clip: rect(0, 0, 0, 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; } .DateInput_fang { position: absolute; width: 20px; height: 10px; left: 22px; z-index: 2; } .DateInput_fangShape { fill: #fff; } .DateInput_fangStroke { stroke: #dbdbdb; fill: transparent; } .DateRangePickerInput { background-color: #fff; display: inline-block; } .DateRangePickerInput__disabled { background: #f2f2f2; } .DateRangePickerInput__withBorder { border-radius: 2px; border: 1px solid #dbdbdb; } .DateRangePickerInput__rtl { direction: rtl; } .DateRangePickerInput__block { display: block; } .DateRangePickerInput__showClearDates { padding-right: 30px; } .DateRangePickerInput_arrow { display: inline-block; vertical-align: middle; color: #484848; } .DateRangePickerInput_arrow_svg { vertical-align: middle; fill: #484848; height: 24px; width: 24px; } .DateRangePickerInput_clearDates { background: 0 0; border: 0; color: inherit; font: inherit; line-height: normal; overflow: visible; cursor: pointer; padding: 10px; margin: 0 10px 0 5px; position: absolute; right: 0; top: 50%; transform: translateY(-50%); } .DateRangePickerInput_clearDates__small { padding: 6px; } .DateRangePickerInput_clearDates_default:focus, .DateRangePickerInput_clearDates_default:hover { background: #dbdbdb; border-radius: 50%; } .DateRangePickerInput_clearDates__hide { visibility: hidden; } .DateRangePickerInput_clearDates_svg { fill: #82888a; height: 12px; width: 15px; vertical-align: middle; } .DateRangePickerInput_clearDates_svg__small { height: 9px; } .DateRangePickerInput_calendarIcon { background: 0 0; border: 0; color: inherit; font: inherit; line-height: normal; overflow: visible; cursor: pointer; display: inline-block; vertical-align: middle; padding: 10px; margin: 0 5px 0 10px; } .DateRangePickerInput_calendarIcon_svg { fill: #82888a; height: 15px; width: 14px; vertical-align: middle; } .DateRangePicker { position: relative; display: inline-block; } .DateRangePicker__block { display: block; } .DateRangePicker_picker { z-index: 1; background-color: #fff; position: absolute; } .DateRangePicker_picker__rtl { direction: rtl; } .DateRangePicker_picker__directionLeft { left: 0; } .DateRangePicker_picker__directionRight { right: 0; } .DateRangePicker_picker__portal { background-color: rgba(0, 0, 0, 0.3); position: fixed; top: 0; left: 0; height: 100%; width: 100%; } .DateRangePicker_picker__fullScreenPortal { background-color: #fff; } .DateRangePicker_closeButton { background: 0 0; border: 0; color: inherit; font: inherit; line-height: normal; overflow: visible; cursor: pointer; position: absolute; top: 0; right: 0; padding: 15px; z-index: 2; } .DateRangePicker_closeButton:focus, .DateRangePicker_closeButton:hover { color: #b0b3b4; text-decoration: none; } .DateRangePicker_closeButton_svg { height: 15px; width: 15px; fill: #cacccd; } .components-datetime { padding: 16px; } .components-panel__body .components-datetime { padding: 0; } .components-datetime .components-datetime__calendar-help { padding: 16px; min-width: 260px; } .components-datetime .components-datetime__calendar-help h4 { margin: 0; } .components-datetime .components-datetime__buttons { display: flex; justify-content: space-between; } .components-datetime .components-datetime__date-help-toggle { display: block; margin-right: auto; } .components-datetime fieldset { border: 0; padding: 0; margin: 0; } .components-datetime select, .components-datetime input { box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; } @media (prefers-reduced-motion: reduce) { .components-datetime select, .components-datetime input { transition-duration: 0s; transition-delay: 0s; } } .components-datetime select, .components-datetime input[type=number], .components-datetime .components-button { height: 30px; margin-top: 0; margin-bottom: 0; } .components-datetime .components-button:focus { z-index: 1; } .components-datetime__date { min-height: 236px; border-top: 1px solid #ddd; } .components-datetime__date .DayPickerNavigation_leftButton__horizontalDefault { left: 13px; } .components-datetime__date .CalendarMonth_caption { font-size: 13px; } .components-datetime__date .CalendarMonth_table { border-collapse: separate; border-spacing: 2px; } .components-datetime__date .CalendarDay { font-size: 13px; border: none; border-radius: 50%; text-align: center; } .components-datetime__date .CalendarDay:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 0 0 3px #fff; outline: 2px solid transparent; } .components-datetime__date .CalendarDay__selected { background: var(--wp-admin-theme-color); border: 2px solid transparent; } .components-datetime__date .CalendarDay__selected:hover { background: var(--wp-admin-theme-color-darker-20); } .components-datetime__date .CalendarDay__selected:focus { box-shadow: inset 0 0 0 1px #fff; } .components-datetime__date .DayPickerNavigation_button__horizontalDefault { padding: 2px 8px; top: 20px; } .components-datetime__date .DayPickerNavigation_button__horizontalDefault:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-datetime__date .DayPicker_weekHeader { top: 50px; } .components-datetime__date .DayPicker_weekHeader .DayPicker_weekHeader_ul { margin: 1px; padding-right: 0; padding-left: 0; } .components-datetime__date.is-description-visible .DayPicker { visibility: hidden; } .components-datetime__date .CalendarDay .components-datetime__date__day { height: 100%; display: flex; justify-content: center; align-content: center; flex-direction: column; position: relative; } .components-datetime__date .CalendarDay .components-datetime__date__day.has-events::before { content: " "; width: 4px; height: 4px; border-radius: 2px; position: absolute; right: 50%; margin-right: -2px; bottom: 0; background-color: #fff; } .components-datetime__date .CalendarDay:not(.CalendarDay__selected) .components-datetime__date__day.has-events::before { background: var(--wp-admin-theme-color); } .components-datetime__time { padding-bottom: 16px; } .components-datetime__time fieldset { position: relative; margin-bottom: 0.5em; } .components-datetime__time fieldset + fieldset { margin-bottom: 0; } .components-datetime__time .components-datetime__time-field-am-pm fieldset { margin-top: 0; } .components-datetime__time .components-datetime__time-wrapper { display: flex; } .components-datetime__time .components-datetime__time-wrapper .components-datetime__time-separator { display: inline-block; padding: 0 0 0 3px; } .components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field-time { direction: ltr; } .components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field select { margin-left: 4px; } .components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field select:focus { position: relative; z-index: 1; } .components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field input[type=number] { padding: 2px; margin-left: 4px; text-align: center; -moz-appearance: textfield; } .components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field input[type=number]:focus { position: relative; z-index: 1; } .components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field input[type=number]::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; } .components-datetime__time.is-12-hour .components-datetime__time-field-day input { margin: -4px 0 0 !important; border-radius: 0 2px 2px 0 !important; } .components-datetime__time.is-12-hour .components-datetime__time-field-year input { border-radius: 2px 0 0 2px !important; } .components-datetime__timezone { line-height: 30px; margin-right: 4px; -webkit-text-decoration: underline dotted; text-decoration: underline dotted; } .components-datetime__time-legend { font-weight: 600; margin-top: 0.5em; } .components-datetime__time-legend.invisible { position: absolute; top: -999em; right: -999em; } .components-datetime__time-field-hours-input, .components-datetime__time-field-minutes-input, .components-datetime__time-field-day-input { width: 35px; } .components-datetime__time-field-year-input { width: 55px; } .components-datetime__time-field-month-select { max-width: 145px; } .components-popover .components-datetime__date { padding-right: 4px; } .block-editor-dimension-control .components-base-control__field { display: flex; align-items: center; } .block-editor-dimension-control .components-base-control__label { display: flex; align-items: center; margin-left: 1em; margin-bottom: 0; } .block-editor-dimension-control .components-base-control__label .dashicon { margin-left: 0.5em; } .block-editor-dimension-control.is-manual .components-base-control__label { width: 10em; } body.is-dragging-components-draggable { cursor: move; /* Fallback for IE/Edge < 14 */ cursor: grabbing !important; } .components-draggable__invisible-drag-image { position: fixed; right: -1000px; height: 50px; width: 50px; } .components-draggable__clone { position: fixed; padding: 0; background: transparent; pointer-events: none; z-index: 1000000000; } .components-drop-zone { position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 40; visibility: hidden; opacity: 0; border-radius: 2px; } .components-drop-zone.is-active { opacity: 1; visibility: visible; } .components-drop-zone__content { position: absolute; top: 0; bottom: 0; right: 0; left: 0; height: 100%; width: 100%; display: flex; background-color: var(--wp-admin-theme-color); align-items: center; justify-content: center; z-index: 50; text-align: center; color: #fff; } .components-drop-zone__content-icon, .components-drop-zone__content-text { display: block; } .components-drop-zone__content-icon { margin: 0 auto; line-height: 0; fill: currentColor; pointer-events: none; } .components-drop-zone__content-text { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; } .components-dropdown { display: inline-block; } .components-dropdown__content .components-popover__content > div { padding: 8px; } .components-dropdown__content [role=menuitem] { white-space: nowrap; } .components-dropdown-menu__menu { width: 100%; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; line-height: 1.4; } .components-dropdown-menu__menu .components-dropdown-menu__menu-item, .components-dropdown-menu__menu .components-menu-item { width: 100%; padding: 6px; outline: none; cursor: pointer; white-space: nowrap; } .components-dropdown-menu__menu .components-dropdown-menu__menu-item.has-separator, .components-dropdown-menu__menu .components-menu-item.has-separator { margin-top: 6px; position: relative; overflow: visible; } .components-dropdown-menu__menu .components-dropdown-menu__menu-item.has-separator::before, .components-dropdown-menu__menu .components-menu-item.has-separator::before { display: block; content: ""; box-sizing: content-box; background-color: #ddd; position: absolute; top: -3px; right: 0; left: 0; height: 1px; } .components-dropdown-menu__menu .components-dropdown-menu__menu-item.is-active svg, .components-dropdown-menu__menu .components-menu-item.is-active svg { color: #fff; background: #1e1e1e; box-shadow: 0 0 0 1px #1e1e1e; border-radius: 1px; } .components-dropdown-menu__menu .components-dropdown-menu__menu-item > svg, .components-dropdown-menu__menu .components-menu-item > svg { border-radius: 2px; width: 24px; height: 24px; } .components-dropdown-menu__menu .components-dropdown-menu__menu-item.is-icon-only, .components-dropdown-menu__menu .components-menu-item.is-icon-only { width: auto; } .components-dropdown-menu__menu .components-menu-item__button, .components-dropdown-menu__menu .components-menu-item__button.components-button { min-height: 36px; height: auto; text-align: right; padding-right: 8px; padding-left: 8px; } .components-dropdown-menu__menu .components-menu-group { padding: 8px; margin-top: 0; margin-bottom: 0; margin-right: -8px; margin-left: -8px; } .components-dropdown-menu__menu .components-menu-group:first-child { margin-top: -8px; } .components-dropdown-menu__menu .components-menu-group:last-child { margin-bottom: -8px; } .components-dropdown-menu__menu .components-menu-group + .components-menu-group { margin-top: 0; border-top: 1px solid #ccc; padding: 8px; } .is-alternate .components-dropdown-menu__menu .components-menu-group + .components-menu-group { border-color: #1e1e1e; } .components-font-size-picker__header__hint { margin-right: 4px; color: #757575; } .components-font-size-picker__header .components-button.is-small.has-icon:not(.has-text) { min-width: 24px; padding: 0; } .components-font-size-picker__controls { max-width: 248px; align-items: center; margin-top: 8px; margin-bottom: 24px; } .components-font-size-picker__controls .components-unit-control-wrapper .components-input-control__label { font-weight: 300; padding-bottom: 0 !important; margin-bottom: 8px !important; } .components-font-size-picker__controls .components-custom-select-control__button { width: 100%; } .components-font-size-picker__controls .components-font-size-picker__number { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; display: inline-block; font-weight: 500; height: 30px; margin-bottom: 0; margin-right: 0; margin-left: 8px; margin-top: 8px; width: 54px; } @media (prefers-reduced-motion: reduce) { .components-font-size-picker__controls .components-font-size-picker__number { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .components-font-size-picker__controls .components-font-size-picker__number { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .components-font-size-picker__controls .components-font-size-picker__number:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-font-size-picker__controls .components-font-size-picker__number::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-font-size-picker__controls .components-font-size-picker__number::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .components-font-size-picker__controls .components-font-size-picker__number:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-font-size-picker__controls .components-font-size-picker__number[value=""] + .components-button { cursor: default; opacity: 0.3; pointer-events: none; } .components-font-size-picker__controls .components-font-size-picker__number-container { display: flex; flex-direction: column; } .components-font-size-picker__controls .components-color-palette__clear { height: 30px; } .components-font-size-picker__custom-input .components-range-control__slider + .dashicon { width: 30px; height: 30px; } .components-font-size-picker { border: 0; padding: 0; margin: 0; } .components-form-toggle { position: relative; display: inline-block; } .components-form-toggle .components-form-toggle__track { content: ""; display: inline-block; box-sizing: border-box; vertical-align: top; background-color: #fff; border: 1px solid #1e1e1e; width: 36px; height: 18px; border-radius: 9px; transition: 0.2s background ease; } @media (prefers-reduced-motion: reduce) { .components-form-toggle .components-form-toggle__track { transition-duration: 0s; transition-delay: 0s; } } .components-form-toggle .components-form-toggle__thumb { display: block; position: absolute; box-sizing: border-box; top: 3px; right: 3px; width: 12px; height: 12px; border-radius: 50%; transition: 0.1s transform ease; background-color: #1e1e1e; border: 5px solid #1e1e1e; } @media (prefers-reduced-motion: reduce) { .components-form-toggle .components-form-toggle__thumb { transition-duration: 0s; transition-delay: 0s; } } .components-form-toggle.is-checked .components-form-toggle__track { background-color: var(--wp-admin-theme-color); border: 1px solid var(--wp-admin-theme-color); border: 9px solid transparent; } .components-form-toggle .components-form-toggle__input:focus + .components-form-toggle__track { box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--wp-admin-theme-color); outline: 2px solid transparent; outline-offset: 2px; } .components-form-toggle.is-checked .components-form-toggle__thumb { background-color: #fff; border-width: 0; transform: translateX(-18px); } .components-form-toggle.is-disabled, .components-disabled .components-form-toggle { opacity: 0.3; } .components-form-toggle input.components-form-toggle__input[type=checkbox] { position: absolute; top: 0; right: 0; width: 100%; height: 100%; opacity: 0; margin: 0; padding: 0; z-index: 1; border: none; } .components-form-toggle input.components-form-toggle__input[type=checkbox]:checked { background: none; } .components-form-toggle input.components-form-toggle__input[type=checkbox]::before { content: ""; } .components-form-token-field__input-container { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; display: flex; flex-wrap: wrap; align-items: center; width: 100%; margin: 0 0 8px 0; padding: 2px 4px; cursor: text; } @media (prefers-reduced-motion: reduce) { .components-form-token-field__input-container { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .components-form-token-field__input-container { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .components-form-token-field__input-container:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-form-token-field__input-container::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-form-token-field__input-container::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .components-form-token-field__input-container:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-form-token-field__input-container.is-disabled { background: #ddd; border-color: #ddd; } .components-form-token-field__input-container.is-active { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-form-token-field__input-container input[type=text].components-form-token-field__input { display: inline-block; flex: 1; font-size: 16px; width: 100%; max-width: 100%; margin-right: 4px; padding: 0; min-height: 24px; min-width: 50px; background: inherit; border: 0; color: #1e1e1e; box-shadow: none; } @media (min-width: 600px) { .components-form-token-field__input-container input[type=text].components-form-token-field__input { font-size: 13px; } } .components-form-token-field__input-container input[type=text].components-form-token-field__input:focus, .components-form-token-field.is-active .components-form-token-field__input-container input[type=text].components-form-token-field__input { outline: none; box-shadow: none; } .components-form-token-field__input-container .components-form-token-field__token + input[type=text].components-form-token-field__input { width: auto; } .components-form-token-field__label { display: inline-block; margin-bottom: 4px; } .components-form-token-field__help { font-size: 12px; font-style: normal; color: #757575; } .components-form-token-field__token { font-size: 13px; display: flex; margin: 2px 0 2px 4px; color: #1e1e1e; max-width: 100%; } .components-form-token-field__token.is-success .components-form-token-field__token-text, .components-form-token-field__token.is-success .components-form-token-field__remove-token { background: #4ab866; } .components-form-token-field__token.is-error .components-form-token-field__token-text, .components-form-token-field__token.is-error .components-form-token-field__remove-token { background: #cc1818; } .components-form-token-field__token.is-validating .components-form-token-field__token-text, .components-form-token-field__token.is-validating .components-form-token-field__remove-token { color: #757575; } .components-form-token-field__token.is-borderless { position: relative; padding: 0 0 0 16px; } .components-form-token-field__token.is-borderless .components-form-token-field__token-text { background: transparent; color: var(--wp-admin-theme-color); } .components-form-token-field__token.is-borderless .components-form-token-field__remove-token { background: transparent; color: #757575; position: absolute; top: 1px; left: 0; } .components-form-token-field__token.is-borderless.is-success .components-form-token-field__token-text { color: #4ab866; } .components-form-token-field__token.is-borderless.is-error .components-form-token-field__token-text { color: #cc1818; border-radius: 0 4px 4px 0; padding: 0 6px 0 4px; } .components-form-token-field__token.is-borderless.is-validating .components-form-token-field__token-text { color: #1e1e1e; } .components-form-token-field__token.is-disabled .components-form-token-field__remove-token { cursor: default; } .components-form-token-field__token-text, .components-form-token-field__remove-token.components-button { display: inline-block; line-height: 24px; height: auto; background: #ddd; min-width: unset; transition: all 0.2s cubic-bezier(0.4, 1, 0.4, 1); } @media (prefers-reduced-motion: reduce) { .components-form-token-field__token-text, .components-form-token-field__remove-token.components-button { transition-duration: 0s; transition-delay: 0s; animation-duration: 1ms; animation-delay: 0s; } } .components-form-token-field__token-text { border-radius: 0 2px 2px 0; padding: 0 8px 0 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .components-form-token-field__remove-token.components-button { cursor: pointer; border-radius: 2px 0 0 2px; padding: 0 2px; color: #1e1e1e; line-height: 10px; overflow: initial; } .components-form-token-field__remove-token.components-button:hover { color: #1e1e1e; } .components-form-token-field__suggestions-list { flex: 1 0 100%; min-width: 100%; max-height: 9em; overflow-y: auto; transition: all 0.15s ease-in-out; list-style: none; border-top: 1px solid #757575; margin: 4px -4px -4px; padding: 0; } @media (prefers-reduced-motion: reduce) { .components-form-token-field__suggestions-list { transition-duration: 0s; transition-delay: 0s; } } .components-form-token-field__suggestion { color: #757575; display: block; font-size: 13px; padding: 4px 8px; margin: 0; cursor: pointer; } .components-form-token-field__suggestion.is-selected { background: var(--wp-admin-theme-color); color: #fff; } .components-form-token-field__suggestion-match { text-decoration: underline; } @media (min-width: 600px) { .components-guide { width: 600px; } } .components-guide .components-modal__content { padding: 0; margin-top: 0; border-radius: 2px; } .components-guide .components-modal__content::before { content: none; } .components-guide .components-modal__header { border-bottom: none; padding: 0; position: sticky; } .components-guide .components-modal__header .components-button { align-self: flex-start; margin: 8px 0 0 8px; position: static; } .components-guide .components-modal__header .components-button:hover svg { fill: #fff; } .components-guide__container { display: flex; flex-direction: column; justify-content: space-between; margin-top: -60px; min-height: 100%; } .components-guide__page { display: flex; flex-direction: column; justify-content: center; position: relative; } @media (min-width: 600px) { .components-guide__page { min-height: 300px; } } .components-guide__footer { align-content: center; display: flex; height: 30px; justify-content: center; margin: 0 0 24px 0; padding: 0 32px; position: relative; width: 100%; } .components-guide__page-control { margin: 0; text-align: center; } .components-guide__page-control li { display: inline-block; margin: 0; } .components-guide__page-control .components-button { height: 30px; min-width: 20px; margin: -6px 0; } .components-modal__frame.components-guide { border: none; min-width: 312px; height: 80vh; max-height: 575px; } @media (max-width: 600px) { .components-modal__frame.components-guide { margin: auto; max-width: calc(100vw - 16px * 2); } } .components-button.components-guide__back-button, .components-button.components-guide__forward-button, .components-button.components-guide__finish-button { height: 30px; position: absolute; } .components-button.components-guide__back-button, .components-button.components-guide__forward-button { font-size: 13px; padding: 4px 2px; } .components-button.components-guide__back-button.has-text svg, .components-button.components-guide__forward-button.has-text svg { margin: 0; } .components-button.components-guide__back-button:hover, .components-button.components-guide__forward-button:hover { text-decoration: underline; } .components-button.components-guide__back-button { right: 32px; } .components-button.components-guide__forward-button { left: 32px; color: #1386bf; font-weight: bold; } .components-button.components-guide__finish-button { left: 32px; } .components-button.components-guide__inline-finish-button { display: none; } [role=region] { position: relative; } .is-focusing-regions [role=region]:focus::after { content: ""; position: absolute; top: 0; bottom: 0; right: 0; left: 0; pointer-events: none; outline: 4px solid transparent; box-shadow: inset 0 0 0 4px var(--wp-admin-theme-color); } @supports (outline-offset: 1px) { .is-focusing-regions [role=region]:focus::after { content: none; } .is-focusing-regions [role=region]:focus { outline-style: solid; outline-color: var(--wp-admin-theme-color); outline-width: 4px; outline-offset: -4px; } } .components-menu-group + .components-menu-group { margin-top: 8px; padding-top: 8px; border-top: 1px solid #1e1e1e; } .components-menu-group + .components-menu-group.has-hidden-separator { border-top: none; margin-top: 0; padding-top: 0; } .components-menu-group__label { padding: 0 8px; margin-top: 4px; margin-bottom: 12px; color: #757575; text-transform: uppercase; font-size: 11px; font-weight: 500; white-space: nowrap; } .components-menu-item__button, .components-menu-item__button.components-button { width: 100%; } .components-menu-item__button[role=menuitemradio] .components-menu-item__item:only-child, .components-menu-item__button[role=menuitemcheckbox] .components-menu-item__item:only-child, .components-menu-item__button.components-button[role=menuitemradio] .components-menu-item__item:only-child, .components-menu-item__button.components-button[role=menuitemcheckbox] .components-menu-item__item:only-child { padding-left: 48px; } .components-menu-item__button .components-menu-items__item-icon, .components-menu-item__button.components-button .components-menu-items__item-icon { display: inline-block; flex: 0 0 auto; } .components-menu-item__button .components-menu-items__item-icon.has-icon-right, .components-menu-item__button.components-button .components-menu-items__item-icon.has-icon-right { margin-left: -2px; margin-right: 24px; } .components-menu-item__button .components-menu-item__shortcut + .components-menu-items__item-icon.has-icon-right, .components-menu-item__button.components-button .components-menu-item__shortcut + .components-menu-items__item-icon.has-icon-right { margin-right: 8px; } .components-menu-item__button .block-editor-block-icon, .components-menu-item__button.components-button .block-editor-block-icon { margin-right: -2px; margin-left: 8px; } .components-menu-item__button.is-primary, .components-menu-item__button.components-button.is-primary { justify-content: center; } .components-menu-item__button.is-primary .components-menu-item__item, .components-menu-item__button.components-button.is-primary .components-menu-item__item { margin-left: 0; } .components-menu-item__info-wrapper { display: flex; flex-direction: column; margin-left: auto; } .components-menu-item__info { margin-top: 4px; font-size: 12px; color: #757575; white-space: normal; } .components-menu-item__item { white-space: nowrap; min-width: 160px; margin-left: auto; display: inline-flex; align-items: center; } .components-menu-item__shortcut { align-self: center; margin-left: 0; margin-right: auto; padding-right: 24px; color: currentColor; display: none; } @media (min-width: 480px) { .components-menu-item__shortcut { display: inline; } } .components-menu-items-choice svg, .components-menu-items-choice.components-button svg { margin-left: 12px; } .components-menu-items-choice.has-icon, .components-menu-items-choice.components-button.has-icon { padding-right: 12px; } .components-modal__screen-overlay { position: fixed; top: 0; left: 0; bottom: 0; right: 0; background-color: rgba(0, 0, 0, 0.35); z-index: 100000; display: flex; animation: edit-post__fade-in-animation 0.2s ease-out 0s; animation-fill-mode: forwards; } @media (prefers-reduced-motion: reduce) { .components-modal__screen-overlay { animation-duration: 1ms; animation-delay: 0s; } } .components-modal__frame { margin: 0; width: 100%; background: #fff; box-shadow: 0 10px 10px rgba(0, 0, 0, 0.25); border-radius: 2px; overflow: hidden; display: flex; } @media (min-width: 600px) { .components-modal__frame { margin: auto; width: auto; min-width: 360px; max-width: calc(100% - 32px); max-height: calc(100% - 120px); animation: components-modal__appear-animation 0.1s ease-out; animation-fill-mode: forwards; } } @media (min-width: 600px) and (prefers-reduced-motion: reduce) { .components-modal__frame { animation-duration: 1ms; animation-delay: 0s; } } @media (min-width: 600px) { .components-modal__frame.is-full-screen { width: 90vw; min-height: 90vh; } } @media (min-width: 960px) { .components-modal__frame { max-height: 70%; } } @keyframes components-modal__appear-animation { from { transform: translateY(32px); } to { transform: translateY(0); } } .components-modal__header { box-sizing: border-box; border-bottom: 1px solid #ddd; padding: 0 32px; display: flex; flex-direction: row; justify-content: space-between; align-items: center; height: 60px; width: 100%; z-index: 10; position: absolute; top: 0; right: 0; } .components-modal__header .components-modal__header-heading { font-size: 1rem; font-weight: 600; } .components-modal__header h1 { line-height: 1; margin: 0; } .components-modal__header .components-button { position: relative; right: 8px; } .components-modal__header-heading-container { align-items: center; flex-grow: 1; display: flex; flex-direction: row; justify-content: left; } .components-modal__header-icon-container { display: inline-block; } .components-modal__header-icon-container svg { max-width: 36px; max-height: 36px; padding: 8px; } .components-modal__content { flex: 1; margin-top: 60px; padding: 0 32px 24px; overflow: auto; } .components-modal__content::before { content: ""; display: block; margin-bottom: 24px; } .components-notice { display: flex; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; background-color: #fff; border-right: 4px solid var(--wp-admin-theme-color); margin: 5px 15px 2px; padding: 8px 12px; align-items: center; } .components-notice.is-dismissible { padding-left: 36px; position: relative; } .components-notice.is-success { border-right-color: #4ab866; background-color: #eff9f1; } .components-notice.is-warning { border-right-color: #f0b849; background-color: #fef8ee; } .components-notice.is-error { border-right-color: #cc1818; background-color: #f4a2a2; } .components-notice__content { flex-grow: 1; margin: 4px 0 4px 25px; } .components-notice__actions { display: flex; flex-wrap: wrap; } .components-notice__action.components-button { margin-left: 8px; } .components-notice__action.components-button, .components-notice__action.components-button.is-link { margin-right: 12px; } .components-notice__action.components-button.is-secondary { vertical-align: initial; } .components-notice__dismiss { color: #757575; align-self: flex-start; flex-shrink: 0; } .components-notice__dismiss:not(:disabled):not([aria-disabled=true]):not(.is-secondary):hover, .components-notice__dismiss:not(:disabled):not([aria-disabled=true]):not(.is-secondary):active, .components-notice__dismiss:not(:disabled):not([aria-disabled=true]):focus { color: #1e1e1e; background-color: transparent; } .components-notice__dismiss:not(:disabled):not([aria-disabled=true]):not(.is-secondary):hover { box-shadow: none; } .components-notice-list { max-width: 100vw; box-sizing: border-box; } .components-notice-list .components-notice__content { margin-top: 12px; margin-bottom: 12px; line-height: 2; } .components-notice-list .components-notice__action.components-button { display: block; margin-right: 0; margin-top: 8px; } .components-panel { background: #fff; border: 1px solid #e0e0e0; } .components-panel > .components-panel__header:first-child, .components-panel > .components-panel__body:first-child { margin-top: -1px; } .components-panel > .components-panel__header:last-child, .components-panel > .components-panel__body:last-child { border-bottom-width: 0; } .components-panel + .components-panel { margin-top: -1px; } .components-panel__body { border-top: 1px solid #e0e0e0; border-bottom: 1px solid #e0e0e0; } .components-panel__body h3 { margin: 0 0 0.5em; } .components-panel__body.is-opened { padding: 16px; } .components-panel__header { display: flex; justify-content: space-between; align-items: center; padding: 0 16px; height: 48px; border-bottom: 1px solid #ddd; } .components-panel__header h2 { margin: 0; font-size: inherit; color: inherit; } .components-panel__body + .components-panel__body, .components-panel__body + .components-panel__header, .components-panel__header + .components-panel__body, .components-panel__header + .components-panel__header { margin-top: -1px; } .components-panel__body > .components-panel__body-title { display: block; padding: 0; font-size: inherit; margin-top: 0; margin-bottom: 0; transition: 0.1s background ease-in-out; } @media (prefers-reduced-motion: reduce) { .components-panel__body > .components-panel__body-title { transition-duration: 0s; transition-delay: 0s; } } .components-panel__body.is-opened > .components-panel__body-title { margin: -16px; margin-bottom: 5px; } .components-panel__body > .components-panel__body-title:hover { background: #f0f0f0; border: none; } .components-panel__body-toggle.components-button { position: relative; padding: 16px 16px 16px 48px; outline: none; width: 100%; font-weight: 500; text-align: right; color: #1e1e1e; border: none; box-shadow: none; transition: 0.1s background ease-in-out; height: auto; } @media (prefers-reduced-motion: reduce) { .components-panel__body-toggle.components-button { transition-duration: 0s; transition-delay: 0s; } } .components-panel__body-toggle.components-button:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); border-radius: 0; } .components-panel__body-toggle.components-button .components-panel__arrow { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); color: #1e1e1e; fill: currentColor; transition: 0.1s color ease-in-out; } @media (prefers-reduced-motion: reduce) { .components-panel__body-toggle.components-button .components-panel__arrow { transition-duration: 0s; transition-delay: 0s; } } body.rtl .components-panel__body-toggle.components-button .dashicons-arrow-right { transform: scaleX(-1); -ms-filter: fliph; filter: FlipH; margin-top: -10px; } .components-panel__icon { color: #757575; margin: -2px 6px -2px 0; } .components-panel__body-toggle-icon { margin-left: -5px; } .components-panel__color-title { float: right; height: 19px; } .components-panel__row { display: flex; justify-content: space-between; align-items: center; margin-top: 8px; min-height: 36px; } .components-panel__row select { min-width: 0; } .components-panel__row label { margin-left: 12px; flex-shrink: 0; max-width: 75%; } .components-panel__row:empty, .components-panel__row:first-of-type { margin-top: 0; } .components-panel .circle-picker { padding-bottom: 20px; } .components-placeholder.components-placeholder { box-sizing: border-box; position: relative; padding: 1em; min-height: 200px; width: 100%; text-align: right; margin: 0; color: #1e1e1e; -moz-font-smoothing: subpixel-antialiased; -webkit-font-smoothing: subpixel-antialiased; border-radius: 2px; background-color: #fff; box-shadow: inset 0 0 0 1px #1e1e1e; outline: 1px solid transparent; } @supports (position: sticky) { .components-placeholder.components-placeholder { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; } } .components-placeholder.components-placeholder .components-base-control__label { font-size: 13px; } .components-placeholder__error, .components-placeholder__instructions, .components-placeholder__label, .components-placeholder__fieldset { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; } .components-placeholder__label { display: flex; font-weight: 600; margin-bottom: 16px; align-items: center; } .components-placeholder__label > svg, .components-placeholder__label .dashicon, .components-placeholder__label .block-editor-block-icon { margin-left: 1ch; fill: currentColor; } @media (forced-colors: active) { .components-placeholder__label > svg, .components-placeholder__label .dashicon, .components-placeholder__label .block-editor-block-icon { fill: CanvasText; } } .components-placeholder__label:empty { display: none; } .components-placeholder__fieldset, .components-placeholder__fieldset form { display: flex; flex-direction: row; width: 100%; flex-wrap: wrap; } .components-placeholder__fieldset p, .components-placeholder__fieldset form p { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; } .components-placeholder__fieldset.is-column-layout, .components-placeholder__fieldset.is-column-layout form { flex-direction: column; } .components-placeholder__input[type=url] { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; margin: 0 0 0 8px; flex: 1 1 auto; } @media (prefers-reduced-motion: reduce) { .components-placeholder__input[type=url] { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .components-placeholder__input[type=url] { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .components-placeholder__input[type=url]:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-placeholder__input[type=url]::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-placeholder__input[type=url]::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .components-placeholder__input[type=url]:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-placeholder__instructions { margin-bottom: 1em; } .components-placeholder__error { margin-top: 1em; width: 100%; } .components-placeholder__preview img { margin: 3%; width: 50%; } .components-placeholder__fieldset .components-button { margin-left: 12px; margin-bottom: 12px; } .components-placeholder__fieldset .components-button:last-child { margin-bottom: 0; margin-left: 0; } .components-placeholder__fieldset .components-button:not(.is-link) ~ .components-button.is-link { margin-right: 10px; margin-left: 10px; } .components-placeholder__fieldset .components-button:not(.is-link) ~ .components-button.is-link:last-child { margin-left: 0; } .components-placeholder.is-large .components-placeholder__label { font-size: 18pt; font-weight: normal; } .components-placeholder.is-medium .components-placeholder__instructions, .components-placeholder.is-small .components-placeholder__instructions { display: none; } .components-placeholder.is-medium .components-placeholder__fieldset, .components-placeholder.is-medium .components-placeholder__fieldset form, .components-placeholder.is-small .components-placeholder__fieldset, .components-placeholder.is-small .components-placeholder__fieldset form { flex-direction: column; } .components-placeholder.is-medium .components-placeholder__fieldset .components-button, .components-placeholder.is-small .components-placeholder__fieldset .components-button { margin-left: auto; } .components-placeholder.is-small .components-button { padding: 0 8px 2px; } .components-popover { position: fixed; z-index: 1000000; top: 0; left: 0; opacity: 0; } .components-popover.is-expanded, .components-popover[data-x-axis][data-y-axis] { opacity: 1; } .components-popover.is-expanded { top: 0; left: 0; right: 0; bottom: 0; z-index: 1000000 !important; } .components-popover:not(.is-without-arrow) { margin-left: 2px; } .components-popover:not(.is-without-arrow)::before { border: 8px solid #ccc; } .components-popover:not(.is-without-arrow).is-alternate::before { border-color: #1e1e1e; } .components-popover:not(.is-without-arrow)::after { border: 8px solid #fff; } .components-popover:not(.is-without-arrow)::before, .components-popover:not(.is-without-arrow)::after { content: ""; position: absolute; height: 0; width: 0; line-height: 0; } .components-popover:not(.is-without-arrow)[data-y-axis=top] { margin-top: -8px; } .components-popover:not(.is-without-arrow)[data-y-axis=top]::before { bottom: -8px; } .components-popover:not(.is-without-arrow)[data-y-axis=top]::after { bottom: -6px; } .components-popover:not(.is-without-arrow)[data-y-axis=top]::before, .components-popover:not(.is-without-arrow)[data-y-axis=top]::after { border-bottom: none; border-left-color: transparent; border-right-color: transparent; border-top-style: solid; margin-left: -10px; } .components-popover:not(.is-without-arrow)[data-y-axis=bottom] { margin-top: 8px; } .components-popover:not(.is-without-arrow)[data-y-axis=bottom]::before { top: -8px; } .components-popover:not(.is-without-arrow)[data-y-axis=bottom]::after { top: -6px; } .components-popover:not(.is-without-arrow)[data-y-axis=bottom]::before, .components-popover:not(.is-without-arrow)[data-y-axis=bottom]::after { border-bottom-style: solid; border-left-color: transparent; border-right-color: transparent; border-top: none; margin-left: -10px; } .components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=left] { margin-left: -8px; } .components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=left]::before { right: -8px; } .components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=left]::after { right: -6px; } .components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=left]::before, .components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=left]::after { border-bottom-color: transparent; border-left-style: solid; border-right: none; border-top-color: transparent; } .components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=right] { margin-left: 8px; } .components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=right]::before { left: -8px; } .components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=right]::after { left: -6px; } .components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=right]::before, .components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=right]::after { border-bottom-color: transparent; border-left: none; border-right-style: solid; border-top-color: transparent; } .components-popover[data-y-axis=top] { bottom: 100%; } .components-popover[data-y-axis=bottom] { top: 100%; } .components-popover[data-y-axis=middle] { align-items: center; display: flex; } .components-popover.is-from-top { margin-top: 12px; } .components-popover.is-from-bottom { margin-top: -12px; } .components-popover.is-from-left:not(.is-from-top):not(.is-from-bottom) { margin-left: 12px; } .components-popover.is-from-right:not(.is-from-top):not(.is-from-bottom) { margin-right: 12px; } .components-popover__content { height: 100%; background: #fff; border: 1px solid #ccc; box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05); border-radius: 2px; } .is-alternate .components-popover__content { border: 1px solid #1e1e1e; box-shadow: none; } .components-popover .components-popover__content { position: absolute; height: auto; overflow-y: auto; } .components-popover.is-expanded .components-popover__content { position: static; height: calc(100% - 48px); overflow-y: visible; min-width: auto; border: none; border-top: 1px solid #1e1e1e; } .components-popover[data-y-axis=top] .components-popover__content { bottom: 100%; } .components-popover[data-x-axis=center] .components-popover__content { left: 50%; transform: translateX(-50%); } .components-popover[data-x-axis=right] .components-popover__content { position: absolute; left: 100%; } .components-popover:not([data-y-axis=middle])[data-x-axis=right] .components-popover__content { margin-left: -25px; } .components-popover[data-x-axis=left] .components-popover__content { position: absolute; right: 100%; } .components-popover:not([data-y-axis=middle])[data-x-axis=left] .components-popover__content { margin-right: -25px; } .components-popover__header { align-items: center; background: #fff; display: flex; height: 48px; justify-content: space-between; padding: 0 8px 0 16px; } .components-popover__header-title { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; width: 100%; } .components-popover__close.components-button { z-index: 5; } .components-radio-control { display: flex; flex-direction: column; } .components-radio-control .components-base-control__help { margin-top: 0; } .components-radio-control .components-base-control__field { margin-bottom: 0; } .components-radio-control__option:not(:last-child) { margin-bottom: 4px; } .components-radio-control__input[type=radio] { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; border: 1px solid #1e1e1e; margin-left: 12px; transition: none; border-radius: 50%; width: 24px; height: 24px; margin-top: 0; margin-left: 6px; } @media (prefers-reduced-motion: reduce) { .components-radio-control__input[type=radio] { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .components-radio-control__input[type=radio] { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .components-radio-control__input[type=radio]:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-radio-control__input[type=radio]::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-radio-control__input[type=radio]::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .components-radio-control__input[type=radio]:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } @media (min-width: 600px) { .components-radio-control__input[type=radio] { height: 20px; width: 20px; } } .components-radio-control__input[type=radio]:checked::before { box-sizing: inherit; width: 8px; height: 8px; transform: translate(-7px, 7px); margin: 0; background-color: #fff; border: 4px solid #fff; } @media (min-width: 600px) { .components-radio-control__input[type=radio]:checked::before { transform: translate(-5px, 5px); } } .components-radio-control__input[type=radio]:focus { box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-radio-control__input[type=radio]:checked { background: var(--wp-admin-theme-color); border-color: var(--wp-admin-theme-color); } .components-resizable-box__handle { display: none; width: 23px; height: 23px; z-index: 2; } .components-resizable-box__container.has-show-handle .components-resizable-box__handle { display: block; } .components-resizable-box__container > img { width: inherit; } .components-resizable-box__handle::after { display: block; content: ""; width: 15px; height: 15px; border-radius: 50%; background: #fff; cursor: inherit; position: absolute; top: calc(50% - 8px); left: calc(50% - 8px); box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-resizable-box__side-handle::before { display: block; border-radius: 2px; content: ""; width: 3px; height: 3px; background: var(--wp-admin-theme-color); cursor: inherit; position: absolute; top: calc(50% - 1px); left: calc(50% - 1px); transition: transform 0.1s ease-in; opacity: 0; } @media (prefers-reduced-motion: reduce) { .components-resizable-box__side-handle::before { transition-duration: 0s; transition-delay: 0s; } } .components-resizable-box__side-handle { z-index: 2; } .components-resizable-box__corner-handle { z-index: 2; } .components-resizable-box__side-handle.components-resizable-box__handle-top, .components-resizable-box__side-handle.components-resizable-box__handle-bottom, .components-resizable-box__side-handle.components-resizable-box__handle-top::before, .components-resizable-box__side-handle.components-resizable-box__handle-bottom::before { width: 100%; right: 0; border-right: 0; border-left: 0; } .components-resizable-box__side-handle.components-resizable-box__handle-left, .components-resizable-box__side-handle.components-resizable-box__handle-right, .components-resizable-box__side-handle.components-resizable-box__handle-left::before, .components-resizable-box__side-handle.components-resizable-box__handle-right::before { height: 100%; top: 0; border-top: 0; border-bottom: 0; } .components-resizable-box__side-handle.components-resizable-box__handle-top:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-bottom:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-top:active::before, .components-resizable-box__side-handle.components-resizable-box__handle-bottom:active::before { animation: components-resizable-box__top-bottom-animation 0.1s ease-out 0s; animation-fill-mode: forwards; } @media (prefers-reduced-motion: reduce) { .components-resizable-box__side-handle.components-resizable-box__handle-top:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-bottom:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-top:active::before, .components-resizable-box__side-handle.components-resizable-box__handle-bottom:active::before { animation-duration: 1ms; animation-delay: 0s; } } .components-resizable-box__side-handle.components-resizable-box__handle-left:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-right:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-left:active::before, .components-resizable-box__side-handle.components-resizable-box__handle-right:active::before { animation: components-resizable-box__left-right-animation 0.1s ease-out 0s; animation-fill-mode: forwards; } @media (prefers-reduced-motion: reduce) { .components-resizable-box__side-handle.components-resizable-box__handle-left:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-right:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-left:active::before, .components-resizable-box__side-handle.components-resizable-box__handle-right:active::before { animation-duration: 1ms; animation-delay: 0s; } } /* This CSS is shown only to Safari, which has a bug with table-caption making it jumpy. See https://bugs.webkit.org/show_bug.cgi?id=187903. */ @media not all and (-webkit-min-device-pixel-ratio: 0), not all and (min-resolution: 0.001dpcm) { @supports (-webkit-appearance: none) { .components-resizable-box__side-handle.components-resizable-box__handle-top:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-bottom:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-top:active::before, .components-resizable-box__side-handle.components-resizable-box__handle-bottom:active::before { animation: none; } .components-resizable-box__side-handle.components-resizable-box__handle-left:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-right:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-left:active::before, .components-resizable-box__side-handle.components-resizable-box__handle-right:active::before { animation: none; } } } @keyframes components-resizable-box__top-bottom-animation { from { transform: scaleX(0); opacity: 0; } to { transform: scaleX(1); opacity: 1; } } @keyframes components-resizable-box__left-right-animation { from { transform: scaleY(0); opacity: 0; } to { transform: scaleY(1); opacity: 1; } } .components-resizable-box__handle-right { right: calc(11.5px * -1); } .components-resizable-box__handle-left { left: calc(11.5px * -1); } .components-resizable-box__handle-top { top: calc(11.5px * -1); } .components-resizable-box__handle-bottom { bottom: calc(11.5px * -1); } .components-responsive-wrapper { position: relative; max-width: 100%; } .components-responsive-wrapper, .components-responsive-wrapper > span { display: block; } .components-responsive-wrapper__content { position: absolute; top: 0; left: 0; bottom: 0; right: 0; width: 100%; height: 100%; margin: auto; } .components-sandbox { overflow: hidden; } iframe.components-sandbox { width: 100%; } html.lockscroll, body.lockscroll { overflow: hidden; } .components-search-control { position: relative; } .components-search-control input[type=search].components-search-control__input { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; display: block; padding: 16px 16px 16px 48px; background: #f0f0f0; border: none; width: 100%; height: 48px; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; } @media (prefers-reduced-motion: reduce) { .components-search-control input[type=search].components-search-control__input { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .components-search-control input[type=search].components-search-control__input { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .components-search-control input[type=search].components-search-control__input:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-search-control input[type=search].components-search-control__input::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-search-control input[type=search].components-search-control__input::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .components-search-control input[type=search].components-search-control__input:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } @media (min-width: 600px) { .components-search-control input[type=search].components-search-control__input { font-size: 13px; } } .components-search-control input[type=search].components-search-control__input:focus { background: #fff; box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .components-search-control input[type=search].components-search-control__input::placeholder { color: #757575; } .components-search-control input[type=search].components-search-control__input::-webkit-search-decoration, .components-search-control input[type=search].components-search-control__input::-webkit-search-cancel-button, .components-search-control input[type=search].components-search-control__input::-webkit-search-results-button, .components-search-control input[type=search].components-search-control__input::-webkit-search-results-decoration { -webkit-appearance: none; } .components-search-control__icon { position: absolute; top: 0; left: 12px; bottom: 0; display: flex; align-items: center; } .components-search-control__icon > svg { margin: 8px 0; } .components-search-control__input-wrapper { position: relative; } .components-select-control__input { background: #fff; height: 36px; line-height: 36px; margin: 1px; outline: 0; width: 100%; -webkit-tap-highlight-color: rgba(0, 0, 0, 0) !important; } @media (min-width: 782px) { .components-select-control__input { height: 28px; line-height: 28px; } } @media (max-width: 782px) { .components-base-control .components-base-control__field .components-select-control__input { font-size: 16px; } } .components-snackbar { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; background-color: #1e1e1e; border-radius: 2px; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3); color: #fff; padding: 16px 24px; width: 100%; max-width: 600px; box-sizing: border-box; cursor: pointer; pointer-events: auto; } @media (min-width: 600px) { .components-snackbar { width: -moz-fit-content; width: fit-content; } } .components-snackbar:focus { box-shadow: 0 0 0 1px #fff, 0 0 0 3px var(--wp-admin-theme-color); } .components-snackbar.components-snackbar-explicit-dismiss { cursor: default; } .components-snackbar .components-snackbar__content-with-icon { margin-right: 24px; } .components-snackbar .components-snackbar__icon { position: absolute; top: 24px; right: 28px; } .components-snackbar .components-snackbar__dismiss-button { margin-right: 32px; cursor: pointer; } .components-snackbar__action.components-button { margin-right: 32px; color: #fff; height: auto; flex-shrink: 0; line-height: 1.4; padding: 0; } .components-snackbar__action.components-button:not(:disabled):not([aria-disabled=true]):not(.is-secondary) { text-decoration: underline; background-color: transparent; } .components-snackbar__action.components-button:not(:disabled):not([aria-disabled=true]):not(.is-secondary):focus { color: #fff; box-shadow: none; outline: 1px dotted #fff; } .components-snackbar__action.components-button:not(:disabled):not([aria-disabled=true]):not(.is-secondary):hover { color: var(--wp-admin-theme-color); } .components-snackbar__content { display: flex; align-items: baseline; justify-content: space-between; line-height: 1.4; } .components-snackbar-list { position: absolute; z-index: 100000; width: 100%; box-sizing: border-box; pointer-events: none; } .components-snackbar-list__notice-container { position: relative; padding-top: 8px; } .components-swatch { width: 18px; height: 18px; border-radius: 50%; color: transparent; background: transparent; } .components-swatch::after { content: ""; display: block; width: 100%; height: 100%; border: 1px solid rgba(0, 0, 0, 0.2); border-radius: 50%; } .components-button.has-icon.has-text .components-swatch { margin-left: 8px; } .components-tab-panel__tabs { display: flex; align-items: stretch; flex-direction: row; } .components-tab-panel__tabs[aria-orientation=vertical] { flex-direction: column; } .components-tab-panel__tabs-item { background: transparent; border: none; box-shadow: none; border-radius: 0; cursor: pointer; height: 48px; padding: 3px 16px; margin-right: 0; font-weight: 500; transition: box-shadow 0.1s linear; box-sizing: border-box; } .components-tab-panel__tabs-item::after { content: attr(data-label); display: block; height: 0; overflow: hidden; speak: none; visibility: hidden; } .components-tab-panel__tabs-item:focus:not(:disabled) { box-shadow: inset 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .components-tab-panel__tabs-item.is-active { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) transparent, inset 0 -4px 0 0 var(--wp-admin-theme-color); position: relative; } .components-tab-panel__tabs-item.is-active::before { content: ""; position: absolute; top: 0; bottom: 1px; left: 0; right: 0; border-bottom: 4px solid transparent; } .components-tab-panel__tabs-item:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .components-tab-panel__tabs-item.is-active:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 -4px 0 0 var(--wp-admin-theme-color); } .components-text-control__input, .components-text-control__input[type=text], .components-text-control__input[type=tel], .components-text-control__input[type=time], .components-text-control__input[type=url], .components-text-control__input[type=week], .components-text-control__input[type=password], .components-text-control__input[type=color], .components-text-control__input[type=date], .components-text-control__input[type=datetime], .components-text-control__input[type=datetime-local], .components-text-control__input[type=email], .components-text-control__input[type=month], .components-text-control__input[type=number] { width: 100%; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; } @media (prefers-reduced-motion: reduce) { .components-text-control__input, .components-text-control__input[type=text], .components-text-control__input[type=tel], .components-text-control__input[type=time], .components-text-control__input[type=url], .components-text-control__input[type=week], .components-text-control__input[type=password], .components-text-control__input[type=color], .components-text-control__input[type=date], .components-text-control__input[type=datetime], .components-text-control__input[type=datetime-local], .components-text-control__input[type=email], .components-text-control__input[type=month], .components-text-control__input[type=number] { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .components-text-control__input, .components-text-control__input[type=text], .components-text-control__input[type=tel], .components-text-control__input[type=time], .components-text-control__input[type=url], .components-text-control__input[type=week], .components-text-control__input[type=password], .components-text-control__input[type=color], .components-text-control__input[type=date], .components-text-control__input[type=datetime], .components-text-control__input[type=datetime-local], .components-text-control__input[type=email], .components-text-control__input[type=month], .components-text-control__input[type=number] { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .components-text-control__input:focus, .components-text-control__input[type=text]:focus, .components-text-control__input[type=tel]:focus, .components-text-control__input[type=time]:focus, .components-text-control__input[type=url]:focus, .components-text-control__input[type=week]:focus, .components-text-control__input[type=password]:focus, .components-text-control__input[type=color]:focus, .components-text-control__input[type=date]:focus, .components-text-control__input[type=datetime]:focus, .components-text-control__input[type=datetime-local]:focus, .components-text-control__input[type=email]:focus, .components-text-control__input[type=month]:focus, .components-text-control__input[type=number]:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-text-control__input::-webkit-input-placeholder, .components-text-control__input[type=text]::-webkit-input-placeholder, .components-text-control__input[type=tel]::-webkit-input-placeholder, .components-text-control__input[type=time]::-webkit-input-placeholder, .components-text-control__input[type=url]::-webkit-input-placeholder, .components-text-control__input[type=week]::-webkit-input-placeholder, .components-text-control__input[type=password]::-webkit-input-placeholder, .components-text-control__input[type=color]::-webkit-input-placeholder, .components-text-control__input[type=date]::-webkit-input-placeholder, .components-text-control__input[type=datetime]::-webkit-input-placeholder, .components-text-control__input[type=datetime-local]::-webkit-input-placeholder, .components-text-control__input[type=email]::-webkit-input-placeholder, .components-text-control__input[type=month]::-webkit-input-placeholder, .components-text-control__input[type=number]::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-text-control__input::-moz-placeholder, .components-text-control__input[type=text]::-moz-placeholder, .components-text-control__input[type=tel]::-moz-placeholder, .components-text-control__input[type=time]::-moz-placeholder, .components-text-control__input[type=url]::-moz-placeholder, .components-text-control__input[type=week]::-moz-placeholder, .components-text-control__input[type=password]::-moz-placeholder, .components-text-control__input[type=color]::-moz-placeholder, .components-text-control__input[type=date]::-moz-placeholder, .components-text-control__input[type=datetime]::-moz-placeholder, .components-text-control__input[type=datetime-local]::-moz-placeholder, .components-text-control__input[type=email]::-moz-placeholder, .components-text-control__input[type=month]::-moz-placeholder, .components-text-control__input[type=number]::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .components-text-control__input:-ms-input-placeholder, .components-text-control__input[type=text]:-ms-input-placeholder, .components-text-control__input[type=tel]:-ms-input-placeholder, .components-text-control__input[type=time]:-ms-input-placeholder, .components-text-control__input[type=url]:-ms-input-placeholder, .components-text-control__input[type=week]:-ms-input-placeholder, .components-text-control__input[type=password]:-ms-input-placeholder, .components-text-control__input[type=color]:-ms-input-placeholder, .components-text-control__input[type=date]:-ms-input-placeholder, .components-text-control__input[type=datetime]:-ms-input-placeholder, .components-text-control__input[type=datetime-local]:-ms-input-placeholder, .components-text-control__input[type=email]:-ms-input-placeholder, .components-text-control__input[type=month]:-ms-input-placeholder, .components-text-control__input[type=number]:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-tip { display: flex; color: #757575; } .components-tip svg { align-self: center; fill: #f0b849; flex-shrink: 0; margin-left: 16px; } .components-tip p { margin: 0; } .components-toggle-control .components-base-control__field { display: flex; margin-bottom: 12px; line-height: initial; align-items: center; } .components-toggle-control .components-base-control__field .components-form-toggle { margin-left: 12px; } .components-toggle-control .components-base-control__field .components-toggle-control__label { display: block; } .components-accessible-toolbar { display: inline-flex; border: 1px solid #1e1e1e; border-radius: 2px; flex-shrink: 0; } .components-accessible-toolbar > .components-toolbar-group:last-child { border-left: none; } .components-accessible-toolbar .components-button, .components-toolbar .components-button { position: relative; height: 48px; z-index: 1; padding-right: 16px; padding-left: 16px; } .components-accessible-toolbar .components-button:focus:enabled, .components-toolbar .components-button:focus:enabled { box-shadow: none; outline: none; } .components-accessible-toolbar .components-button::before, .components-toolbar .components-button::before { content: ""; position: absolute; display: block; border-radius: 2px; height: 32px; right: 8px; left: 8px; z-index: -1; animation: components-button__appear-animation 0.1s ease; animation-fill-mode: forwards; } @media (prefers-reduced-motion: reduce) { .components-accessible-toolbar .components-button::before, .components-toolbar .components-button::before { animation-duration: 1ms; animation-delay: 0s; } } .components-accessible-toolbar .components-button svg, .components-toolbar .components-button svg { position: relative; margin-right: auto; margin-left: auto; } .components-accessible-toolbar .components-button.is-pressed, .components-toolbar .components-button.is-pressed { background: transparent; } .components-accessible-toolbar .components-button.is-pressed:hover, .components-toolbar .components-button.is-pressed:hover { background: transparent; } .components-accessible-toolbar .components-button.is-pressed::before, .components-toolbar .components-button.is-pressed::before { background: #1e1e1e; } .components-accessible-toolbar .components-button:focus::before, .components-toolbar .components-button:focus::before { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 0 0 4px #fff; outline: 2px solid transparent; } .components-accessible-toolbar .components-button.has-icon.has-icon, .components-toolbar .components-button.has-icon.has-icon { padding-right: 12px; padding-left: 12px; min-width: 48px; } .components-accessible-toolbar .components-button.components-tab-button, .components-toolbar .components-button.components-tab-button { font-weight: 500; } .components-accessible-toolbar .components-button.components-tab-button span, .components-toolbar .components-button.components-tab-button span { display: inline-block; padding-right: 0; padding-left: 0; position: relative; } @keyframes components-button__appear-animation { from { transform: scaleY(0); } to { transform: scaleY(1); } } .components-toolbar__control.components-button { position: relative; } .components-toolbar__control.components-button[data-subscript] svg { padding: 5px 0 5px 10px; } .components-toolbar__control.components-button[data-subscript]::after { content: attr(data-subscript); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; font-weight: 600; line-height: 12px; position: absolute; left: 8px; bottom: 10px; } .components-toolbar__control.components-button:active::before { display: none; } .components-toolbar__control.components-button:not(:disabled).is-pressed[data-subscript]::after { color: #fff; } .components-toolbar-group { min-height: 48px; border-left: 1px solid #1e1e1e; background-color: #fff; display: inline-flex; flex-shrink: 0; flex-wrap: wrap; line-height: 0; } .components-toolbar-group .components-toolbar-group.components-toolbar-group { border-width: 0; margin: 0; } .components-toolbar { min-height: 48px; margin: 0; border: 1px solid #1e1e1e; background-color: #fff; display: inline-flex; flex-shrink: 0; flex-wrap: wrap; } .components-toolbar .components-toolbar.components-toolbar { border-width: 0; margin: 0; } div.components-toolbar > div { display: block; margin: 0; } @supports (position: sticky) { div.components-toolbar > div { display: flex; } } div.components-toolbar > div + div.has-left-divider { margin-right: 6px; position: relative; overflow: visible; } div.components-toolbar > div + div.has-left-divider::before { display: inline-block; content: ""; box-sizing: content-box; background-color: #ddd; position: absolute; top: 8px; right: -3px; width: 1px; height: 20px; } .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-button:first-child:last-child, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-dropdown:first-child:last-child .components-button, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot.components-dropdown > .components-button.components-button, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot.components-dropdown > * .components-button, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-button:first-child:last-child, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-dropdown:first-child:last-child .components-button, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot.components-dropdown > .components-button.components-button, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot.components-dropdown > * .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-button:first-child:last-child, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-dropdown:first-child:last-child .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar.components-dropdown > .components-button.components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar.components-dropdown > * .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-button:first-child:last-child, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-dropdown:first-child:last-child .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown.components-dropdown > .components-button.components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown.components-dropdown > * .components-button, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-button:first-child:last-child, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-dropdown:first-child:last-child .components-button, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group.components-dropdown > .components-button.components-button, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group.components-dropdown > * .components-button { min-width: 48px; padding-right: 12px; padding-left: 12px; } .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-button:first-child:last-child::before, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-dropdown:first-child:last-child .components-button::before, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot.components-dropdown > .components-button.components-button::before, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot.components-dropdown > * .components-button::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-button:first-child:last-child::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-dropdown:first-child:last-child .components-button::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot.components-dropdown > .components-button.components-button::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot.components-dropdown > * .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-button:first-child:last-child::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-dropdown:first-child:last-child .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar.components-dropdown > .components-button.components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar.components-dropdown > * .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-button:first-child:last-child::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-dropdown:first-child:last-child .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown.components-dropdown > .components-button.components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown.components-dropdown > * .components-button::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-button:first-child:last-child::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-dropdown:first-child:last-child .components-button::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group.components-dropdown > .components-button.components-button::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group.components-dropdown > * .components-button::before { right: 8px; left: 8px; } .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-button:first-child, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > div:first-child > .components-button, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-dropdown:first-child .components-button, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-button:first-child, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > div:first-child > .components-button, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-dropdown:first-child .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-button:first-child, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > div:first-child > .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-dropdown:first-child .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-button:first-child, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > div:first-child > .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-dropdown:first-child .components-button, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-button:first-child, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > div:first-child > .components-button, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-dropdown:first-child .components-button { min-width: 42px; padding-right: 11px; padding-left: 6px; } .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-button:first-child::before, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > div:first-child > .components-button::before, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-dropdown:first-child .components-button::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-button:first-child::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > div:first-child > .components-button::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-dropdown:first-child .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-button:first-child::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > div:first-child > .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-dropdown:first-child .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-button:first-child::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > div:first-child > .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-dropdown:first-child .components-button::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-button:first-child::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > div:first-child > .components-button::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-dropdown:first-child .components-button::before { right: 8px; left: 2px; } .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-button, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > div > .components-button, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-dropdown .components-button, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-button, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > div > .components-button, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-dropdown .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > div > .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-dropdown .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > div > .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-dropdown .components-button, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-button, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > div > .components-button, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-dropdown .components-button { min-width: 36px; padding-right: 6px; padding-left: 6px; } .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-button svg, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > div > .components-button svg, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-dropdown .components-button svg, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-button svg, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > div > .components-button svg, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-dropdown .components-button svg, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-button svg, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > div > .components-button svg, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-dropdown .components-button svg, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-button svg, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > div > .components-button svg, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-dropdown .components-button svg, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-button svg, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > div > .components-button svg, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-dropdown .components-button svg { min-width: 24px; } .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-button::before, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > div > .components-button::before, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-dropdown .components-button::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-button::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > div > .components-button::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-dropdown .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > div > .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-dropdown .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > div > .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-dropdown .components-button::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-button::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > div > .components-button::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-dropdown .components-button::before { right: 2px; left: 2px; } .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-button:last-child, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > div:last-child > .components-button, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-dropdown:last-child .components-button, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-button:last-child, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > div:last-child > .components-button, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-dropdown:last-child .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-button:last-child, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > div:last-child > .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-dropdown:last-child .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-button:last-child, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > div:last-child > .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-dropdown:last-child .components-button, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-button:last-child, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > div:last-child > .components-button, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-dropdown:last-child .components-button { min-width: 42px; padding-right: 6px; padding-left: 11px; } .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-button:last-child::before, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > div:last-child > .components-button::before, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-dropdown:last-child .components-button::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-button:last-child::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > div:last-child > .components-button::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-dropdown:last-child .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-button:last-child::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > div:last-child > .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-dropdown:last-child .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-button:last-child::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > div:last-child > .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-dropdown:last-child .components-button::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-button:last-child::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > div:last-child > .components-button::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-dropdown:last-child .components-button::before { right: 2px; left: 8px; } .components-tooltip.components-popover { z-index: 1000002; } .components-tooltip.components-popover .components-popover__content { min-width: 0; } .components-tooltip .components-popover__content { background: #1e1e1e; border-radius: 2px; border-width: 0; color: #fff; white-space: nowrap; text-align: center; line-height: 1.4; font-size: 12px; box-shadow: none; } .components-tooltip .components-popover__content > div { padding: 4px 8px; } .components-tooltip__shortcut { display: inline-block; margin-right: 8px; } .disabled-element-wrapper { position: relative; } .disabled-element-wrapper .event-catcher { z-index: 100002; position: absolute; width: 100%; height: 100%; top: 0; right: 0; bottom: 0; left: 0; }PKj l\nq33css/dist/components/style.cssnu[@charset "UTF-8"; /** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .components-animate__appear { animation: components-animate__appear-animation 0.1s cubic-bezier(0, 0, 0.2, 1) 0s; animation-fill-mode: forwards; } @media (prefers-reduced-motion: reduce) { .components-animate__appear { animation-duration: 1ms; animation-delay: 0s; } } .components-animate__appear.is-from-top, .components-animate__appear.is-from-top.is-from-left { transform-origin: top left; } .components-animate__appear.is-from-top.is-from-right { transform-origin: top right; } .components-animate__appear.is-from-bottom, .components-animate__appear.is-from-bottom.is-from-left { transform-origin: bottom left; } .components-animate__appear.is-from-bottom.is-from-right { transform-origin: bottom right; } @keyframes components-animate__appear-animation { from { transform: translateY(-2em) scaleY(0) scaleX(0); } to { transform: translateY(0%) scaleY(1) scaleX(1); } } .components-animate__slide-in { animation: components-animate__slide-in-animation 0.1s cubic-bezier(0, 0, 0.2, 1); animation-fill-mode: forwards; } @media (prefers-reduced-motion: reduce) { .components-animate__slide-in { animation-duration: 1ms; animation-delay: 0s; } } .components-animate__slide-in.is-from-left { transform: translateX(100%); } .components-animate__slide-in.is-from-right { transform: translateX(-100%); } @keyframes components-animate__slide-in-animation { 100% { transform: translateX(0%); } } .components-animate__loading { animation: components-animate__loading 1.6s ease-in-out infinite; } @keyframes components-animate__loading { 0% { opacity: 0.5; } 50% { opacity: 1; } 100% { opacity: 0.5; } } .components-autocomplete__popover .components-popover__content > div { padding: 16px; min-width: 220px; } .components-autocomplete__result.components-button { display: flex; height: auto; min-height: 36px; text-align: left; width: 100%; } .components-autocomplete__result.components-button.is-selected { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .components-button-group { display: inline-block; } .components-button-group .components-button { border-radius: 0; display: inline-flex; color: #1e1e1e; box-shadow: inset 0 0 0 1px #1e1e1e; } .components-button-group .components-button + .components-button { margin-left: -1px; } .components-button-group .components-button:first-child { border-radius: 2px 0 0 2px; } .components-button-group .components-button:last-child { border-radius: 0 2px 2px 0; } .components-button-group .components-button:focus, .components-button-group .components-button.is-primary { position: relative; z-index: 1; } .components-button-group .components-button.is-primary { box-shadow: inset 0 0 0 1px #1e1e1e; } .components-button { display: inline-flex; text-decoration: none; font-weight: normal; font-size: 13px; margin: 0; border: 0; cursor: pointer; -webkit-appearance: none; background: none; transition: box-shadow 0.1s linear; height: 36px; align-items: center; box-sizing: border-box; padding: 6px 12px; border-radius: 2px; color: #1e1e1e; /** * Primary button style. */ /** * Secondary and tertiary buttons. */ /** * Secondary button style. */ /** * Tertiary buttons. */ /** * Destructive buttons. */ /** * Link buttons. */ } @media (prefers-reduced-motion: reduce) { .components-button { transition-duration: 0s; transition-delay: 0s; } } .components-button[aria-expanded=true], .components-button:hover { color: var(--wp-admin-theme-color); } .components-button[aria-disabled=true]:hover { color: initial; } .components-button:focus:not(:disabled) { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); outline: 3px solid transparent; } .components-button.is-primary { white-space: nowrap; background: var(--wp-admin-theme-color); color: #fff; text-decoration: none; text-shadow: none; outline: 1px solid transparent; } .components-button.is-primary:hover:not(:disabled) { background: var(--wp-admin-theme-color-darker-10); color: #fff; } .components-button.is-primary:active:not(:disabled) { background: var(--wp-admin-theme-color-darker-20); border-color: var(--wp-admin-theme-color-darker-20); color: #fff; } .components-button.is-primary:focus:not(:disabled) { box-shadow: inset 0 0 0 1px #fff, 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .components-button.is-primary:disabled, .components-button.is-primary:disabled:active:enabled, .components-button.is-primary[aria-disabled=true], .components-button.is-primary[aria-disabled=true]:enabled, .components-button.is-primary[aria-disabled=true]:active:enabled { color: rgba(255, 255, 255, 0.4); background: var(--wp-admin-theme-color); border-color: var(--wp-admin-theme-color); opacity: 1; outline: none; } .components-button.is-primary:disabled:focus:enabled, .components-button.is-primary:disabled:active:enabled:focus:enabled, .components-button.is-primary[aria-disabled=true]:focus:enabled, .components-button.is-primary[aria-disabled=true]:enabled:focus:enabled, .components-button.is-primary[aria-disabled=true]:active:enabled:focus:enabled { box-shadow: 0 0 0 1px #fff, 0 0 0 3px var(--wp-admin-theme-color); } .components-button.is-primary.is-busy, .components-button.is-primary.is-busy:disabled, .components-button.is-primary.is-busy[aria-disabled=true] { color: #fff; background-size: 100px 100%; /* stylelint-disable */ background-image: linear-gradient(-45deg, var(--wp-admin-theme-color) 33%, var(--wp-admin-theme-color-darker-20) 33%, var(--wp-admin-theme-color-darker-20) 70%, var(--wp-admin-theme-color) 70%); /* stylelint-enable */ border-color: var(--wp-admin-theme-color); } .components-button.is-secondary, .components-button.is-tertiary { outline: 1px solid transparent; } .components-button.is-secondary:active:not(:disabled), .components-button.is-tertiary:active:not(:disabled) { background: #ddd; color: var(--wp-admin-theme-color-darker-10); box-shadow: none; } .components-button.is-secondary:hover:not(:disabled), .components-button.is-tertiary:hover:not(:disabled) { color: var(--wp-admin-theme-color-darker-10); box-shadow: inset 0 0 0 1px var(--wp-admin-theme-color-darker-10); } .components-button.is-secondary:disabled, .components-button.is-secondary[aria-disabled=true], .components-button.is-secondary[aria-disabled=true]:hover, .components-button.is-tertiary:disabled, .components-button.is-tertiary[aria-disabled=true], .components-button.is-tertiary[aria-disabled=true]:hover { color: #828282; background: #eaeaea; transform: none; opacity: 1; box-shadow: none; outline: none; } .components-button.is-secondary { box-shadow: inset 0 0 0 1px var(--wp-admin-theme-color); outline: 1px solid transparent; white-space: nowrap; color: var(--wp-admin-theme-color); background: transparent; } .components-button.is-tertiary { white-space: nowrap; color: var(--wp-admin-theme-color); background: transparent; padding: 6px; } .components-button.is-tertiary .dashicon { display: inline-block; flex: 0 0 auto; } p + .components-button.is-tertiary { margin-left: -6px; } .components-button.is-destructive { color: #cc1818; box-shadow: inset 0 0 0 1px #cc1818; } .components-button.is-destructive:hover:not(:disabled) { color: #710d0d; box-shadow: inset 0 0 0 1px #710d0d; } .components-button.is-destructive:focus:not(:disabled) { color: var(--wp-admin-theme-color); } .components-button.is-destructive:active:not(:disabled) { background: #ccc; } .components-button.is-destructive.is-primary { color: #fff; background: #cc1818; box-shadow: inset 0 0 0 1px #cc1818; } .components-button.is-destructive.is-primary:hover:not(:disabled) { color: #fff; background: #710d0d; box-shadow: inset 0 0 0 1px #710d0d; } .components-button.is-link { margin: 0; padding: 0; box-shadow: none; border: 0; border-radius: 0; background: none; outline: none; text-align: left; color: var(--wp-admin-theme-color); text-decoration: underline; transition-property: border, background, color; transition-duration: 0.05s; transition-timing-function: ease-in-out; height: auto; } @media (prefers-reduced-motion: reduce) { .components-button.is-link { transition-duration: 0s; transition-delay: 0s; } } .components-button.is-link:focus { border-radius: 2px; } .components-button.is-link.is-destructive { color: #cc1818; } .components-button.is-link.is-destructive:active:not(:disabled), .components-button.is-link.is-destructive:hover:not(:disabled) { color: #710d0d; background: none; } .components-button.is-link.is-destructive:focus:not(:disabled) { color: var(--wp-admin-theme-color); } .components-button:not([aria-disabled=true]):active { color: inherit; } .components-button:disabled, .components-button[aria-disabled=true] { cursor: default; opacity: 0.3; } .components-button.is-busy, .components-button.is-secondary.is-busy, .components-button.is-secondary.is-busy:disabled, .components-button.is-secondary.is-busy[aria-disabled=true] { animation: components-button__busy-animation 2500ms infinite linear; opacity: 1; background-size: 100px 100%; /* stylelint-disable */ background-image: linear-gradient(-45deg, #fafafa 33%, #e0e0e0 33%, #e0e0e0 70%, #fafafa 70%); /* stylelint-enable */ } .components-button.is-small { height: 24px; line-height: 22px; padding: 0 8px; font-size: 11px; } .components-button.is-small.has-icon:not(.has-text) { padding: 0 8px; width: 24px; } .components-button.has-icon { padding: 6px; min-width: 36px; justify-content: center; } .components-button.has-icon .dashicon { display: inline-block; flex: 0 0 auto; margin-left: 2px; margin-right: 2px; } .components-button.has-icon.has-text { justify-content: left; } .components-button.has-icon.has-text svg { margin-right: 8px; } .components-button.has-icon.has-text .dashicon { margin-right: 10px; } .components-button.is-pressed { color: #fff; background: #1e1e1e; } .components-button.is-pressed:focus:not(:disabled) { box-shadow: inset 0 0 0 1px #fff, 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-button.is-pressed:hover:not(:disabled) { color: #fff; background: #1e1e1e; } .components-button svg { fill: currentColor; outline: none; } @media (forced-colors: active) { .components-button svg { fill: CanvasText; } } .components-button .components-visually-hidden { height: auto; } @keyframes components-button__busy-animation { 0% { background-position: 200px 0; } } .components-checkbox-control__input[type=checkbox] { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; border: 1px solid #1e1e1e; margin-right: 12px; transition: none; border-radius: 2px; background: #fff; color: #1e1e1e; clear: none; cursor: pointer; display: inline-block; line-height: 0; margin: 0 4px 0 0; outline: 0; padding: 0 !important; text-align: center; vertical-align: top; width: 24px; height: 24px; -webkit-appearance: none; appearance: none; transition: 0.1s border-color ease-in-out; } @media (prefers-reduced-motion: reduce) { .components-checkbox-control__input[type=checkbox] { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .components-checkbox-control__input[type=checkbox] { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .components-checkbox-control__input[type=checkbox]:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-checkbox-control__input[type=checkbox]::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-checkbox-control__input[type=checkbox]::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .components-checkbox-control__input[type=checkbox]:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-checkbox-control__input[type=checkbox]:focus { box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-checkbox-control__input[type=checkbox]:checked { background: var(--wp-admin-theme-color); border-color: var(--wp-admin-theme-color); } .components-checkbox-control__input[type=checkbox]:checked::-ms-check { opacity: 0; } .components-checkbox-control__input[type=checkbox]:checked::before, .components-checkbox-control__input[type=checkbox][aria-checked=mixed]::before { margin: -3px -5px; color: #fff; } @media (min-width: 782px) { .components-checkbox-control__input[type=checkbox]:checked::before, .components-checkbox-control__input[type=checkbox][aria-checked=mixed]::before { margin: -4px 0 0 -5px; } } .components-checkbox-control__input[type=checkbox][aria-checked=mixed] { background: var(--wp-admin-theme-color); border-color: var(--wp-admin-theme-color); } .components-checkbox-control__input[type=checkbox][aria-checked=mixed]::before { content: ""; float: left; display: inline-block; vertical-align: middle; width: 16px; /* stylelint-disable */ font: normal 30px/1 dashicons; /* stylelint-enable */ speak: none; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } @media (min-width: 782px) { .components-checkbox-control__input[type=checkbox][aria-checked=mixed]::before { float: none; font-size: 21px; } } @media (min-width: 600px) { .components-checkbox-control__input[type=checkbox] { height: 20px; width: 20px; } } @media (prefers-reduced-motion: reduce) { .components-checkbox-control__input[type=checkbox] { transition-duration: 0s; transition-delay: 0s; } } .components-checkbox-control__input[type=checkbox]:focus { box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-checkbox-control__input[type=checkbox]:checked { background: var(--wp-admin-theme-color); border-color: var(--wp-admin-theme-color); } .components-checkbox-control__input[type=checkbox]:checked::-ms-check { opacity: 0; } .components-checkbox-control__input[type=checkbox]:checked::before { content: none; } .components-checkbox-control__input-container { position: relative; display: inline-block; margin-right: 12px; vertical-align: middle; width: 24px; height: 24px; } @media (min-width: 600px) { .components-checkbox-control__input-container { width: 20px; height: 20px; } } svg.components-checkbox-control__checked { fill: #fff; cursor: pointer; position: absolute; left: 0; top: 0; width: 24px; height: 24px; -webkit-user-select: none; user-select: none; pointer-events: none; } @media (min-width: 600px) { svg.components-checkbox-control__checked { left: -2px; top: -2px; } } .components-circular-option-picker { display: inline-block; width: 100%; min-width: 188px; } .components-circular-option-picker .components-circular-option-picker__custom-clear-wrapper { display: flex; justify-content: flex-end; margin-top: 12px; } .components-circular-option-picker .components-circular-option-picker__swatches { display: flex; flex-wrap: wrap; gap: 12px; } .components-circular-option-picker__option-wrapper { display: inline-block; height: 28px; width: 28px; vertical-align: top; transform: scale(1); transition: 100ms transform ease; } @media (prefers-reduced-motion: reduce) { .components-circular-option-picker__option-wrapper { transition-duration: 0s; transition-delay: 0s; } } .components-circular-option-picker__option-wrapper:hover { transform: scale(1.2); } .components-circular-option-picker__option-wrapper > div { height: 100%; width: 100%; } .components-circular-option-picker__option-wrapper::before { content: ""; position: absolute; top: 1px; left: 1px; bottom: 1px; right: 1px; border-radius: 50%; z-index: -1; /* stylelint-disable-next-line function-url-quotes */ background: url('data:image/svg+xml,%3Csvg width="28" height="28" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M6 8V6H4v2h2zM8 8V6h2v2H8zM10 16H8v-2h2v2zM12 16v-2h2v2h-2zM12 18v-2h-2v2H8v2h2v-2h2zM14 18v2h-2v-2h2zM16 18h-2v-2h2v2z" fill="%23555D65"/%3E%3Cpath fill-rule="evenodd" clip-rule="evenodd" d="M18 18h2v-2h-2v-2h2v-2h-2v-2h2V8h-2v2h-2V8h-2v2h2v2h-2v2h2v2h2v2zm-2-4v-2h2v2h-2z" fill="%23555D65"/%3E%3Cpath d="M18 18v2h-2v-2h2z" fill="%23555D65"/%3E%3Cpath fill-rule="evenodd" clip-rule="evenodd" d="M8 10V8H6v2H4v2h2v2H4v2h2v2H4v2h2v2H4v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2V8h-2V6h2V4h-2v2h-2V4h-2v2h-2V4h-2v2h-2V4h-2v2h2v2h-2v2H8zm0 2v-2H6v2h2zm2 0v-2h2v2h-2zm0 2v-2H8v2H6v2h2v2H6v2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2V8h-2V6h-2v2h-2V6h-2v2h-2v2h2v2h-2v2h-2z" fill="%23555D65"/%3E%3Cpath fill-rule="evenodd" clip-rule="evenodd" d="M4 0H2v2H0v2h2v2H0v2h2v2H0v2h2v2H0v2h2v2H0v2h2v2H0v2h2v2H0v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2V8h-2V6h2V4h-2V2h2V0h-2v2h-2V0h-2v2h-2V0h-2v2h-2V0h-2v2h-2V0h-2v2H8V0H6v2H4V0zm0 4V2H2v2h2zm2 0V2h2v2H6zm0 2V4H4v2H2v2h2v2H2v2h2v2H2v2h2v2H2v2h2v2H2v2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h2v2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2v-2h-2v-2h2V8h-2V6h2V4h-2V2h-2v2h-2V2h-2v2h-2V2h-2v2h-2V2h-2v2H8v2H6z" fill="%23555D65"/%3E%3C/svg%3E'); } .components-circular-option-picker__option { display: inline-block; vertical-align: top; height: 100%; width: 100%; border: none; border-radius: 50%; background: transparent; box-shadow: inset 0 0 0 14px; transition: 100ms box-shadow ease; cursor: pointer; } @media (prefers-reduced-motion: reduce) { .components-circular-option-picker__option { transition-duration: 0s; transition-delay: 0s; } } .components-circular-option-picker__option:hover { box-shadow: inset 0 0 0 14px !important; } .components-circular-option-picker__option.is-pressed { box-shadow: inset 0 0 0 4px; position: relative; z-index: 1; overflow: visible; } .components-circular-option-picker__option.is-pressed + svg { position: absolute; left: 2px; top: 2px; border-radius: 50%; z-index: 2; pointer-events: none; } .components-circular-option-picker__option::after { content: ""; position: absolute; top: -1px; left: -1px; bottom: -1px; right: -1px; border-radius: 50%; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.2); border: 1px solid transparent; } .components-circular-option-picker__option:focus::after { content: ""; border: 2px solid #757575; width: 32px; height: 32px; position: absolute; top: -2px; left: -2px; border-radius: 50%; box-shadow: inset 0 0 0 2px #fff; } .components-circular-option-picker__option.components-button:focus { background-color: transparent; box-shadow: inset 0 0 0 14px; outline: none; } .components-circular-option-picker__button-action .components-circular-option-picker__option { color: #fff; background: #fff; } .components-circular-option-picker__dropdown-link-action { margin-right: 16px; } .components-circular-option-picker__dropdown-link-action .components-button { line-height: 22px; } @media (min-width: 782px) { .components-palette-edit__popover.components-popover .components-popover__content.components-popover__content.components-popover__content { margin-right: 156px; margin-top: -49px; } } .components-palette-edit__popover .components-custom-gradient-picker__gradient-bar { margin-top: 0; } .components-palette-edit__popover .components-custom-gradient-picker__ui-line { margin-bottom: 0; } .components-palette-edit__popover .components-custom-gradient-picker { width: 280px; padding: 8px; } .components-dropdown-menu__menu .components-palette-edit__menu-button { width: 100%; } .component-color-indicator { width: 25px; height: 16px; margin-left: 0.8rem; border: 1px solid #dadada; display: inline-block; } .component-color-indicator + .component-color-indicator { margin-left: 0.5rem; } .components-combobox-control { width: 100%; } input.components-combobox-control__input[type=text] { width: 100%; border: none; box-shadow: none; font-size: 16px; padding: 2px; margin: 0; line-height: inherit; min-height: auto; } @media (min-width: 600px) { input.components-combobox-control__input[type=text] { font-size: 13px; } } input.components-combobox-control__input[type=text]:focus { outline: none; box-shadow: none; } .components-combobox-control__suggestions-container { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; display: flex; flex-wrap: wrap; align-items: flex-start; width: 100%; margin: 0 0 8px 0; padding: 4px; } @media (prefers-reduced-motion: reduce) { .components-combobox-control__suggestions-container { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .components-combobox-control__suggestions-container { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .components-combobox-control__suggestions-container:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-combobox-control__suggestions-container::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-combobox-control__suggestions-container::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .components-combobox-control__suggestions-container:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-combobox-control__suggestions-container:focus-within { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-combobox-control__reset.components-button { display: flex; height: 24px; min-width: 24px; padding: 0; } .components-color-list-picker, .components-color-list-picker__swatch-button { width: 100%; } .components-color-list-picker__color-picker { margin: 8px 0; } .components-color-palette__custom-color { position: relative; border: none; background: none; display: block; border-radius: 2px; height: 48px; text-align: right; width: 100%; background-image: repeating-linear-gradient(45deg, #e0e0e0 25%, transparent 25%, transparent 75%, #e0e0e0 75%, #e0e0e0), repeating-linear-gradient(45deg, #e0e0e0 25%, transparent 25%, transparent 75%, #e0e0e0 75%, #e0e0e0); background-position: 0 0, 25px 25px; background-size: calc(2 * 25px) calc(2 * 25px); box-sizing: border-box; color: #fff; cursor: pointer; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.2); outline: 1px solid transparent; } .components-color-palette__custom-color:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); outline-width: 2px; } .components-dropdown__content.components-color-palette__custom-color-dropdown-content .components-popover__content { overflow: visible; box-shadow: 0 4px 4px rgba(0, 0, 0, 0.05); border: none; border-radius: 2px; max-height: -moz-fit-content !important; max-height: fit-content !important; } .components-dropdown__content.components-color-palette__custom-color-dropdown-content .components-popover__content > div { padding: 0; } .components-dropdown__content.components-color-palette__custom-color-dropdown-content .components-popover__content .react-colorful__saturation { border-top-right-radius: 2px; border-top-left-radius: 2px; } @media (min-width: 782px) { .components-dropdown__content.components-color-palette__custom-color-dropdown-content.is-rendered-in-sidebar .components-popover__content.components-popover__content { margin-right: 156px; } .components-dropdown__content.components-color-palette__custom-color-dropdown-content.is-rendered-in-sidebar.is-from-top .components-popover__content { margin-top: -60px; } .components-dropdown__content.components-color-palette__custom-color-dropdown-content.is-rendered-in-sidebar.is-from-bottom .components-popover__content { margin-bottom: -60px; } } .components-custom-gradient-picker__gradient-bar:not(.has-gradient) { opacity: 0.4; } .components-custom-gradient-picker__gradient-bar { border-radius: 2px; margin-top: 12px; width: 100%; height: 48px; margin-bottom: 20px; /*rtl:ignore*/ padding-right: 16px; } .components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__markers-container { position: relative; width: calc(100% - 32px); margin-left: auto; margin-right: auto; } .components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__insert-point { border-radius: 50%; background: #fff; padding: 2px; top: 16px; min-width: 16px; width: 16px; height: 16px; position: relative; color: #1e1e1e; } .components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__insert-point svg { height: 100%; width: 100%; } .components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__control-point-button { border-radius: 50%; height: 16px; width: 16px; padding: 0; position: absolute; top: 16px; box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) #fff, 0 0 2px 0 rgba(0, 0, 0, 0.25); outline: 2px solid transparent; } .components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__control-point-button:focus, .components-custom-gradient-picker__gradient-bar .components-custom-gradient-picker__control-point-button.is-active { box-shadow: inset 0 0 0 calc(var(--wp-admin-border-width-focus) * 2) #fff, 0 0 2px 0 rgba(0, 0, 0, 0.25); outline: 4px solid transparent; } .components-custom-gradient-picker__color-picker-popover .components-custom-gradient-picker__remove-control-point { margin-left: auto; margin-right: auto; display: block; margin-bottom: 8px; } .components-custom-gradient-picker__inserter { /*rtl:ignore*/ direction: ltr; width: 100%; } .components-custom-gradient-picker__liner-gradient-indicator { display: inline-block; flex: 0 auto; width: 20px; height: 20px; } .components-custom-gradient-picker .components-custom-gradient-picker__ui-line { margin-bottom: 16px; } .components-custom-gradient-picker .components-custom-gradient-picker__ui-line .components-base-control.components-angle-picker, .components-custom-gradient-picker .components-custom-gradient-picker__ui-line .components-base-control.components-custom-gradient-picker__type-picker { margin-bottom: 0; } .components-custom-gradient-picker .components-custom-gradient-picker__toolbar { border: none; } .components-custom-gradient-picker .components-custom-gradient-picker__toolbar > div + div { margin-left: 1px; } .components-custom-gradient-picker .components-custom-gradient-picker__toolbar button.is-pressed > svg { background: #fff; border: 1px solid #949494; border-radius: 2px; } .components-custom-gradient-picker .components-select-control__input, .components-custom-gradient-picker .components-input-control__input { height: 40px !important; } .components-custom-gradient-picker .components-input-control__label { line-height: 1; padding-bottom: 8px !important; } .components-custom-gradient-picker label { text-transform: uppercase; font-size: 11px; font-weight: 500; } .components-custom-select-control { position: relative; } .components-custom-select-control__label { display: block; margin-bottom: 8px; } .components-custom-select-control__button { border: 1px solid #757575; border-radius: 2px; min-height: 30px; min-width: 130px; position: relative; text-align: left; } .components-custom-select-control__button.components-custom-select-control__button { padding-right: 24px; } .components-custom-select-control__button:focus:not(:disabled) { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); } .components-custom-select-control__button .components-custom-select-control__button-icon { height: 100%; padding: 0; position: absolute; right: 0; top: 0; } .components-custom-select-control__menu { border: 1px solid #1e1e1e; background-color: #fff; border-radius: 2px; outline: none; transition: none; max-height: 400px; min-width: 100%; overflow: auto; padding: 0; position: absolute; z-index: 1000000; } .components-custom-select-control__menu[aria-hidden=true] { display: none; } .components-custom-select-control__item { align-items: center; display: grid; grid-template-columns: auto auto; list-style-type: none; padding: 8px; cursor: default; line-height: 28px; } .components-custom-select-control__item.has-hint { grid-template-columns: auto auto 30px; } .components-custom-select-control__item.is-highlighted { background: #ddd; } .components-custom-select-control__item .components-custom-select-control__item-hint { color: #757575; text-align: right; padding-right: 4px; } .components-custom-select-control__item .components-custom-select-control__item-icon { margin-left: auto; } .components-custom-select-control__item:last-child { margin-bottom: 0; } /** * Parts of this source were derived and modified from react-dates, * released under the MIT license. * * https://github.com/airbnb/react-dates * * The MIT License (MIT) * * Copyright (c) 2016 Airbnb * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included in all * copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ /*rtl:begin:ignore*/ .PresetDateRangePicker_panel { padding: 0 22px 11px; } .PresetDateRangePicker_button { position: relative; height: 100%; text-align: center; background: 0 0; border: 2px solid #00a699; color: #00a699; padding: 4px 12px; margin-right: 8px; font: inherit; font-weight: 700; line-height: normal; overflow: visible; box-sizing: border-box; cursor: pointer; } .PresetDateRangePicker_button:active { outline: 0; } .PresetDateRangePicker_button__selected { color: #fff; background: #00a699; } .SingleDatePickerInput { display: inline-block; background-color: #fff; } .SingleDatePickerInput__withBorder { border-radius: 2px; border: 1px solid #dbdbdb; } .SingleDatePickerInput__rtl { direction: rtl; } .SingleDatePickerInput__disabled { background-color: #f2f2f2; } .SingleDatePickerInput__block { display: block; } .SingleDatePickerInput__showClearDate { padding-right: 30px; } .SingleDatePickerInput_clearDate { background: 0 0; border: 0; color: inherit; font: inherit; line-height: normal; overflow: visible; cursor: pointer; padding: 10px; margin: 0 10px 0 5px; position: absolute; right: 0; top: 50%; transform: translateY(-50%); } .SingleDatePickerInput_clearDate__default:focus, .SingleDatePickerInput_clearDate__default:hover { background: #dbdbdb; border-radius: 50%; } .SingleDatePickerInput_clearDate__small { padding: 6px; } .SingleDatePickerInput_clearDate__hide { visibility: hidden; } .SingleDatePickerInput_clearDate_svg { fill: #82888a; height: 12px; width: 15px; vertical-align: middle; } .SingleDatePickerInput_clearDate_svg__small { height: 9px; } .SingleDatePickerInput_calendarIcon { background: 0 0; border: 0; color: inherit; font: inherit; line-height: normal; overflow: visible; cursor: pointer; display: inline-block; vertical-align: middle; padding: 10px; margin: 0 5px 0 10px; } .SingleDatePickerInput_calendarIcon_svg { fill: #82888a; height: 15px; width: 14px; vertical-align: middle; } .SingleDatePicker { position: relative; display: inline-block; } .SingleDatePicker__block { display: block; } .SingleDatePicker_picker { z-index: 1; background-color: #fff; position: absolute; } .SingleDatePicker_picker__rtl { direction: rtl; } .SingleDatePicker_picker__directionLeft { left: 0; } .SingleDatePicker_picker__directionRight { right: 0; } .SingleDatePicker_picker__portal { background-color: rgba(0, 0, 0, 0.3); position: fixed; top: 0; left: 0; height: 100%; width: 100%; } .SingleDatePicker_picker__fullScreenPortal { background-color: #fff; } .SingleDatePicker_closeButton { background: 0 0; border: 0; color: inherit; font: inherit; line-height: normal; overflow: visible; cursor: pointer; position: absolute; top: 0; right: 0; padding: 15px; z-index: 2; } .SingleDatePicker_closeButton:focus, .SingleDatePicker_closeButton:hover { color: #b0b3b4; text-decoration: none; } .SingleDatePicker_closeButton_svg { height: 15px; width: 15px; fill: #cacccd; } .DayPickerKeyboardShortcuts_buttonReset { background: 0 0; border: 0; border-radius: 0; color: inherit; font: inherit; line-height: normal; overflow: visible; padding: 0; cursor: pointer; font-size: 14px; } .DayPickerKeyboardShortcuts_buttonReset:active { outline: 0; } .DayPickerKeyboardShortcuts_show { width: 22px; position: absolute; z-index: 2; } .DayPickerKeyboardShortcuts_show__bottomRight { border-top: 26px solid transparent; border-right: 33px solid #00a699; bottom: 0; right: 0; } .DayPickerKeyboardShortcuts_show__bottomRight:hover { border-right: 33px solid #008489; } .DayPickerKeyboardShortcuts_show__topRight { border-bottom: 26px solid transparent; border-right: 33px solid #00a699; top: 0; right: 0; } .DayPickerKeyboardShortcuts_show__topRight:hover { border-right: 33px solid #008489; } .DayPickerKeyboardShortcuts_show__topLeft { border-bottom: 26px solid transparent; border-left: 33px solid #00a699; top: 0; left: 0; } .DayPickerKeyboardShortcuts_show__topLeft:hover { border-left: 33px solid #008489; } .DayPickerKeyboardShortcuts_showSpan { color: #fff; position: absolute; } .DayPickerKeyboardShortcuts_showSpan__bottomRight { bottom: 0; right: -28px; } .DayPickerKeyboardShortcuts_showSpan__topRight { top: 1px; right: -28px; } .DayPickerKeyboardShortcuts_showSpan__topLeft { top: 1px; left: -28px; } .DayPickerKeyboardShortcuts_panel { overflow: auto; background: #fff; border: 1px solid #dbdbdb; border-radius: 2px; position: absolute; top: 0; bottom: 0; right: 0; left: 0; z-index: 2; padding: 22px; margin: 33px; } .DayPickerKeyboardShortcuts_title { font-size: 16px; font-weight: 700; margin: 0; } .DayPickerKeyboardShortcuts_list { list-style: none; padding: 0; font-size: 14px; } .DayPickerKeyboardShortcuts_close { position: absolute; right: 22px; top: 22px; z-index: 2; } .DayPickerKeyboardShortcuts_close:active { outline: 0; } .DayPickerKeyboardShortcuts_closeSvg { height: 15px; width: 15px; fill: #cacccd; } .DayPickerKeyboardShortcuts_closeSvg:focus, .DayPickerKeyboardShortcuts_closeSvg:hover { fill: #82888a; } .CalendarDay { box-sizing: border-box; cursor: pointer; font-size: 14px; text-align: center; } .CalendarDay:active { outline: 0; } .CalendarDay__defaultCursor { cursor: default; } .CalendarDay__default { border: 1px solid #e4e7e7; color: #484848; background: #fff; } .CalendarDay__default:hover { background: #e4e7e7; border: 1px double #e4e7e7; color: inherit; } .CalendarDay__hovered_offset { background: #f4f5f5; border: 1px double #e4e7e7; color: inherit; } .CalendarDay__outside { border: 0; background: #fff; color: #484848; } .CalendarDay__outside:hover { border: 0; } .CalendarDay__blocked_minimum_nights { background: #fff; border: 1px solid #eceeee; color: #cacccd; } .CalendarDay__blocked_minimum_nights:active, .CalendarDay__blocked_minimum_nights:hover { background: #fff; color: #cacccd; } .CalendarDay__highlighted_calendar { background: #ffe8bc; color: #484848; } .CalendarDay__highlighted_calendar:active, .CalendarDay__highlighted_calendar:hover { background: #ffce71; color: #484848; } .CalendarDay__selected_span { background: #66e2da; border: 1px solid #33dacd; color: #fff; } .CalendarDay__selected_span:active, .CalendarDay__selected_span:hover { background: #33dacd; border: 1px solid #33dacd; color: #fff; } .CalendarDay__last_in_range { border-right: #00a699; } .CalendarDay__selected, .CalendarDay__selected:active, .CalendarDay__selected:hover { background: #00a699; border: 1px solid #00a699; color: #fff; } .CalendarDay__hovered_span, .CalendarDay__hovered_span:hover { background: #b2f1ec; border: 1px solid #80e8e0; color: #007a87; } .CalendarDay__hovered_span:active { background: #80e8e0; border: 1px solid #80e8e0; color: #007a87; } .CalendarDay__blocked_calendar, .CalendarDay__blocked_calendar:active, .CalendarDay__blocked_calendar:hover { background: #cacccd; border: 1px solid #cacccd; color: #82888a; } .CalendarDay__blocked_out_of_range, .CalendarDay__blocked_out_of_range:active, .CalendarDay__blocked_out_of_range:hover { background: #fff; border: 1px solid #e4e7e7; color: #cacccd; } .CalendarMonth { background: #fff; text-align: center; vertical-align: top; -webkit-user-select: none; user-select: none; } .CalendarMonth_table { border-collapse: collapse; border-spacing: 0; } .CalendarMonth_verticalSpacing { border-collapse: separate; } .CalendarMonth_caption { color: #484848; font-size: 18px; text-align: center; padding-top: 22px; padding-bottom: 37px; caption-side: initial; } .CalendarMonth_caption__verticalScrollable { padding-top: 12px; padding-bottom: 7px; } .CalendarMonthGrid { background: #fff; text-align: left; z-index: 0; } .CalendarMonthGrid__animating { z-index: 1; } .CalendarMonthGrid__horizontal { position: absolute; left: 0; } .CalendarMonthGrid__vertical { margin: 0 auto; } .CalendarMonthGrid__vertical_scrollable { margin: 0 auto; overflow-y: scroll; } .CalendarMonthGrid_month__horizontal { display: inline-block; vertical-align: top; min-height: 100%; } .CalendarMonthGrid_month__hideForAnimation { position: absolute; z-index: -1; opacity: 0; pointer-events: none; } .CalendarMonthGrid_month__hidden { visibility: hidden; } .DayPickerNavigation { position: relative; z-index: 2; } .DayPickerNavigation__horizontal { height: 0; } .DayPickerNavigation__verticalDefault { position: absolute; width: 100%; height: 52px; bottom: 0; left: 0; } .DayPickerNavigation__verticalScrollableDefault { position: relative; } .DayPickerNavigation_button { cursor: pointer; -webkit-user-select: none; user-select: none; border: 0; padding: 0; margin: 0; } .DayPickerNavigation_button__default { border: 1px solid #e4e7e7; background-color: #fff; color: #757575; } .DayPickerNavigation_button__default:focus, .DayPickerNavigation_button__default:hover { border: 1px solid #c4c4c4; } .DayPickerNavigation_button__default:active { background: #f2f2f2; } .DayPickerNavigation_button__horizontalDefault { position: absolute; top: 18px; line-height: 0.78; border-radius: 3px; padding: 6px 9px; } .DayPickerNavigation_leftButton__horizontalDefault { left: 22px; } .DayPickerNavigation_rightButton__horizontalDefault { right: 22px; } .DayPickerNavigation_button__verticalDefault { padding: 5px; background: #fff; box-shadow: 0 0 5px 2px rgba(0, 0, 0, 0.1); position: relative; display: inline-block; height: 100%; width: 50%; } .DayPickerNavigation_nextButton__verticalDefault { border-left: 0; } .DayPickerNavigation_nextButton__verticalScrollableDefault { width: 100%; } .DayPickerNavigation_svg__horizontal { height: 19px; width: 19px; fill: #82888a; display: block; } .DayPickerNavigation_svg__vertical { height: 42px; width: 42px; fill: #484848; display: block; } .DayPicker { background: #fff; position: relative; text-align: left; } .DayPicker__horizontal { background: #fff; } .DayPicker__verticalScrollable { height: 100%; } .DayPicker__hidden { visibility: hidden; } .DayPicker__withBorder { box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.07); border-radius: 3px; } .DayPicker_portal__horizontal { box-shadow: none; position: absolute; left: 50%; top: 50%; } .DayPicker_portal__vertical { position: initial; } .DayPicker_focusRegion { outline: 0; } .DayPicker_calendarInfo__horizontal, .DayPicker_wrapper__horizontal { display: inline-block; vertical-align: top; } .DayPicker_weekHeaders { position: relative; } .DayPicker_weekHeaders__horizontal { margin-left: 13px; } .DayPicker_weekHeader { color: #757575; position: absolute; top: 62px; z-index: 2; text-align: left; padding: 0 !important; } .DayPicker_weekHeader__vertical { left: 50%; } .DayPicker_weekHeader__verticalScrollable { top: 0; display: table-row; border-bottom: 1px solid #dbdbdb; background: #fff; margin-left: 0; left: 0; width: 100%; text-align: center; } .DayPicker_weekHeader_ul { list-style: none; margin: 1px 0; padding-left: 0; padding-right: 0; font-size: 14px; } .DayPicker_weekHeader_li { display: inline-block; text-align: center; margin: 0 1px; } .DayPicker_transitionContainer { position: relative; overflow: hidden; border-radius: 3px; } .DayPicker_transitionContainer__horizontal { transition: height 0.2s ease-in-out; } .DayPicker_transitionContainer__vertical { width: 100%; } .DayPicker_transitionContainer__verticalScrollable { padding-top: 20px; height: 100%; position: absolute; top: 0; bottom: 0; right: 0; left: 0; overflow-y: scroll; } .DateInput { margin: 0; padding: 0; background: #fff; position: relative; display: inline-block; width: 130px; vertical-align: middle; } .DateInput__small { width: 97px; } .DateInput__block { width: 100%; } .DateInput__disabled { background: #f2f2f2; color: #dbdbdb; } .DateInput_input { font-weight: 200; font-size: 19px; line-height: 24px; color: #484848; background-color: #fff; width: 100%; padding: 11px 11px 9px; border: 0; border-top: 0; border-right: 0; border-bottom: 2px solid transparent; border-left: 0; border-radius: 0; } .DateInput_input__small { font-size: 15px; line-height: 18px; letter-spacing: 0.2px; padding: 7px 7px 5px; } .DateInput_input__regular { font-weight: auto; } .DateInput_input__readOnly { -webkit-user-select: none; user-select: none; } .DateInput_input__focused { outline: 0; background: #fff; border: 0; border-top: 0; border-right: 0; border-bottom: 2px solid #008489; border-left: 0; } .DateInput_input__disabled { background: #f2f2f2; font-style: italic; } .DateInput_screenReaderMessage { border: 0; clip: rect(0, 0, 0, 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; } .DateInput_fang { position: absolute; width: 20px; height: 10px; left: 22px; z-index: 2; } .DateInput_fangShape { fill: #fff; } .DateInput_fangStroke { stroke: #dbdbdb; fill: transparent; } .DateRangePickerInput { background-color: #fff; display: inline-block; } .DateRangePickerInput__disabled { background: #f2f2f2; } .DateRangePickerInput__withBorder { border-radius: 2px; border: 1px solid #dbdbdb; } .DateRangePickerInput__rtl { direction: rtl; } .DateRangePickerInput__block { display: block; } .DateRangePickerInput__showClearDates { padding-right: 30px; } .DateRangePickerInput_arrow { display: inline-block; vertical-align: middle; color: #484848; } .DateRangePickerInput_arrow_svg { vertical-align: middle; fill: #484848; height: 24px; width: 24px; } .DateRangePickerInput_clearDates { background: 0 0; border: 0; color: inherit; font: inherit; line-height: normal; overflow: visible; cursor: pointer; padding: 10px; margin: 0 10px 0 5px; position: absolute; right: 0; top: 50%; transform: translateY(-50%); } .DateRangePickerInput_clearDates__small { padding: 6px; } .DateRangePickerInput_clearDates_default:focus, .DateRangePickerInput_clearDates_default:hover { background: #dbdbdb; border-radius: 50%; } .DateRangePickerInput_clearDates__hide { visibility: hidden; } .DateRangePickerInput_clearDates_svg { fill: #82888a; height: 12px; width: 15px; vertical-align: middle; } .DateRangePickerInput_clearDates_svg__small { height: 9px; } .DateRangePickerInput_calendarIcon { background: 0 0; border: 0; color: inherit; font: inherit; line-height: normal; overflow: visible; cursor: pointer; display: inline-block; vertical-align: middle; padding: 10px; margin: 0 5px 0 10px; } .DateRangePickerInput_calendarIcon_svg { fill: #82888a; height: 15px; width: 14px; vertical-align: middle; } .DateRangePicker { position: relative; display: inline-block; } .DateRangePicker__block { display: block; } .DateRangePicker_picker { z-index: 1; background-color: #fff; position: absolute; } .DateRangePicker_picker__rtl { direction: rtl; } .DateRangePicker_picker__directionLeft { left: 0; } .DateRangePicker_picker__directionRight { right: 0; } .DateRangePicker_picker__portal { background-color: rgba(0, 0, 0, 0.3); position: fixed; top: 0; left: 0; height: 100%; width: 100%; } .DateRangePicker_picker__fullScreenPortal { background-color: #fff; } .DateRangePicker_closeButton { background: 0 0; border: 0; color: inherit; font: inherit; line-height: normal; overflow: visible; cursor: pointer; position: absolute; top: 0; right: 0; padding: 15px; z-index: 2; } .DateRangePicker_closeButton:focus, .DateRangePicker_closeButton:hover { color: #b0b3b4; text-decoration: none; } .DateRangePicker_closeButton_svg { height: 15px; width: 15px; fill: #cacccd; } /*rtl:end:ignore*/ .components-datetime { padding: 16px; } .components-panel__body .components-datetime { padding: 0; } .components-datetime .components-datetime__calendar-help { padding: 16px; min-width: 260px; } .components-datetime .components-datetime__calendar-help h4 { margin: 0; } .components-datetime .components-datetime__buttons { display: flex; justify-content: space-between; } .components-datetime .components-datetime__date-help-toggle { display: block; margin-left: auto; } .components-datetime fieldset { border: 0; padding: 0; margin: 0; } .components-datetime select, .components-datetime input { box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; } @media (prefers-reduced-motion: reduce) { .components-datetime select, .components-datetime input { transition-duration: 0s; transition-delay: 0s; } } .components-datetime select, .components-datetime input[type=number], .components-datetime .components-button { height: 30px; margin-top: 0; margin-bottom: 0; } .components-datetime .components-button:focus { z-index: 1; } .components-datetime__date { min-height: 236px; border-top: 1px solid #ddd; } .components-datetime__date .DayPickerNavigation_leftButton__horizontalDefault { /*!rtl:begin:ignore*/ left: 13px; /*!rtl:end:ignore*/ } .components-datetime__date .CalendarMonth_caption { font-size: 13px; } .components-datetime__date .CalendarMonth_table { border-collapse: separate; border-spacing: 2px; } .components-datetime__date .CalendarDay { font-size: 13px; border: none; border-radius: 50%; text-align: center; } .components-datetime__date .CalendarDay:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 0 0 3px #fff; outline: 2px solid transparent; } .components-datetime__date .CalendarDay__selected { background: var(--wp-admin-theme-color); border: 2px solid transparent; } .components-datetime__date .CalendarDay__selected:hover { background: var(--wp-admin-theme-color-darker-20); } .components-datetime__date .CalendarDay__selected:focus { box-shadow: inset 0 0 0 1px #fff; } .components-datetime__date .DayPickerNavigation_button__horizontalDefault { padding: 2px 8px; top: 20px; } .components-datetime__date .DayPickerNavigation_button__horizontalDefault:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-datetime__date .DayPicker_weekHeader { top: 50px; } .components-datetime__date .DayPicker_weekHeader .DayPicker_weekHeader_ul { margin: 1px; padding-left: 0; padding-right: 0; } .components-datetime__date.is-description-visible .DayPicker { visibility: hidden; } .components-datetime__date .CalendarDay .components-datetime__date__day { height: 100%; display: flex; justify-content: center; align-content: center; flex-direction: column; position: relative; } .components-datetime__date .CalendarDay .components-datetime__date__day.has-events::before { content: " "; width: 4px; height: 4px; border-radius: 2px; position: absolute; left: 50%; margin-left: -2px; bottom: 0; background-color: #fff; } .components-datetime__date .CalendarDay:not(.CalendarDay__selected) .components-datetime__date__day.has-events::before { background: var(--wp-admin-theme-color); } .components-datetime__time { padding-bottom: 16px; } .components-datetime__time fieldset { position: relative; margin-bottom: 0.5em; } .components-datetime__time fieldset + fieldset { margin-bottom: 0; } .components-datetime__time .components-datetime__time-field-am-pm fieldset { margin-top: 0; } .components-datetime__time .components-datetime__time-wrapper { display: flex; } .components-datetime__time .components-datetime__time-wrapper .components-datetime__time-separator { display: inline-block; padding: 0 3px 0 0; } .components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field-time { /*rtl:ignore*/ direction: ltr; } .components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field select { margin-right: 4px; } .components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field select:focus { position: relative; z-index: 1; } .components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field input[type=number] { padding: 2px; margin-right: 4px; text-align: center; -moz-appearance: textfield; } .components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field input[type=number]:focus { position: relative; z-index: 1; } .components-datetime__time .components-datetime__time-wrapper .components-datetime__time-field input[type=number]::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; } .components-datetime__time.is-12-hour .components-datetime__time-field-day input { margin: -4px 0 0 !important; border-radius: 2px 0 0 2px !important; } .components-datetime__time.is-12-hour .components-datetime__time-field-year input { border-radius: 0 2px 2px 0 !important; } .components-datetime__timezone { line-height: 30px; margin-left: 4px; -webkit-text-decoration: underline dotted; text-decoration: underline dotted; } .components-datetime__time-legend { font-weight: 600; margin-top: 0.5em; } .components-datetime__time-legend.invisible { position: absolute; top: -999em; left: -999em; } .components-datetime__time-field-hours-input, .components-datetime__time-field-minutes-input, .components-datetime__time-field-day-input { width: 35px; } .components-datetime__time-field-year-input { width: 55px; } .components-datetime__time-field-month-select { max-width: 145px; } .components-popover .components-datetime__date { padding-left: 4px; } .block-editor-dimension-control .components-base-control__field { display: flex; align-items: center; } .block-editor-dimension-control .components-base-control__label { display: flex; align-items: center; margin-right: 1em; margin-bottom: 0; } .block-editor-dimension-control .components-base-control__label .dashicon { margin-right: 0.5em; } .block-editor-dimension-control.is-manual .components-base-control__label { width: 10em; } body.is-dragging-components-draggable { cursor: move; /* Fallback for IE/Edge < 14 */ cursor: grabbing !important; } .components-draggable__invisible-drag-image { position: fixed; left: -1000px; height: 50px; width: 50px; } .components-draggable__clone { position: fixed; padding: 0; background: transparent; pointer-events: none; z-index: 1000000000; } .components-drop-zone { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 40; visibility: hidden; opacity: 0; border-radius: 2px; } .components-drop-zone.is-active { opacity: 1; visibility: visible; } .components-drop-zone__content { position: absolute; top: 0; bottom: 0; left: 0; right: 0; height: 100%; width: 100%; display: flex; background-color: var(--wp-admin-theme-color); align-items: center; justify-content: center; z-index: 50; text-align: center; color: #fff; } .components-drop-zone__content-icon, .components-drop-zone__content-text { display: block; } .components-drop-zone__content-icon { margin: 0 auto; line-height: 0; fill: currentColor; pointer-events: none; } .components-drop-zone__content-text { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; } .components-dropdown { display: inline-block; } .components-dropdown__content .components-popover__content > div { padding: 8px; } .components-dropdown__content [role=menuitem] { white-space: nowrap; } .components-dropdown-menu__menu { width: 100%; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; line-height: 1.4; } .components-dropdown-menu__menu .components-dropdown-menu__menu-item, .components-dropdown-menu__menu .components-menu-item { width: 100%; padding: 6px; outline: none; cursor: pointer; white-space: nowrap; } .components-dropdown-menu__menu .components-dropdown-menu__menu-item.has-separator, .components-dropdown-menu__menu .components-menu-item.has-separator { margin-top: 6px; position: relative; overflow: visible; } .components-dropdown-menu__menu .components-dropdown-menu__menu-item.has-separator::before, .components-dropdown-menu__menu .components-menu-item.has-separator::before { display: block; content: ""; box-sizing: content-box; background-color: #ddd; position: absolute; top: -3px; left: 0; right: 0; height: 1px; } .components-dropdown-menu__menu .components-dropdown-menu__menu-item.is-active svg, .components-dropdown-menu__menu .components-menu-item.is-active svg { color: #fff; background: #1e1e1e; box-shadow: 0 0 0 1px #1e1e1e; border-radius: 1px; } .components-dropdown-menu__menu .components-dropdown-menu__menu-item > svg, .components-dropdown-menu__menu .components-menu-item > svg { border-radius: 2px; width: 24px; height: 24px; } .components-dropdown-menu__menu .components-dropdown-menu__menu-item.is-icon-only, .components-dropdown-menu__menu .components-menu-item.is-icon-only { width: auto; } .components-dropdown-menu__menu .components-menu-item__button, .components-dropdown-menu__menu .components-menu-item__button.components-button { min-height: 36px; height: auto; text-align: left; padding-left: 8px; padding-right: 8px; } .components-dropdown-menu__menu .components-menu-group { padding: 8px; margin-top: 0; margin-bottom: 0; margin-left: -8px; margin-right: -8px; } .components-dropdown-menu__menu .components-menu-group:first-child { margin-top: -8px; } .components-dropdown-menu__menu .components-menu-group:last-child { margin-bottom: -8px; } .components-dropdown-menu__menu .components-menu-group + .components-menu-group { margin-top: 0; border-top: 1px solid #ccc; padding: 8px; } .is-alternate .components-dropdown-menu__menu .components-menu-group + .components-menu-group { border-color: #1e1e1e; } .components-font-size-picker__header__hint { margin-left: 4px; color: #757575; } .components-font-size-picker__header .components-button.is-small.has-icon:not(.has-text) { min-width: 24px; padding: 0; } .components-font-size-picker__controls { max-width: 248px; align-items: center; margin-top: 8px; margin-bottom: 24px; } .components-font-size-picker__controls .components-unit-control-wrapper .components-input-control__label { font-weight: 300; padding-bottom: 0 !important; margin-bottom: 8px !important; } .components-font-size-picker__controls .components-custom-select-control__button { width: 100%; } .components-font-size-picker__controls .components-font-size-picker__number { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; display: inline-block; font-weight: 500; height: 30px; margin-bottom: 0; margin-left: 0; margin-right: 8px; margin-top: 8px; width: 54px; } @media (prefers-reduced-motion: reduce) { .components-font-size-picker__controls .components-font-size-picker__number { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .components-font-size-picker__controls .components-font-size-picker__number { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .components-font-size-picker__controls .components-font-size-picker__number:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-font-size-picker__controls .components-font-size-picker__number::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-font-size-picker__controls .components-font-size-picker__number::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .components-font-size-picker__controls .components-font-size-picker__number:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-font-size-picker__controls .components-font-size-picker__number[value=""] + .components-button { cursor: default; opacity: 0.3; pointer-events: none; } .components-font-size-picker__controls .components-font-size-picker__number-container { display: flex; flex-direction: column; } .components-font-size-picker__controls .components-color-palette__clear { height: 30px; } .components-font-size-picker__custom-input .components-range-control__slider + .dashicon { width: 30px; height: 30px; } .components-font-size-picker { border: 0; padding: 0; margin: 0; } .components-form-toggle { position: relative; display: inline-block; } .components-form-toggle .components-form-toggle__track { content: ""; display: inline-block; box-sizing: border-box; vertical-align: top; background-color: #fff; border: 1px solid #1e1e1e; width: 36px; height: 18px; border-radius: 9px; transition: 0.2s background ease; } @media (prefers-reduced-motion: reduce) { .components-form-toggle .components-form-toggle__track { transition-duration: 0s; transition-delay: 0s; } } .components-form-toggle .components-form-toggle__thumb { display: block; position: absolute; box-sizing: border-box; top: 3px; left: 3px; width: 12px; height: 12px; border-radius: 50%; transition: 0.1s transform ease; background-color: #1e1e1e; border: 5px solid #1e1e1e; } @media (prefers-reduced-motion: reduce) { .components-form-toggle .components-form-toggle__thumb { transition-duration: 0s; transition-delay: 0s; } } .components-form-toggle.is-checked .components-form-toggle__track { background-color: var(--wp-admin-theme-color); border: 1px solid var(--wp-admin-theme-color); border: 9px solid transparent; } .components-form-toggle .components-form-toggle__input:focus + .components-form-toggle__track { box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--wp-admin-theme-color); outline: 2px solid transparent; outline-offset: 2px; } .components-form-toggle.is-checked .components-form-toggle__thumb { background-color: #fff; border-width: 0; transform: translateX(18px); } .components-form-toggle.is-disabled, .components-disabled .components-form-toggle { opacity: 0.3; } .components-form-toggle input.components-form-toggle__input[type=checkbox] { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; margin: 0; padding: 0; z-index: 1; border: none; } .components-form-toggle input.components-form-toggle__input[type=checkbox]:checked { background: none; } .components-form-toggle input.components-form-toggle__input[type=checkbox]::before { content: ""; } .components-form-token-field__input-container { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; display: flex; flex-wrap: wrap; align-items: center; width: 100%; margin: 0 0 8px 0; padding: 2px 4px; cursor: text; } @media (prefers-reduced-motion: reduce) { .components-form-token-field__input-container { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .components-form-token-field__input-container { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .components-form-token-field__input-container:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-form-token-field__input-container::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-form-token-field__input-container::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .components-form-token-field__input-container:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-form-token-field__input-container.is-disabled { background: #ddd; border-color: #ddd; } .components-form-token-field__input-container.is-active { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-form-token-field__input-container input[type=text].components-form-token-field__input { display: inline-block; flex: 1; font-size: 16px; width: 100%; max-width: 100%; margin-left: 4px; padding: 0; min-height: 24px; min-width: 50px; background: inherit; border: 0; color: #1e1e1e; box-shadow: none; } @media (min-width: 600px) { .components-form-token-field__input-container input[type=text].components-form-token-field__input { font-size: 13px; } } .components-form-token-field__input-container input[type=text].components-form-token-field__input:focus, .components-form-token-field.is-active .components-form-token-field__input-container input[type=text].components-form-token-field__input { outline: none; box-shadow: none; } .components-form-token-field__input-container .components-form-token-field__token + input[type=text].components-form-token-field__input { width: auto; } .components-form-token-field__label { display: inline-block; margin-bottom: 4px; } .components-form-token-field__help { font-size: 12px; font-style: normal; color: #757575; } .components-form-token-field__token { font-size: 13px; display: flex; margin: 2px 4px 2px 0; color: #1e1e1e; max-width: 100%; } .components-form-token-field__token.is-success .components-form-token-field__token-text, .components-form-token-field__token.is-success .components-form-token-field__remove-token { background: #4ab866; } .components-form-token-field__token.is-error .components-form-token-field__token-text, .components-form-token-field__token.is-error .components-form-token-field__remove-token { background: #cc1818; } .components-form-token-field__token.is-validating .components-form-token-field__token-text, .components-form-token-field__token.is-validating .components-form-token-field__remove-token { color: #757575; } .components-form-token-field__token.is-borderless { position: relative; padding: 0 16px 0 0; } .components-form-token-field__token.is-borderless .components-form-token-field__token-text { background: transparent; color: var(--wp-admin-theme-color); } .components-form-token-field__token.is-borderless .components-form-token-field__remove-token { background: transparent; color: #757575; position: absolute; top: 1px; right: 0; } .components-form-token-field__token.is-borderless.is-success .components-form-token-field__token-text { color: #4ab866; } .components-form-token-field__token.is-borderless.is-error .components-form-token-field__token-text { color: #cc1818; border-radius: 4px 0 0 4px; padding: 0 4px 0 6px; } .components-form-token-field__token.is-borderless.is-validating .components-form-token-field__token-text { color: #1e1e1e; } .components-form-token-field__token.is-disabled .components-form-token-field__remove-token { cursor: default; } .components-form-token-field__token-text, .components-form-token-field__remove-token.components-button { display: inline-block; line-height: 24px; height: auto; background: #ddd; min-width: unset; transition: all 0.2s cubic-bezier(0.4, 1, 0.4, 1); } @media (prefers-reduced-motion: reduce) { .components-form-token-field__token-text, .components-form-token-field__remove-token.components-button { transition-duration: 0s; transition-delay: 0s; animation-duration: 1ms; animation-delay: 0s; } } .components-form-token-field__token-text { border-radius: 2px 0 0 2px; padding: 0 0 0 8px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .components-form-token-field__remove-token.components-button { cursor: pointer; border-radius: 0 2px 2px 0; padding: 0 2px; color: #1e1e1e; line-height: 10px; overflow: initial; } .components-form-token-field__remove-token.components-button:hover { color: #1e1e1e; } .components-form-token-field__suggestions-list { flex: 1 0 100%; min-width: 100%; max-height: 9em; overflow-y: auto; transition: all 0.15s ease-in-out; list-style: none; border-top: 1px solid #757575; margin: 4px -4px -4px; padding: 0; } @media (prefers-reduced-motion: reduce) { .components-form-token-field__suggestions-list { transition-duration: 0s; transition-delay: 0s; } } .components-form-token-field__suggestion { color: #757575; display: block; font-size: 13px; padding: 4px 8px; margin: 0; cursor: pointer; } .components-form-token-field__suggestion.is-selected { background: var(--wp-admin-theme-color); color: #fff; } .components-form-token-field__suggestion-match { text-decoration: underline; } @media (min-width: 600px) { .components-guide { width: 600px; } } .components-guide .components-modal__content { padding: 0; margin-top: 0; border-radius: 2px; } .components-guide .components-modal__content::before { content: none; } .components-guide .components-modal__header { border-bottom: none; padding: 0; position: sticky; } .components-guide .components-modal__header .components-button { align-self: flex-start; margin: 8px 8px 0 0; position: static; } .components-guide .components-modal__header .components-button:hover svg { fill: #fff; } .components-guide__container { display: flex; flex-direction: column; justify-content: space-between; margin-top: -60px; min-height: 100%; } .components-guide__page { display: flex; flex-direction: column; justify-content: center; position: relative; } @media (min-width: 600px) { .components-guide__page { min-height: 300px; } } .components-guide__footer { align-content: center; display: flex; height: 30px; justify-content: center; margin: 0 0 24px 0; padding: 0 32px; position: relative; width: 100%; } .components-guide__page-control { margin: 0; text-align: center; } .components-guide__page-control li { display: inline-block; margin: 0; } .components-guide__page-control .components-button { height: 30px; min-width: 20px; margin: -6px 0; } .components-modal__frame.components-guide { border: none; min-width: 312px; height: 80vh; max-height: 575px; } @media (max-width: 600px) { .components-modal__frame.components-guide { margin: auto; max-width: calc(100vw - 16px * 2); } } .components-button.components-guide__back-button, .components-button.components-guide__forward-button, .components-button.components-guide__finish-button { height: 30px; position: absolute; } .components-button.components-guide__back-button, .components-button.components-guide__forward-button { font-size: 13px; padding: 4px 2px; } .components-button.components-guide__back-button.has-text svg, .components-button.components-guide__forward-button.has-text svg { margin: 0; } .components-button.components-guide__back-button:hover, .components-button.components-guide__forward-button:hover { text-decoration: underline; } .components-button.components-guide__back-button { left: 32px; } .components-button.components-guide__forward-button { right: 32px; color: #1386bf; font-weight: bold; } .components-button.components-guide__finish-button { right: 32px; } .components-button.components-guide__inline-finish-button { display: none; } [role=region] { position: relative; } .is-focusing-regions [role=region]:focus::after { content: ""; position: absolute; top: 0; bottom: 0; left: 0; right: 0; pointer-events: none; outline: 4px solid transparent; box-shadow: inset 0 0 0 4px var(--wp-admin-theme-color); } @supports (outline-offset: 1px) { .is-focusing-regions [role=region]:focus::after { content: none; } .is-focusing-regions [role=region]:focus { outline-style: solid; outline-color: var(--wp-admin-theme-color); outline-width: 4px; outline-offset: -4px; } } .components-menu-group + .components-menu-group { margin-top: 8px; padding-top: 8px; border-top: 1px solid #1e1e1e; } .components-menu-group + .components-menu-group.has-hidden-separator { border-top: none; margin-top: 0; padding-top: 0; } .components-menu-group__label { padding: 0 8px; margin-top: 4px; margin-bottom: 12px; color: #757575; text-transform: uppercase; font-size: 11px; font-weight: 500; white-space: nowrap; } .components-menu-item__button, .components-menu-item__button.components-button { width: 100%; } .components-menu-item__button[role=menuitemradio] .components-menu-item__item:only-child, .components-menu-item__button[role=menuitemcheckbox] .components-menu-item__item:only-child, .components-menu-item__button.components-button[role=menuitemradio] .components-menu-item__item:only-child, .components-menu-item__button.components-button[role=menuitemcheckbox] .components-menu-item__item:only-child { padding-right: 48px; } .components-menu-item__button .components-menu-items__item-icon, .components-menu-item__button.components-button .components-menu-items__item-icon { display: inline-block; flex: 0 0 auto; } .components-menu-item__button .components-menu-items__item-icon.has-icon-right, .components-menu-item__button.components-button .components-menu-items__item-icon.has-icon-right { margin-right: -2px; margin-left: 24px; } .components-menu-item__button .components-menu-item__shortcut + .components-menu-items__item-icon.has-icon-right, .components-menu-item__button.components-button .components-menu-item__shortcut + .components-menu-items__item-icon.has-icon-right { margin-left: 8px; } .components-menu-item__button .block-editor-block-icon, .components-menu-item__button.components-button .block-editor-block-icon { margin-left: -2px; margin-right: 8px; } .components-menu-item__button.is-primary, .components-menu-item__button.components-button.is-primary { justify-content: center; } .components-menu-item__button.is-primary .components-menu-item__item, .components-menu-item__button.components-button.is-primary .components-menu-item__item { margin-right: 0; } .components-menu-item__info-wrapper { display: flex; flex-direction: column; margin-right: auto; } .components-menu-item__info { margin-top: 4px; font-size: 12px; color: #757575; white-space: normal; } .components-menu-item__item { white-space: nowrap; min-width: 160px; margin-right: auto; display: inline-flex; align-items: center; } .components-menu-item__shortcut { align-self: center; margin-right: 0; margin-left: auto; padding-left: 24px; color: currentColor; display: none; } @media (min-width: 480px) { .components-menu-item__shortcut { display: inline; } } .components-menu-items-choice svg, .components-menu-items-choice.components-button svg { margin-right: 12px; } .components-menu-items-choice.has-icon, .components-menu-items-choice.components-button.has-icon { padding-left: 12px; } .components-modal__screen-overlay { position: fixed; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(0, 0, 0, 0.35); z-index: 100000; display: flex; animation: edit-post__fade-in-animation 0.2s ease-out 0s; animation-fill-mode: forwards; } @media (prefers-reduced-motion: reduce) { .components-modal__screen-overlay { animation-duration: 1ms; animation-delay: 0s; } } .components-modal__frame { margin: 0; width: 100%; background: #fff; box-shadow: 0 10px 10px rgba(0, 0, 0, 0.25); border-radius: 2px; overflow: hidden; display: flex; } @media (min-width: 600px) { .components-modal__frame { margin: auto; width: auto; min-width: 360px; max-width: calc(100% - 32px); max-height: calc(100% - 120px); animation: components-modal__appear-animation 0.1s ease-out; animation-fill-mode: forwards; } } @media (min-width: 600px) and (prefers-reduced-motion: reduce) { .components-modal__frame { animation-duration: 1ms; animation-delay: 0s; } } @media (min-width: 600px) { .components-modal__frame.is-full-screen { width: 90vw; min-height: 90vh; } } @media (min-width: 960px) { .components-modal__frame { max-height: 70%; } } @keyframes components-modal__appear-animation { from { transform: translateY(32px); } to { transform: translateY(0); } } .components-modal__header { box-sizing: border-box; border-bottom: 1px solid #ddd; padding: 0 32px; display: flex; flex-direction: row; justify-content: space-between; align-items: center; height: 60px; width: 100%; z-index: 10; position: absolute; top: 0; left: 0; } .components-modal__header .components-modal__header-heading { font-size: 1rem; font-weight: 600; } .components-modal__header h1 { line-height: 1; margin: 0; } .components-modal__header .components-button { position: relative; left: 8px; } .components-modal__header-heading-container { align-items: center; flex-grow: 1; display: flex; flex-direction: row; justify-content: left; } .components-modal__header-icon-container { display: inline-block; } .components-modal__header-icon-container svg { max-width: 36px; max-height: 36px; padding: 8px; } .components-modal__content { flex: 1; margin-top: 60px; padding: 0 32px 24px; overflow: auto; } .components-modal__content::before { content: ""; display: block; margin-bottom: 24px; } .components-notice { display: flex; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; background-color: #fff; border-left: 4px solid var(--wp-admin-theme-color); margin: 5px 15px 2px; padding: 8px 12px; align-items: center; } .components-notice.is-dismissible { padding-right: 36px; position: relative; } .components-notice.is-success { border-left-color: #4ab866; background-color: #eff9f1; } .components-notice.is-warning { border-left-color: #f0b849; background-color: #fef8ee; } .components-notice.is-error { border-left-color: #cc1818; background-color: #f4a2a2; } .components-notice__content { flex-grow: 1; margin: 4px 25px 4px 0; } .components-notice__actions { display: flex; flex-wrap: wrap; } .components-notice__action.components-button { margin-right: 8px; } .components-notice__action.components-button, .components-notice__action.components-button.is-link { margin-left: 12px; } .components-notice__action.components-button.is-secondary { vertical-align: initial; } .components-notice__dismiss { color: #757575; align-self: flex-start; flex-shrink: 0; } .components-notice__dismiss:not(:disabled):not([aria-disabled=true]):not(.is-secondary):hover, .components-notice__dismiss:not(:disabled):not([aria-disabled=true]):not(.is-secondary):active, .components-notice__dismiss:not(:disabled):not([aria-disabled=true]):focus { color: #1e1e1e; background-color: transparent; } .components-notice__dismiss:not(:disabled):not([aria-disabled=true]):not(.is-secondary):hover { box-shadow: none; } .components-notice-list { max-width: 100vw; box-sizing: border-box; } .components-notice-list .components-notice__content { margin-top: 12px; margin-bottom: 12px; line-height: 2; } .components-notice-list .components-notice__action.components-button { display: block; margin-left: 0; margin-top: 8px; } .components-panel { background: #fff; border: 1px solid #e0e0e0; } .components-panel > .components-panel__header:first-child, .components-panel > .components-panel__body:first-child { margin-top: -1px; } .components-panel > .components-panel__header:last-child, .components-panel > .components-panel__body:last-child { border-bottom-width: 0; } .components-panel + .components-panel { margin-top: -1px; } .components-panel__body { border-top: 1px solid #e0e0e0; border-bottom: 1px solid #e0e0e0; } .components-panel__body h3 { margin: 0 0 0.5em; } .components-panel__body.is-opened { padding: 16px; } .components-panel__header { display: flex; justify-content: space-between; align-items: center; padding: 0 16px; height: 48px; border-bottom: 1px solid #ddd; } .components-panel__header h2 { margin: 0; font-size: inherit; color: inherit; } .components-panel__body + .components-panel__body, .components-panel__body + .components-panel__header, .components-panel__header + .components-panel__body, .components-panel__header + .components-panel__header { margin-top: -1px; } .components-panel__body > .components-panel__body-title { display: block; padding: 0; font-size: inherit; margin-top: 0; margin-bottom: 0; transition: 0.1s background ease-in-out; } @media (prefers-reduced-motion: reduce) { .components-panel__body > .components-panel__body-title { transition-duration: 0s; transition-delay: 0s; } } .components-panel__body.is-opened > .components-panel__body-title { margin: -16px; margin-bottom: 5px; } .components-panel__body > .components-panel__body-title:hover { background: #f0f0f0; border: none; } .components-panel__body-toggle.components-button { position: relative; padding: 16px 48px 16px 16px; outline: none; width: 100%; font-weight: 500; text-align: left; color: #1e1e1e; border: none; box-shadow: none; transition: 0.1s background ease-in-out; height: auto; /* rtl:begin:ignore */ /* rtl:end:ignore */ } @media (prefers-reduced-motion: reduce) { .components-panel__body-toggle.components-button { transition-duration: 0s; transition-delay: 0s; } } .components-panel__body-toggle.components-button:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); border-radius: 0; } .components-panel__body-toggle.components-button .components-panel__arrow { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); color: #1e1e1e; fill: currentColor; transition: 0.1s color ease-in-out; } @media (prefers-reduced-motion: reduce) { .components-panel__body-toggle.components-button .components-panel__arrow { transition-duration: 0s; transition-delay: 0s; } } body.rtl .components-panel__body-toggle.components-button .dashicons-arrow-right { transform: scaleX(-1); -ms-filter: fliph; filter: FlipH; margin-top: -10px; } .components-panel__icon { color: #757575; margin: -2px 0 -2px 6px; } .components-panel__body-toggle-icon { margin-right: -5px; } .components-panel__color-title { float: left; height: 19px; } .components-panel__row { display: flex; justify-content: space-between; align-items: center; margin-top: 8px; min-height: 36px; } .components-panel__row select { min-width: 0; } .components-panel__row label { margin-right: 12px; flex-shrink: 0; max-width: 75%; } .components-panel__row:empty, .components-panel__row:first-of-type { margin-top: 0; } .components-panel .circle-picker { padding-bottom: 20px; } .components-placeholder.components-placeholder { box-sizing: border-box; position: relative; padding: 1em; min-height: 200px; width: 100%; text-align: left; margin: 0; color: #1e1e1e; -moz-font-smoothing: subpixel-antialiased; -webkit-font-smoothing: subpixel-antialiased; border-radius: 2px; background-color: #fff; box-shadow: inset 0 0 0 1px #1e1e1e; outline: 1px solid transparent; } @supports (position: sticky) { .components-placeholder.components-placeholder { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; } } .components-placeholder.components-placeholder .components-base-control__label { font-size: 13px; } .components-placeholder__error, .components-placeholder__instructions, .components-placeholder__label, .components-placeholder__fieldset { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; } .components-placeholder__label { display: flex; font-weight: 600; margin-bottom: 16px; align-items: center; } .components-placeholder__label > svg, .components-placeholder__label .dashicon, .components-placeholder__label .block-editor-block-icon { margin-right: 1ch; fill: currentColor; } @media (forced-colors: active) { .components-placeholder__label > svg, .components-placeholder__label .dashicon, .components-placeholder__label .block-editor-block-icon { fill: CanvasText; } } .components-placeholder__label:empty { display: none; } .components-placeholder__fieldset, .components-placeholder__fieldset form { display: flex; flex-direction: row; width: 100%; flex-wrap: wrap; } .components-placeholder__fieldset p, .components-placeholder__fieldset form p { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; } .components-placeholder__fieldset.is-column-layout, .components-placeholder__fieldset.is-column-layout form { flex-direction: column; } .components-placeholder__input[type=url] { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; margin: 0 8px 0 0; flex: 1 1 auto; } @media (prefers-reduced-motion: reduce) { .components-placeholder__input[type=url] { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .components-placeholder__input[type=url] { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .components-placeholder__input[type=url]:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-placeholder__input[type=url]::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-placeholder__input[type=url]::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .components-placeholder__input[type=url]:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-placeholder__instructions { margin-bottom: 1em; } .components-placeholder__error { margin-top: 1em; width: 100%; } .components-placeholder__preview img { margin: 3%; width: 50%; } .components-placeholder__fieldset .components-button { margin-right: 12px; margin-bottom: 12px; } .components-placeholder__fieldset .components-button:last-child { margin-bottom: 0; margin-right: 0; } .components-placeholder__fieldset .components-button:not(.is-link) ~ .components-button.is-link { margin-left: 10px; margin-right: 10px; } .components-placeholder__fieldset .components-button:not(.is-link) ~ .components-button.is-link:last-child { margin-right: 0; } .components-placeholder.is-large .components-placeholder__label { font-size: 18pt; font-weight: normal; } .components-placeholder.is-medium .components-placeholder__instructions, .components-placeholder.is-small .components-placeholder__instructions { display: none; } .components-placeholder.is-medium .components-placeholder__fieldset, .components-placeholder.is-medium .components-placeholder__fieldset form, .components-placeholder.is-small .components-placeholder__fieldset, .components-placeholder.is-small .components-placeholder__fieldset form { flex-direction: column; } .components-placeholder.is-medium .components-placeholder__fieldset .components-button, .components-placeholder.is-small .components-placeholder__fieldset .components-button { margin-right: auto; } .components-placeholder.is-small .components-button { padding: 0 8px 2px; } /*!rtl:begin:ignore*/ .components-popover { position: fixed; z-index: 1000000; top: 0; left: 0; opacity: 0; } .components-popover.is-expanded, .components-popover[data-x-axis][data-y-axis] { opacity: 1; } .components-popover.is-expanded { top: 0; left: 0; right: 0; bottom: 0; z-index: 1000000 !important; } .components-popover:not(.is-without-arrow) { margin-left: 2px; } .components-popover:not(.is-without-arrow)::before { border: 8px solid #ccc; } .components-popover:not(.is-without-arrow).is-alternate::before { border-color: #1e1e1e; } .components-popover:not(.is-without-arrow)::after { border: 8px solid #fff; } .components-popover:not(.is-without-arrow)::before, .components-popover:not(.is-without-arrow)::after { content: ""; position: absolute; height: 0; width: 0; line-height: 0; } .components-popover:not(.is-without-arrow)[data-y-axis=top] { margin-top: -8px; } .components-popover:not(.is-without-arrow)[data-y-axis=top]::before { bottom: -8px; } .components-popover:not(.is-without-arrow)[data-y-axis=top]::after { bottom: -6px; } .components-popover:not(.is-without-arrow)[data-y-axis=top]::before, .components-popover:not(.is-without-arrow)[data-y-axis=top]::after { border-bottom: none; border-left-color: transparent; border-right-color: transparent; border-top-style: solid; margin-left: -10px; } .components-popover:not(.is-without-arrow)[data-y-axis=bottom] { margin-top: 8px; } .components-popover:not(.is-without-arrow)[data-y-axis=bottom]::before { top: -8px; } .components-popover:not(.is-without-arrow)[data-y-axis=bottom]::after { top: -6px; } .components-popover:not(.is-without-arrow)[data-y-axis=bottom]::before, .components-popover:not(.is-without-arrow)[data-y-axis=bottom]::after { border-bottom-style: solid; border-left-color: transparent; border-right-color: transparent; border-top: none; margin-left: -10px; } .components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=left] { margin-left: -8px; } .components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=left]::before { right: -8px; } .components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=left]::after { right: -6px; } .components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=left]::before, .components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=left]::after { border-bottom-color: transparent; border-left-style: solid; border-right: none; border-top-color: transparent; } .components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=right] { margin-left: 8px; } .components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=right]::before { left: -8px; } .components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=right]::after { left: -6px; } .components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=right]::before, .components-popover:not(.is-without-arrow)[data-y-axis=middle][data-x-axis=right]::after { border-bottom-color: transparent; border-left: none; border-right-style: solid; border-top-color: transparent; } .components-popover[data-y-axis=top] { bottom: 100%; } .components-popover[data-y-axis=bottom] { top: 100%; } .components-popover[data-y-axis=middle] { align-items: center; display: flex; } .components-popover.is-from-top { margin-top: 12px; } .components-popover.is-from-bottom { margin-top: -12px; } .components-popover.is-from-left:not(.is-from-top):not(.is-from-bottom) { margin-left: 12px; } .components-popover.is-from-right:not(.is-from-top):not(.is-from-bottom) { margin-right: 12px; } .components-popover__content { height: 100%; background: #fff; border: 1px solid #ccc; box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05); border-radius: 2px; } .is-alternate .components-popover__content { border: 1px solid #1e1e1e; box-shadow: none; } .components-popover .components-popover__content { position: absolute; height: auto; overflow-y: auto; } .components-popover.is-expanded .components-popover__content { position: static; height: calc(100% - 48px); overflow-y: visible; min-width: auto; border: none; border-top: 1px solid #1e1e1e; } .components-popover[data-y-axis=top] .components-popover__content { bottom: 100%; } .components-popover[data-x-axis=center] .components-popover__content { left: 50%; transform: translateX(-50%); } .components-popover[data-x-axis=right] .components-popover__content { position: absolute; left: 100%; } .components-popover:not([data-y-axis=middle])[data-x-axis=right] .components-popover__content { margin-left: -25px; } .components-popover[data-x-axis=left] .components-popover__content { position: absolute; right: 100%; } .components-popover:not([data-y-axis=middle])[data-x-axis=left] .components-popover__content { margin-right: -25px; } .components-popover__header { align-items: center; background: #fff; display: flex; height: 48px; justify-content: space-between; padding: 0 8px 0 16px; } .components-popover__header-title { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; width: 100%; } .components-popover__close.components-button { z-index: 5; } /*!rtl:end:ignore*/ .components-radio-control { display: flex; flex-direction: column; } .components-radio-control .components-base-control__help { margin-top: 0; } .components-radio-control .components-base-control__field { margin-bottom: 0; } .components-radio-control__option:not(:last-child) { margin-bottom: 4px; } .components-radio-control__input[type=radio] { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; border: 1px solid #1e1e1e; margin-right: 12px; transition: none; border-radius: 50%; width: 24px; height: 24px; margin-top: 0; margin-right: 6px; } @media (prefers-reduced-motion: reduce) { .components-radio-control__input[type=radio] { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .components-radio-control__input[type=radio] { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .components-radio-control__input[type=radio]:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-radio-control__input[type=radio]::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-radio-control__input[type=radio]::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .components-radio-control__input[type=radio]:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } @media (min-width: 600px) { .components-radio-control__input[type=radio] { height: 20px; width: 20px; } } .components-radio-control__input[type=radio]:checked::before { box-sizing: inherit; width: 8px; height: 8px; transform: translate(7px, 7px); margin: 0; background-color: #fff; border: 4px solid #fff; } @media (min-width: 600px) { .components-radio-control__input[type=radio]:checked::before { transform: translate(5px, 5px); } } .components-radio-control__input[type=radio]:focus { box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-radio-control__input[type=radio]:checked { background: var(--wp-admin-theme-color); border-color: var(--wp-admin-theme-color); } .components-resizable-box__handle { display: none; width: 23px; height: 23px; z-index: 2; } .components-resizable-box__container.has-show-handle .components-resizable-box__handle { display: block; } .components-resizable-box__container > img { width: inherit; } .components-resizable-box__handle::after { display: block; content: ""; width: 15px; height: 15px; border-radius: 50%; background: #fff; cursor: inherit; position: absolute; top: calc(50% - 8px); right: calc(50% - 8px); box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-resizable-box__side-handle::before { display: block; border-radius: 2px; content: ""; width: 3px; height: 3px; background: var(--wp-admin-theme-color); cursor: inherit; position: absolute; top: calc(50% - 1px); right: calc(50% - 1px); transition: transform 0.1s ease-in; opacity: 0; } @media (prefers-reduced-motion: reduce) { .components-resizable-box__side-handle::before { transition-duration: 0s; transition-delay: 0s; } } .components-resizable-box__side-handle { z-index: 2; } .components-resizable-box__corner-handle { z-index: 2; } .components-resizable-box__side-handle.components-resizable-box__handle-top, .components-resizable-box__side-handle.components-resizable-box__handle-bottom, .components-resizable-box__side-handle.components-resizable-box__handle-top::before, .components-resizable-box__side-handle.components-resizable-box__handle-bottom::before { width: 100%; left: 0; border-left: 0; border-right: 0; } .components-resizable-box__side-handle.components-resizable-box__handle-left, .components-resizable-box__side-handle.components-resizable-box__handle-right, .components-resizable-box__side-handle.components-resizable-box__handle-left::before, .components-resizable-box__side-handle.components-resizable-box__handle-right::before { height: 100%; top: 0; border-top: 0; border-bottom: 0; } .components-resizable-box__side-handle.components-resizable-box__handle-top:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-bottom:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-top:active::before, .components-resizable-box__side-handle.components-resizable-box__handle-bottom:active::before { animation: components-resizable-box__top-bottom-animation 0.1s ease-out 0s; animation-fill-mode: forwards; } @media (prefers-reduced-motion: reduce) { .components-resizable-box__side-handle.components-resizable-box__handle-top:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-bottom:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-top:active::before, .components-resizable-box__side-handle.components-resizable-box__handle-bottom:active::before { animation-duration: 1ms; animation-delay: 0s; } } .components-resizable-box__side-handle.components-resizable-box__handle-left:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-right:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-left:active::before, .components-resizable-box__side-handle.components-resizable-box__handle-right:active::before { animation: components-resizable-box__left-right-animation 0.1s ease-out 0s; animation-fill-mode: forwards; } @media (prefers-reduced-motion: reduce) { .components-resizable-box__side-handle.components-resizable-box__handle-left:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-right:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-left:active::before, .components-resizable-box__side-handle.components-resizable-box__handle-right:active::before { animation-duration: 1ms; animation-delay: 0s; } } /* This CSS is shown only to Safari, which has a bug with table-caption making it jumpy. See https://bugs.webkit.org/show_bug.cgi?id=187903. */ @media not all and (-webkit-min-device-pixel-ratio: 0), not all and (min-resolution: 0.001dpcm) { @supports (-webkit-appearance: none) { .components-resizable-box__side-handle.components-resizable-box__handle-top:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-bottom:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-top:active::before, .components-resizable-box__side-handle.components-resizable-box__handle-bottom:active::before { animation: none; } .components-resizable-box__side-handle.components-resizable-box__handle-left:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-right:hover::before, .components-resizable-box__side-handle.components-resizable-box__handle-left:active::before, .components-resizable-box__side-handle.components-resizable-box__handle-right:active::before { animation: none; } } } @keyframes components-resizable-box__top-bottom-animation { from { transform: scaleX(0); opacity: 0; } to { transform: scaleX(1); opacity: 1; } } @keyframes components-resizable-box__left-right-animation { from { transform: scaleY(0); opacity: 0; } to { transform: scaleY(1); opacity: 1; } } /*!rtl:begin:ignore*/ .components-resizable-box__handle-right { right: calc(11.5px * -1); } .components-resizable-box__handle-left { left: calc(11.5px * -1); } .components-resizable-box__handle-top { top: calc(11.5px * -1); } .components-resizable-box__handle-bottom { bottom: calc(11.5px * -1); } /*!rtl:end:ignore*/ .components-responsive-wrapper { position: relative; max-width: 100%; } .components-responsive-wrapper, .components-responsive-wrapper > span { display: block; } .components-responsive-wrapper__content { position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; margin: auto; } .components-sandbox { overflow: hidden; } iframe.components-sandbox { width: 100%; } html.lockscroll, body.lockscroll { overflow: hidden; } .components-search-control { position: relative; } .components-search-control input[type=search].components-search-control__input { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; display: block; padding: 16px 48px 16px 16px; background: #f0f0f0; border: none; width: 100%; height: 48px; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; } @media (prefers-reduced-motion: reduce) { .components-search-control input[type=search].components-search-control__input { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .components-search-control input[type=search].components-search-control__input { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .components-search-control input[type=search].components-search-control__input:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-search-control input[type=search].components-search-control__input::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-search-control input[type=search].components-search-control__input::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .components-search-control input[type=search].components-search-control__input:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } @media (min-width: 600px) { .components-search-control input[type=search].components-search-control__input { font-size: 13px; } } .components-search-control input[type=search].components-search-control__input:focus { background: #fff; box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .components-search-control input[type=search].components-search-control__input::placeholder { color: #757575; } .components-search-control input[type=search].components-search-control__input::-webkit-search-decoration, .components-search-control input[type=search].components-search-control__input::-webkit-search-cancel-button, .components-search-control input[type=search].components-search-control__input::-webkit-search-results-button, .components-search-control input[type=search].components-search-control__input::-webkit-search-results-decoration { -webkit-appearance: none; } .components-search-control__icon { position: absolute; top: 0; right: 12px; bottom: 0; display: flex; align-items: center; } .components-search-control__icon > svg { margin: 8px 0; } .components-search-control__input-wrapper { position: relative; } .components-select-control__input { background: #fff; height: 36px; line-height: 36px; margin: 1px; outline: 0; width: 100%; -webkit-tap-highlight-color: rgba(0, 0, 0, 0) !important; } @media (min-width: 782px) { .components-select-control__input { height: 28px; line-height: 28px; } } @media (max-width: 782px) { .components-base-control .components-base-control__field .components-select-control__input { font-size: 16px; } } .components-snackbar { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; background-color: #1e1e1e; border-radius: 2px; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3); color: #fff; padding: 16px 24px; width: 100%; max-width: 600px; box-sizing: border-box; cursor: pointer; pointer-events: auto; } @media (min-width: 600px) { .components-snackbar { width: -moz-fit-content; width: fit-content; } } .components-snackbar:focus { box-shadow: 0 0 0 1px #fff, 0 0 0 3px var(--wp-admin-theme-color); } .components-snackbar.components-snackbar-explicit-dismiss { cursor: default; } .components-snackbar .components-snackbar__content-with-icon { margin-left: 24px; } .components-snackbar .components-snackbar__icon { position: absolute; top: 24px; left: 28px; } .components-snackbar .components-snackbar__dismiss-button { margin-left: 32px; cursor: pointer; } .components-snackbar__action.components-button { margin-left: 32px; color: #fff; height: auto; flex-shrink: 0; line-height: 1.4; padding: 0; } .components-snackbar__action.components-button:not(:disabled):not([aria-disabled=true]):not(.is-secondary) { text-decoration: underline; background-color: transparent; } .components-snackbar__action.components-button:not(:disabled):not([aria-disabled=true]):not(.is-secondary):focus { color: #fff; box-shadow: none; outline: 1px dotted #fff; } .components-snackbar__action.components-button:not(:disabled):not([aria-disabled=true]):not(.is-secondary):hover { color: var(--wp-admin-theme-color); } .components-snackbar__content { display: flex; align-items: baseline; justify-content: space-between; line-height: 1.4; } .components-snackbar-list { position: absolute; z-index: 100000; width: 100%; box-sizing: border-box; pointer-events: none; } .components-snackbar-list__notice-container { position: relative; padding-top: 8px; } .components-swatch { width: 18px; height: 18px; border-radius: 50%; color: transparent; background: transparent; } .components-swatch::after { content: ""; display: block; width: 100%; height: 100%; border: 1px solid rgba(0, 0, 0, 0.2); border-radius: 50%; } .components-button.has-icon.has-text .components-swatch { margin-right: 8px; } .components-tab-panel__tabs { display: flex; align-items: stretch; flex-direction: row; } .components-tab-panel__tabs[aria-orientation=vertical] { flex-direction: column; } .components-tab-panel__tabs-item { background: transparent; border: none; box-shadow: none; border-radius: 0; cursor: pointer; height: 48px; padding: 3px 16px; margin-left: 0; font-weight: 500; transition: box-shadow 0.1s linear; box-sizing: border-box; } .components-tab-panel__tabs-item::after { content: attr(data-label); display: block; height: 0; overflow: hidden; speak: none; visibility: hidden; } .components-tab-panel__tabs-item:focus:not(:disabled) { box-shadow: inset 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .components-tab-panel__tabs-item.is-active { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) transparent, inset 0 -4px 0 0 var(--wp-admin-theme-color); position: relative; } .components-tab-panel__tabs-item.is-active::before { content: ""; position: absolute; top: 0; bottom: 1px; right: 0; left: 0; border-bottom: 4px solid transparent; } .components-tab-panel__tabs-item:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .components-tab-panel__tabs-item.is-active:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 -4px 0 0 var(--wp-admin-theme-color); } .components-text-control__input, .components-text-control__input[type=text], .components-text-control__input[type=tel], .components-text-control__input[type=time], .components-text-control__input[type=url], .components-text-control__input[type=week], .components-text-control__input[type=password], .components-text-control__input[type=color], .components-text-control__input[type=date], .components-text-control__input[type=datetime], .components-text-control__input[type=datetime-local], .components-text-control__input[type=email], .components-text-control__input[type=month], .components-text-control__input[type=number] { width: 100%; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; padding: 6px 8px; box-shadow: 0 0 0 transparent; transition: box-shadow 0.1s linear; border-radius: 2px; border: 1px solid #757575; /* Fonts smaller than 16px causes mobile safari to zoom. */ font-size: 16px; /* Override core line-height. To be reviewed. */ line-height: normal; } @media (prefers-reduced-motion: reduce) { .components-text-control__input, .components-text-control__input[type=text], .components-text-control__input[type=tel], .components-text-control__input[type=time], .components-text-control__input[type=url], .components-text-control__input[type=week], .components-text-control__input[type=password], .components-text-control__input[type=color], .components-text-control__input[type=date], .components-text-control__input[type=datetime], .components-text-control__input[type=datetime-local], .components-text-control__input[type=email], .components-text-control__input[type=month], .components-text-control__input[type=number] { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .components-text-control__input, .components-text-control__input[type=text], .components-text-control__input[type=tel], .components-text-control__input[type=time], .components-text-control__input[type=url], .components-text-control__input[type=week], .components-text-control__input[type=password], .components-text-control__input[type=color], .components-text-control__input[type=date], .components-text-control__input[type=datetime], .components-text-control__input[type=datetime-local], .components-text-control__input[type=email], .components-text-control__input[type=month], .components-text-control__input[type=number] { font-size: 13px; /* Override core line-height. To be reviewed. */ line-height: normal; } } .components-text-control__input:focus, .components-text-control__input[type=text]:focus, .components-text-control__input[type=tel]:focus, .components-text-control__input[type=time]:focus, .components-text-control__input[type=url]:focus, .components-text-control__input[type=week]:focus, .components-text-control__input[type=password]:focus, .components-text-control__input[type=color]:focus, .components-text-control__input[type=date]:focus, .components-text-control__input[type=datetime]:focus, .components-text-control__input[type=datetime-local]:focus, .components-text-control__input[type=email]:focus, .components-text-control__input[type=month]:focus, .components-text-control__input[type=number]:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 1px var(--wp-admin-theme-color); outline: 2px solid transparent; } .components-text-control__input::-webkit-input-placeholder, .components-text-control__input[type=text]::-webkit-input-placeholder, .components-text-control__input[type=tel]::-webkit-input-placeholder, .components-text-control__input[type=time]::-webkit-input-placeholder, .components-text-control__input[type=url]::-webkit-input-placeholder, .components-text-control__input[type=week]::-webkit-input-placeholder, .components-text-control__input[type=password]::-webkit-input-placeholder, .components-text-control__input[type=color]::-webkit-input-placeholder, .components-text-control__input[type=date]::-webkit-input-placeholder, .components-text-control__input[type=datetime]::-webkit-input-placeholder, .components-text-control__input[type=datetime-local]::-webkit-input-placeholder, .components-text-control__input[type=email]::-webkit-input-placeholder, .components-text-control__input[type=month]::-webkit-input-placeholder, .components-text-control__input[type=number]::-webkit-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-text-control__input::-moz-placeholder, .components-text-control__input[type=text]::-moz-placeholder, .components-text-control__input[type=tel]::-moz-placeholder, .components-text-control__input[type=time]::-moz-placeholder, .components-text-control__input[type=url]::-moz-placeholder, .components-text-control__input[type=week]::-moz-placeholder, .components-text-control__input[type=password]::-moz-placeholder, .components-text-control__input[type=color]::-moz-placeholder, .components-text-control__input[type=date]::-moz-placeholder, .components-text-control__input[type=datetime]::-moz-placeholder, .components-text-control__input[type=datetime-local]::-moz-placeholder, .components-text-control__input[type=email]::-moz-placeholder, .components-text-control__input[type=month]::-moz-placeholder, .components-text-control__input[type=number]::-moz-placeholder { opacity: 1; color: rgba(30, 30, 30, 0.62); } .components-text-control__input:-ms-input-placeholder, .components-text-control__input[type=text]:-ms-input-placeholder, .components-text-control__input[type=tel]:-ms-input-placeholder, .components-text-control__input[type=time]:-ms-input-placeholder, .components-text-control__input[type=url]:-ms-input-placeholder, .components-text-control__input[type=week]:-ms-input-placeholder, .components-text-control__input[type=password]:-ms-input-placeholder, .components-text-control__input[type=color]:-ms-input-placeholder, .components-text-control__input[type=date]:-ms-input-placeholder, .components-text-control__input[type=datetime]:-ms-input-placeholder, .components-text-control__input[type=datetime-local]:-ms-input-placeholder, .components-text-control__input[type=email]:-ms-input-placeholder, .components-text-control__input[type=month]:-ms-input-placeholder, .components-text-control__input[type=number]:-ms-input-placeholder { color: rgba(30, 30, 30, 0.62); } .components-tip { display: flex; color: #757575; } .components-tip svg { align-self: center; fill: #f0b849; flex-shrink: 0; margin-right: 16px; } .components-tip p { margin: 0; } .components-toggle-control .components-base-control__field { display: flex; margin-bottom: 12px; line-height: initial; align-items: center; } .components-toggle-control .components-base-control__field .components-form-toggle { margin-right: 12px; } .components-toggle-control .components-base-control__field .components-toggle-control__label { display: block; } .components-accessible-toolbar { display: inline-flex; border: 1px solid #1e1e1e; border-radius: 2px; flex-shrink: 0; } .components-accessible-toolbar > .components-toolbar-group:last-child { border-right: none; } .components-accessible-toolbar .components-button, .components-toolbar .components-button { position: relative; height: 48px; z-index: 1; padding-left: 16px; padding-right: 16px; } .components-accessible-toolbar .components-button:focus:enabled, .components-toolbar .components-button:focus:enabled { box-shadow: none; outline: none; } .components-accessible-toolbar .components-button::before, .components-toolbar .components-button::before { content: ""; position: absolute; display: block; border-radius: 2px; height: 32px; left: 8px; right: 8px; z-index: -1; animation: components-button__appear-animation 0.1s ease; animation-fill-mode: forwards; } @media (prefers-reduced-motion: reduce) { .components-accessible-toolbar .components-button::before, .components-toolbar .components-button::before { animation-duration: 1ms; animation-delay: 0s; } } .components-accessible-toolbar .components-button svg, .components-toolbar .components-button svg { position: relative; margin-left: auto; margin-right: auto; } .components-accessible-toolbar .components-button.is-pressed, .components-toolbar .components-button.is-pressed { background: transparent; } .components-accessible-toolbar .components-button.is-pressed:hover, .components-toolbar .components-button.is-pressed:hover { background: transparent; } .components-accessible-toolbar .components-button.is-pressed::before, .components-toolbar .components-button.is-pressed::before { background: #1e1e1e; } .components-accessible-toolbar .components-button:focus::before, .components-toolbar .components-button:focus::before { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 0 0 4px #fff; outline: 2px solid transparent; } .components-accessible-toolbar .components-button.has-icon.has-icon, .components-toolbar .components-button.has-icon.has-icon { padding-left: 12px; padding-right: 12px; min-width: 48px; } .components-accessible-toolbar .components-button.components-tab-button, .components-toolbar .components-button.components-tab-button { font-weight: 500; } .components-accessible-toolbar .components-button.components-tab-button span, .components-toolbar .components-button.components-tab-button span { display: inline-block; padding-left: 0; padding-right: 0; position: relative; } @keyframes components-button__appear-animation { from { transform: scaleY(0); } to { transform: scaleY(1); } } .components-toolbar__control.components-button { position: relative; } .components-toolbar__control.components-button[data-subscript] svg { padding: 5px 10px 5px 0; } .components-toolbar__control.components-button[data-subscript]::after { content: attr(data-subscript); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; font-weight: 600; line-height: 12px; position: absolute; right: 8px; bottom: 10px; } .components-toolbar__control.components-button:active::before { display: none; } .components-toolbar__control.components-button:not(:disabled).is-pressed[data-subscript]::after { color: #fff; } .components-toolbar-group { min-height: 48px; border-right: 1px solid #1e1e1e; background-color: #fff; display: inline-flex; flex-shrink: 0; flex-wrap: wrap; line-height: 0; } .components-toolbar-group .components-toolbar-group.components-toolbar-group { border-width: 0; margin: 0; } .components-toolbar { min-height: 48px; margin: 0; border: 1px solid #1e1e1e; background-color: #fff; display: inline-flex; flex-shrink: 0; flex-wrap: wrap; } .components-toolbar .components-toolbar.components-toolbar { border-width: 0; margin: 0; } div.components-toolbar > div { display: block; margin: 0; } @supports (position: sticky) { div.components-toolbar > div { display: flex; } } div.components-toolbar > div + div.has-left-divider { margin-left: 6px; position: relative; overflow: visible; } div.components-toolbar > div + div.has-left-divider::before { display: inline-block; content: ""; box-sizing: content-box; background-color: #ddd; position: absolute; top: 8px; left: -3px; width: 1px; height: 20px; } .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-button:first-child:last-child, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-dropdown:first-child:last-child .components-button, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot.components-dropdown > .components-button.components-button, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot.components-dropdown > * .components-button, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-button:first-child:last-child, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-dropdown:first-child:last-child .components-button, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot.components-dropdown > .components-button.components-button, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot.components-dropdown > * .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-button:first-child:last-child, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-dropdown:first-child:last-child .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar.components-dropdown > .components-button.components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar.components-dropdown > * .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-button:first-child:last-child, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-dropdown:first-child:last-child .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown.components-dropdown > .components-button.components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown.components-dropdown > * .components-button, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-button:first-child:last-child, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-dropdown:first-child:last-child .components-button, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group.components-dropdown > .components-button.components-button, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group.components-dropdown > * .components-button { min-width: 48px; padding-left: 12px; padding-right: 12px; } .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-button:first-child:last-child::before, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-dropdown:first-child:last-child .components-button::before, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot.components-dropdown > .components-button.components-button::before, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot.components-dropdown > * .components-button::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-button:first-child:last-child::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-dropdown:first-child:last-child .components-button::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot.components-dropdown > .components-button.components-button::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot.components-dropdown > * .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-button:first-child:last-child::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-dropdown:first-child:last-child .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar.components-dropdown > .components-button.components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar.components-dropdown > * .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-button:first-child:last-child::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-dropdown:first-child:last-child .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown.components-dropdown > .components-button.components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown.components-dropdown > * .components-button::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-button:first-child:last-child::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-dropdown:first-child:last-child .components-button::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group.components-dropdown > .components-button.components-button::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group.components-dropdown > * .components-button::before { left: 8px; right: 8px; } .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-button:first-child, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > div:first-child > .components-button, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-dropdown:first-child .components-button, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-button:first-child, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > div:first-child > .components-button, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-dropdown:first-child .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-button:first-child, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > div:first-child > .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-dropdown:first-child .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-button:first-child, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > div:first-child > .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-dropdown:first-child .components-button, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-button:first-child, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > div:first-child > .components-button, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-dropdown:first-child .components-button { min-width: 42px; padding-left: 11px; padding-right: 6px; } .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-button:first-child::before, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > div:first-child > .components-button::before, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-dropdown:first-child .components-button::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-button:first-child::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > div:first-child > .components-button::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-dropdown:first-child .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-button:first-child::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > div:first-child > .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-dropdown:first-child .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-button:first-child::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > div:first-child > .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-dropdown:first-child .components-button::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-button:first-child::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > div:first-child > .components-button::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-dropdown:first-child .components-button::before { left: 8px; right: 2px; } .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-button, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > div > .components-button, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-dropdown .components-button, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-button, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > div > .components-button, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-dropdown .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > div > .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-dropdown .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > div > .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-dropdown .components-button, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-button, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > div > .components-button, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-dropdown .components-button { min-width: 36px; padding-left: 6px; padding-right: 6px; } .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-button svg, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > div > .components-button svg, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-dropdown .components-button svg, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-button svg, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > div > .components-button svg, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-dropdown .components-button svg, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-button svg, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > div > .components-button svg, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-dropdown .components-button svg, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-button svg, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > div > .components-button svg, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-dropdown .components-button svg, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-button svg, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > div > .components-button svg, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-dropdown .components-button svg { min-width: 24px; } .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-button::before, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > div > .components-button::before, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-dropdown .components-button::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-button::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > div > .components-button::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-dropdown .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > div > .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-dropdown .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > div > .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-dropdown .components-button::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-button::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > div > .components-button::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-dropdown .components-button::before { left: 2px; right: 2px; } .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-button:last-child, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > div:last-child > .components-button, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-dropdown:last-child .components-button, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-button:last-child, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > div:last-child > .components-button, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-dropdown:last-child .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-button:last-child, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > div:last-child > .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-dropdown:last-child .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-button:last-child, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > div:last-child > .components-button, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-dropdown:last-child .components-button, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-button:last-child, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > div:last-child > .components-button, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-dropdown:last-child .components-button { min-width: 42px; padding-left: 6px; padding-right: 11px; } .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-button:last-child::before, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > div:last-child > .components-button::before, .block-editor-block-toolbar > .components-toolbar > .block-editor-block-toolbar__slot > .components-dropdown:last-child .components-button::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-button:last-child::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > div:last-child > .components-button::before, .block-editor-block-toolbar > .components-toolbar-group > .block-editor-block-toolbar__slot > .components-dropdown:last-child .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-button:last-child::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > div:last-child > .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-toolbar > .components-dropdown:last-child .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-button:last-child::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > div:last-child > .components-button::before, .block-editor-block-toolbar > .block-editor-block-toolbar__slot > .components-dropdown > .components-dropdown:last-child .components-button::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-button:last-child::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > div:last-child > .components-button::before, .block-editor-block-toolbar .block-editor-block-toolbar__slot .components-toolbar-group > .components-dropdown:last-child .components-button::before { left: 2px; right: 8px; } .components-tooltip.components-popover { z-index: 1000002; } .components-tooltip.components-popover .components-popover__content { min-width: 0; } .components-tooltip .components-popover__content { background: #1e1e1e; border-radius: 2px; border-width: 0; color: #fff; white-space: nowrap; text-align: center; line-height: 1.4; font-size: 12px; box-shadow: none; } .components-tooltip .components-popover__content > div { padding: 4px 8px; } .components-tooltip__shortcut { display: inline-block; margin-left: 8px; } .disabled-element-wrapper { position: relative; } .disabled-element-wrapper .event-catcher { z-index: 100002; position: absolute; width: 100%; height: 100%; top: 0; left: 0; bottom: 0; right: 0; }PKj l\1wwcss/dist/widgets/style.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-block-legacy-widget__edit-form{background:#fff;border-radius:2px;border:1px solid #1e1e1e;padding:11px}.wp-block-legacy-widget__edit-form:not([hidden]){display:flow-root}.wp-block-legacy-widget__edit-form .wp-block-legacy-widget__edit-form-title{color:#000;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:14px;font-weight:600;margin:0 0 12px}.wp-block-legacy-widget__edit-form .widget-inside.widget-inside{border:none;box-shadow:none;display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.wp-block-legacy-widget__edit-form .widget-inside.widget-inside p{margin:8px 0}.wp-block-legacy-widget__edit-form .widget-inside.widget-inside label{font-size:13px;line-height:2.1}.wp-block-legacy-widget__edit-form .widget-inside.widget-inside a,.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input,.wp-block-legacy-widget__edit-form .widget-inside.widget-inside label{font-family:system-ui;font-weight:400;color:#000}.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=date],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=datetime-local],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=datetime],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=email],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=month],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=number],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=password],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=search],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=tel],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=text],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=time],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=url],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=week],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside select{font-family:system-ui;background-color:transparent;box-sizing:border-box;border:1px solid #757575;border-radius:3px;box-shadow:none;color:#000;display:block;margin:0;width:100%;font-size:13px;font-weight:400;line-height:1;min-height:30px;padding-left:8px;padding-top:8px;padding-bottom:8px}.wp-block-legacy-widget__edit-form .widget-inside.widget-inside select{padding-left:4px}.wp-block-legacy-widget__edit-form .widget.open,.wp-block-legacy-widget__edit-form .widget.open:focus-within{z-index:0}.wp-block-legacy-widget__edit-form.wp-block-legacy-widget__edit-form,.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview{color:#000}.wp-block-legacy-widget__edit-no-preview,.wp-block-legacy-widget__edit-preview{cursor:pointer}.wp-block-legacy-widget__edit-no-preview:hover:after,.wp-block-legacy-widget__edit-preview:hover:after{border-radius:2px;border:1px solid #949494;bottom:0;content:"";left:0;position:absolute;right:0;top:0}.wp-block-legacy-widget__edit-preview.is-offscreen{left:-9999px;position:absolute;top:0;width:100%}.wp-block-legacy-widget__edit-preview-iframe{overflow:hidden;width:100%}.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview{background:#f0f0f0;padding:8px 12px}.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview,.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview h3,.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview p{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px}.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview h3{font-size:14px;font-weight:600;margin:4px 0}.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview p{margin:4px 0}.wp-block-legacy-widget-inspector-card{padding:0 16px 16px 52px}.interface-complementary-area .wp-block-legacy-widget-inspector-card__name{margin:0 0 5px;font-weight:500}.is-selected .wp-block-legacy-widget__container{padding:8px 12px;min-height:50px}.components-popover__content .wp-block-legacy-widget__edit-form{min-width:400px}.wp-block-legacy-widget .components-base-control{width:100%}.wp-block-legacy-widget .components-select-control__input{padding:0;font-family:system-ui}.wp-block-widget-group.has-child-selected:after{border-radius:2px;border:1px solid var(--wp-admin-theme-color);bottom:0;content:"";left:0;position:absolute;right:0;top:0}.wp-block-widget-group .widget-title{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:18px;font-weight:600}.wp-block-widget-group__placeholder .block-editor-inserter{width:100%}.is-dark-theme .wp-block-widget-group__placeholder .block-editor-button-block-appender{box-shadow:inset 0 0 0 1px #1e1e1e;color:#1e1e1e}PKj l\QXzz"css/dist/widgets/style-rtl.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-block-legacy-widget__edit-form{background:#fff;border-radius:2px;border:1px solid #1e1e1e;padding:11px}.wp-block-legacy-widget__edit-form:not([hidden]){display:flow-root}.wp-block-legacy-widget__edit-form .wp-block-legacy-widget__edit-form-title{color:#000;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:14px;font-weight:600;margin:0 0 12px}.wp-block-legacy-widget__edit-form .widget-inside.widget-inside{border:none;box-shadow:none;display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.wp-block-legacy-widget__edit-form .widget-inside.widget-inside p{margin:8px 0}.wp-block-legacy-widget__edit-form .widget-inside.widget-inside label{font-size:13px;line-height:2.1}.wp-block-legacy-widget__edit-form .widget-inside.widget-inside a,.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input,.wp-block-legacy-widget__edit-form .widget-inside.widget-inside label{font-family:system-ui;font-weight:400;color:#000}.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=date],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=datetime-local],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=datetime],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=email],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=month],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=number],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=password],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=search],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=tel],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=text],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=time],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=url],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=week],.wp-block-legacy-widget__edit-form .widget-inside.widget-inside select{font-family:system-ui;background-color:transparent;box-sizing:border-box;border:1px solid #757575;border-radius:3px;box-shadow:none;color:#000;display:block;margin:0;width:100%;font-size:13px;font-weight:400;line-height:1;min-height:30px;padding-right:8px;padding-top:8px;padding-bottom:8px}.wp-block-legacy-widget__edit-form .widget-inside.widget-inside select{padding-right:4px}.wp-block-legacy-widget__edit-form .widget.open,.wp-block-legacy-widget__edit-form .widget.open:focus-within{z-index:0}.wp-block-legacy-widget__edit-form.wp-block-legacy-widget__edit-form,.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview{color:#000}.wp-block-legacy-widget__edit-no-preview,.wp-block-legacy-widget__edit-preview{cursor:pointer}.wp-block-legacy-widget__edit-no-preview:hover:after,.wp-block-legacy-widget__edit-preview:hover:after{border-radius:2px;border:1px solid #949494;bottom:0;content:"";right:0;position:absolute;left:0;top:0}.wp-block-legacy-widget__edit-preview.is-offscreen{right:-9999px;position:absolute;top:0;width:100%}.wp-block-legacy-widget__edit-preview-iframe{overflow:hidden;width:100%}.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview{background:#f0f0f0;padding:8px 12px}.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview,.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview h3,.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview p{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px}.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview h3{font-size:14px;font-weight:600;margin:4px 0}.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview p{margin:4px 0}.wp-block-legacy-widget-inspector-card{padding:0 52px 16px 16px}.interface-complementary-area .wp-block-legacy-widget-inspector-card__name{margin:0 0 5px;font-weight:500}.is-selected .wp-block-legacy-widget__container{padding:8px 12px;min-height:50px}.components-popover__content .wp-block-legacy-widget__edit-form{min-width:400px}.wp-block-legacy-widget .components-base-control{width:100%}.wp-block-legacy-widget .components-select-control__input{padding:0;font-family:system-ui}.wp-block-widget-group.has-child-selected:after{border-radius:2px;border:1px solid var(--wp-admin-theme-color);bottom:0;content:"";right:0;position:absolute;left:0;top:0}.wp-block-widget-group .widget-title{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:18px;font-weight:600}.wp-block-widget-group__placeholder .block-editor-inserter{width:100%}.is-dark-theme .wp-block-widget-group__placeholder .block-editor-button-block-appender{box-shadow:inset 0 0 0 1px #1e1e1e;color:#1e1e1e}PKj l\è}css/dist/widgets/style-rtl.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .wp-block-legacy-widget__edit-form { background: #fff; border-radius: 2px; border: 1px solid #1e1e1e; padding: 11px; } .wp-block-legacy-widget__edit-form:not([hidden]) { display: flow-root; } .wp-block-legacy-widget__edit-form .wp-block-legacy-widget__edit-form-title { color: #000; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 14px; font-weight: 600; margin: 0 0 12px 0; } .wp-block-legacy-widget__edit-form .widget-inside.widget-inside { border: none; box-shadow: none; display: block; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; } .wp-block-legacy-widget__edit-form .widget-inside.widget-inside p { margin: 8px 0; } .wp-block-legacy-widget__edit-form .widget-inside.widget-inside label { font-size: 13px; line-height: 2.1; } .wp-block-legacy-widget__edit-form .widget-inside.widget-inside label, .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input, .wp-block-legacy-widget__edit-form .widget-inside.widget-inside a { font-family: system-ui; font-weight: normal; color: #000; } .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=text], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=password], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=date], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=datetime], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=datetime-local], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=email], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=month], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=number], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=search], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=tel], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=time], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=url], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=week], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside select { font-family: system-ui; background-color: transparent; box-sizing: border-box; border: 1px solid #757575; border-radius: 3px; box-shadow: none; color: #000; display: block; margin: 0; width: 100%; font-size: 13px; font-weight: normal; line-height: 1; min-height: 30px; padding-right: 8px; padding-top: 8px; padding-bottom: 8px; } .wp-block-legacy-widget__edit-form .widget-inside.widget-inside select { padding-right: 4px; } .wp-block-legacy-widget__edit-form .widget.open, .wp-block-legacy-widget__edit-form .widget.open:focus-within { z-index: 0; } .wp-block-legacy-widget__edit-form.wp-block-legacy-widget__edit-form, .wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview { color: #000; } .wp-block-legacy-widget__edit-preview, .wp-block-legacy-widget__edit-no-preview { cursor: pointer; } .wp-block-legacy-widget__edit-preview:hover::after, .wp-block-legacy-widget__edit-no-preview:hover::after { border-radius: 2px; border: 1px solid #949494; bottom: 0; content: ""; right: 0; position: absolute; left: 0; top: 0; } .wp-block-legacy-widget__edit-preview.is-offscreen { right: -9999px; position: absolute; top: 0; width: 100%; } .wp-block-legacy-widget__edit-preview-iframe { overflow: hidden; width: 100%; } .wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview { background: #f0f0f0; padding: 8px 12px; } .wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview, .wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview h3, .wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview p { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; } .wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview h3 { font-size: 14px; font-weight: 600; margin: 4px 0; } .wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview p { margin: 4px 0; } .wp-block-legacy-widget-inspector-card { padding: 0 52px 16px 16px; } .interface-complementary-area .wp-block-legacy-widget-inspector-card__name { margin: 0 0 5px; font-weight: 500; } .is-selected .wp-block-legacy-widget__container { padding: 8px 12px; min-height: 50px; } .components-popover__content .wp-block-legacy-widget__edit-form { min-width: 400px; } .wp-block-legacy-widget .components-base-control { width: 100%; } .wp-block-legacy-widget .components-select-control__input { padding: 0; font-family: system-ui; } .wp-block-widget-group.has-child-selected::after { border-radius: 2px; border: 1px solid var(--wp-admin-theme-color); bottom: 0; content: ""; right: 0; position: absolute; left: 0; top: 0; } .wp-block-widget-group .widget-title { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 18px; font-weight: 600; } .wp-block-widget-group__placeholder .block-editor-inserter { width: 100%; } .is-dark-theme .wp-block-widget-group__placeholder .block-editor-button-block-appender { box-shadow: inset 0 0 0 1px #1e1e1e; color: #1e1e1e; }PKj l\css/dist/widgets/style.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .wp-block-legacy-widget__edit-form { background: #fff; border-radius: 2px; border: 1px solid #1e1e1e; padding: 11px; } .wp-block-legacy-widget__edit-form:not([hidden]) { display: flow-root; } .wp-block-legacy-widget__edit-form .wp-block-legacy-widget__edit-form-title { color: #000; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 14px; font-weight: 600; margin: 0 0 12px 0; } .wp-block-legacy-widget__edit-form .widget-inside.widget-inside { border: none; box-shadow: none; display: block; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; } .wp-block-legacy-widget__edit-form .widget-inside.widget-inside p { margin: 8px 0; } .wp-block-legacy-widget__edit-form .widget-inside.widget-inside label { font-size: 13px; line-height: 2.1; } .wp-block-legacy-widget__edit-form .widget-inside.widget-inside label, .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input, .wp-block-legacy-widget__edit-form .widget-inside.widget-inside a { font-family: system-ui; font-weight: normal; color: #000; } .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=text], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=password], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=date], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=datetime], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=datetime-local], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=email], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=month], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=number], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=search], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=tel], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=time], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=url], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside input[type=week], .wp-block-legacy-widget__edit-form .widget-inside.widget-inside select { font-family: system-ui; background-color: transparent; box-sizing: border-box; border: 1px solid #757575; border-radius: 3px; box-shadow: none; color: #000; display: block; margin: 0; width: 100%; font-size: 13px; font-weight: normal; line-height: 1; min-height: 30px; padding-left: 8px; padding-top: 8px; padding-bottom: 8px; } .wp-block-legacy-widget__edit-form .widget-inside.widget-inside select { padding-left: 4px; } .wp-block-legacy-widget__edit-form .widget.open, .wp-block-legacy-widget__edit-form .widget.open:focus-within { z-index: 0; } .wp-block-legacy-widget__edit-form.wp-block-legacy-widget__edit-form, .wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview { color: #000; } .wp-block-legacy-widget__edit-preview, .wp-block-legacy-widget__edit-no-preview { cursor: pointer; } .wp-block-legacy-widget__edit-preview:hover::after, .wp-block-legacy-widget__edit-no-preview:hover::after { border-radius: 2px; border: 1px solid #949494; bottom: 0; content: ""; left: 0; position: absolute; right: 0; top: 0; } .wp-block-legacy-widget__edit-preview.is-offscreen { left: -9999px; position: absolute; top: 0; width: 100%; } .wp-block-legacy-widget__edit-preview-iframe { overflow: hidden; width: 100%; } .wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview { background: #f0f0f0; padding: 8px 12px; } .wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview, .wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview h3, .wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview p { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; } .wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview h3 { font-size: 14px; font-weight: 600; margin: 4px 0; } .wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview.wp-block-legacy-widget__edit-no-preview p { margin: 4px 0; } .wp-block-legacy-widget-inspector-card { padding: 0 16px 16px 52px; } .interface-complementary-area .wp-block-legacy-widget-inspector-card__name { margin: 0 0 5px; font-weight: 500; } .is-selected .wp-block-legacy-widget__container { padding: 8px 12px; min-height: 50px; } .components-popover__content .wp-block-legacy-widget__edit-form { min-width: 400px; } .wp-block-legacy-widget .components-base-control { width: 100%; } .wp-block-legacy-widget .components-select-control__input { padding: 0; font-family: system-ui; } .wp-block-widget-group.has-child-selected::after { border-radius: 2px; border: 1px solid var(--wp-admin-theme-color); bottom: 0; content: ""; left: 0; position: absolute; right: 0; top: 0; } .wp-block-widget-group .widget-title { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 18px; font-weight: 600; } .wp-block-widget-group__placeholder .block-editor-inserter { width: 100%; } .is-dark-theme .wp-block-widget-group__placeholder .block-editor-button-block-appender { box-shadow: inset 0 0 0 1px #1e1e1e; color: #1e1e1e; }PKj l\) =VV+css/dist/list-reusable-blocks/style.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.list-reusable-blocks-import-dropdown__content .components-popover__content>div{padding:10px}.list-reusable-blocks-import-form__label{display:block;margin-bottom:10px}.list-reusable-blocks-import-form__button{margin-top:10px;margin-bottom:10px;float:right}.list-reusable-blocks-import-form .components-notice__content{margin:0}.list-reusable-blocks-import-form .components-notice.is-dismissible{padding-right:0;margin:5px 0}.list-reusable-blocks__container{display:inline-flex;align-items:center;position:relative;top:-3px}.list-reusable-blocks__container .components-button{height:26px}body.admin-color-light{--wp-admin-theme-color:#0085ba;--wp-admin-theme-color--rgb:0,133,186;--wp-admin-theme-color-darker-10:#0073a1;--wp-admin-theme-color-darker-10--rgb:0,115,161;--wp-admin-theme-color-darker-20:#006187;--wp-admin-theme-color-darker-20--rgb:0,97,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-light{--wp-admin-border-width-focus:1.5px}}body.admin-color-modern{--wp-admin-theme-color:#3858e9;--wp-admin-theme-color--rgb:56,88,233;--wp-admin-theme-color-darker-10:#2145e6;--wp-admin-theme-color-darker-10--rgb:33,69,230;--wp-admin-theme-color-darker-20:#183ad6;--wp-admin-theme-color-darker-20--rgb:24,58,214;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-modern{--wp-admin-border-width-focus:1.5px}}body.admin-color-blue{--wp-admin-theme-color:#096484;--wp-admin-theme-color--rgb:9,100,132;--wp-admin-theme-color-darker-10:#07526c;--wp-admin-theme-color-darker-10--rgb:7,82,108;--wp-admin-theme-color-darker-20:#064054;--wp-admin-theme-color-darker-20--rgb:6,64,84;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-blue{--wp-admin-border-width-focus:1.5px}}body.admin-color-coffee{--wp-admin-theme-color:#46403c;--wp-admin-theme-color--rgb:70,64,60;--wp-admin-theme-color-darker-10:#383330;--wp-admin-theme-color-darker-10--rgb:56,51,48;--wp-admin-theme-color-darker-20:#2b2724;--wp-admin-theme-color-darker-20--rgb:43,39,36;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-coffee{--wp-admin-border-width-focus:1.5px}}body.admin-color-ectoplasm{--wp-admin-theme-color:#523f6d;--wp-admin-theme-color--rgb:82,63,109;--wp-admin-theme-color-darker-10:#46365d;--wp-admin-theme-color-darker-10--rgb:70,54,93;--wp-admin-theme-color-darker-20:#3a2c4d;--wp-admin-theme-color-darker-20--rgb:58,44,77;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-ectoplasm{--wp-admin-border-width-focus:1.5px}}body.admin-color-midnight{--wp-admin-theme-color:#e14d43;--wp-admin-theme-color--rgb:225,77,67;--wp-admin-theme-color-darker-10:#dd382d;--wp-admin-theme-color-darker-10--rgb:221,56,45;--wp-admin-theme-color-darker-20:#d02c21;--wp-admin-theme-color-darker-20--rgb:208,44,33;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-midnight{--wp-admin-border-width-focus:1.5px}}body.admin-color-ocean{--wp-admin-theme-color:#627c83;--wp-admin-theme-color--rgb:98,124,131;--wp-admin-theme-color-darker-10:#576e74;--wp-admin-theme-color-darker-10--rgb:87,110,116;--wp-admin-theme-color-darker-20:#4c6066;--wp-admin-theme-color-darker-20--rgb:76,96,102;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-ocean{--wp-admin-border-width-focus:1.5px}}body.admin-color-sunrise{--wp-admin-theme-color:#dd823b;--wp-admin-theme-color--rgb:221,130,59;--wp-admin-theme-color-darker-10:#d97426;--wp-admin-theme-color-darker-10--rgb:217,116,38;--wp-admin-theme-color-darker-20:#c36922;--wp-admin-theme-color-darker-20--rgb:195,105,34;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-sunrise{--wp-admin-border-width-focus:1.5px}}PKj l\ 'TT/css/dist/list-reusable-blocks/style-rtl.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.list-reusable-blocks-import-dropdown__content .components-popover__content>div{padding:10px}.list-reusable-blocks-import-form__label{display:block;margin-bottom:10px}.list-reusable-blocks-import-form__button{margin-top:10px;margin-bottom:10px;float:left}.list-reusable-blocks-import-form .components-notice__content{margin:0}.list-reusable-blocks-import-form .components-notice.is-dismissible{padding-left:0;margin:5px 0}.list-reusable-blocks__container{display:inline-flex;align-items:center;position:relative;top:-3px}.list-reusable-blocks__container .components-button{height:26px}body.admin-color-light{--wp-admin-theme-color:#0085ba;--wp-admin-theme-color--rgb:0,133,186;--wp-admin-theme-color-darker-10:#0073a1;--wp-admin-theme-color-darker-10--rgb:0,115,161;--wp-admin-theme-color-darker-20:#006187;--wp-admin-theme-color-darker-20--rgb:0,97,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-light{--wp-admin-border-width-focus:1.5px}}body.admin-color-modern{--wp-admin-theme-color:#3858e9;--wp-admin-theme-color--rgb:56,88,233;--wp-admin-theme-color-darker-10:#2145e6;--wp-admin-theme-color-darker-10--rgb:33,69,230;--wp-admin-theme-color-darker-20:#183ad6;--wp-admin-theme-color-darker-20--rgb:24,58,214;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-modern{--wp-admin-border-width-focus:1.5px}}body.admin-color-blue{--wp-admin-theme-color:#096484;--wp-admin-theme-color--rgb:9,100,132;--wp-admin-theme-color-darker-10:#07526c;--wp-admin-theme-color-darker-10--rgb:7,82,108;--wp-admin-theme-color-darker-20:#064054;--wp-admin-theme-color-darker-20--rgb:6,64,84;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-blue{--wp-admin-border-width-focus:1.5px}}body.admin-color-coffee{--wp-admin-theme-color:#46403c;--wp-admin-theme-color--rgb:70,64,60;--wp-admin-theme-color-darker-10:#383330;--wp-admin-theme-color-darker-10--rgb:56,51,48;--wp-admin-theme-color-darker-20:#2b2724;--wp-admin-theme-color-darker-20--rgb:43,39,36;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-coffee{--wp-admin-border-width-focus:1.5px}}body.admin-color-ectoplasm{--wp-admin-theme-color:#523f6d;--wp-admin-theme-color--rgb:82,63,109;--wp-admin-theme-color-darker-10:#46365d;--wp-admin-theme-color-darker-10--rgb:70,54,93;--wp-admin-theme-color-darker-20:#3a2c4d;--wp-admin-theme-color-darker-20--rgb:58,44,77;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-ectoplasm{--wp-admin-border-width-focus:1.5px}}body.admin-color-midnight{--wp-admin-theme-color:#e14d43;--wp-admin-theme-color--rgb:225,77,67;--wp-admin-theme-color-darker-10:#dd382d;--wp-admin-theme-color-darker-10--rgb:221,56,45;--wp-admin-theme-color-darker-20:#d02c21;--wp-admin-theme-color-darker-20--rgb:208,44,33;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-midnight{--wp-admin-border-width-focus:1.5px}}body.admin-color-ocean{--wp-admin-theme-color:#627c83;--wp-admin-theme-color--rgb:98,124,131;--wp-admin-theme-color-darker-10:#576e74;--wp-admin-theme-color-darker-10--rgb:87,110,116;--wp-admin-theme-color-darker-20:#4c6066;--wp-admin-theme-color-darker-20--rgb:76,96,102;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-ocean{--wp-admin-border-width-focus:1.5px}}body.admin-color-sunrise{--wp-admin-theme-color:#dd823b;--wp-admin-theme-color--rgb:221,130,59;--wp-admin-theme-color-darker-10:#d97426;--wp-admin-theme-color-darker-10--rgb:217,116,38;--wp-admin-theme-color-darker-20:#c36922;--wp-admin-theme-color-darker-20--rgb:195,105,34;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-sunrise{--wp-admin-border-width-focus:1.5px}}PKj l\Qy~~+css/dist/list-reusable-blocks/style-rtl.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .list-reusable-blocks-import-dropdown__content .components-popover__content > div { padding: 10px; } .list-reusable-blocks-import-form__label { display: block; margin-bottom: 10px; } .list-reusable-blocks-import-form__button { margin-top: 10px; margin-bottom: 10px; float: left; } .list-reusable-blocks-import-form .components-notice__content { margin: 0; } .list-reusable-blocks-import-form .components-notice.is-dismissible { padding-left: 0; margin: 5px 0; } .list-reusable-blocks__container { display: inline-flex; align-items: center; position: relative; top: -3px; } .list-reusable-blocks__container .components-button { height: 26px; } body.admin-color-light { --wp-admin-theme-color: #0085ba; --wp-admin-theme-color--rgb: 0, 133, 186; --wp-admin-theme-color-darker-10: #0073a1; --wp-admin-theme-color-darker-10--rgb: 0, 115, 161; --wp-admin-theme-color-darker-20: #006187; --wp-admin-theme-color-darker-20--rgb: 0, 97, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-light { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-modern { --wp-admin-theme-color: #3858e9; --wp-admin-theme-color--rgb: 56, 88, 233; --wp-admin-theme-color-darker-10: #2145e6; --wp-admin-theme-color-darker-10--rgb: 33, 69, 230; --wp-admin-theme-color-darker-20: #183ad6; --wp-admin-theme-color-darker-20--rgb: 24, 58, 214; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-modern { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-blue { --wp-admin-theme-color: #096484; --wp-admin-theme-color--rgb: 9, 100, 132; --wp-admin-theme-color-darker-10: #07526c; --wp-admin-theme-color-darker-10--rgb: 7, 82, 108; --wp-admin-theme-color-darker-20: #064054; --wp-admin-theme-color-darker-20--rgb: 6, 64, 84; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-blue { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-coffee { --wp-admin-theme-color: #46403c; --wp-admin-theme-color--rgb: 70, 64, 60; --wp-admin-theme-color-darker-10: #383330; --wp-admin-theme-color-darker-10--rgb: 56, 51, 48; --wp-admin-theme-color-darker-20: #2b2724; --wp-admin-theme-color-darker-20--rgb: 43, 39, 36; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-coffee { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-ectoplasm { --wp-admin-theme-color: #523f6d; --wp-admin-theme-color--rgb: 82, 63, 109; --wp-admin-theme-color-darker-10: #46365d; --wp-admin-theme-color-darker-10--rgb: 70, 54, 93; --wp-admin-theme-color-darker-20: #3a2c4d; --wp-admin-theme-color-darker-20--rgb: 58, 44, 77; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-ectoplasm { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-midnight { --wp-admin-theme-color: #e14d43; --wp-admin-theme-color--rgb: 225, 77, 67; --wp-admin-theme-color-darker-10: #dd382d; --wp-admin-theme-color-darker-10--rgb: 221, 56, 45; --wp-admin-theme-color-darker-20: #d02c21; --wp-admin-theme-color-darker-20--rgb: 208, 44, 33; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-midnight { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-ocean { --wp-admin-theme-color: #627c83; --wp-admin-theme-color--rgb: 98, 124, 131; --wp-admin-theme-color-darker-10: #576e74; --wp-admin-theme-color-darker-10--rgb: 87, 110, 116; --wp-admin-theme-color-darker-20: #4c6066; --wp-admin-theme-color-darker-20--rgb: 76, 96, 102; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-ocean { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-sunrise { --wp-admin-theme-color: #dd823b; --wp-admin-theme-color--rgb: 221, 130, 59; --wp-admin-theme-color-darker-10: #d97426; --wp-admin-theme-color-darker-10--rgb: 217, 116, 38; --wp-admin-theme-color-darker-20: #c36922; --wp-admin-theme-color-darker-20--rgb: 195, 105, 34; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-sunrise { --wp-admin-border-width-focus: 1.5px; } }PKj l\ R}'css/dist/list-reusable-blocks/style.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .list-reusable-blocks-import-dropdown__content .components-popover__content > div { padding: 10px; } .list-reusable-blocks-import-form__label { display: block; margin-bottom: 10px; } .list-reusable-blocks-import-form__button { margin-top: 10px; margin-bottom: 10px; float: right; } .list-reusable-blocks-import-form .components-notice__content { margin: 0; } .list-reusable-blocks-import-form .components-notice.is-dismissible { padding-right: 0; margin: 5px 0; } .list-reusable-blocks__container { display: inline-flex; align-items: center; position: relative; top: -3px; } .list-reusable-blocks__container .components-button { height: 26px; } body.admin-color-light { --wp-admin-theme-color: #0085ba; --wp-admin-theme-color--rgb: 0, 133, 186; --wp-admin-theme-color-darker-10: #0073a1; --wp-admin-theme-color-darker-10--rgb: 0, 115, 161; --wp-admin-theme-color-darker-20: #006187; --wp-admin-theme-color-darker-20--rgb: 0, 97, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-light { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-modern { --wp-admin-theme-color: #3858e9; --wp-admin-theme-color--rgb: 56, 88, 233; --wp-admin-theme-color-darker-10: #2145e6; --wp-admin-theme-color-darker-10--rgb: 33, 69, 230; --wp-admin-theme-color-darker-20: #183ad6; --wp-admin-theme-color-darker-20--rgb: 24, 58, 214; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-modern { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-blue { --wp-admin-theme-color: #096484; --wp-admin-theme-color--rgb: 9, 100, 132; --wp-admin-theme-color-darker-10: #07526c; --wp-admin-theme-color-darker-10--rgb: 7, 82, 108; --wp-admin-theme-color-darker-20: #064054; --wp-admin-theme-color-darker-20--rgb: 6, 64, 84; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-blue { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-coffee { --wp-admin-theme-color: #46403c; --wp-admin-theme-color--rgb: 70, 64, 60; --wp-admin-theme-color-darker-10: #383330; --wp-admin-theme-color-darker-10--rgb: 56, 51, 48; --wp-admin-theme-color-darker-20: #2b2724; --wp-admin-theme-color-darker-20--rgb: 43, 39, 36; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-coffee { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-ectoplasm { --wp-admin-theme-color: #523f6d; --wp-admin-theme-color--rgb: 82, 63, 109; --wp-admin-theme-color-darker-10: #46365d; --wp-admin-theme-color-darker-10--rgb: 70, 54, 93; --wp-admin-theme-color-darker-20: #3a2c4d; --wp-admin-theme-color-darker-20--rgb: 58, 44, 77; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-ectoplasm { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-midnight { --wp-admin-theme-color: #e14d43; --wp-admin-theme-color--rgb: 225, 77, 67; --wp-admin-theme-color-darker-10: #dd382d; --wp-admin-theme-color-darker-10--rgb: 221, 56, 45; --wp-admin-theme-color-darker-20: #d02c21; --wp-admin-theme-color-darker-20--rgb: 208, 44, 33; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-midnight { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-ocean { --wp-admin-theme-color: #627c83; --wp-admin-theme-color--rgb: 98, 124, 131; --wp-admin-theme-color-darker-10: #576e74; --wp-admin-theme-color-darker-10--rgb: 87, 110, 116; --wp-admin-theme-color-darker-20: #4c6066; --wp-admin-theme-color-darker-20--rgb: 76, 96, 102; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-ocean { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-sunrise { --wp-admin-theme-color: #dd823b; --wp-admin-theme-color--rgb: 221, 130, 59; --wp-admin-theme-color-darker-10: #d97426; --wp-admin-theme-color-darker-10--rgb: 217, 116, 38; --wp-admin-theme-color-darker-20: #c36922; --wp-admin-theme-color-darker-20--rgb: 195, 105, 34; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-sunrise { --wp-admin-border-width-focus: 1.5px; } }PKj l\gr&& css/dist/edit-post/style.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.components-panel__header.interface-complementary-area-header__small{background:#fff;padding-right:4px}.components-panel__header.interface-complementary-area-header__small .interface-complementary-area-header__small-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}@media (min-width:782px){.components-panel__header.interface-complementary-area-header__small{display:none}}.interface-complementary-area-header{background:#fff;padding-right:4px}.interface-complementary-area-header .components-button.has-icon{display:none;margin-left:auto}.interface-complementary-area-header .components-button.has-icon~.components-button{margin-left:0}@media (min-width:782px){.interface-complementary-area-header .components-button.has-icon{display:flex}}@media (min-width:782px){.components-panel__header+.interface-complementary-area-header{margin-top:0}}.interface-complementary-area{background:#fff;color:#1e1e1e}@media (min-width:600px){.interface-complementary-area{-webkit-overflow-scrolling:touch}}@media (min-width:782px){.interface-complementary-area{width:280px}}.interface-complementary-area .components-panel{border:none;position:relative;z-index:0}.interface-complementary-area .components-panel__header{position:sticky;top:0;z-index:1}.interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs{top:48px}@media (min-width:782px){.interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs{top:0}}.interface-complementary-area p{margin-top:0}.interface-complementary-area h2{font-size:13px;color:#1e1e1e;margin-bottom:1.5em}.interface-complementary-area h3{font-size:11px;text-transform:uppercase;font-weight:500;color:#1e1e1e;margin-bottom:1.5em}.interface-complementary-area hr{border-top:none;border-bottom:1px solid #f0f0f0;margin:1.5em 0}.interface-complementary-area div.components-toolbar,.interface-complementary-area div.components-toolbar-group{box-shadow:none;margin-bottom:1.5em}.interface-complementary-area div.components-toolbar-group:last-child,.interface-complementary-area div.components-toolbar:last-child{margin-bottom:0}.interface-complementary-area .block-editor-skip-to-selected-block:focus{top:auto;right:10px;bottom:10px;left:auto}@media (min-width:782px){body.js.is-fullscreen-mode{margin-top:-32px;height:calc(100% + 32px)}body.js.is-fullscreen-mode #adminmenumain,body.js.is-fullscreen-mode #wpadminbar{display:none}body.js.is-fullscreen-mode #wpcontent,body.js.is-fullscreen-mode #wpfooter{margin-left:0}}html.interface-interface-skeleton__html-container{position:fixed;width:100%}@media (min-width:782px){html.interface-interface-skeleton__html-container{position:static;width:auto}}.interface-interface-skeleton{display:flex;flex-direction:row;height:auto;max-height:100%;position:fixed;top:46px;right:0;bottom:0}@media (min-width:783px){.interface-interface-skeleton{top:32px}.is-fullscreen-mode .interface-interface-skeleton{top:0}}.interface-interface-skeleton__editor{display:flex;flex-direction:column;flex:0 1 100%;overflow:hidden}.interface-interface-skeleton{left:0}@media (min-width:783px){.interface-interface-skeleton{left:160px}}@media (min-width:783px){.auto-fold .interface-interface-skeleton{left:36px}}@media (min-width:961px){.auto-fold .interface-interface-skeleton{left:160px}}.folded .interface-interface-skeleton{left:0}@media (min-width:783px){.folded .interface-interface-skeleton{left:36px}}body.is-fullscreen-mode .interface-interface-skeleton{left:0!important}.interface-interface-skeleton__body{flex-grow:1;display:flex;overflow:auto;overscroll-behavior-y:none}@media (min-width:782px){.has-footer .interface-interface-skeleton__body{padding-bottom:25px}}.interface-interface-skeleton__content{flex-grow:1;display:flex;flex-direction:column;overflow:auto;z-index:20}.interface-interface-skeleton__secondary-sidebar,.interface-interface-skeleton__sidebar{display:block;flex-shrink:0;position:absolute;z-index:100000;top:0;right:0;bottom:0;left:0;background:#fff;color:#1e1e1e}@media (min-width:782px){.interface-interface-skeleton__secondary-sidebar,.interface-interface-skeleton__sidebar{position:relative!important;z-index:90;width:auto}}.interface-interface-skeleton__sidebar{overflow:auto}@media (min-width:782px){.interface-interface-skeleton__sidebar{border-left:1px solid #e0e0e0}}@media (min-width:782px){.interface-interface-skeleton__secondary-sidebar{border-right:1px solid #e0e0e0}}.interface-interface-skeleton__header{flex-shrink:0;height:auto;border-bottom:1px solid #e0e0e0;z-index:30;color:#1e1e1e}.interface-interface-skeleton__footer{height:auto;flex-shrink:0;border-top:1px solid #e0e0e0;color:#1e1e1e;position:absolute;bottom:0;left:0;width:100%;background-color:#fff;z-index:90;display:none}@media (min-width:782px){.interface-interface-skeleton__footer{display:flex}}.interface-interface-skeleton__footer .block-editor-block-breadcrumb{z-index:30;display:flex;background:#fff;height:24px;align-items:center;font-size:13px;padding:0 18px}.interface-interface-skeleton__actions{z-index:100000;position:fixed!important;top:-9999em;bottom:auto;left:auto;right:0;width:280px;color:#1e1e1e}.interface-interface-skeleton__actions:focus{top:auto;bottom:0}.interface-more-menu-dropdown{margin-left:-4px}.interface-more-menu-dropdown .components-button{width:auto;padding:0 2px}@media (min-width:600px){.interface-more-menu-dropdown{margin-left:0}.interface-more-menu-dropdown .components-button{padding:0 4px}}.interface-more-menu-dropdown__content .components-popover__content{min-width:280px}@media (min-width:480px){.interface-more-menu-dropdown__content .components-popover__content{width:auto;max-width:480px}}.interface-more-menu-dropdown__content .components-popover__content .components-dropdown-menu__menu{padding:0}.components-popover.interface-more-menu-dropdown__content{z-index:99998}.interface-pinned-items{display:flex}.interface-pinned-items .components-button:not(:first-child){display:none}@media (min-width:600px){.interface-pinned-items .components-button:not(:first-child){display:flex}}.interface-pinned-items .components-button{margin-left:4px}.interface-pinned-items .components-button svg{max-width:24px;max-height:24px}.edit-post-header{height:60px;background:#fff;display:flex;flex-wrap:wrap;align-items:center;max-width:100vw}@media (min-width:280px){.edit-post-header{flex-wrap:nowrap}}.edit-post-header>.edit-post-header__settings{order:1}@supports (position:sticky){.edit-post-header>.edit-post-header__settings{order:0}}.edit-post-header__toolbar{display:flex;flex-grow:1}.edit-post-header__toolbar .table-of-contents{display:none}@media (min-width:600px){.edit-post-header__toolbar .table-of-contents{display:block}}.edit-post-header__settings{display:inline-flex;align-items:center;flex-wrap:wrap;padding-right:4px}@media (min-width:600px){.edit-post-header__settings{padding-right:16px}}.edit-post-header__settings .components-button.components-button,.edit-post-header__settings .editor-post-saved-state{margin-right:4px}@media (min-width:600px){.edit-post-header__settings .components-button.components-button,.edit-post-header__settings .editor-post-saved-state{margin-right:12px}}.edit-post-header__settings .components-button.is-tertiary,.edit-post-header__settings .editor-post-saved-state{padding:0 6px}.edit-post-header__settings .edit-post-more-menu .components-button,.edit-post-header__settings .interface-pinned-items .components-button{margin-right:0}.edit-post-header-preview__grouping-external{display:flex;position:relative;padding-bottom:0}.edit-post-header-preview__button-external{padding-left:8px;margin-right:auto;width:100%;display:flex;justify-content:flex-start}.edit-post-header-preview__button-external svg{margin-left:auto}.edit-post-post-preview-dropdown .components-popover__content>div{padding-bottom:0}.edit-post-header__dropdown .components-button.has-icon,.show-icon-labels .edit-post-header .components-button.has-icon,.show-icon-labels.interface-pinned-items .components-button.has-icon{width:auto}.edit-post-header__dropdown .components-button.has-icon svg,.show-icon-labels .edit-post-header .components-button.has-icon svg,.show-icon-labels.interface-pinned-items .components-button.has-icon svg{display:none}.edit-post-header__dropdown .components-button.has-icon:after,.show-icon-labels .edit-post-header .components-button.has-icon:after,.show-icon-labels.interface-pinned-items .components-button.has-icon:after{content:attr(aria-label)}.edit-post-header__dropdown .components-button.has-icon[aria-disabled=true],.show-icon-labels .edit-post-header .components-button.has-icon[aria-disabled=true],.show-icon-labels.interface-pinned-items .components-button.has-icon[aria-disabled=true]{background-color:transparent}.edit-post-header__dropdown .is-tertiary:active,.show-icon-labels .edit-post-header .is-tertiary:active,.show-icon-labels.interface-pinned-items .is-tertiary:active{box-shadow:0 0 0 1.5px var(--wp-admin-theme-color);background-color:transparent}.edit-post-header__dropdown .components-button.has-icon.button-toggle svg,.edit-post-header__dropdown .edit-post-fullscreen-mode-close.has-icon svg,.show-icon-labels .edit-post-header .components-button.has-icon.button-toggle svg,.show-icon-labels .edit-post-header .edit-post-fullscreen-mode-close.has-icon svg,.show-icon-labels.interface-pinned-items .components-button.has-icon.button-toggle svg,.show-icon-labels.interface-pinned-items .edit-post-fullscreen-mode-close.has-icon svg{display:block}.edit-post-header__dropdown .components-button.has-icon.button-toggle:after,.edit-post-header__dropdown .edit-post-fullscreen-mode-close.has-icon:after,.show-icon-labels .edit-post-header .components-button.has-icon.button-toggle:after,.show-icon-labels .edit-post-header .edit-post-fullscreen-mode-close.has-icon:after,.show-icon-labels.interface-pinned-items .components-button.has-icon.button-toggle:after,.show-icon-labels.interface-pinned-items .edit-post-fullscreen-mode-close.has-icon:after{content:none}.edit-post-header__dropdown .edit-post-fullscreen-mode-close.has-icon,.show-icon-labels .edit-post-header .edit-post-fullscreen-mode-close.has-icon,.show-icon-labels.interface-pinned-items .edit-post-fullscreen-mode-close.has-icon{width:60px}.edit-post-header__dropdown .components-menu-items-choice .components-menu-items__item-icon.components-menu-items__item-icon,.show-icon-labels .edit-post-header .components-menu-items-choice .components-menu-items__item-icon.components-menu-items__item-icon,.show-icon-labels.interface-pinned-items .components-menu-items-choice .components-menu-items__item-icon.components-menu-items__item-icon{display:block}.edit-post-header__dropdown .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle,.edit-post-header__dropdown .interface-pinned-items .components-button,.show-icon-labels .edit-post-header .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle,.show-icon-labels .edit-post-header .interface-pinned-items .components-button,.show-icon-labels.interface-pinned-items .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle,.show-icon-labels.interface-pinned-items .interface-pinned-items .components-button{padding-left:8px;padding-right:8px}@media (min-width:600px){.edit-post-header__dropdown .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle,.edit-post-header__dropdown .interface-pinned-items .components-button,.show-icon-labels .edit-post-header .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle,.show-icon-labels .edit-post-header .interface-pinned-items .components-button,.show-icon-labels.interface-pinned-items .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle,.show-icon-labels.interface-pinned-items .interface-pinned-items .components-button{padding-left:12px;padding-right:12px}}.edit-post-header__dropdown .components-dropdown-menu__toggle,.show-icon-labels .edit-post-header .components-dropdown-menu__toggle,.show-icon-labels.interface-pinned-items .components-dropdown-menu__toggle{margin-left:8px;padding-left:8px;padding-right:8px}@media (min-width:600px){.edit-post-header__dropdown .components-dropdown-menu__toggle,.show-icon-labels .edit-post-header .components-dropdown-menu__toggle,.show-icon-labels.interface-pinned-items .components-dropdown-menu__toggle{margin-left:12px;padding-left:12px;padding-right:12px}}.edit-post-header__dropdown .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle:after,.edit-post-header__dropdown .editor-post-save-draft.editor-post-save-draft:after,.show-icon-labels .edit-post-header .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle:after,.show-icon-labels .edit-post-header .editor-post-save-draft.editor-post-save-draft:after,.show-icon-labels.interface-pinned-items .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle:after,.show-icon-labels.interface-pinned-items .editor-post-save-draft.editor-post-save-draft:after{content:none}@media (min-width:600px){.edit-post-header__dropdown .editor-post-save-draft.editor-post-save-draft:after,.show-icon-labels .edit-post-header .editor-post-save-draft.editor-post-save-draft:after,.show-icon-labels.interface-pinned-items .editor-post-save-draft.editor-post-save-draft:after{content:attr(aria-label)}}.edit-post-header__dropdown .components-button.block-editor-list-view,.edit-post-header__dropdown .components-button.editor-history__redo,.edit-post-header__dropdown .components-button.editor-history__undo,.edit-post-header__dropdown .components-menu-item__button.components-menu-item__button,.edit-post-header__dropdown .table-of-contents .components-button{margin:0;padding:6px 6px 6px 40px;width:14.625rem;text-align:left;justify-content:flex-start}.show-icon-labels.interface-pinned-items{padding:6px 12px 12px;margin:0 -12px;border-bottom:1px solid #ccc;display:block}.show-icon-labels.interface-pinned-items>.components-button.has-icon{margin:0;padding:6px 6px 6px 8px;width:14.625rem;justify-content:flex-start}.show-icon-labels.interface-pinned-items>.components-button.has-icon[aria-expanded=true] svg{display:block;max-width:24px}.show-icon-labels.interface-pinned-items>.components-button.has-icon[aria-expanded=false]{padding-left:40px}.show-icon-labels.interface-pinned-items>.components-button.has-icon svg{margin-right:8px}.edit-post-fullscreen-mode-close.has-icon{display:none}@media (min-width:782px){.edit-post-fullscreen-mode-close.has-icon{display:flex;align-items:center;align-self:stretch;border:none;background:#1e1e1e;color:#fff;border-radius:0;height:61px;width:60px;position:relative;margin-bottom:-1px}.edit-post-fullscreen-mode-close.has-icon:active{color:#fff}.edit-post-fullscreen-mode-close.has-icon:focus{box-shadow:none}.edit-post-fullscreen-mode-close.has-icon:before{transition:box-shadow .1s ease;content:"";display:block;position:absolute;top:9px;right:9px;bottom:9px;left:9px;border-radius:4px;box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) #1e1e1e}}@media (min-width:782px) and (prefers-reduced-motion:reduce){.edit-post-fullscreen-mode-close.has-icon:before{transition-duration:0s;transition-delay:0s}}@media (min-width:782px){.edit-post-fullscreen-mode-close.has-icon:hover:before{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) #757575}}@media (min-width:782px){.edit-post-fullscreen-mode-close.has-icon:focus:before{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) hsla(0,0%,100%,.1),inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}}.edit-post-fullscreen-mode-close.has-icon .edit-post-fullscreen-mode-close_site-icon{width:36px;height:36px;border-radius:2px;-o-object-fit:cover;object-fit:cover;margin-top:-1px}.edit-post-header-toolbar{display:inline-flex;flex-grow:1;align-items:center;border:none}.edit-post-header-toolbar .edit-post-header-toolbar__left>.components-button{display:none}@media (min-width:600px){.edit-post-header-toolbar .edit-post-header-toolbar__left>.components-button{display:inline-flex}}.edit-post-header-toolbar .edit-post-header-toolbar__left>.edit-post-header-toolbar__inserter-toggle{display:inline-flex}.edit-post-header-toolbar .edit-post-header-toolbar__left>.edit-post-header-toolbar__inserter-toggle svg{transition:transform .2s cubic-bezier(.165,.84,.44,1)}@media (prefers-reduced-motion:reduce){.edit-post-header-toolbar .edit-post-header-toolbar__left>.edit-post-header-toolbar__inserter-toggle svg{transition-duration:0s;transition-delay:0s}}.edit-post-header-toolbar .edit-post-header-toolbar__left>.edit-post-header-toolbar__inserter-toggle.is-pressed svg{transform:rotate(45deg)}.edit-post-header-toolbar .block-editor-list-view{display:none}@media (min-width:600px){.edit-post-header-toolbar .block-editor-list-view{display:flex}}.edit-post-header-toolbar .edit-post-header-toolbar__left>.components-button.has-icon,.edit-post-header-toolbar .edit-post-header-toolbar__left>.components-dropdown>.components-button.has-icon{height:36px;min-width:36px;padding:6px}.edit-post-header-toolbar .edit-post-header-toolbar__left>.components-button.has-icon.is-pressed,.edit-post-header-toolbar .edit-post-header-toolbar__left>.components-dropdown>.components-button.has-icon.is-pressed{background:#1e1e1e}.edit-post-header-toolbar .edit-post-header-toolbar__left>.components-button.has-icon:focus:not(:disabled),.edit-post-header-toolbar .edit-post-header-toolbar__left>.components-dropdown>.components-button.has-icon:focus:not(:disabled){box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 0 0 1px #fff;outline:1px solid transparent}.edit-post-header-toolbar .edit-post-header-toolbar__left>.components-button.has-icon:before,.edit-post-header-toolbar .edit-post-header-toolbar__left>.components-dropdown>.components-button.has-icon:before{display:none}@media (min-width:600px){.edit-post-header.has-reduced-ui .edit-post-header-toolbar__left>*+.components-button,.edit-post-header.has-reduced-ui .edit-post-header-toolbar__left>*+.components-dropdown>[aria-expanded=false]{transition:opacity .1s linear}}@media (min-width:600px) and (prefers-reduced-motion:reduce){.edit-post-header.has-reduced-ui .edit-post-header-toolbar__left>*+.components-button,.edit-post-header.has-reduced-ui .edit-post-header-toolbar__left>*+.components-dropdown>[aria-expanded=false]{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.edit-post-header.has-reduced-ui:not(:hover) .edit-post-header-toolbar__left>*+.components-button,.edit-post-header.has-reduced-ui:not(:hover) .edit-post-header-toolbar__left>*+.components-dropdown>[aria-expanded=false]{opacity:0}}.edit-post-header-toolbar__left{display:inline-flex;align-items:center;padding-left:8px}@media (min-width:600px){.edit-post-header-toolbar__left{padding-left:24px}}@media (min-width:1280px){.edit-post-header-toolbar__left{padding-right:8px}}.edit-post-header-toolbar .edit-post-header-toolbar__left>.edit-post-header-toolbar__inserter-toggle.has-icon{margin-right:8px;min-width:32px;width:32px;height:32px;padding:0}.show-icon-labels .edit-post-header-toolbar .edit-post-header-toolbar__left>.edit-post-header-toolbar__inserter-toggle.has-icon{height:36px}.edit-post-header-toolbar .edit-post-header-toolbar__left>.edit-post-header-toolbar__inserter-toggle.has-text.has-icon{width:auto;padding:0 8px}.show-icon-labels .edit-post-header-toolbar__left>*+*{margin-left:8px}.edit-post-more-menu{margin-left:-4px}.edit-post-more-menu .components-button{width:auto;padding:0 2px}@media (min-width:600px){.edit-post-more-menu{margin-left:0}.edit-post-more-menu .components-button{padding:0 4px}}.edit-post-more-menu__content .components-popover__content{min-width:280px}@media (min-width:480px){.edit-post-more-menu__content .components-popover__content{width:auto;max-width:480px}}.edit-post-more-menu__content .components-popover__content .components-dropdown-menu__menu{padding:0}.components-popover.edit-post-more-menu__content{z-index:99998}.edit-post-template-top-area{display:flex;flex-direction:column;align-content:space-between;width:100%;align-items:center}.edit-post-template-top-area .edit-post-template-post-title,.edit-post-template-top-area .edit-post-template-title{padding:0;text-decoration:none;height:auto}.edit-post-template-top-area .edit-post-template-post-title:before,.edit-post-template-top-area .edit-post-template-title:before{height:100%}.edit-post-template-top-area .edit-post-template-post-title.has-icon svg,.edit-post-template-top-area .edit-post-template-title.has-icon svg{order:1;margin-right:0}.edit-post-template-top-area .edit-post-template-title{color:#1e1e1e}.edit-post-template-top-area .edit-post-template-post-title{margin-top:4px;max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.edit-post-template-top-area .edit-post-template-post-title:before{left:0;right:0}@media (min-width:1080px){.edit-post-template-top-area .edit-post-template-post-title{max-width:none}}.edit-post-template-top-area__popover .components-popover__content{min-width:280px;padding:8px}.edit-post-template-top-area__popover .edit-post-template-details__description{color:#757575}.edit-post-template-top-area__second-menu-group{margin-left:-16px;margin-right:-16px;padding:16px 16px 0;border-top:1px solid #ddd}.edit-post-template-top-area__second-menu-group .edit-post-template-top-area__delete-template-button{display:flex;justify-content:center}.edit-post-template-top-area__second-menu-group .edit-post-template-top-area__delete-template-button .components-menu-item__item{margin-right:0;min-width:0}.edit-post-keyboard-shortcut-help-modal__section{margin:0 0 2rem}.edit-post-keyboard-shortcut-help-modal__main-shortcuts .edit-post-keyboard-shortcut-help-modal__shortcut-list{margin-top:-25px}.edit-post-keyboard-shortcut-help-modal__section-title{font-size:.9rem;font-weight:600}.edit-post-keyboard-shortcut-help-modal__shortcut{display:flex;align-items:baseline;padding:.6rem 0;border-top:1px solid #ddd;margin-bottom:0}.edit-post-keyboard-shortcut-help-modal__shortcut:last-child{border-bottom:1px solid #ddd}.edit-post-keyboard-shortcut-help-modal__shortcut:empty{display:none}.edit-post-keyboard-shortcut-help-modal__shortcut-term{font-weight:600;margin:0 0 0 1rem;text-align:right}.edit-post-keyboard-shortcut-help-modal__shortcut-description{flex:1;margin:0;flex-basis:auto}.edit-post-keyboard-shortcut-help-modal__shortcut-key-combination{display:block;background:none;margin:0;padding:0}.edit-post-keyboard-shortcut-help-modal__shortcut-key-combination+.edit-post-keyboard-shortcut-help-modal__shortcut-key-combination{margin-top:10px}.edit-post-keyboard-shortcut-help-modal__shortcut-key{padding:.25rem .5rem;border-radius:8%;margin:0 .2rem}.edit-post-keyboard-shortcut-help-modal__shortcut-key:last-child{margin:0 0 0 .2rem}.edit-post-layout__metaboxes{flex-shrink:0;clear:both}.edit-post-layout .components-editor-notices__snackbar{position:fixed;right:0;bottom:40px;padding-left:16px;padding-right:16px;left:0}@media (min-width:783px){.edit-post-layout .components-editor-notices__snackbar{left:160px}}@media (min-width:783px){.auto-fold .edit-post-layout .components-editor-notices__snackbar{left:36px}}@media (min-width:961px){.auto-fold .edit-post-layout .components-editor-notices__snackbar{left:160px}}.folded .edit-post-layout .components-editor-notices__snackbar{left:0}@media (min-width:783px){.folded .edit-post-layout .components-editor-notices__snackbar{left:36px}}body.is-fullscreen-mode .edit-post-layout .components-editor-notices__snackbar{left:0!important}.edit-post-layout .editor-post-publish-panel{position:fixed;z-index:100001;top:46px;bottom:0;right:0;left:0;overflow:auto}@media (min-width:782px){.edit-post-layout .editor-post-publish-panel{z-index:99998;top:32px;left:auto;width:281px;border-left:1px solid #ddd;transform:translateX(100%);animation:edit-post-post-publish-panel__slide-in-animation .1s forwards}}@media (min-width:782px) and (prefers-reduced-motion:reduce){.edit-post-layout .editor-post-publish-panel{animation-duration:1ms;animation-delay:0s}}@media (min-width:782px){body.is-fullscreen-mode .edit-post-layout .editor-post-publish-panel{top:0}}@media (min-width:782px){[role=region]:focus .edit-post-layout .editor-post-publish-panel{transform:translateX(0)}}@keyframes edit-post-post-publish-panel__slide-in-animation{to{transform:translateX(0)}}.edit-post-layout .editor-post-publish-panel__header-publish-button{justify-content:center}.edit-post-layout__toggle-entities-saved-states-panel,.edit-post-layout__toggle-publish-panel,.edit-post-layout__toggle-sidebar-panel{z-index:100000;position:fixed!important;top:-9999em;bottom:auto;left:auto;right:0;width:280px;background-color:#fff;border:1px dotted #ddd;height:auto!important;padding:24px;display:flex;justify-content:center}.interface-interface-skeleton__actions:focus-within .edit-post-layout__toggle-entities-saved-states-panel,.interface-interface-skeleton__actions:focus-within .edit-post-layout__toggle-publish-panel,.interface-interface-skeleton__actions:focus-within .edit-post-layout__toggle-sidebar-panel,.interface-interface-skeleton__actions:focus .edit-post-layout__toggle-entities-saved-states-panel,.interface-interface-skeleton__actions:focus .edit-post-layout__toggle-publish-panel,.interface-interface-skeleton__actions:focus .edit-post-layout__toggle-sidebar-panel{top:auto;bottom:0}.edit-post-block-manager__no-results{font-style:italic;padding:24px 0;text-align:center}.edit-post-block-manager__search{margin:16px 0}.edit-post-block-manager__disabled-blocks-count{border:1px solid #ddd;border-width:1px 0;box-shadow:-32px 0 0 0 #fff,32px 0 0 0 #fff;padding:8px;background-color:#fff;text-align:center;font-style:italic;position:sticky;top:-1px;z-index:2}.edit-post-block-manager__disabled-blocks-count~.edit-post-block-manager__results .edit-post-block-manager__category-title{top:35px}.edit-post-block-manager__category{margin:0 0 24px}.edit-post-block-manager__category-title{position:sticky;top:0;padding:16px 0;background-color:#fff;z-index:1}.edit-post-block-manager__category-title .components-checkbox-control__label{font-weight:600}.edit-post-block-manager__show-all{margin-right:8px}.edit-post-block-manager__checklist{margin-top:0}.edit-post-block-manager__category-title,.edit-post-block-manager__checklist-item{border-bottom:1px solid #ddd}.edit-post-block-manager__category-title .components-base-control__field,.edit-post-block-manager__checklist-item .components-base-control__field{align-items:center;display:flex;margin:0}.edit-post-block-manager__checklist-item{margin-bottom:0;padding-left:16px}.components-modal__content .edit-post-block-manager__checklist-item.components-checkbox-control__input-container{margin:0 8px}.edit-post-block-manager__checklist-item .components-checkbox-control__label{display:flex;align-items:center;justify-content:space-between;flex-grow:1;padding:8px 0}.edit-post-block-manager__checklist-item .block-editor-block-icon{margin-right:10px;fill:#1e1e1e}.edit-post-block-manager__results{border-top:1px solid #ddd}.edit-post-block-manager__disabled-blocks-count+.edit-post-block-manager__results{border-top-width:0}.edit-post-meta-boxes-area{position:relative}.edit-post-meta-boxes-area .inside,.edit-post-meta-boxes-area__container{box-sizing:content-box}.edit-post-meta-boxes-area input,.edit-post-meta-boxes-area textarea{box-sizing:border-box}.edit-post-meta-boxes-area .postbox-header{border-top:1px solid #ddd;border-bottom:0}.edit-post-meta-boxes-area #poststuff{margin:0 auto;padding-top:0;min-width:auto}.edit-post-meta-boxes-area #poststuff .stuffbox>h3,.edit-post-meta-boxes-area #poststuff h2.hndle,.edit-post-meta-boxes-area #poststuff h3.hndle{box-sizing:border-box;color:inherit;font-weight:600;outline:none;padding:0 24px;position:relative;width:100%}.edit-post-meta-boxes-area .postbox{border:0;color:inherit;margin-bottom:0}.edit-post-meta-boxes-area .postbox>.inside{color:inherit;padding:0 24px 24px;margin:0}.edit-post-meta-boxes-area .postbox .handlediv{height:44px;width:44px}.edit-post-meta-boxes-area.is-loading:before{position:absolute;top:0;left:0;right:0;bottom:0;content:"";background:transparent;z-index:1}.edit-post-meta-boxes-area .components-spinner{position:absolute;top:10px;right:20px;z-index:5}.edit-post-meta-boxes-area .is-hidden{display:none}.edit-post-meta-boxes-area .metabox-location-side .postbox input[type=checkbox]{border:1px solid #757575}.edit-post-meta-boxes-area .metabox-location-side .postbox input[type=checkbox]:checked{background:#fff;border-color:#757575}.edit-post-meta-boxes-area .metabox-location-side .postbox input[type=checkbox]:before{margin:-3px -4px}.edit-post-meta-boxes-area__clear{clear:both}@media (min-width:600px){.edit-post-preferences-modal{width:calc(100% - 32px);height:calc(100% - 120px)}}@media (min-width:782px){.edit-post-preferences-modal{width:750px}}@media (min-width:960px){.edit-post-preferences-modal{height:70%}}@media (max-width:781px){.edit-post-preferences-modal .components-modal__content{padding:0}.edit-post-preferences-modal .components-modal__content:before{content:none}.edit-post-preferences-modal .components-navigator-provider{height:100%}}.edit-post-preferences-modal .edit-post-preferences__tabs .components-tab-panel__tabs{position:absolute;top:84px;left:16px;width:160px}.edit-post-preferences-modal .edit-post-preferences__tabs .components-tab-panel__tabs .components-tab-panel__tabs-item{border-radius:2px;font-weight:400}.edit-post-preferences-modal .edit-post-preferences__tabs .components-tab-panel__tabs .components-tab-panel__tabs-item.is-active{background:#f0f0f0;box-shadow:none;font-weight:500}.edit-post-preferences-modal .edit-post-preferences__tabs .components-tab-panel__tabs .components-tab-panel__tabs-item:focus:not(:disabled){box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.edit-post-preferences-modal .edit-post-preferences__tabs .components-tab-panel__tab-content{padding-left:24px;margin-left:160px}.edit-post-preferences-modal__section{margin:0 0 2.5rem}.edit-post-preferences-modal__section:last-child{margin:0}.edit-post-preferences-modal__section-title{font-size:.9rem;font-weight:600;margin-top:0}.edit-post-preferences-modal__option .components-base-control .components-base-control__field{align-items:center;display:flex;margin-bottom:0}.edit-post-preferences-modal__option .components-base-control .components-base-control__field>label{flex-grow:1;padding:.6rem 0 .6rem 10px}.edit-post-preferences-modal__custom-fields-confirmation-button,.edit-post-preferences-modal__custom-fields-confirmation-message{margin:0 0 .6rem 48px}@media (min-width:782px){.edit-post-preferences-modal__custom-fields-confirmation-button,.edit-post-preferences-modal__custom-fields-confirmation-message{margin-left:38px}}@media (min-width:600px){.edit-post-preferences-modal__custom-fields-confirmation-button,.edit-post-preferences-modal__custom-fields-confirmation-message{max-width:300px}}.edit-post-preferences-modal .components-base-control__help{margin:-8px 0 8px 58px;font-size:12px;font-style:normal;color:#757575}.edit-post-preferences-modal .edit-post-preferences-modal__section-description{margin:-8px 0 8px;font-size:12px;font-style:normal;color:#757575}.edit-post-editor__inserter-panel,.edit-post-editor__list-view-panel{height:100%;display:flex;flex-direction:column}.edit-post-editor__list-view-panel{min-width:350px}.edit-post-editor__inserter-panel-header{padding-top:8px;padding-right:8px;display:flex;justify-content:flex-end}@media (min-width:782px){.edit-post-editor__inserter-panel-header{display:none}}.edit-post-editor__inserter-panel-content,.edit-post-editor__list-view-panel-content{height:calc(100% - 44px)}@media (min-width:782px){.edit-post-editor__inserter-panel-content{height:100%}}.edit-post-editor__list-view-panel-header{align-items:center;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;height:48px;padding-left:16px;padding-right:4px}.edit-post-editor__list-view-panel-content{overflow-y:auto;padding:8px 6px}.components-panel__header.edit-post-sidebar__panel-tabs{justify-content:flex-start;padding-left:0;padding-right:16px;border-top:0;margin-top:0}.components-panel__header.edit-post-sidebar__panel-tabs ul{display:flex}.components-panel__header.edit-post-sidebar__panel-tabs li{margin:0}.components-panel__header.edit-post-sidebar__panel-tabs .components-button.has-icon{display:none;margin:0 0 0 auto;padding:0;min-width:24px;height:24px}@media (min-width:782px){.components-panel__header.edit-post-sidebar__panel-tabs .components-button.has-icon{display:flex}}.components-panel__body.is-opened.edit-post-last-revision__panel{padding:0;height:48px}.editor-post-last-revision__title.components-button{padding:16px}.editor-post-author__select{margin:-5px 0;width:100%}@supports (position:sticky){.editor-post-author__select{width:auto}}.edit-post-post-link__link-post-name{font-weight:600}.edit-post-post-link__preview-label{font-weight:400;margin:0}.edit-post-post-link__link{text-align:left;word-wrap:break-word;display:block}.edit-post-post-link__preview-link-container{direction:ltr}.edit-post-post-schedule{width:100%;position:relative;justify-content:left}.edit-post-post-schedule span{display:block;width:45%}.components-button.edit-post-post-schedule__toggle{text-align:right}.edit-post-post-schedule__dialog .components-popover__content>div{padding:0}.editor-post-slug__input{margin:-5px 0;padding:2px}.edit-post-post-status .edit-post-post-publish-dropdown__switch-to-draft{margin-top:15px;width:100%;text-align:center}.edit-post-post-visibility{width:100%;justify-content:left}.edit-post-post-visibility span{display:block;width:45%}@media (min-width:782px){.edit-post-post-visibility__dialog .components-popover__content{width:257px}}.edit-post-post-visibility__dialog-legend{font-weight:600}.edit-post-post-visibility__choice{margin:10px 0}.edit-post-post-visibility__dialog-label,.edit-post-post-visibility__dialog-radio{vertical-align:top}.edit-post-post-visibility__dialog-password-input{width:calc(100% - 20px);margin-left:20px}.edit-post-post-visibility__dialog-info{color:#757575;padding-left:20px;font-style:italic;margin:4px 0 0;line-height:1.4}.components-button.edit-post-sidebar__panel-tab{border-radius:0;height:48px;background:transparent;border:none;box-shadow:none;cursor:pointer;display:inline-block;padding:3px 15px;margin-left:0;font-weight:500}.components-button.edit-post-sidebar__panel-tab:after{content:attr(data-label);display:block;font-weight:600;height:0;overflow:hidden;speak:none;visibility:hidden}.components-button.edit-post-sidebar__panel-tab.is-active{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) transparent,inset 0 -4px 0 0 var(--wp-admin-theme-color);position:relative;z-index:1}.components-button.edit-post-sidebar__panel-tab.is-active:before{content:"";position:absolute;top:0;bottom:1px;right:0;left:0;border-bottom:4px solid transparent}.components-button.edit-post-sidebar__panel-tab:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);position:relative;z-index:1}.components-button.edit-post-sidebar__panel-tab.is-active:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 -4px 0 0 var(--wp-admin-theme-color)}@media (min-width:782px){.edit-post-template__modal .components-base-control{width:320px}}.edit-post-template__modal .components-modal__header{border-bottom:none}.edit-post-template__modal .components-modal__content:before{margin-bottom:4px}.edit-post-template__modal-actions{margin-top:12px}.edit-post-template-modal__tip{padding:16px 24px;background:#f0f0f0;border-radius:2px}@media (min-width:782px){.edit-post-template-modal__tip{width:240px}}.edit-post-template__actions button:not(:last-child){margin-right:8px}h2.edit-post-template-summary__title{line-height:24px;margin:0 0 4px;font-weight:500}.edit-post-text-editor{position:relative;width:100%;background-color:#fff;flex-grow:1}.edit-post-text-editor .editor-post-title{max-width:none;line-height:1.4;font-family:Menlo,Consolas,monaco,monospace;font-size:2.5em;font-weight:400;border:1px solid #949494;padding:16px}@media (min-width:600px){.edit-post-text-editor .editor-post-title{padding:24px}}.edit-post-text-editor .editor-post-title:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.edit-post-text-editor__body{width:100%;padding:0 12px 12px;max-width:1080px;margin-left:auto;margin-right:auto}@media (min-width:960px){.edit-post-text-editor__body{padding:0 24px 24px}}.edit-post-text-editor__toolbar{position:sticky;z-index:1;top:0;left:0;right:0;display:flex;background:hsla(0,0%,100%,.8);padding:4px 12px}@media (min-width:600px){.edit-post-text-editor__toolbar{padding:12px}}@media (min-width:960px){.edit-post-text-editor__toolbar{padding:12px 24px}}.edit-post-text-editor__toolbar h2{line-height:36px;margin:0 auto 0 0;font-size:13px;color:#1e1e1e}.edit-post-text-editor__toolbar .components-button svg{order:1}.edit-post-visual-editor{position:relative;display:flex;flex-flow:column;background-color:#2f2f2f;flex:1 0 auto}.edit-post-visual-editor .components-button{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;padding:6px 12px}.edit-post-visual-editor .components-button.has-icon,.edit-post-visual-editor .components-button.is-tertiary{padding:6px}.edit-post-visual-editor__post-title-wrapper{margin-top:4rem;margin-bottom:var(--wp--style--block-gap)}.edit-post-visual-editor__post-title-wrapper .editor-post-title{margin-left:auto;margin-right:auto}.edit-post-visual-editor__exit-template-mode{position:absolute;top:8px;left:8px;color:#fff}.edit-post-visual-editor__exit-template-mode:active:not([aria-disabled=true]),.edit-post-visual-editor__exit-template-mode:focus:not([aria-disabled=true]),.edit-post-visual-editor__exit-template-mode:hover{color:#f0f0f0}.edit-post-visual-editor__content-area{width:100%;height:100%;position:relative;display:flex;flex-grow:1}.edit-post-welcome-guide{width:312px}.edit-post-welcome-guide__image{background:#00a0d2;margin:0 0 16px}.edit-post-welcome-guide__image>img{display:block;max-width:100%;-o-object-fit:cover;object-fit:cover}.edit-post-welcome-guide__heading{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:24px;line-height:1.4;margin:16px 0;padding:0 32px}.edit-post-welcome-guide__text{font-size:13px;line-height:1.4;margin:0 0 24px;padding:0 32px}.edit-post-welcome-guide__inserter-icon{margin:0 4px;vertical-align:text-top}@keyframes edit-post__fade-in-animation{0%{opacity:0}to{opacity:1}}body.block-editor-page,html.wp-toolbar{background:#fff}body.block-editor-page #wpcontent{padding-left:0}body.block-editor-page #wpbody-content{padding-bottom:0}body.block-editor-page #wpbody-content>div:not(.block-editor):not(#screen-meta),body.block-editor-page #wpfooter{display:none}body.block-editor-page .a11y-speak-region{left:-1px;top:-1px}body.block-editor-page ul#adminmenu>li.current>a.current:after,body.block-editor-page ul#adminmenu a.wp-has-current-submenu:after{border-right-color:#fff}body.block-editor-page .media-frame select.attachment-filters:last-of-type{width:auto;max-width:100%}.block-editor-page #wpwrap{overflow-y:auto}@media (min-width:782px){.block-editor-page #wpwrap{overflow-y:initial}}.components-modal__frame,.components-popover,.edit-post-editor__inserter-panel,.edit-post-header,.edit-post-sidebar,.edit-post-text-editor,.edit-post-visual-editor,.editor-post-publish-panel{box-sizing:border-box}.components-modal__frame *,.components-modal__frame :after,.components-modal__frame :before,.components-popover *,.components-popover :after,.components-popover :before,.edit-post-editor__inserter-panel *,.edit-post-editor__inserter-panel :after,.edit-post-editor__inserter-panel :before,.edit-post-header *,.edit-post-header :after,.edit-post-header :before,.edit-post-sidebar *,.edit-post-sidebar :after,.edit-post-sidebar :before,.edit-post-text-editor *,.edit-post-text-editor :after,.edit-post-text-editor :before,.edit-post-visual-editor *,.edit-post-visual-editor :after,.edit-post-visual-editor :before,.editor-post-publish-panel *,.editor-post-publish-panel :after,.editor-post-publish-panel :before{box-sizing:inherit}@media (min-width:600px){.block-editor__container{position:absolute;top:0;right:0;bottom:0;left:0;min-height:calc(100vh - 46px)}}@media (min-width:782px){.block-editor__container{min-height:calc(100vh - 32px)}body.is-fullscreen-mode .block-editor__container{min-height:100vh}}.block-editor__container img{max-width:100%;height:auto}.block-editor__container iframe{width:100%}body.admin-color-light{--wp-admin-theme-color:#0085ba;--wp-admin-theme-color--rgb:0,133,186;--wp-admin-theme-color-darker-10:#0073a1;--wp-admin-theme-color-darker-10--rgb:0,115,161;--wp-admin-theme-color-darker-20:#006187;--wp-admin-theme-color-darker-20--rgb:0,97,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-light{--wp-admin-border-width-focus:1.5px}}body.admin-color-modern{--wp-admin-theme-color:#3858e9;--wp-admin-theme-color--rgb:56,88,233;--wp-admin-theme-color-darker-10:#2145e6;--wp-admin-theme-color-darker-10--rgb:33,69,230;--wp-admin-theme-color-darker-20:#183ad6;--wp-admin-theme-color-darker-20--rgb:24,58,214;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-modern{--wp-admin-border-width-focus:1.5px}}body.admin-color-blue{--wp-admin-theme-color:#096484;--wp-admin-theme-color--rgb:9,100,132;--wp-admin-theme-color-darker-10:#07526c;--wp-admin-theme-color-darker-10--rgb:7,82,108;--wp-admin-theme-color-darker-20:#064054;--wp-admin-theme-color-darker-20--rgb:6,64,84;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-blue{--wp-admin-border-width-focus:1.5px}}body.admin-color-coffee{--wp-admin-theme-color:#46403c;--wp-admin-theme-color--rgb:70,64,60;--wp-admin-theme-color-darker-10:#383330;--wp-admin-theme-color-darker-10--rgb:56,51,48;--wp-admin-theme-color-darker-20:#2b2724;--wp-admin-theme-color-darker-20--rgb:43,39,36;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-coffee{--wp-admin-border-width-focus:1.5px}}body.admin-color-ectoplasm{--wp-admin-theme-color:#523f6d;--wp-admin-theme-color--rgb:82,63,109;--wp-admin-theme-color-darker-10:#46365d;--wp-admin-theme-color-darker-10--rgb:70,54,93;--wp-admin-theme-color-darker-20:#3a2c4d;--wp-admin-theme-color-darker-20--rgb:58,44,77;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-ectoplasm{--wp-admin-border-width-focus:1.5px}}body.admin-color-midnight{--wp-admin-theme-color:#e14d43;--wp-admin-theme-color--rgb:225,77,67;--wp-admin-theme-color-darker-10:#dd382d;--wp-admin-theme-color-darker-10--rgb:221,56,45;--wp-admin-theme-color-darker-20:#d02c21;--wp-admin-theme-color-darker-20--rgb:208,44,33;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-midnight{--wp-admin-border-width-focus:1.5px}}body.admin-color-ocean{--wp-admin-theme-color:#627c83;--wp-admin-theme-color--rgb:98,124,131;--wp-admin-theme-color-darker-10:#576e74;--wp-admin-theme-color-darker-10--rgb:87,110,116;--wp-admin-theme-color-darker-20:#4c6066;--wp-admin-theme-color-darker-20--rgb:76,96,102;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-ocean{--wp-admin-border-width-focus:1.5px}}body.admin-color-sunrise{--wp-admin-theme-color:#dd823b;--wp-admin-theme-color--rgb:221,130,59;--wp-admin-theme-color-darker-10:#d97426;--wp-admin-theme-color-darker-10--rgb:217,116,38;--wp-admin-theme-color-darker-20:#c36922;--wp-admin-theme-color-darker-20--rgb:195,105,34;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-sunrise{--wp-admin-border-width-focus:1.5px}}PKj l\ *"css/dist/edit-post/classic.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.editor-styles-wrapper .wp-block{margin-left:auto;margin-right:auto}html :where(.editor-styles-wrapper){padding:8px}html :where(.editor-styles-wrapper) .block-editor-block-list__layout.is-root-container>.wp-block[data-align=full]{margin-left:-8px;margin-right:-8px}html :where(.wp-block){max-width:840px;margin-top:28px;margin-bottom:28px}html :where(.wp-block)[data-align=wide]{max-width:1100px}html :where(.wp-block)[data-align=full]{max-width:none}html :where(.wp-block)[data-align=left],html :where(.wp-block)[data-align=right]{width:100%;height:0}html :where(.wp-block)[data-align=left]:before,html :where(.wp-block)[data-align=right]:before{content:none}html :where(.wp-block)[data-align=left]>*{ /*!rtl:begin:ignore*/float:left;margin-right:2em /*!rtl:end:ignore*/}html :where(.wp-block)[data-align=right]>*{ /*!rtl:begin:ignore*/float:right;margin-left:2em /*!rtl:end:ignore*/}html :where(.wp-block)[data-align=full],html :where(.wp-block)[data-align=wide]{clear:both}.wp-block-group>[data-align=full]{margin-left:auto;margin-right:auto}.wp-block-group.has-background>[data-align=full]{margin-left:-30px;width:calc(100% + 60px)}[data-align=full] .wp-block-group>.wp-block{padding-left:14px;padding-right:14px}@media (min-width:600px){[data-align=full] .wp-block-group>.wp-block{padding-left:0;padding-right:0}}[data-align=full] .wp-block-group>[data-align=full]{padding-right:0;padding-left:0;left:0;width:100%;max-width:none}[data-align=full] .wp-block-group.has-background>[data-align=full]{width:calc(100% + 60px)}PKj l\vm77"css/dist/edit-post/classic-rtl.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .editor-styles-wrapper .wp-block { margin-right: auto; margin-left: auto; } html :where(.editor-styles-wrapper) { padding: 8px; } html :where(.editor-styles-wrapper) .block-editor-block-list__layout.is-root-container > .wp-block[data-align=full] { margin-right: -8px; margin-left: -8px; } html :where(.wp-block) { max-width: 840px; margin-top: 28px; margin-bottom: 28px; } html :where(.wp-block)[data-align=wide] { max-width: 1100px; } html :where(.wp-block)[data-align=full] { max-width: none; } html :where(.wp-block)[data-align=left], html :where(.wp-block)[data-align=right] { width: 100%; height: 0; } html :where(.wp-block)[data-align=left]::before, html :where(.wp-block)[data-align=right]::before { content: none; } html :where(.wp-block)[data-align=left] > * { float: left; margin-right: 2em; } html :where(.wp-block)[data-align=right] > * { float: right; margin-left: 2em; } html :where(.wp-block)[data-align=full], html :where(.wp-block)[data-align=wide] { clear: both; } .wp-block-group > [data-align=full] { margin-right: auto; margin-left: auto; } .wp-block-group.has-background > [data-align=full] { margin-right: -30px; width: calc(100% + 60px); } /** * Group: Full Width Alignment */ [data-align=full] .wp-block-group > .wp-block { padding-right: 14px; padding-left: 14px; } @media (min-width: 600px) { [data-align=full] .wp-block-group > .wp-block { padding-right: 0; padding-left: 0; } } [data-align=full] .wp-block-group > [data-align=full] { padding-left: 0; padding-right: 0; right: 0; width: 100%; max-width: none; } [data-align=full] .wp-block-group.has-background > [data-align=full] { width: calc(100% + 60px); }PKj l\css/dist/edit-post/classic.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .editor-styles-wrapper .wp-block { margin-left: auto; margin-right: auto; } html :where(.editor-styles-wrapper) { padding: 8px; } html :where(.editor-styles-wrapper) .block-editor-block-list__layout.is-root-container > .wp-block[data-align=full] { margin-left: -8px; margin-right: -8px; } html :where(.wp-block) { max-width: 840px; margin-top: 28px; margin-bottom: 28px; } html :where(.wp-block)[data-align=wide] { max-width: 1100px; } html :where(.wp-block)[data-align=full] { max-width: none; } html :where(.wp-block)[data-align=left], html :where(.wp-block)[data-align=right] { width: 100%; height: 0; } html :where(.wp-block)[data-align=left]::before, html :where(.wp-block)[data-align=right]::before { content: none; } html :where(.wp-block)[data-align=left] > * { /*!rtl:begin:ignore*/ float: left; margin-right: 2em; /*!rtl:end:ignore*/ } html :where(.wp-block)[data-align=right] > * { /*!rtl:begin:ignore*/ float: right; margin-left: 2em; /*!rtl:end:ignore*/ } html :where(.wp-block)[data-align=full], html :where(.wp-block)[data-align=wide] { clear: both; } .wp-block-group > [data-align=full] { margin-left: auto; margin-right: auto; } .wp-block-group.has-background > [data-align=full] { margin-left: -30px; width: calc(100% + 60px); } /** * Group: Full Width Alignment */ [data-align=full] .wp-block-group > .wp-block { padding-left: 14px; padding-right: 14px; } @media (min-width: 600px) { [data-align=full] .wp-block-group > .wp-block { padding-left: 0; padding-right: 0; } } [data-align=full] .wp-block-group > [data-align=full] { padding-right: 0; padding-left: 0; left: 0; width: 100%; max-width: none; } [data-align=full] .wp-block-group.has-background > [data-align=full] { width: calc(100% + 60px); }PKj l\@{??$css/dist/edit-post/style-rtl.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.components-panel__header.interface-complementary-area-header__small{background:#fff;padding-left:4px}.components-panel__header.interface-complementary-area-header__small .interface-complementary-area-header__small-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}@media (min-width:782px){.components-panel__header.interface-complementary-area-header__small{display:none}}.interface-complementary-area-header{background:#fff;padding-left:4px}.interface-complementary-area-header .components-button.has-icon{display:none;margin-right:auto}.interface-complementary-area-header .components-button.has-icon~.components-button{margin-right:0}@media (min-width:782px){.interface-complementary-area-header .components-button.has-icon{display:flex}}@media (min-width:782px){.components-panel__header+.interface-complementary-area-header{margin-top:0}}.interface-complementary-area{background:#fff;color:#1e1e1e}@media (min-width:600px){.interface-complementary-area{-webkit-overflow-scrolling:touch}}@media (min-width:782px){.interface-complementary-area{width:280px}}.interface-complementary-area .components-panel{border:none;position:relative;z-index:0}.interface-complementary-area .components-panel__header{position:sticky;top:0;z-index:1}.interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs{top:48px}@media (min-width:782px){.interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs{top:0}}.interface-complementary-area p{margin-top:0}.interface-complementary-area h2{font-size:13px;color:#1e1e1e;margin-bottom:1.5em}.interface-complementary-area h3{font-size:11px;text-transform:uppercase;font-weight:500;color:#1e1e1e;margin-bottom:1.5em}.interface-complementary-area hr{border-top:none;border-bottom:1px solid #f0f0f0;margin:1.5em 0}.interface-complementary-area div.components-toolbar,.interface-complementary-area div.components-toolbar-group{box-shadow:none;margin-bottom:1.5em}.interface-complementary-area div.components-toolbar-group:last-child,.interface-complementary-area div.components-toolbar:last-child{margin-bottom:0}.interface-complementary-area .block-editor-skip-to-selected-block:focus{top:auto;left:10px;bottom:10px;right:auto}@media (min-width:782px){body.js.is-fullscreen-mode{margin-top:-32px;height:calc(100% + 32px)}body.js.is-fullscreen-mode #adminmenumain,body.js.is-fullscreen-mode #wpadminbar{display:none}body.js.is-fullscreen-mode #wpcontent,body.js.is-fullscreen-mode #wpfooter{margin-right:0}}html.interface-interface-skeleton__html-container{position:fixed;width:100%}@media (min-width:782px){html.interface-interface-skeleton__html-container{position:static;width:auto}}.interface-interface-skeleton{display:flex;flex-direction:row;height:auto;max-height:100%;position:fixed;top:46px;left:0;bottom:0}@media (min-width:783px){.interface-interface-skeleton{top:32px}.is-fullscreen-mode .interface-interface-skeleton{top:0}}.interface-interface-skeleton__editor{display:flex;flex-direction:column;flex:0 1 100%;overflow:hidden}.interface-interface-skeleton{right:0}@media (min-width:783px){.interface-interface-skeleton{right:160px}}@media (min-width:783px){.auto-fold .interface-interface-skeleton{right:36px}}@media (min-width:961px){.auto-fold .interface-interface-skeleton{right:160px}}.folded .interface-interface-skeleton{right:0}@media (min-width:783px){.folded .interface-interface-skeleton{right:36px}}body.is-fullscreen-mode .interface-interface-skeleton{right:0!important}.interface-interface-skeleton__body{flex-grow:1;display:flex;overflow:auto;overscroll-behavior-y:none}@media (min-width:782px){.has-footer .interface-interface-skeleton__body{padding-bottom:25px}}.interface-interface-skeleton__content{flex-grow:1;display:flex;flex-direction:column;overflow:auto;z-index:20}.interface-interface-skeleton__secondary-sidebar,.interface-interface-skeleton__sidebar{display:block;flex-shrink:0;position:absolute;z-index:100000;top:0;left:0;bottom:0;right:0;background:#fff;color:#1e1e1e}@media (min-width:782px){.interface-interface-skeleton__secondary-sidebar,.interface-interface-skeleton__sidebar{position:relative!important;z-index:90;width:auto}}.interface-interface-skeleton__sidebar{overflow:auto}@media (min-width:782px){.interface-interface-skeleton__sidebar{border-right:1px solid #e0e0e0}}@media (min-width:782px){.interface-interface-skeleton__secondary-sidebar{border-left:1px solid #e0e0e0}}.interface-interface-skeleton__header{flex-shrink:0;height:auto;border-bottom:1px solid #e0e0e0;z-index:30;color:#1e1e1e}.interface-interface-skeleton__footer{height:auto;flex-shrink:0;border-top:1px solid #e0e0e0;color:#1e1e1e;position:absolute;bottom:0;right:0;width:100%;background-color:#fff;z-index:90;display:none}@media (min-width:782px){.interface-interface-skeleton__footer{display:flex}}.interface-interface-skeleton__footer .block-editor-block-breadcrumb{z-index:30;display:flex;background:#fff;height:24px;align-items:center;font-size:13px;padding:0 18px}.interface-interface-skeleton__actions{z-index:100000;position:fixed!important;top:-9999em;bottom:auto;right:auto;left:0;width:280px;color:#1e1e1e}.interface-interface-skeleton__actions:focus{top:auto;bottom:0}.interface-more-menu-dropdown{margin-right:-4px}.interface-more-menu-dropdown .components-button{width:auto;padding:0 2px}@media (min-width:600px){.interface-more-menu-dropdown{margin-right:0}.interface-more-menu-dropdown .components-button{padding:0 4px}}.interface-more-menu-dropdown__content .components-popover__content{min-width:280px}@media (min-width:480px){.interface-more-menu-dropdown__content .components-popover__content{width:auto;max-width:480px}}.interface-more-menu-dropdown__content .components-popover__content .components-dropdown-menu__menu{padding:0}.components-popover.interface-more-menu-dropdown__content{z-index:99998}.interface-pinned-items{display:flex}.interface-pinned-items .components-button:not(:first-child){display:none}@media (min-width:600px){.interface-pinned-items .components-button:not(:first-child){display:flex}}.interface-pinned-items .components-button{margin-right:4px}.interface-pinned-items .components-button svg{max-width:24px;max-height:24px}.edit-post-header{height:60px;background:#fff;display:flex;flex-wrap:wrap;align-items:center;max-width:100vw}@media (min-width:280px){.edit-post-header{flex-wrap:nowrap}}.edit-post-header>.edit-post-header__settings{order:1}@supports (position:sticky){.edit-post-header>.edit-post-header__settings{order:0}}.edit-post-header__toolbar{display:flex;flex-grow:1}.edit-post-header__toolbar .table-of-contents{display:none}@media (min-width:600px){.edit-post-header__toolbar .table-of-contents{display:block}}.edit-post-header__settings{display:inline-flex;align-items:center;flex-wrap:wrap;padding-left:4px}@media (min-width:600px){.edit-post-header__settings{padding-left:16px}}.edit-post-header__settings .components-button.components-button,.edit-post-header__settings .editor-post-saved-state{margin-left:4px}@media (min-width:600px){.edit-post-header__settings .components-button.components-button,.edit-post-header__settings .editor-post-saved-state{margin-left:12px}}.edit-post-header__settings .components-button.is-tertiary,.edit-post-header__settings .editor-post-saved-state{padding:0 6px}.edit-post-header__settings .edit-post-more-menu .components-button,.edit-post-header__settings .interface-pinned-items .components-button{margin-left:0}.edit-post-header-preview__grouping-external{display:flex;position:relative;padding-bottom:0}.edit-post-header-preview__button-external{padding-right:8px;margin-left:auto;width:100%;display:flex;justify-content:flex-start}.edit-post-header-preview__button-external svg{margin-right:auto}.edit-post-post-preview-dropdown .components-popover__content>div{padding-bottom:0}.edit-post-header__dropdown .components-button.has-icon,.show-icon-labels .edit-post-header .components-button.has-icon,.show-icon-labels.interface-pinned-items .components-button.has-icon{width:auto}.edit-post-header__dropdown .components-button.has-icon svg,.show-icon-labels .edit-post-header .components-button.has-icon svg,.show-icon-labels.interface-pinned-items .components-button.has-icon svg{display:none}.edit-post-header__dropdown .components-button.has-icon:after,.show-icon-labels .edit-post-header .components-button.has-icon:after,.show-icon-labels.interface-pinned-items .components-button.has-icon:after{content:attr(aria-label)}.edit-post-header__dropdown .components-button.has-icon[aria-disabled=true],.show-icon-labels .edit-post-header .components-button.has-icon[aria-disabled=true],.show-icon-labels.interface-pinned-items .components-button.has-icon[aria-disabled=true]{background-color:transparent}.edit-post-header__dropdown .is-tertiary:active,.show-icon-labels .edit-post-header .is-tertiary:active,.show-icon-labels.interface-pinned-items .is-tertiary:active{box-shadow:0 0 0 1.5px var(--wp-admin-theme-color);background-color:transparent}.edit-post-header__dropdown .components-button.has-icon.button-toggle svg,.edit-post-header__dropdown .edit-post-fullscreen-mode-close.has-icon svg,.show-icon-labels .edit-post-header .components-button.has-icon.button-toggle svg,.show-icon-labels .edit-post-header .edit-post-fullscreen-mode-close.has-icon svg,.show-icon-labels.interface-pinned-items .components-button.has-icon.button-toggle svg,.show-icon-labels.interface-pinned-items .edit-post-fullscreen-mode-close.has-icon svg{display:block}.edit-post-header__dropdown .components-button.has-icon.button-toggle:after,.edit-post-header__dropdown .edit-post-fullscreen-mode-close.has-icon:after,.show-icon-labels .edit-post-header .components-button.has-icon.button-toggle:after,.show-icon-labels .edit-post-header .edit-post-fullscreen-mode-close.has-icon:after,.show-icon-labels.interface-pinned-items .components-button.has-icon.button-toggle:after,.show-icon-labels.interface-pinned-items .edit-post-fullscreen-mode-close.has-icon:after{content:none}.edit-post-header__dropdown .edit-post-fullscreen-mode-close.has-icon,.show-icon-labels .edit-post-header .edit-post-fullscreen-mode-close.has-icon,.show-icon-labels.interface-pinned-items .edit-post-fullscreen-mode-close.has-icon{width:60px}.edit-post-header__dropdown .components-menu-items-choice .components-menu-items__item-icon.components-menu-items__item-icon,.show-icon-labels .edit-post-header .components-menu-items-choice .components-menu-items__item-icon.components-menu-items__item-icon,.show-icon-labels.interface-pinned-items .components-menu-items-choice .components-menu-items__item-icon.components-menu-items__item-icon{display:block}.edit-post-header__dropdown .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle,.edit-post-header__dropdown .interface-pinned-items .components-button,.show-icon-labels .edit-post-header .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle,.show-icon-labels .edit-post-header .interface-pinned-items .components-button,.show-icon-labels.interface-pinned-items .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle,.show-icon-labels.interface-pinned-items .interface-pinned-items .components-button{padding-right:8px;padding-left:8px}@media (min-width:600px){.edit-post-header__dropdown .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle,.edit-post-header__dropdown .interface-pinned-items .components-button,.show-icon-labels .edit-post-header .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle,.show-icon-labels .edit-post-header .interface-pinned-items .components-button,.show-icon-labels.interface-pinned-items .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle,.show-icon-labels.interface-pinned-items .interface-pinned-items .components-button{padding-right:12px;padding-left:12px}}.edit-post-header__dropdown .components-dropdown-menu__toggle,.show-icon-labels .edit-post-header .components-dropdown-menu__toggle,.show-icon-labels.interface-pinned-items .components-dropdown-menu__toggle{margin-right:8px;padding-right:8px;padding-left:8px}@media (min-width:600px){.edit-post-header__dropdown .components-dropdown-menu__toggle,.show-icon-labels .edit-post-header .components-dropdown-menu__toggle,.show-icon-labels.interface-pinned-items .components-dropdown-menu__toggle{margin-right:12px;padding-right:12px;padding-left:12px}}.edit-post-header__dropdown .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle:after,.edit-post-header__dropdown .editor-post-save-draft.editor-post-save-draft:after,.show-icon-labels .edit-post-header .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle:after,.show-icon-labels .edit-post-header .editor-post-save-draft.editor-post-save-draft:after,.show-icon-labels.interface-pinned-items .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle:after,.show-icon-labels.interface-pinned-items .editor-post-save-draft.editor-post-save-draft:after{content:none}@media (min-width:600px){.edit-post-header__dropdown .editor-post-save-draft.editor-post-save-draft:after,.show-icon-labels .edit-post-header .editor-post-save-draft.editor-post-save-draft:after,.show-icon-labels.interface-pinned-items .editor-post-save-draft.editor-post-save-draft:after{content:attr(aria-label)}}.edit-post-header__dropdown .components-button.block-editor-list-view,.edit-post-header__dropdown .components-button.editor-history__redo,.edit-post-header__dropdown .components-button.editor-history__undo,.edit-post-header__dropdown .components-menu-item__button.components-menu-item__button,.edit-post-header__dropdown .table-of-contents .components-button{margin:0;padding:6px 40px 6px 6px;width:14.625rem;text-align:right;justify-content:flex-start}.show-icon-labels.interface-pinned-items{padding:6px 12px 12px;margin:0 -12px;border-bottom:1px solid #ccc;display:block}.show-icon-labels.interface-pinned-items>.components-button.has-icon{margin:0;padding:6px 8px 6px 6px;width:14.625rem;justify-content:flex-start}.show-icon-labels.interface-pinned-items>.components-button.has-icon[aria-expanded=true] svg{display:block;max-width:24px}.show-icon-labels.interface-pinned-items>.components-button.has-icon[aria-expanded=false]{padding-right:40px}.show-icon-labels.interface-pinned-items>.components-button.has-icon svg{margin-left:8px}.edit-post-fullscreen-mode-close.has-icon{display:none}@media (min-width:782px){.edit-post-fullscreen-mode-close.has-icon{display:flex;align-items:center;align-self:stretch;border:none;background:#1e1e1e;color:#fff;border-radius:0;height:61px;width:60px;position:relative;margin-bottom:-1px}.edit-post-fullscreen-mode-close.has-icon:active{color:#fff}.edit-post-fullscreen-mode-close.has-icon:focus{box-shadow:none}.edit-post-fullscreen-mode-close.has-icon:before{transition:box-shadow .1s ease;content:"";display:block;position:absolute;top:9px;left:9px;bottom:9px;right:9px;border-radius:4px;box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) #1e1e1e}}@media (min-width:782px) and (prefers-reduced-motion:reduce){.edit-post-fullscreen-mode-close.has-icon:before{transition-duration:0s;transition-delay:0s}}@media (min-width:782px){.edit-post-fullscreen-mode-close.has-icon:hover:before{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) #757575}}@media (min-width:782px){.edit-post-fullscreen-mode-close.has-icon:focus:before{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) hsla(0,0%,100%,.1),inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}}.edit-post-fullscreen-mode-close.has-icon .edit-post-fullscreen-mode-close_site-icon{width:36px;height:36px;border-radius:2px;-o-object-fit:cover;object-fit:cover;margin-top:-1px}.edit-post-header-toolbar{display:inline-flex;flex-grow:1;align-items:center;border:none}.edit-post-header-toolbar .edit-post-header-toolbar__left>.components-button{display:none}@media (min-width:600px){.edit-post-header-toolbar .edit-post-header-toolbar__left>.components-button{display:inline-flex}}.edit-post-header-toolbar .edit-post-header-toolbar__left>.edit-post-header-toolbar__inserter-toggle{display:inline-flex}.edit-post-header-toolbar .edit-post-header-toolbar__left>.edit-post-header-toolbar__inserter-toggle svg{transition:transform .2s cubic-bezier(.165,.84,.44,1)}@media (prefers-reduced-motion:reduce){.edit-post-header-toolbar .edit-post-header-toolbar__left>.edit-post-header-toolbar__inserter-toggle svg{transition-duration:0s;transition-delay:0s}}.edit-post-header-toolbar .edit-post-header-toolbar__left>.edit-post-header-toolbar__inserter-toggle.is-pressed svg{transform:rotate(-45deg)}.edit-post-header-toolbar .block-editor-list-view{display:none}@media (min-width:600px){.edit-post-header-toolbar .block-editor-list-view{display:flex}}.edit-post-header-toolbar .edit-post-header-toolbar__left>.components-button.has-icon,.edit-post-header-toolbar .edit-post-header-toolbar__left>.components-dropdown>.components-button.has-icon{height:36px;min-width:36px;padding:6px}.edit-post-header-toolbar .edit-post-header-toolbar__left>.components-button.has-icon.is-pressed,.edit-post-header-toolbar .edit-post-header-toolbar__left>.components-dropdown>.components-button.has-icon.is-pressed{background:#1e1e1e}.edit-post-header-toolbar .edit-post-header-toolbar__left>.components-button.has-icon:focus:not(:disabled),.edit-post-header-toolbar .edit-post-header-toolbar__left>.components-dropdown>.components-button.has-icon:focus:not(:disabled){box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 0 0 1px #fff;outline:1px solid transparent}.edit-post-header-toolbar .edit-post-header-toolbar__left>.components-button.has-icon:before,.edit-post-header-toolbar .edit-post-header-toolbar__left>.components-dropdown>.components-button.has-icon:before{display:none}@media (min-width:600px){.edit-post-header.has-reduced-ui .edit-post-header-toolbar__left>*+.components-button,.edit-post-header.has-reduced-ui .edit-post-header-toolbar__left>*+.components-dropdown>[aria-expanded=false]{transition:opacity .1s linear}}@media (min-width:600px) and (prefers-reduced-motion:reduce){.edit-post-header.has-reduced-ui .edit-post-header-toolbar__left>*+.components-button,.edit-post-header.has-reduced-ui .edit-post-header-toolbar__left>*+.components-dropdown>[aria-expanded=false]{transition-duration:0s;transition-delay:0s}}@media (min-width:600px){.edit-post-header.has-reduced-ui:not(:hover) .edit-post-header-toolbar__left>*+.components-button,.edit-post-header.has-reduced-ui:not(:hover) .edit-post-header-toolbar__left>*+.components-dropdown>[aria-expanded=false]{opacity:0}}.edit-post-header-toolbar__left{display:inline-flex;align-items:center;padding-right:8px}@media (min-width:600px){.edit-post-header-toolbar__left{padding-right:24px}}@media (min-width:1280px){.edit-post-header-toolbar__left{padding-left:8px}}.edit-post-header-toolbar .edit-post-header-toolbar__left>.edit-post-header-toolbar__inserter-toggle.has-icon{margin-left:8px;min-width:32px;width:32px;height:32px;padding:0}.show-icon-labels .edit-post-header-toolbar .edit-post-header-toolbar__left>.edit-post-header-toolbar__inserter-toggle.has-icon{height:36px}.edit-post-header-toolbar .edit-post-header-toolbar__left>.edit-post-header-toolbar__inserter-toggle.has-text.has-icon{width:auto;padding:0 8px}.show-icon-labels .edit-post-header-toolbar__left>*+*{margin-right:8px}.edit-post-more-menu{margin-right:-4px}.edit-post-more-menu .components-button{width:auto;padding:0 2px}@media (min-width:600px){.edit-post-more-menu{margin-right:0}.edit-post-more-menu .components-button{padding:0 4px}}.edit-post-more-menu__content .components-popover__content{min-width:280px}@media (min-width:480px){.edit-post-more-menu__content .components-popover__content{width:auto;max-width:480px}}.edit-post-more-menu__content .components-popover__content .components-dropdown-menu__menu{padding:0}.components-popover.edit-post-more-menu__content{z-index:99998}.edit-post-template-top-area{display:flex;flex-direction:column;align-content:space-between;width:100%;align-items:center}.edit-post-template-top-area .edit-post-template-post-title,.edit-post-template-top-area .edit-post-template-title{padding:0;text-decoration:none;height:auto}.edit-post-template-top-area .edit-post-template-post-title:before,.edit-post-template-top-area .edit-post-template-title:before{height:100%}.edit-post-template-top-area .edit-post-template-post-title.has-icon svg,.edit-post-template-top-area .edit-post-template-title.has-icon svg{order:1;margin-left:0}.edit-post-template-top-area .edit-post-template-title{color:#1e1e1e}.edit-post-template-top-area .edit-post-template-post-title{margin-top:4px;max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.edit-post-template-top-area .edit-post-template-post-title:before{right:0;left:0}@media (min-width:1080px){.edit-post-template-top-area .edit-post-template-post-title{max-width:none}}.edit-post-template-top-area__popover .components-popover__content{min-width:280px;padding:8px}.edit-post-template-top-area__popover .edit-post-template-details__description{color:#757575}.edit-post-template-top-area__second-menu-group{margin-right:-16px;margin-left:-16px;padding:16px 16px 0;border-top:1px solid #ddd}.edit-post-template-top-area__second-menu-group .edit-post-template-top-area__delete-template-button{display:flex;justify-content:center}.edit-post-template-top-area__second-menu-group .edit-post-template-top-area__delete-template-button .components-menu-item__item{margin-left:0;min-width:0}.edit-post-keyboard-shortcut-help-modal__section{margin:0 0 2rem}.edit-post-keyboard-shortcut-help-modal__main-shortcuts .edit-post-keyboard-shortcut-help-modal__shortcut-list{margin-top:-25px}.edit-post-keyboard-shortcut-help-modal__section-title{font-size:.9rem;font-weight:600}.edit-post-keyboard-shortcut-help-modal__shortcut{display:flex;align-items:baseline;padding:.6rem 0;border-top:1px solid #ddd;margin-bottom:0}.edit-post-keyboard-shortcut-help-modal__shortcut:last-child{border-bottom:1px solid #ddd}.edit-post-keyboard-shortcut-help-modal__shortcut:empty{display:none}.edit-post-keyboard-shortcut-help-modal__shortcut-term{font-weight:600;margin:0 1rem 0 0;text-align:left}.edit-post-keyboard-shortcut-help-modal__shortcut-description{flex:1;margin:0;flex-basis:auto}.edit-post-keyboard-shortcut-help-modal__shortcut-key-combination{display:block;background:none;margin:0;padding:0}.edit-post-keyboard-shortcut-help-modal__shortcut-key-combination+.edit-post-keyboard-shortcut-help-modal__shortcut-key-combination{margin-top:10px}.edit-post-keyboard-shortcut-help-modal__shortcut-key{padding:.25rem .5rem;border-radius:8%;margin:0 .2rem}.edit-post-keyboard-shortcut-help-modal__shortcut-key:last-child{margin:0 .2rem 0 0}.edit-post-layout__metaboxes{flex-shrink:0;clear:both}.edit-post-layout .components-editor-notices__snackbar{position:fixed;left:0;bottom:40px;padding-right:16px;padding-left:16px;right:0}@media (min-width:783px){.edit-post-layout .components-editor-notices__snackbar{right:160px}}@media (min-width:783px){.auto-fold .edit-post-layout .components-editor-notices__snackbar{right:36px}}@media (min-width:961px){.auto-fold .edit-post-layout .components-editor-notices__snackbar{right:160px}}.folded .edit-post-layout .components-editor-notices__snackbar{right:0}@media (min-width:783px){.folded .edit-post-layout .components-editor-notices__snackbar{right:36px}}body.is-fullscreen-mode .edit-post-layout .components-editor-notices__snackbar{right:0!important}.edit-post-layout .editor-post-publish-panel{position:fixed;z-index:100001;top:46px;bottom:0;left:0;right:0;overflow:auto}@media (min-width:782px){.edit-post-layout .editor-post-publish-panel{z-index:99998;top:32px;right:auto;width:281px;border-right:1px solid #ddd;transform:translateX(-100%);animation:edit-post-post-publish-panel__slide-in-animation .1s forwards}}@media (min-width:782px) and (prefers-reduced-motion:reduce){.edit-post-layout .editor-post-publish-panel{animation-duration:1ms;animation-delay:0s}}@media (min-width:782px){body.is-fullscreen-mode .edit-post-layout .editor-post-publish-panel{top:0}}@media (min-width:782px){[role=region]:focus .edit-post-layout .editor-post-publish-panel{transform:translateX(0)}}@keyframes edit-post-post-publish-panel__slide-in-animation{to{transform:translateX(0)}}.edit-post-layout .editor-post-publish-panel__header-publish-button{justify-content:center}.edit-post-layout__toggle-entities-saved-states-panel,.edit-post-layout__toggle-publish-panel,.edit-post-layout__toggle-sidebar-panel{z-index:100000;position:fixed!important;top:-9999em;bottom:auto;right:auto;left:0;width:280px;background-color:#fff;border:1px dotted #ddd;height:auto!important;padding:24px;display:flex;justify-content:center}.interface-interface-skeleton__actions:focus-within .edit-post-layout__toggle-entities-saved-states-panel,.interface-interface-skeleton__actions:focus-within .edit-post-layout__toggle-publish-panel,.interface-interface-skeleton__actions:focus-within .edit-post-layout__toggle-sidebar-panel,.interface-interface-skeleton__actions:focus .edit-post-layout__toggle-entities-saved-states-panel,.interface-interface-skeleton__actions:focus .edit-post-layout__toggle-publish-panel,.interface-interface-skeleton__actions:focus .edit-post-layout__toggle-sidebar-panel{top:auto;bottom:0}.edit-post-block-manager__no-results{font-style:italic;padding:24px 0;text-align:center}.edit-post-block-manager__search{margin:16px 0}.edit-post-block-manager__disabled-blocks-count{border:1px solid #ddd;border-width:1px 0;box-shadow:32px 0 0 0 #fff,-32px 0 0 0 #fff;padding:8px;background-color:#fff;text-align:center;font-style:italic;position:sticky;top:-1px;z-index:2}.edit-post-block-manager__disabled-blocks-count~.edit-post-block-manager__results .edit-post-block-manager__category-title{top:35px}.edit-post-block-manager__category{margin:0 0 24px}.edit-post-block-manager__category-title{position:sticky;top:0;padding:16px 0;background-color:#fff;z-index:1}.edit-post-block-manager__category-title .components-checkbox-control__label{font-weight:600}.edit-post-block-manager__show-all{margin-left:8px}.edit-post-block-manager__checklist{margin-top:0}.edit-post-block-manager__category-title,.edit-post-block-manager__checklist-item{border-bottom:1px solid #ddd}.edit-post-block-manager__category-title .components-base-control__field,.edit-post-block-manager__checklist-item .components-base-control__field{align-items:center;display:flex;margin:0}.edit-post-block-manager__checklist-item{margin-bottom:0;padding-right:16px}.components-modal__content .edit-post-block-manager__checklist-item.components-checkbox-control__input-container{margin:0 8px}.edit-post-block-manager__checklist-item .components-checkbox-control__label{display:flex;align-items:center;justify-content:space-between;flex-grow:1;padding:8px 0}.edit-post-block-manager__checklist-item .block-editor-block-icon{margin-left:10px;fill:#1e1e1e}.edit-post-block-manager__results{border-top:1px solid #ddd}.edit-post-block-manager__disabled-blocks-count+.edit-post-block-manager__results{border-top-width:0}.edit-post-meta-boxes-area{position:relative}.edit-post-meta-boxes-area .inside,.edit-post-meta-boxes-area__container{box-sizing:content-box}.edit-post-meta-boxes-area input,.edit-post-meta-boxes-area textarea{box-sizing:border-box}.edit-post-meta-boxes-area .postbox-header{border-top:1px solid #ddd;border-bottom:0}.edit-post-meta-boxes-area #poststuff{margin:0 auto;padding-top:0;min-width:auto}.edit-post-meta-boxes-area #poststuff .stuffbox>h3,.edit-post-meta-boxes-area #poststuff h2.hndle,.edit-post-meta-boxes-area #poststuff h3.hndle{box-sizing:border-box;color:inherit;font-weight:600;outline:none;padding:0 24px;position:relative;width:100%}.edit-post-meta-boxes-area .postbox{border:0;color:inherit;margin-bottom:0}.edit-post-meta-boxes-area .postbox>.inside{color:inherit;padding:0 24px 24px;margin:0}.edit-post-meta-boxes-area .postbox .handlediv{height:44px;width:44px}.edit-post-meta-boxes-area.is-loading:before{position:absolute;top:0;right:0;left:0;bottom:0;content:"";background:transparent;z-index:1}.edit-post-meta-boxes-area .components-spinner{position:absolute;top:10px;left:20px;z-index:5}.edit-post-meta-boxes-area .is-hidden{display:none}.edit-post-meta-boxes-area .metabox-location-side .postbox input[type=checkbox]{border:1px solid #757575}.edit-post-meta-boxes-area .metabox-location-side .postbox input[type=checkbox]:checked{background:#fff;border-color:#757575}.edit-post-meta-boxes-area .metabox-location-side .postbox input[type=checkbox]:before{margin:-3px -4px}.edit-post-meta-boxes-area__clear{clear:both}@media (min-width:600px){.edit-post-preferences-modal{width:calc(100% - 32px);height:calc(100% - 120px)}}@media (min-width:782px){.edit-post-preferences-modal{width:750px}}@media (min-width:960px){.edit-post-preferences-modal{height:70%}}@media (max-width:781px){.edit-post-preferences-modal .components-modal__content{padding:0}.edit-post-preferences-modal .components-modal__content:before{content:none}.edit-post-preferences-modal .components-navigator-provider{height:100%}}.edit-post-preferences-modal .edit-post-preferences__tabs .components-tab-panel__tabs{position:absolute;top:84px;right:16px;width:160px}.edit-post-preferences-modal .edit-post-preferences__tabs .components-tab-panel__tabs .components-tab-panel__tabs-item{border-radius:2px;font-weight:400}.edit-post-preferences-modal .edit-post-preferences__tabs .components-tab-panel__tabs .components-tab-panel__tabs-item.is-active{background:#f0f0f0;box-shadow:none;font-weight:500}.edit-post-preferences-modal .edit-post-preferences__tabs .components-tab-panel__tabs .components-tab-panel__tabs-item:focus:not(:disabled){box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.edit-post-preferences-modal .edit-post-preferences__tabs .components-tab-panel__tab-content{padding-right:24px;margin-right:160px}.edit-post-preferences-modal__section{margin:0 0 2.5rem}.edit-post-preferences-modal__section:last-child{margin:0}.edit-post-preferences-modal__section-title{font-size:.9rem;font-weight:600;margin-top:0}.edit-post-preferences-modal__option .components-base-control .components-base-control__field{align-items:center;display:flex;margin-bottom:0}.edit-post-preferences-modal__option .components-base-control .components-base-control__field>label{flex-grow:1;padding:.6rem 10px .6rem 0}.edit-post-preferences-modal__custom-fields-confirmation-button,.edit-post-preferences-modal__custom-fields-confirmation-message{margin:0 48px .6rem 0}@media (min-width:782px){.edit-post-preferences-modal__custom-fields-confirmation-button,.edit-post-preferences-modal__custom-fields-confirmation-message{margin-right:38px}}@media (min-width:600px){.edit-post-preferences-modal__custom-fields-confirmation-button,.edit-post-preferences-modal__custom-fields-confirmation-message{max-width:300px}}.edit-post-preferences-modal .components-base-control__help{margin:-8px 58px 8px 0;font-size:12px;font-style:normal;color:#757575}.edit-post-preferences-modal .edit-post-preferences-modal__section-description{margin:-8px 0 8px;font-size:12px;font-style:normal;color:#757575}.edit-post-editor__inserter-panel,.edit-post-editor__list-view-panel{height:100%;display:flex;flex-direction:column}.edit-post-editor__list-view-panel{min-width:350px}.edit-post-editor__inserter-panel-header{padding-top:8px;padding-left:8px;display:flex;justify-content:flex-end}@media (min-width:782px){.edit-post-editor__inserter-panel-header{display:none}}.edit-post-editor__inserter-panel-content,.edit-post-editor__list-view-panel-content{height:calc(100% - 44px)}@media (min-width:782px){.edit-post-editor__inserter-panel-content{height:100%}}.edit-post-editor__list-view-panel-header{align-items:center;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;height:48px;padding-right:16px;padding-left:4px}.edit-post-editor__list-view-panel-content{overflow-y:auto;padding:8px 6px}.components-panel__header.edit-post-sidebar__panel-tabs{justify-content:flex-start;padding-right:0;padding-left:16px;border-top:0;margin-top:0}.components-panel__header.edit-post-sidebar__panel-tabs ul{display:flex}.components-panel__header.edit-post-sidebar__panel-tabs li{margin:0}.components-panel__header.edit-post-sidebar__panel-tabs .components-button.has-icon{display:none;margin:0 auto 0 0;padding:0;min-width:24px;height:24px}@media (min-width:782px){.components-panel__header.edit-post-sidebar__panel-tabs .components-button.has-icon{display:flex}}.components-panel__body.is-opened.edit-post-last-revision__panel{padding:0;height:48px}.editor-post-last-revision__title.components-button{padding:16px}.editor-post-author__select{margin:-5px 0;width:100%}@supports (position:sticky){.editor-post-author__select{width:auto}}.edit-post-post-link__link-post-name{font-weight:600}.edit-post-post-link__preview-label{font-weight:400;margin:0}.edit-post-post-link__link{text-align:right;word-wrap:break-word;display:block}.edit-post-post-link__preview-link-container{direction:ltr}.edit-post-post-schedule{width:100%;position:relative;justify-content:left}.edit-post-post-schedule span{display:block;width:45%}.components-button.edit-post-post-schedule__toggle{text-align:left}.edit-post-post-schedule__dialog .components-popover__content>div{padding:0}.editor-post-slug__input{margin:-5px 0;padding:2px}.edit-post-post-status .edit-post-post-publish-dropdown__switch-to-draft{margin-top:15px;width:100%;text-align:center}.edit-post-post-visibility{width:100%;justify-content:left}.edit-post-post-visibility span{display:block;width:45%}@media (min-width:782px){.edit-post-post-visibility__dialog .components-popover__content{width:257px}}.edit-post-post-visibility__dialog-legend{font-weight:600}.edit-post-post-visibility__choice{margin:10px 0}.edit-post-post-visibility__dialog-label,.edit-post-post-visibility__dialog-radio{vertical-align:top}.edit-post-post-visibility__dialog-password-input{width:calc(100% - 20px);margin-right:20px}.edit-post-post-visibility__dialog-info{color:#757575;padding-right:20px;font-style:italic;margin:4px 0 0;line-height:1.4}.components-button.edit-post-sidebar__panel-tab{border-radius:0;height:48px;background:transparent;border:none;box-shadow:none;cursor:pointer;display:inline-block;padding:3px 15px;margin-right:0;font-weight:500}.components-button.edit-post-sidebar__panel-tab:after{content:attr(data-label);display:block;font-weight:600;height:0;overflow:hidden;speak:none;visibility:hidden}.components-button.edit-post-sidebar__panel-tab.is-active{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) transparent,inset 0 -4px 0 0 var(--wp-admin-theme-color);position:relative;z-index:1}.components-button.edit-post-sidebar__panel-tab.is-active:before{content:"";position:absolute;top:0;bottom:1px;left:0;right:0;border-bottom:4px solid transparent}.components-button.edit-post-sidebar__panel-tab:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);position:relative;z-index:1}.components-button.edit-post-sidebar__panel-tab.is-active:focus{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color),inset 0 -4px 0 0 var(--wp-admin-theme-color)}@media (min-width:782px){.edit-post-template__modal .components-base-control{width:320px}}.edit-post-template__modal .components-modal__header{border-bottom:none}.edit-post-template__modal .components-modal__content:before{margin-bottom:4px}.edit-post-template__modal-actions{margin-top:12px}.edit-post-template-modal__tip{padding:16px 24px;background:#f0f0f0;border-radius:2px}@media (min-width:782px){.edit-post-template-modal__tip{width:240px}}.edit-post-template__actions button:not(:last-child){margin-left:8px}h2.edit-post-template-summary__title{line-height:24px;margin:0 0 4px;font-weight:500}.edit-post-text-editor{position:relative;width:100%;background-color:#fff;flex-grow:1}.edit-post-text-editor .editor-post-title{max-width:none;line-height:1.4;font-family:Menlo,Consolas,monaco,monospace;font-size:2.5em;font-weight:400;border:1px solid #949494;padding:16px}@media (min-width:600px){.edit-post-text-editor .editor-post-title{padding:24px}}.edit-post-text-editor .editor-post-title:focus{border-color:var(--wp-admin-theme-color);box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}.edit-post-text-editor__body{width:100%;padding:0 12px 12px;max-width:1080px;margin-right:auto;margin-left:auto}@media (min-width:960px){.edit-post-text-editor__body{padding:0 24px 24px}}.edit-post-text-editor__toolbar{position:sticky;z-index:1;top:0;right:0;left:0;display:flex;background:hsla(0,0%,100%,.8);padding:4px 12px}@media (min-width:600px){.edit-post-text-editor__toolbar{padding:12px}}@media (min-width:960px){.edit-post-text-editor__toolbar{padding:12px 24px}}.edit-post-text-editor__toolbar h2{line-height:36px;margin:0 0 0 auto;font-size:13px;color:#1e1e1e}.edit-post-text-editor__toolbar .components-button svg{order:1}.edit-post-visual-editor{position:relative;display:flex;flex-flow:column;background-color:#2f2f2f;flex:1 0 auto}.edit-post-visual-editor .components-button{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;padding:6px 12px}.edit-post-visual-editor .components-button.has-icon,.edit-post-visual-editor .components-button.is-tertiary{padding:6px}.edit-post-visual-editor__post-title-wrapper{margin-top:4rem;margin-bottom:var(--wp--style--block-gap)}.edit-post-visual-editor__post-title-wrapper .editor-post-title{margin-right:auto;margin-left:auto}.edit-post-visual-editor__exit-template-mode{position:absolute;top:8px;right:8px;color:#fff}.edit-post-visual-editor__exit-template-mode:active:not([aria-disabled=true]),.edit-post-visual-editor__exit-template-mode:focus:not([aria-disabled=true]),.edit-post-visual-editor__exit-template-mode:hover{color:#f0f0f0}.edit-post-visual-editor__content-area{width:100%;height:100%;position:relative;display:flex;flex-grow:1}.edit-post-welcome-guide{width:312px}.edit-post-welcome-guide__image{background:#00a0d2;margin:0 0 16px}.edit-post-welcome-guide__image>img{display:block;max-width:100%;-o-object-fit:cover;object-fit:cover}.edit-post-welcome-guide__heading{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:24px;line-height:1.4;margin:16px 0;padding:0 32px}.edit-post-welcome-guide__text{font-size:13px;line-height:1.4;margin:0 0 24px;padding:0 32px}.edit-post-welcome-guide__inserter-icon{margin:0 4px;vertical-align:text-top}@keyframes edit-post__fade-in-animation{0%{opacity:0}to{opacity:1}}body.block-editor-page,html.wp-toolbar{background:#fff}body.block-editor-page #wpcontent{padding-right:0}body.block-editor-page #wpbody-content{padding-bottom:0}body.block-editor-page #wpbody-content>div:not(.block-editor):not(#screen-meta),body.block-editor-page #wpfooter{display:none}body.block-editor-page .a11y-speak-region{right:-1px;top:-1px}body.block-editor-page ul#adminmenu>li.current>a.current:after,body.block-editor-page ul#adminmenu a.wp-has-current-submenu:after{border-left-color:#fff}body.block-editor-page .media-frame select.attachment-filters:last-of-type{width:auto;max-width:100%}.block-editor-page #wpwrap{overflow-y:auto}@media (min-width:782px){.block-editor-page #wpwrap{overflow-y:initial}}.components-modal__frame,.components-popover,.edit-post-editor__inserter-panel,.edit-post-header,.edit-post-sidebar,.edit-post-text-editor,.edit-post-visual-editor,.editor-post-publish-panel{box-sizing:border-box}.components-modal__frame *,.components-modal__frame :after,.components-modal__frame :before,.components-popover *,.components-popover :after,.components-popover :before,.edit-post-editor__inserter-panel *,.edit-post-editor__inserter-panel :after,.edit-post-editor__inserter-panel :before,.edit-post-header *,.edit-post-header :after,.edit-post-header :before,.edit-post-sidebar *,.edit-post-sidebar :after,.edit-post-sidebar :before,.edit-post-text-editor *,.edit-post-text-editor :after,.edit-post-text-editor :before,.edit-post-visual-editor *,.edit-post-visual-editor :after,.edit-post-visual-editor :before,.editor-post-publish-panel *,.editor-post-publish-panel :after,.editor-post-publish-panel :before{box-sizing:inherit}@media (min-width:600px){.block-editor__container{position:absolute;top:0;left:0;bottom:0;right:0;min-height:calc(100vh - 46px)}}@media (min-width:782px){.block-editor__container{min-height:calc(100vh - 32px)}body.is-fullscreen-mode .block-editor__container{min-height:100vh}}.block-editor__container img{max-width:100%;height:auto}.block-editor__container iframe{width:100%}body.admin-color-light{--wp-admin-theme-color:#0085ba;--wp-admin-theme-color--rgb:0,133,186;--wp-admin-theme-color-darker-10:#0073a1;--wp-admin-theme-color-darker-10--rgb:0,115,161;--wp-admin-theme-color-darker-20:#006187;--wp-admin-theme-color-darker-20--rgb:0,97,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-light{--wp-admin-border-width-focus:1.5px}}body.admin-color-modern{--wp-admin-theme-color:#3858e9;--wp-admin-theme-color--rgb:56,88,233;--wp-admin-theme-color-darker-10:#2145e6;--wp-admin-theme-color-darker-10--rgb:33,69,230;--wp-admin-theme-color-darker-20:#183ad6;--wp-admin-theme-color-darker-20--rgb:24,58,214;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-modern{--wp-admin-border-width-focus:1.5px}}body.admin-color-blue{--wp-admin-theme-color:#096484;--wp-admin-theme-color--rgb:9,100,132;--wp-admin-theme-color-darker-10:#07526c;--wp-admin-theme-color-darker-10--rgb:7,82,108;--wp-admin-theme-color-darker-20:#064054;--wp-admin-theme-color-darker-20--rgb:6,64,84;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-blue{--wp-admin-border-width-focus:1.5px}}body.admin-color-coffee{--wp-admin-theme-color:#46403c;--wp-admin-theme-color--rgb:70,64,60;--wp-admin-theme-color-darker-10:#383330;--wp-admin-theme-color-darker-10--rgb:56,51,48;--wp-admin-theme-color-darker-20:#2b2724;--wp-admin-theme-color-darker-20--rgb:43,39,36;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-coffee{--wp-admin-border-width-focus:1.5px}}body.admin-color-ectoplasm{--wp-admin-theme-color:#523f6d;--wp-admin-theme-color--rgb:82,63,109;--wp-admin-theme-color-darker-10:#46365d;--wp-admin-theme-color-darker-10--rgb:70,54,93;--wp-admin-theme-color-darker-20:#3a2c4d;--wp-admin-theme-color-darker-20--rgb:58,44,77;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-ectoplasm{--wp-admin-border-width-focus:1.5px}}body.admin-color-midnight{--wp-admin-theme-color:#e14d43;--wp-admin-theme-color--rgb:225,77,67;--wp-admin-theme-color-darker-10:#dd382d;--wp-admin-theme-color-darker-10--rgb:221,56,45;--wp-admin-theme-color-darker-20:#d02c21;--wp-admin-theme-color-darker-20--rgb:208,44,33;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-midnight{--wp-admin-border-width-focus:1.5px}}body.admin-color-ocean{--wp-admin-theme-color:#627c83;--wp-admin-theme-color--rgb:98,124,131;--wp-admin-theme-color-darker-10:#576e74;--wp-admin-theme-color-darker-10--rgb:87,110,116;--wp-admin-theme-color-darker-20:#4c6066;--wp-admin-theme-color-darker-20--rgb:76,96,102;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-ocean{--wp-admin-border-width-focus:1.5px}}body.admin-color-sunrise{--wp-admin-theme-color:#dd823b;--wp-admin-theme-color--rgb:221,130,59;--wp-admin-theme-color-darker-10:#d97426;--wp-admin-theme-color-darker-10--rgb:217,116,38;--wp-admin-theme-color-darker-20:#c36922;--wp-admin-theme-color-darker-20--rgb:195,105,34;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body.admin-color-sunrise{--wp-admin-border-width-focus:1.5px}}PKj l\˖~ css/dist/edit-post/style-rtl.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .components-panel__header.interface-complementary-area-header__small { background: #fff; padding-left: 4px; } .components-panel__header.interface-complementary-area-header__small .interface-complementary-area-header__small-title { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; width: 100%; } @media (min-width: 782px) { .components-panel__header.interface-complementary-area-header__small { display: none; } } .interface-complementary-area-header { background: #fff; padding-left: 4px; } .interface-complementary-area-header .components-button.has-icon { display: none; margin-right: auto; } .interface-complementary-area-header .components-button.has-icon ~ .components-button { margin-right: 0; } @media (min-width: 782px) { .interface-complementary-area-header .components-button.has-icon { display: flex; } } @media (min-width: 782px) { .components-panel__header + .interface-complementary-area-header { margin-top: 0; } } .interface-complementary-area { background: #fff; color: #1e1e1e; } @media (min-width: 600px) { .interface-complementary-area { -webkit-overflow-scrolling: touch; } } @media (min-width: 782px) { .interface-complementary-area { width: 280px; } } .interface-complementary-area .components-panel { border: none; position: relative; z-index: 0; } .interface-complementary-area .components-panel__header { position: sticky; top: 0; z-index: 1; } .interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs { top: 48px; } @media (min-width: 782px) { .interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs { top: 0; } } .interface-complementary-area p { margin-top: 0; } .interface-complementary-area h2 { font-size: 13px; color: #1e1e1e; margin-bottom: 1.5em; } .interface-complementary-area h3 { font-size: 11px; text-transform: uppercase; font-weight: 500; color: #1e1e1e; margin-bottom: 1.5em; } .interface-complementary-area hr { border-top: none; border-bottom: 1px solid #f0f0f0; margin: 1.5em 0; } .interface-complementary-area div.components-toolbar-group, .interface-complementary-area div.components-toolbar { box-shadow: none; margin-bottom: 1.5em; } .interface-complementary-area div.components-toolbar-group:last-child, .interface-complementary-area div.components-toolbar:last-child { margin-bottom: 0; } .interface-complementary-area .block-editor-skip-to-selected-block:focus { top: auto; left: 10px; bottom: 10px; right: auto; } @media (min-width: 782px) { body.js.is-fullscreen-mode { margin-top: -32px; height: calc(100% + 32px); } body.js.is-fullscreen-mode #adminmenumain, body.js.is-fullscreen-mode #wpadminbar { display: none; } body.js.is-fullscreen-mode #wpcontent, body.js.is-fullscreen-mode #wpfooter { margin-right: 0; } } html.interface-interface-skeleton__html-container { position: fixed; width: 100%; } @media (min-width: 782px) { html.interface-interface-skeleton__html-container { position: initial; width: initial; } } .interface-interface-skeleton { display: flex; flex-direction: row; height: auto; max-height: 100%; position: fixed; top: 46px; right: 0; left: 0; bottom: 0; } @media (min-width: 783px) { .interface-interface-skeleton { top: 32px; } .is-fullscreen-mode .interface-interface-skeleton { top: 0; } } .interface-interface-skeleton__editor { display: flex; flex-direction: column; flex: 0 1 100%; overflow: hidden; } .interface-interface-skeleton { /* Set left position when auto-fold is not on the body element. */ right: 0; } @media (min-width: 783px) { .interface-interface-skeleton { right: 160px; } } .auto-fold .interface-interface-skeleton { /* Auto fold is when on smaller breakpoints, nav menu auto collapses. */ } @media (min-width: 783px) { .auto-fold .interface-interface-skeleton { right: 36px; } } @media (min-width: 961px) { .auto-fold .interface-interface-skeleton { right: 160px; } } /* Sidebar manually collapsed. */ .folded .interface-interface-skeleton { right: 0; } @media (min-width: 783px) { .folded .interface-interface-skeleton { right: 36px; } } body.is-fullscreen-mode .interface-interface-skeleton { right: 0 !important; } .interface-interface-skeleton__body { flex-grow: 1; display: flex; overflow: auto; overscroll-behavior-y: none; } @media (min-width: 782px) { .has-footer .interface-interface-skeleton__body { padding-bottom: 25px; } } .interface-interface-skeleton__content { flex-grow: 1; display: flex; flex-direction: column; overflow: auto; z-index: 20; } .interface-interface-skeleton__secondary-sidebar, .interface-interface-skeleton__sidebar { display: block; flex-shrink: 0; position: absolute; z-index: 100000; top: 0; left: 0; bottom: 0; right: 0; background: #fff; color: #1e1e1e; } @media (min-width: 782px) { .interface-interface-skeleton__secondary-sidebar, .interface-interface-skeleton__sidebar { position: relative !important; z-index: 90; width: auto; } } .interface-interface-skeleton__sidebar { overflow: auto; } @media (min-width: 782px) { .interface-interface-skeleton__sidebar { border-right: 1px solid #e0e0e0; } } @media (min-width: 782px) { .interface-interface-skeleton__secondary-sidebar { border-left: 1px solid #e0e0e0; } } .interface-interface-skeleton__header { flex-shrink: 0; height: auto; border-bottom: 1px solid #e0e0e0; z-index: 30; color: #1e1e1e; } .interface-interface-skeleton__footer { height: auto; flex-shrink: 0; border-top: 1px solid #e0e0e0; color: #1e1e1e; position: absolute; bottom: 0; right: 0; width: 100%; background-color: #fff; z-index: 90; display: none; } @media (min-width: 782px) { .interface-interface-skeleton__footer { display: flex; } } .interface-interface-skeleton__footer .block-editor-block-breadcrumb { z-index: 30; display: flex; background: #fff; height: 24px; align-items: center; font-size: 13px; padding: 0 18px; } .interface-interface-skeleton__actions { z-index: 100000; position: fixed !important; top: -9999em; bottom: auto; right: auto; left: 0; width: 280px; color: #1e1e1e; } .interface-interface-skeleton__actions:focus { top: auto; bottom: 0; } .interface-more-menu-dropdown { margin-right: -4px; } .interface-more-menu-dropdown .components-button { width: auto; padding: 0 2px; } @media (min-width: 600px) { .interface-more-menu-dropdown { margin-right: 0; } .interface-more-menu-dropdown .components-button { padding: 0 4px; } } .interface-more-menu-dropdown__content .components-popover__content { min-width: 280px; } @media (min-width: 480px) { .interface-more-menu-dropdown__content .components-popover__content { width: auto; max-width: 480px; } } .interface-more-menu-dropdown__content .components-popover__content .components-dropdown-menu__menu { padding: 0; } .components-popover.interface-more-menu-dropdown__content { z-index: 99998; } .interface-pinned-items { display: flex; } .interface-pinned-items .components-button:not(:first-child) { display: none; } @media (min-width: 600px) { .interface-pinned-items .components-button:not(:first-child) { display: flex; } } .interface-pinned-items .components-button { margin-right: 4px; } .interface-pinned-items .components-button svg { max-width: 24px; max-height: 24px; } .edit-post-header { height: 60px; background: #fff; display: flex; flex-wrap: wrap; align-items: center; max-width: 100vw; } @media (min-width: 280px) { .edit-post-header { flex-wrap: nowrap; } } .edit-post-header > .edit-post-header__settings { order: 1; } @supports (position: sticky) { .edit-post-header > .edit-post-header__settings { order: initial; } } .edit-post-header__toolbar { display: flex; flex-grow: 1; } .edit-post-header__toolbar .table-of-contents { display: none; } @media (min-width: 600px) { .edit-post-header__toolbar .table-of-contents { display: block; } } .edit-post-header__settings { display: inline-flex; align-items: center; flex-wrap: wrap; padding-left: 4px; /** * Buttons in the Toolbar */ } @media (min-width: 600px) { .edit-post-header__settings { padding-left: 16px; } } .edit-post-header__settings .editor-post-saved-state, .edit-post-header__settings .components-button.components-button { margin-left: 4px; } @media (min-width: 600px) { .edit-post-header__settings .editor-post-saved-state, .edit-post-header__settings .components-button.components-button { margin-left: 12px; } } .edit-post-header__settings .editor-post-saved-state, .edit-post-header__settings .components-button.is-tertiary { padding: 0 6px; } .edit-post-header__settings .edit-post-more-menu .components-button, .edit-post-header__settings .interface-pinned-items .components-button { margin-left: 0; } .edit-post-header-preview__grouping-external { display: flex; position: relative; padding-bottom: 0; } .edit-post-header-preview__button-external { padding-right: 8px; margin-left: auto; width: 100%; display: flex; justify-content: flex-start; } .edit-post-header-preview__button-external svg { margin-right: auto; } .edit-post-post-preview-dropdown .components-popover__content > div { padding-bottom: 0; } .show-icon-labels.interface-pinned-items .components-button.has-icon, .show-icon-labels .edit-post-header .components-button.has-icon, .edit-post-header__dropdown .components-button.has-icon { width: auto; } .show-icon-labels.interface-pinned-items .components-button.has-icon svg, .show-icon-labels .edit-post-header .components-button.has-icon svg, .edit-post-header__dropdown .components-button.has-icon svg { display: none; } .show-icon-labels.interface-pinned-items .components-button.has-icon::after, .show-icon-labels .edit-post-header .components-button.has-icon::after, .edit-post-header__dropdown .components-button.has-icon::after { content: attr(aria-label); } .show-icon-labels.interface-pinned-items .components-button.has-icon[aria-disabled=true], .show-icon-labels .edit-post-header .components-button.has-icon[aria-disabled=true], .edit-post-header__dropdown .components-button.has-icon[aria-disabled=true] { background-color: transparent; } .show-icon-labels.interface-pinned-items .is-tertiary:active, .show-icon-labels .edit-post-header .is-tertiary:active, .edit-post-header__dropdown .is-tertiary:active { box-shadow: 0 0 0 1.5px var(--wp-admin-theme-color); background-color: transparent; } .show-icon-labels.interface-pinned-items .edit-post-fullscreen-mode-close.has-icon svg, .show-icon-labels.interface-pinned-items .components-button.has-icon.button-toggle svg, .show-icon-labels .edit-post-header .edit-post-fullscreen-mode-close.has-icon svg, .show-icon-labels .edit-post-header .components-button.has-icon.button-toggle svg, .edit-post-header__dropdown .edit-post-fullscreen-mode-close.has-icon svg, .edit-post-header__dropdown .components-button.has-icon.button-toggle svg { display: block; } .show-icon-labels.interface-pinned-items .edit-post-fullscreen-mode-close.has-icon::after, .show-icon-labels.interface-pinned-items .components-button.has-icon.button-toggle::after, .show-icon-labels .edit-post-header .edit-post-fullscreen-mode-close.has-icon::after, .show-icon-labels .edit-post-header .components-button.has-icon.button-toggle::after, .edit-post-header__dropdown .edit-post-fullscreen-mode-close.has-icon::after, .edit-post-header__dropdown .components-button.has-icon.button-toggle::after { content: none; } .show-icon-labels.interface-pinned-items .edit-post-fullscreen-mode-close.has-icon, .show-icon-labels .edit-post-header .edit-post-fullscreen-mode-close.has-icon, .edit-post-header__dropdown .edit-post-fullscreen-mode-close.has-icon { width: 60px; } .show-icon-labels.interface-pinned-items .components-menu-items-choice .components-menu-items__item-icon.components-menu-items__item-icon, .show-icon-labels .edit-post-header .components-menu-items-choice .components-menu-items__item-icon.components-menu-items__item-icon, .edit-post-header__dropdown .components-menu-items-choice .components-menu-items__item-icon.components-menu-items__item-icon { display: block; } .show-icon-labels.interface-pinned-items .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle, .show-icon-labels.interface-pinned-items .interface-pinned-items .components-button, .show-icon-labels .edit-post-header .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle, .show-icon-labels .edit-post-header .interface-pinned-items .components-button, .edit-post-header__dropdown .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle, .edit-post-header__dropdown .interface-pinned-items .components-button { padding-right: 8px; padding-left: 8px; } @media (min-width: 600px) { .show-icon-labels.interface-pinned-items .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle, .show-icon-labels.interface-pinned-items .interface-pinned-items .components-button, .show-icon-labels .edit-post-header .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle, .show-icon-labels .edit-post-header .interface-pinned-items .components-button, .edit-post-header__dropdown .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle, .edit-post-header__dropdown .interface-pinned-items .components-button { padding-right: 12px; padding-left: 12px; } } .show-icon-labels.interface-pinned-items .components-dropdown-menu__toggle, .show-icon-labels .edit-post-header .components-dropdown-menu__toggle, .edit-post-header__dropdown .components-dropdown-menu__toggle { margin-right: 8px; padding-right: 8px; padding-left: 8px; } @media (min-width: 600px) { .show-icon-labels.interface-pinned-items .components-dropdown-menu__toggle, .show-icon-labels .edit-post-header .components-dropdown-menu__toggle, .edit-post-header__dropdown .components-dropdown-menu__toggle { margin-right: 12px; padding-right: 12px; padding-left: 12px; } } .show-icon-labels.interface-pinned-items .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle::after, .show-icon-labels .edit-post-header .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle::after, .edit-post-header__dropdown .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle::after { content: none; } .show-icon-labels.interface-pinned-items .editor-post-save-draft.editor-post-save-draft::after, .show-icon-labels .edit-post-header .editor-post-save-draft.editor-post-save-draft::after, .edit-post-header__dropdown .editor-post-save-draft.editor-post-save-draft::after { content: none; } @media (min-width: 600px) { .show-icon-labels.interface-pinned-items .editor-post-save-draft.editor-post-save-draft::after, .show-icon-labels .edit-post-header .editor-post-save-draft.editor-post-save-draft::after, .edit-post-header__dropdown .editor-post-save-draft.editor-post-save-draft::after { content: attr(aria-label); } } .edit-post-header__dropdown .components-menu-item__button.components-menu-item__button, .edit-post-header__dropdown .components-button.editor-history__undo, .edit-post-header__dropdown .components-button.editor-history__redo, .edit-post-header__dropdown .table-of-contents .components-button, .edit-post-header__dropdown .components-button.block-editor-list-view { margin: 0; padding: 6px 40px 6px 6px; width: 14.625rem; text-align: right; justify-content: flex-start; } .show-icon-labels.interface-pinned-items { padding: 6px 12px 12px; margin-top: 0; margin-bottom: 0; margin-right: -12px; margin-left: -12px; border-bottom: 1px solid #ccc; display: block; } .show-icon-labels.interface-pinned-items > .components-button.has-icon { margin: 0; padding: 6px 8px 6px 6px; width: 14.625rem; justify-content: flex-start; } .show-icon-labels.interface-pinned-items > .components-button.has-icon[aria-expanded=true] svg { display: block; max-width: 24px; } .show-icon-labels.interface-pinned-items > .components-button.has-icon[aria-expanded=false] { padding-right: 40px; } .show-icon-labels.interface-pinned-items > .components-button.has-icon svg { margin-left: 8px; } .edit-post-fullscreen-mode-close.has-icon { display: none; } @media (min-width: 782px) { .edit-post-fullscreen-mode-close.has-icon { display: flex; align-items: center; align-self: stretch; border: none; background: #1e1e1e; color: #fff; border-radius: 0; height: 61px; width: 60px; position: relative; margin-bottom: -1px; } .edit-post-fullscreen-mode-close.has-icon:active { color: #fff; } .edit-post-fullscreen-mode-close.has-icon:focus { box-shadow: none; } .edit-post-fullscreen-mode-close.has-icon::before { transition: box-shadow 0.1s ease; content: ""; display: block; position: absolute; top: 9px; left: 9px; bottom: 9px; right: 9px; border-radius: 4px; box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) #1e1e1e; } } @media (min-width: 782px) and (prefers-reduced-motion: reduce) { .edit-post-fullscreen-mode-close.has-icon::before { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 782px) { .edit-post-fullscreen-mode-close.has-icon:hover::before { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) #757575; } } @media (min-width: 782px) { .edit-post-fullscreen-mode-close.has-icon:focus::before { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) rgba(255, 255, 255, 0.1), inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } } .edit-post-fullscreen-mode-close.has-icon .edit-post-fullscreen-mode-close_site-icon { width: 36px; height: 36px; border-radius: 2px; -o-object-fit: cover; object-fit: cover; margin-top: -1px; } .edit-post-header-toolbar { display: inline-flex; flex-grow: 1; align-items: center; border: none; } .edit-post-header-toolbar .edit-post-header-toolbar__left > .components-button { display: none; } @media (min-width: 600px) { .edit-post-header-toolbar .edit-post-header-toolbar__left > .components-button { display: inline-flex; } } .edit-post-header-toolbar .edit-post-header-toolbar__left > .edit-post-header-toolbar__inserter-toggle { display: inline-flex; } .edit-post-header-toolbar .edit-post-header-toolbar__left > .edit-post-header-toolbar__inserter-toggle svg { transition: transform cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s; } @media (prefers-reduced-motion: reduce) { .edit-post-header-toolbar .edit-post-header-toolbar__left > .edit-post-header-toolbar__inserter-toggle svg { transition-duration: 0s; transition-delay: 0s; } } .edit-post-header-toolbar .edit-post-header-toolbar__left > .edit-post-header-toolbar__inserter-toggle.is-pressed svg { transform: rotate(-45deg); } .edit-post-header-toolbar .block-editor-list-view { display: none; } @media (min-width: 600px) { .edit-post-header-toolbar .block-editor-list-view { display: flex; } } .edit-post-header-toolbar .edit-post-header-toolbar__left > .components-button.has-icon, .edit-post-header-toolbar .edit-post-header-toolbar__left > .components-dropdown > .components-button.has-icon { height: 36px; min-width: 36px; padding: 6px; } .edit-post-header-toolbar .edit-post-header-toolbar__left > .components-button.has-icon.is-pressed, .edit-post-header-toolbar .edit-post-header-toolbar__left > .components-dropdown > .components-button.has-icon.is-pressed { background: #1e1e1e; } .edit-post-header-toolbar .edit-post-header-toolbar__left > .components-button.has-icon:focus:not(:disabled), .edit-post-header-toolbar .edit-post-header-toolbar__left > .components-dropdown > .components-button.has-icon:focus:not(:disabled) { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 0 0 1px #fff; outline: 1px solid transparent; } .edit-post-header-toolbar .edit-post-header-toolbar__left > .components-button.has-icon::before, .edit-post-header-toolbar .edit-post-header-toolbar__left > .components-dropdown > .components-button.has-icon::before { display: none; } @media (min-width: 600px) { .edit-post-header.has-reduced-ui .edit-post-header-toolbar__left > * + .components-button, .edit-post-header.has-reduced-ui .edit-post-header-toolbar__left > * + .components-dropdown > [aria-expanded=false] { transition: opacity 0.1s linear; } } @media (min-width: 600px) and (prefers-reduced-motion: reduce) { .edit-post-header.has-reduced-ui .edit-post-header-toolbar__left > * + .components-button, .edit-post-header.has-reduced-ui .edit-post-header-toolbar__left > * + .components-dropdown > [aria-expanded=false] { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .edit-post-header.has-reduced-ui:not(:hover) .edit-post-header-toolbar__left > * + .components-button, .edit-post-header.has-reduced-ui:not(:hover) .edit-post-header-toolbar__left > * + .components-dropdown > [aria-expanded=false] { opacity: 0; } } .edit-post-header-toolbar__left { display: inline-flex; align-items: center; padding-right: 8px; } @media (min-width: 600px) { .edit-post-header-toolbar__left { padding-right: 24px; } } @media (min-width: 1280px) { .edit-post-header-toolbar__left { padding-left: 8px; } } .edit-post-header-toolbar .edit-post-header-toolbar__left > .edit-post-header-toolbar__inserter-toggle.has-icon { margin-left: 8px; min-width: 32px; width: 32px; height: 32px; padding: 0; } .show-icon-labels .edit-post-header-toolbar .edit-post-header-toolbar__left > .edit-post-header-toolbar__inserter-toggle.has-icon { height: 36px; } .edit-post-header-toolbar .edit-post-header-toolbar__left > .edit-post-header-toolbar__inserter-toggle.has-text.has-icon { width: auto; padding: 0 8px; } .show-icon-labels .edit-post-header-toolbar__left > * + * { margin-right: 8px; } .edit-post-more-menu { margin-right: -4px; } .edit-post-more-menu .components-button { width: auto; padding: 0 2px; } @media (min-width: 600px) { .edit-post-more-menu { margin-right: 0; } .edit-post-more-menu .components-button { padding: 0 4px; } } .edit-post-more-menu__content .components-popover__content { min-width: 280px; } @media (min-width: 480px) { .edit-post-more-menu__content .components-popover__content { width: auto; max-width: 480px; } } .edit-post-more-menu__content .components-popover__content .components-dropdown-menu__menu { padding: 0; } .components-popover.edit-post-more-menu__content { z-index: 99998; } .edit-post-template-top-area { display: flex; flex-direction: column; align-content: space-between; width: 100%; align-items: center; } .edit-post-template-top-area .edit-post-template-title, .edit-post-template-top-area .edit-post-template-post-title { padding: 0; text-decoration: none; height: auto; } .edit-post-template-top-area .edit-post-template-title::before, .edit-post-template-top-area .edit-post-template-post-title::before { height: 100%; } .edit-post-template-top-area .edit-post-template-title.has-icon svg, .edit-post-template-top-area .edit-post-template-post-title.has-icon svg { order: 1; margin-left: 0; } .edit-post-template-top-area .edit-post-template-title { color: #1e1e1e; } .edit-post-template-top-area .edit-post-template-post-title { margin-top: 4px; max-width: 160px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: block; } .edit-post-template-top-area .edit-post-template-post-title::before { right: 0; left: 0; } @media (min-width: 1080px) { .edit-post-template-top-area .edit-post-template-post-title { max-width: none; } } .edit-post-template-top-area__popover .components-popover__content { min-width: 280px; padding: 8px; } .edit-post-template-top-area__popover .edit-post-template-details__description { color: #757575; } .edit-post-template-top-area__second-menu-group { margin-right: -16px; margin-left: -16px; padding: 16px; padding-bottom: 0; border-top: 1px solid #ddd; } .edit-post-template-top-area__second-menu-group .edit-post-template-top-area__delete-template-button { display: flex; justify-content: center; } .edit-post-template-top-area__second-menu-group .edit-post-template-top-area__delete-template-button .components-menu-item__item { margin-left: 0; min-width: 0; } .edit-post-keyboard-shortcut-help-modal__section { margin: 0 0 2rem 0; } .edit-post-keyboard-shortcut-help-modal__main-shortcuts .edit-post-keyboard-shortcut-help-modal__shortcut-list { margin-top: -25px; } .edit-post-keyboard-shortcut-help-modal__section-title { font-size: 0.9rem; font-weight: 600; } .edit-post-keyboard-shortcut-help-modal__shortcut { display: flex; align-items: baseline; padding: 0.6rem 0; border-top: 1px solid #ddd; margin-bottom: 0; } .edit-post-keyboard-shortcut-help-modal__shortcut:last-child { border-bottom: 1px solid #ddd; } .edit-post-keyboard-shortcut-help-modal__shortcut:empty { display: none; } .edit-post-keyboard-shortcut-help-modal__shortcut-term { font-weight: 600; margin: 0 1rem 0 0; text-align: left; } .edit-post-keyboard-shortcut-help-modal__shortcut-description { flex: 1; margin: 0; flex-basis: auto; } .edit-post-keyboard-shortcut-help-modal__shortcut-key-combination { display: block; background: none; margin: 0; padding: 0; } .edit-post-keyboard-shortcut-help-modal__shortcut-key-combination + .edit-post-keyboard-shortcut-help-modal__shortcut-key-combination { margin-top: 10px; } .edit-post-keyboard-shortcut-help-modal__shortcut-key { padding: 0.25rem 0.5rem; border-radius: 8%; margin: 0 0.2rem 0 0.2rem; } .edit-post-keyboard-shortcut-help-modal__shortcut-key:last-child { margin: 0 0.2rem 0 0; } .edit-post-layout__metaboxes { flex-shrink: 0; clear: both; } .edit-post-layout .components-editor-notices__snackbar { position: fixed; left: 0; bottom: 40px; padding-right: 16px; padding-left: 16px; } .edit-post-layout .components-editor-notices__snackbar { /* Set left position when auto-fold is not on the body element. */ right: 0; } @media (min-width: 783px) { .edit-post-layout .components-editor-notices__snackbar { right: 160px; } } .auto-fold .edit-post-layout .components-editor-notices__snackbar { /* Auto fold is when on smaller breakpoints, nav menu auto collapses. */ } @media (min-width: 783px) { .auto-fold .edit-post-layout .components-editor-notices__snackbar { right: 36px; } } @media (min-width: 961px) { .auto-fold .edit-post-layout .components-editor-notices__snackbar { right: 160px; } } /* Sidebar manually collapsed. */ .folded .edit-post-layout .components-editor-notices__snackbar { right: 0; } @media (min-width: 783px) { .folded .edit-post-layout .components-editor-notices__snackbar { right: 36px; } } body.is-fullscreen-mode .edit-post-layout .components-editor-notices__snackbar { right: 0 !important; } .edit-post-layout .editor-post-publish-panel { position: fixed; z-index: 100001; top: 46px; bottom: 0; left: 0; right: 0; overflow: auto; } @media (min-width: 782px) { .edit-post-layout .editor-post-publish-panel { z-index: 99998; top: 32px; right: auto; width: 281px; border-right: 1px solid #ddd; transform: translateX(-100%); animation: edit-post-post-publish-panel__slide-in-animation 0.1s forwards; } } @media (min-width: 782px) and (prefers-reduced-motion: reduce) { .edit-post-layout .editor-post-publish-panel { animation-duration: 1ms; animation-delay: 0s; } } @media (min-width: 782px) { body.is-fullscreen-mode .edit-post-layout .editor-post-publish-panel { top: 0; } } @media (min-width: 782px) { [role=region]:focus .edit-post-layout .editor-post-publish-panel { transform: translateX(0%); } } @keyframes edit-post-post-publish-panel__slide-in-animation { 100% { transform: translateX(0%); } } .edit-post-layout .editor-post-publish-panel__header-publish-button { justify-content: center; } .edit-post-layout__toggle-publish-panel, .edit-post-layout__toggle-sidebar-panel, .edit-post-layout__toggle-entities-saved-states-panel { z-index: 100000; position: fixed !important; top: -9999em; bottom: auto; right: auto; left: 0; width: 280px; background-color: #fff; border: 1px dotted #ddd; height: auto !important; padding: 24px; display: flex; justify-content: center; } .interface-interface-skeleton__actions:focus .edit-post-layout__toggle-publish-panel, .interface-interface-skeleton__actions:focus-within .edit-post-layout__toggle-publish-panel, .interface-interface-skeleton__actions:focus .edit-post-layout__toggle-sidebar-panel, .interface-interface-skeleton__actions:focus-within .edit-post-layout__toggle-sidebar-panel, .interface-interface-skeleton__actions:focus .edit-post-layout__toggle-entities-saved-states-panel, .interface-interface-skeleton__actions:focus-within .edit-post-layout__toggle-entities-saved-states-panel { top: auto; bottom: 0; } .edit-post-block-manager__no-results { font-style: italic; padding: 24px 0; text-align: center; } .edit-post-block-manager__search { margin: 16px 0; } .edit-post-block-manager__disabled-blocks-count { border: 1px solid #ddd; border-width: 1px 0; box-shadow: 32px 0 0 0 #fff, -32px 0 0 0 #fff; padding: 8px; background-color: #fff; text-align: center; font-style: italic; position: sticky; top: -1px; z-index: 2; } .edit-post-block-manager__disabled-blocks-count ~ .edit-post-block-manager__results .edit-post-block-manager__category-title { top: 35px; } .edit-post-block-manager__category { margin: 0 0 24px 0; } .edit-post-block-manager__category-title { position: sticky; top: 0; padding: 16px 0; background-color: #fff; z-index: 1; } .edit-post-block-manager__category-title .components-checkbox-control__label { font-weight: 600; } .edit-post-block-manager__show-all { margin-left: 8px; } .edit-post-block-manager__checklist { margin-top: 0; } .edit-post-block-manager__category-title, .edit-post-block-manager__checklist-item { border-bottom: 1px solid #ddd; } .edit-post-block-manager__category-title .components-base-control__field, .edit-post-block-manager__checklist-item .components-base-control__field { align-items: center; display: flex; margin: 0; } .edit-post-block-manager__checklist-item { margin-bottom: 0; padding-right: 16px; } .components-modal__content .edit-post-block-manager__checklist-item.components-checkbox-control__input-container { margin: 0 8px; } .edit-post-block-manager__checklist-item .components-checkbox-control__label { display: flex; align-items: center; justify-content: space-between; flex-grow: 1; padding: 8px 0; } .edit-post-block-manager__checklist-item .block-editor-block-icon { margin-left: 10px; fill: #1e1e1e; } .edit-post-block-manager__results { border-top: 1px solid #ddd; } .edit-post-block-manager__disabled-blocks-count + .edit-post-block-manager__results { border-top-width: 0; } .edit-post-meta-boxes-area { position: relative; /** * The wordpress default for most meta-box elements is content-box. Some * elements such as textarea and input are set to border-box in forms.css. * These elements therefore specifically set back to border-box here, while * other elements (such as .button) are unaffected by Gutenberg's style * because of their higher specificity. */ /* Match width and positioning of the meta boxes. Override default styles. */ /* Override Default meta box stylings */ } .edit-post-meta-boxes-area__container, .edit-post-meta-boxes-area .inside { box-sizing: content-box; } .edit-post-meta-boxes-area textarea, .edit-post-meta-boxes-area input { box-sizing: border-box; } .edit-post-meta-boxes-area .postbox-header { border-top: 1px solid #ddd; border-bottom: 0; } .edit-post-meta-boxes-area #poststuff { margin: 0 auto; padding-top: 0; min-width: auto; } .edit-post-meta-boxes-area #poststuff h3.hndle, .edit-post-meta-boxes-area #poststuff .stuffbox > h3, .edit-post-meta-boxes-area #poststuff h2.hndle { /* WordPress selectors yolo */ box-sizing: border-box; color: inherit; font-weight: 600; outline: none; padding: 0 24px; position: relative; width: 100%; } .edit-post-meta-boxes-area .postbox { border: 0; color: inherit; margin-bottom: 0; } .edit-post-meta-boxes-area .postbox > .inside { color: inherit; padding: 0 24px 24px; margin: 0; } .edit-post-meta-boxes-area .postbox .handlediv { height: 44px; width: 44px; } .edit-post-meta-boxes-area.is-loading::before { position: absolute; top: 0; right: 0; left: 0; bottom: 0; content: ""; background: transparent; z-index: 1; } .edit-post-meta-boxes-area .components-spinner { position: absolute; top: 10px; left: 20px; z-index: 5; } .edit-post-meta-boxes-area .is-hidden { display: none; } .edit-post-meta-boxes-area .metabox-location-side .postbox input[type=checkbox] { border: 1px solid #757575; } .edit-post-meta-boxes-area .metabox-location-side .postbox input[type=checkbox]:checked { background: #fff; border-color: #757575; } .edit-post-meta-boxes-area .metabox-location-side .postbox input[type=checkbox]::before { margin: -3px -4px; } .edit-post-meta-boxes-area__clear { clear: both; } @media (min-width: 600px) { .edit-post-preferences-modal { width: calc(100% - 32px); height: calc(100% - 120px); } } @media (min-width: 782px) { .edit-post-preferences-modal { width: 750px; } } @media (min-width: 960px) { .edit-post-preferences-modal { height: 70%; } } @media (max-width: 781px) { .edit-post-preferences-modal .components-modal__content { padding: 0; } .edit-post-preferences-modal .components-modal__content::before { content: none; } .edit-post-preferences-modal .components-navigator-provider { height: 100%; } } .edit-post-preferences-modal .edit-post-preferences__tabs .components-tab-panel__tabs { position: absolute; top: 84px; right: 16px; width: 160px; } .edit-post-preferences-modal .edit-post-preferences__tabs .components-tab-panel__tabs .components-tab-panel__tabs-item { border-radius: 2px; font-weight: 400; } .edit-post-preferences-modal .edit-post-preferences__tabs .components-tab-panel__tabs .components-tab-panel__tabs-item.is-active { background: #f0f0f0; box-shadow: none; font-weight: 500; } .edit-post-preferences-modal .edit-post-preferences__tabs .components-tab-panel__tabs .components-tab-panel__tabs-item:focus:not(:disabled) { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .edit-post-preferences-modal .edit-post-preferences__tabs .components-tab-panel__tab-content { padding-right: 24px; margin-right: 160px; } .edit-post-preferences-modal__section { margin: 0 0 2.5rem 0; } .edit-post-preferences-modal__section:last-child { margin: 0; } .edit-post-preferences-modal__section-title { font-size: 0.9rem; font-weight: 600; margin-top: 0; } .edit-post-preferences-modal__option .components-base-control .components-base-control__field { align-items: center; display: flex; margin-bottom: 0; } .edit-post-preferences-modal__option .components-base-control .components-base-control__field > label { flex-grow: 1; padding: 0.6rem 10px 0.6rem 0; } .edit-post-preferences-modal__custom-fields-confirmation-message, .edit-post-preferences-modal__custom-fields-confirmation-button { margin: 0 48px 0.6rem 0; } @media (min-width: 782px) { .edit-post-preferences-modal__custom-fields-confirmation-message, .edit-post-preferences-modal__custom-fields-confirmation-button { margin-right: 38px; } } @media (min-width: 600px) { .edit-post-preferences-modal__custom-fields-confirmation-message, .edit-post-preferences-modal__custom-fields-confirmation-button { max-width: 300px; } } .edit-post-preferences-modal .components-base-control__help { margin: -8px 58px 8px 0; font-size: 12px; font-style: normal; color: #757575; } .edit-post-preferences-modal .edit-post-preferences-modal__section-description { margin: -8px 0 8px 0; font-size: 12px; font-style: normal; color: #757575; } .edit-post-editor__inserter-panel, .edit-post-editor__list-view-panel { height: 100%; display: flex; flex-direction: column; } .edit-post-editor__list-view-panel { min-width: 350px; } .edit-post-editor__inserter-panel-header { padding-top: 8px; padding-left: 8px; display: flex; justify-content: flex-end; } @media (min-width: 782px) { .edit-post-editor__inserter-panel-header { display: none; } } .edit-post-editor__inserter-panel-content, .edit-post-editor__list-view-panel-content { height: calc(100% - 36px - 8px); } @media (min-width: 782px) { .edit-post-editor__inserter-panel-content { height: 100%; } } .edit-post-editor__list-view-panel-header { align-items: center; border-bottom: 1px solid #ddd; display: flex; justify-content: space-between; height: 48px; padding-right: 16px; padding-left: 4px; } .edit-post-editor__list-view-panel-content { overflow-y: auto; padding: 8px 6px; } .components-panel__header.edit-post-sidebar__panel-tabs { justify-content: flex-start; padding-right: 0; padding-left: 16px; border-top: 0; margin-top: 0; } .components-panel__header.edit-post-sidebar__panel-tabs ul { display: flex; } .components-panel__header.edit-post-sidebar__panel-tabs li { margin: 0; } .components-panel__header.edit-post-sidebar__panel-tabs .components-button.has-icon { display: none; margin: 0 auto 0 0; padding: 0; min-width: 24px; height: 24px; } @media (min-width: 782px) { .components-panel__header.edit-post-sidebar__panel-tabs .components-button.has-icon { display: flex; } } .components-panel__body.is-opened.edit-post-last-revision__panel { padding: 0; height: 48px; } .editor-post-last-revision__title.components-button { padding: 16px; } .editor-post-author__select { margin: -5px 0; width: 100%; } @supports (position: sticky) { .editor-post-author__select { width: auto; } } .edit-post-post-link__link-post-name { font-weight: 600; } .edit-post-post-link__preview-label { font-weight: 400; margin: 0; } .edit-post-post-link__link { text-align: right; word-wrap: break-word; display: block; } .edit-post-post-link__preview-link-container { direction: ltr; } .edit-post-post-schedule { width: 100%; position: relative; justify-content: left; } .edit-post-post-schedule span { display: block; width: 45%; } .components-button.edit-post-post-schedule__toggle { text-align: left; } .edit-post-post-schedule__dialog .components-popover__content > div { padding: 0; } .editor-post-slug__input { margin: -5px 0; padding: 2px; } .edit-post-post-status .edit-post-post-publish-dropdown__switch-to-draft { margin-top: 15px; width: 100%; text-align: center; } .edit-post-post-visibility { width: 100%; justify-content: left; } .edit-post-post-visibility span { display: block; width: 45%; } @media (min-width: 782px) { .edit-post-post-visibility__dialog .components-popover__content { width: 257px; } } .edit-post-post-visibility__dialog-legend { font-weight: 600; } .edit-post-post-visibility__choice { margin: 10px 0; } .edit-post-post-visibility__dialog-radio, .edit-post-post-visibility__dialog-label { vertical-align: top; } .edit-post-post-visibility__dialog-password-input { width: calc(100% - 20px); margin-right: 20px; } .edit-post-post-visibility__dialog-info { color: #757575; padding-right: 20px; font-style: italic; margin: 4px 0 0; line-height: 1.4; } .components-button.edit-post-sidebar__panel-tab { border-radius: 0; height: 48px; background: transparent; border: none; box-shadow: none; cursor: pointer; display: inline-block; padding: 3px 15px; margin-right: 0; font-weight: 500; } .components-button.edit-post-sidebar__panel-tab::after { content: attr(data-label); display: block; font-weight: 600; height: 0; overflow: hidden; speak: none; visibility: hidden; } .components-button.edit-post-sidebar__panel-tab.is-active { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) transparent, inset 0 -4px 0 0 var(--wp-admin-theme-color); position: relative; z-index: 1; } .components-button.edit-post-sidebar__panel-tab.is-active::before { content: ""; position: absolute; top: 0; bottom: 1px; left: 0; right: 0; border-bottom: 4px solid transparent; } .components-button.edit-post-sidebar__panel-tab:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); position: relative; z-index: 1; } .components-button.edit-post-sidebar__panel-tab.is-active:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 -4px 0 0 var(--wp-admin-theme-color); } @media (min-width: 782px) { .edit-post-template__modal .components-base-control { width: 320px; } } .edit-post-template__modal .components-modal__header { border-bottom: none; } .edit-post-template__modal .components-modal__content::before { margin-bottom: 4px; } .edit-post-template__modal-actions { margin-top: 12px; } .edit-post-template-modal__tip { padding: 16px 24px; background: #f0f0f0; border-radius: 2px; } @media (min-width: 782px) { .edit-post-template-modal__tip { width: 240px; } } .edit-post-template__actions button:not(:last-child) { margin-left: 8px; } h2.edit-post-template-summary__title { line-height: 24px; margin: 0 0 4px; font-weight: 500; } .edit-post-text-editor { position: relative; width: 100%; background-color: #fff; flex-grow: 1; } .edit-post-text-editor .editor-post-title { max-width: none; line-height: 1.4; font-family: Menlo, Consolas, monaco, monospace; font-size: 2.5em; font-weight: normal; border: 1px solid #949494; padding: 16px; } @media (min-width: 600px) { .edit-post-text-editor .editor-post-title { padding: 24px; } } .edit-post-text-editor .editor-post-title:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .edit-post-text-editor__body { width: 100%; padding: 0 12px 12px 12px; max-width: 1080px; margin-right: auto; margin-left: auto; } @media (min-width: 960px) { .edit-post-text-editor__body { padding: 16px 24px 96px 24px; padding: 0 24px 24px 24px; } } .edit-post-text-editor__toolbar { position: sticky; z-index: 1; top: 0; right: 0; left: 0; display: flex; background: rgba(255, 255, 255, 0.8); padding: 4px 12px; } @media (min-width: 600px) { .edit-post-text-editor__toolbar { padding: 12px; } } @media (min-width: 960px) { .edit-post-text-editor__toolbar { padding: 12px 24px; } } .edit-post-text-editor__toolbar h2 { line-height: 36px; margin: 0 0 0 auto; font-size: 13px; color: #1e1e1e; } .edit-post-text-editor__toolbar .components-button svg { order: 1; } .edit-post-visual-editor { position: relative; display: flex; flex-flow: column; background-color: #2f2f2f; flex: 1 0 auto; } .edit-post-visual-editor .components-button { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; padding: 6px 12px; } .edit-post-visual-editor .components-button.is-tertiary, .edit-post-visual-editor .components-button.has-icon { padding: 6px; } .edit-post-visual-editor__post-title-wrapper { margin-top: 4rem; margin-bottom: var(--wp--style--block-gap); } .edit-post-visual-editor__post-title-wrapper .editor-post-title { margin-right: auto; margin-left: auto; } .edit-post-visual-editor__exit-template-mode { position: absolute; top: 8px; right: 8px; color: #fff; } .edit-post-visual-editor__exit-template-mode:active:not([aria-disabled=true]), .edit-post-visual-editor__exit-template-mode:focus:not([aria-disabled=true]), .edit-post-visual-editor__exit-template-mode:hover { color: #f0f0f0; } .edit-post-visual-editor__content-area { width: 100%; height: 100%; position: relative; display: flex; flex-grow: 1; } .edit-post-welcome-guide { width: 312px; } .edit-post-welcome-guide__image { background: #00a0d2; margin: 0 0 16px; } .edit-post-welcome-guide__image > img { display: block; max-width: 100%; -o-object-fit: cover; object-fit: cover; } .edit-post-welcome-guide__heading { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 24px; line-height: 1.4; margin: 16px 0 16px 0; padding: 0 32px; } .edit-post-welcome-guide__text { font-size: 13px; line-height: 1.4; margin: 0 0 24px 0; padding: 0 32px; } .edit-post-welcome-guide__inserter-icon { margin: 0 4px; vertical-align: text-top; } /** * Animations */ @keyframes edit-post__fade-in-animation { from { opacity: 0; } to { opacity: 1; } } html.wp-toolbar { background: #fff; } body.block-editor-page { background: #fff; /* We hide legacy notices in Gutenberg Based Pages, because they were not designed in a way that scaled well. Plugins can use Gutenberg notices if they need to pass on information to the user when they are editing. */ } body.block-editor-page #wpcontent { padding-right: 0; } body.block-editor-page #wpbody-content { padding-bottom: 0; } body.block-editor-page #wpbody-content > div:not(.block-editor):not(#screen-meta) { display: none; } body.block-editor-page #wpfooter { display: none; } body.block-editor-page .a11y-speak-region { right: -1px; top: -1px; } body.block-editor-page ul#adminmenu a.wp-has-current-submenu::after, body.block-editor-page ul#adminmenu > li.current > a.current::after { border-left-color: #fff; } body.block-editor-page .media-frame select.attachment-filters:last-of-type { width: auto; max-width: 100%; } .block-editor-page #wpwrap { overflow-y: auto; } @media (min-width: 782px) { .block-editor-page #wpwrap { overflow-y: initial; } } .edit-post-header, .edit-post-visual-editor, .edit-post-text-editor, .edit-post-sidebar, .editor-post-publish-panel, .components-popover, .components-modal__frame, .edit-post-editor__inserter-panel { box-sizing: border-box; } .edit-post-header *, .edit-post-header *::before, .edit-post-header *::after, .edit-post-visual-editor *, .edit-post-visual-editor *::before, .edit-post-visual-editor *::after, .edit-post-text-editor *, .edit-post-text-editor *::before, .edit-post-text-editor *::after, .edit-post-sidebar *, .edit-post-sidebar *::before, .edit-post-sidebar *::after, .editor-post-publish-panel *, .editor-post-publish-panel *::before, .editor-post-publish-panel *::after, .components-popover *, .components-popover *::before, .components-popover *::after, .components-modal__frame *, .components-modal__frame *::before, .components-modal__frame *::after, .edit-post-editor__inserter-panel *, .edit-post-editor__inserter-panel *::before, .edit-post-editor__inserter-panel *::after { box-sizing: inherit; } @media (min-width: 600px) { .block-editor__container { position: absolute; top: 0; left: 0; bottom: 0; right: 0; min-height: calc(100vh - 46px); } } @media (min-width: 782px) { .block-editor__container { min-height: calc(100vh - 32px); } body.is-fullscreen-mode .block-editor__container { min-height: 100vh; } } .block-editor__container img { max-width: 100%; height: auto; } .block-editor__container iframe { width: 100%; } body.admin-color-light { --wp-admin-theme-color: #0085ba; --wp-admin-theme-color--rgb: 0, 133, 186; --wp-admin-theme-color-darker-10: #0073a1; --wp-admin-theme-color-darker-10--rgb: 0, 115, 161; --wp-admin-theme-color-darker-20: #006187; --wp-admin-theme-color-darker-20--rgb: 0, 97, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-light { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-modern { --wp-admin-theme-color: #3858e9; --wp-admin-theme-color--rgb: 56, 88, 233; --wp-admin-theme-color-darker-10: #2145e6; --wp-admin-theme-color-darker-10--rgb: 33, 69, 230; --wp-admin-theme-color-darker-20: #183ad6; --wp-admin-theme-color-darker-20--rgb: 24, 58, 214; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-modern { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-blue { --wp-admin-theme-color: #096484; --wp-admin-theme-color--rgb: 9, 100, 132; --wp-admin-theme-color-darker-10: #07526c; --wp-admin-theme-color-darker-10--rgb: 7, 82, 108; --wp-admin-theme-color-darker-20: #064054; --wp-admin-theme-color-darker-20--rgb: 6, 64, 84; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-blue { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-coffee { --wp-admin-theme-color: #46403c; --wp-admin-theme-color--rgb: 70, 64, 60; --wp-admin-theme-color-darker-10: #383330; --wp-admin-theme-color-darker-10--rgb: 56, 51, 48; --wp-admin-theme-color-darker-20: #2b2724; --wp-admin-theme-color-darker-20--rgb: 43, 39, 36; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-coffee { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-ectoplasm { --wp-admin-theme-color: #523f6d; --wp-admin-theme-color--rgb: 82, 63, 109; --wp-admin-theme-color-darker-10: #46365d; --wp-admin-theme-color-darker-10--rgb: 70, 54, 93; --wp-admin-theme-color-darker-20: #3a2c4d; --wp-admin-theme-color-darker-20--rgb: 58, 44, 77; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-ectoplasm { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-midnight { --wp-admin-theme-color: #e14d43; --wp-admin-theme-color--rgb: 225, 77, 67; --wp-admin-theme-color-darker-10: #dd382d; --wp-admin-theme-color-darker-10--rgb: 221, 56, 45; --wp-admin-theme-color-darker-20: #d02c21; --wp-admin-theme-color-darker-20--rgb: 208, 44, 33; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-midnight { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-ocean { --wp-admin-theme-color: #627c83; --wp-admin-theme-color--rgb: 98, 124, 131; --wp-admin-theme-color-darker-10: #576e74; --wp-admin-theme-color-darker-10--rgb: 87, 110, 116; --wp-admin-theme-color-darker-20: #4c6066; --wp-admin-theme-color-darker-20--rgb: 76, 96, 102; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-ocean { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-sunrise { --wp-admin-theme-color: #dd823b; --wp-admin-theme-color--rgb: 221, 130, 59; --wp-admin-theme-color-darker-10: #d97426; --wp-admin-theme-color-darker-10--rgb: 217, 116, 38; --wp-admin-theme-color-darker-20: #c36922; --wp-admin-theme-color-darker-20--rgb: 195, 105, 34; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-sunrise { --wp-admin-border-width-focus: 1.5px; } }PKj l\Wucss/dist/edit-post/style.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .components-panel__header.interface-complementary-area-header__small { background: #fff; padding-right: 4px; } .components-panel__header.interface-complementary-area-header__small .interface-complementary-area-header__small-title { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; width: 100%; } @media (min-width: 782px) { .components-panel__header.interface-complementary-area-header__small { display: none; } } .interface-complementary-area-header { background: #fff; padding-right: 4px; } .interface-complementary-area-header .components-button.has-icon { display: none; margin-left: auto; } .interface-complementary-area-header .components-button.has-icon ~ .components-button { margin-left: 0; } @media (min-width: 782px) { .interface-complementary-area-header .components-button.has-icon { display: flex; } } @media (min-width: 782px) { .components-panel__header + .interface-complementary-area-header { margin-top: 0; } } .interface-complementary-area { background: #fff; color: #1e1e1e; } @media (min-width: 600px) { .interface-complementary-area { -webkit-overflow-scrolling: touch; } } @media (min-width: 782px) { .interface-complementary-area { width: 280px; } } .interface-complementary-area .components-panel { border: none; position: relative; z-index: 0; } .interface-complementary-area .components-panel__header { position: sticky; top: 0; z-index: 1; } .interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs { top: 48px; } @media (min-width: 782px) { .interface-complementary-area .components-panel__header.edit-post-sidebar__panel-tabs { top: 0; } } .interface-complementary-area p { margin-top: 0; } .interface-complementary-area h2 { font-size: 13px; color: #1e1e1e; margin-bottom: 1.5em; } .interface-complementary-area h3 { font-size: 11px; text-transform: uppercase; font-weight: 500; color: #1e1e1e; margin-bottom: 1.5em; } .interface-complementary-area hr { border-top: none; border-bottom: 1px solid #f0f0f0; margin: 1.5em 0; } .interface-complementary-area div.components-toolbar-group, .interface-complementary-area div.components-toolbar { box-shadow: none; margin-bottom: 1.5em; } .interface-complementary-area div.components-toolbar-group:last-child, .interface-complementary-area div.components-toolbar:last-child { margin-bottom: 0; } .interface-complementary-area .block-editor-skip-to-selected-block:focus { top: auto; right: 10px; bottom: 10px; left: auto; } @media (min-width: 782px) { body.js.is-fullscreen-mode { margin-top: -32px; height: calc(100% + 32px); } body.js.is-fullscreen-mode #adminmenumain, body.js.is-fullscreen-mode #wpadminbar { display: none; } body.js.is-fullscreen-mode #wpcontent, body.js.is-fullscreen-mode #wpfooter { margin-left: 0; } } html.interface-interface-skeleton__html-container { position: fixed; width: 100%; } @media (min-width: 782px) { html.interface-interface-skeleton__html-container { position: initial; width: initial; } } .interface-interface-skeleton { display: flex; flex-direction: row; height: auto; max-height: 100%; position: fixed; top: 46px; left: 0; right: 0; bottom: 0; } @media (min-width: 783px) { .interface-interface-skeleton { top: 32px; } .is-fullscreen-mode .interface-interface-skeleton { top: 0; } } .interface-interface-skeleton__editor { display: flex; flex-direction: column; flex: 0 1 100%; overflow: hidden; } .interface-interface-skeleton { /* Set left position when auto-fold is not on the body element. */ left: 0; } @media (min-width: 783px) { .interface-interface-skeleton { left: 160px; } } .auto-fold .interface-interface-skeleton { /* Auto fold is when on smaller breakpoints, nav menu auto collapses. */ } @media (min-width: 783px) { .auto-fold .interface-interface-skeleton { left: 36px; } } @media (min-width: 961px) { .auto-fold .interface-interface-skeleton { left: 160px; } } /* Sidebar manually collapsed. */ .folded .interface-interface-skeleton { left: 0; } @media (min-width: 783px) { .folded .interface-interface-skeleton { left: 36px; } } body.is-fullscreen-mode .interface-interface-skeleton { left: 0 !important; } .interface-interface-skeleton__body { flex-grow: 1; display: flex; overflow: auto; overscroll-behavior-y: none; } @media (min-width: 782px) { .has-footer .interface-interface-skeleton__body { padding-bottom: 25px; } } .interface-interface-skeleton__content { flex-grow: 1; display: flex; flex-direction: column; overflow: auto; z-index: 20; } .interface-interface-skeleton__secondary-sidebar, .interface-interface-skeleton__sidebar { display: block; flex-shrink: 0; position: absolute; z-index: 100000; top: 0; right: 0; bottom: 0; left: 0; background: #fff; color: #1e1e1e; } @media (min-width: 782px) { .interface-interface-skeleton__secondary-sidebar, .interface-interface-skeleton__sidebar { position: relative !important; z-index: 90; width: auto; } } .interface-interface-skeleton__sidebar { overflow: auto; } @media (min-width: 782px) { .interface-interface-skeleton__sidebar { border-left: 1px solid #e0e0e0; } } @media (min-width: 782px) { .interface-interface-skeleton__secondary-sidebar { border-right: 1px solid #e0e0e0; } } .interface-interface-skeleton__header { flex-shrink: 0; height: auto; border-bottom: 1px solid #e0e0e0; z-index: 30; color: #1e1e1e; } .interface-interface-skeleton__footer { height: auto; flex-shrink: 0; border-top: 1px solid #e0e0e0; color: #1e1e1e; position: absolute; bottom: 0; left: 0; width: 100%; background-color: #fff; z-index: 90; display: none; } @media (min-width: 782px) { .interface-interface-skeleton__footer { display: flex; } } .interface-interface-skeleton__footer .block-editor-block-breadcrumb { z-index: 30; display: flex; background: #fff; height: 24px; align-items: center; font-size: 13px; padding: 0 18px; } .interface-interface-skeleton__actions { z-index: 100000; position: fixed !important; top: -9999em; bottom: auto; left: auto; right: 0; width: 280px; color: #1e1e1e; } .interface-interface-skeleton__actions:focus { top: auto; bottom: 0; } .interface-more-menu-dropdown { margin-left: -4px; } .interface-more-menu-dropdown .components-button { width: auto; padding: 0 2px; } @media (min-width: 600px) { .interface-more-menu-dropdown { margin-left: 0; } .interface-more-menu-dropdown .components-button { padding: 0 4px; } } .interface-more-menu-dropdown__content .components-popover__content { min-width: 280px; } @media (min-width: 480px) { .interface-more-menu-dropdown__content .components-popover__content { width: auto; max-width: 480px; } } .interface-more-menu-dropdown__content .components-popover__content .components-dropdown-menu__menu { padding: 0; } .components-popover.interface-more-menu-dropdown__content { z-index: 99998; } .interface-pinned-items { display: flex; } .interface-pinned-items .components-button:not(:first-child) { display: none; } @media (min-width: 600px) { .interface-pinned-items .components-button:not(:first-child) { display: flex; } } .interface-pinned-items .components-button { margin-left: 4px; } .interface-pinned-items .components-button svg { max-width: 24px; max-height: 24px; } .edit-post-header { height: 60px; background: #fff; display: flex; flex-wrap: wrap; align-items: center; max-width: 100vw; } @media (min-width: 280px) { .edit-post-header { flex-wrap: nowrap; } } .edit-post-header > .edit-post-header__settings { order: 1; } @supports (position: sticky) { .edit-post-header > .edit-post-header__settings { order: initial; } } .edit-post-header__toolbar { display: flex; flex-grow: 1; } .edit-post-header__toolbar .table-of-contents { display: none; } @media (min-width: 600px) { .edit-post-header__toolbar .table-of-contents { display: block; } } .edit-post-header__settings { display: inline-flex; align-items: center; flex-wrap: wrap; padding-right: 4px; /** * Buttons in the Toolbar */ } @media (min-width: 600px) { .edit-post-header__settings { padding-right: 16px; } } .edit-post-header__settings .editor-post-saved-state, .edit-post-header__settings .components-button.components-button { margin-right: 4px; } @media (min-width: 600px) { .edit-post-header__settings .editor-post-saved-state, .edit-post-header__settings .components-button.components-button { margin-right: 12px; } } .edit-post-header__settings .editor-post-saved-state, .edit-post-header__settings .components-button.is-tertiary { padding: 0 6px; } .edit-post-header__settings .edit-post-more-menu .components-button, .edit-post-header__settings .interface-pinned-items .components-button { margin-right: 0; } .edit-post-header-preview__grouping-external { display: flex; position: relative; padding-bottom: 0; } .edit-post-header-preview__button-external { padding-left: 8px; margin-right: auto; width: 100%; display: flex; justify-content: flex-start; } .edit-post-header-preview__button-external svg { margin-left: auto; } .edit-post-post-preview-dropdown .components-popover__content > div { padding-bottom: 0; } .show-icon-labels.interface-pinned-items .components-button.has-icon, .show-icon-labels .edit-post-header .components-button.has-icon, .edit-post-header__dropdown .components-button.has-icon { width: auto; } .show-icon-labels.interface-pinned-items .components-button.has-icon svg, .show-icon-labels .edit-post-header .components-button.has-icon svg, .edit-post-header__dropdown .components-button.has-icon svg { display: none; } .show-icon-labels.interface-pinned-items .components-button.has-icon::after, .show-icon-labels .edit-post-header .components-button.has-icon::after, .edit-post-header__dropdown .components-button.has-icon::after { content: attr(aria-label); } .show-icon-labels.interface-pinned-items .components-button.has-icon[aria-disabled=true], .show-icon-labels .edit-post-header .components-button.has-icon[aria-disabled=true], .edit-post-header__dropdown .components-button.has-icon[aria-disabled=true] { background-color: transparent; } .show-icon-labels.interface-pinned-items .is-tertiary:active, .show-icon-labels .edit-post-header .is-tertiary:active, .edit-post-header__dropdown .is-tertiary:active { box-shadow: 0 0 0 1.5px var(--wp-admin-theme-color); background-color: transparent; } .show-icon-labels.interface-pinned-items .edit-post-fullscreen-mode-close.has-icon svg, .show-icon-labels.interface-pinned-items .components-button.has-icon.button-toggle svg, .show-icon-labels .edit-post-header .edit-post-fullscreen-mode-close.has-icon svg, .show-icon-labels .edit-post-header .components-button.has-icon.button-toggle svg, .edit-post-header__dropdown .edit-post-fullscreen-mode-close.has-icon svg, .edit-post-header__dropdown .components-button.has-icon.button-toggle svg { display: block; } .show-icon-labels.interface-pinned-items .edit-post-fullscreen-mode-close.has-icon::after, .show-icon-labels.interface-pinned-items .components-button.has-icon.button-toggle::after, .show-icon-labels .edit-post-header .edit-post-fullscreen-mode-close.has-icon::after, .show-icon-labels .edit-post-header .components-button.has-icon.button-toggle::after, .edit-post-header__dropdown .edit-post-fullscreen-mode-close.has-icon::after, .edit-post-header__dropdown .components-button.has-icon.button-toggle::after { content: none; } .show-icon-labels.interface-pinned-items .edit-post-fullscreen-mode-close.has-icon, .show-icon-labels .edit-post-header .edit-post-fullscreen-mode-close.has-icon, .edit-post-header__dropdown .edit-post-fullscreen-mode-close.has-icon { width: 60px; } .show-icon-labels.interface-pinned-items .components-menu-items-choice .components-menu-items__item-icon.components-menu-items__item-icon, .show-icon-labels .edit-post-header .components-menu-items-choice .components-menu-items__item-icon.components-menu-items__item-icon, .edit-post-header__dropdown .components-menu-items-choice .components-menu-items__item-icon.components-menu-items__item-icon { display: block; } .show-icon-labels.interface-pinned-items .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle, .show-icon-labels.interface-pinned-items .interface-pinned-items .components-button, .show-icon-labels .edit-post-header .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle, .show-icon-labels .edit-post-header .interface-pinned-items .components-button, .edit-post-header__dropdown .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle, .edit-post-header__dropdown .interface-pinned-items .components-button { padding-left: 8px; padding-right: 8px; } @media (min-width: 600px) { .show-icon-labels.interface-pinned-items .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle, .show-icon-labels.interface-pinned-items .interface-pinned-items .components-button, .show-icon-labels .edit-post-header .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle, .show-icon-labels .edit-post-header .interface-pinned-items .components-button, .edit-post-header__dropdown .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle, .edit-post-header__dropdown .interface-pinned-items .components-button { padding-left: 12px; padding-right: 12px; } } .show-icon-labels.interface-pinned-items .components-dropdown-menu__toggle, .show-icon-labels .edit-post-header .components-dropdown-menu__toggle, .edit-post-header__dropdown .components-dropdown-menu__toggle { margin-left: 8px; padding-left: 8px; padding-right: 8px; } @media (min-width: 600px) { .show-icon-labels.interface-pinned-items .components-dropdown-menu__toggle, .show-icon-labels .edit-post-header .components-dropdown-menu__toggle, .edit-post-header__dropdown .components-dropdown-menu__toggle { margin-left: 12px; padding-left: 12px; padding-right: 12px; } } .show-icon-labels.interface-pinned-items .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle::after, .show-icon-labels .edit-post-header .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle::after, .edit-post-header__dropdown .edit-post-header-toolbar__inserter-toggle.edit-post-header-toolbar__inserter-toggle::after { content: none; } .show-icon-labels.interface-pinned-items .editor-post-save-draft.editor-post-save-draft::after, .show-icon-labels .edit-post-header .editor-post-save-draft.editor-post-save-draft::after, .edit-post-header__dropdown .editor-post-save-draft.editor-post-save-draft::after { content: none; } @media (min-width: 600px) { .show-icon-labels.interface-pinned-items .editor-post-save-draft.editor-post-save-draft::after, .show-icon-labels .edit-post-header .editor-post-save-draft.editor-post-save-draft::after, .edit-post-header__dropdown .editor-post-save-draft.editor-post-save-draft::after { content: attr(aria-label); } } .edit-post-header__dropdown .components-menu-item__button.components-menu-item__button, .edit-post-header__dropdown .components-button.editor-history__undo, .edit-post-header__dropdown .components-button.editor-history__redo, .edit-post-header__dropdown .table-of-contents .components-button, .edit-post-header__dropdown .components-button.block-editor-list-view { margin: 0; padding: 6px 6px 6px 40px; width: 14.625rem; text-align: left; justify-content: flex-start; } .show-icon-labels.interface-pinned-items { padding: 6px 12px 12px; margin-top: 0; margin-bottom: 0; margin-left: -12px; margin-right: -12px; border-bottom: 1px solid #ccc; display: block; } .show-icon-labels.interface-pinned-items > .components-button.has-icon { margin: 0; padding: 6px 6px 6px 8px; width: 14.625rem; justify-content: flex-start; } .show-icon-labels.interface-pinned-items > .components-button.has-icon[aria-expanded=true] svg { display: block; max-width: 24px; } .show-icon-labels.interface-pinned-items > .components-button.has-icon[aria-expanded=false] { padding-left: 40px; } .show-icon-labels.interface-pinned-items > .components-button.has-icon svg { margin-right: 8px; } .edit-post-fullscreen-mode-close.has-icon { display: none; } @media (min-width: 782px) { .edit-post-fullscreen-mode-close.has-icon { display: flex; align-items: center; align-self: stretch; border: none; background: #1e1e1e; color: #fff; border-radius: 0; height: 61px; width: 60px; position: relative; margin-bottom: -1px; } .edit-post-fullscreen-mode-close.has-icon:active { color: #fff; } .edit-post-fullscreen-mode-close.has-icon:focus { box-shadow: none; } .edit-post-fullscreen-mode-close.has-icon::before { transition: box-shadow 0.1s ease; content: ""; display: block; position: absolute; top: 9px; right: 9px; bottom: 9px; left: 9px; border-radius: 4px; box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) #1e1e1e; } } @media (min-width: 782px) and (prefers-reduced-motion: reduce) { .edit-post-fullscreen-mode-close.has-icon::before { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 782px) { .edit-post-fullscreen-mode-close.has-icon:hover::before { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) #757575; } } @media (min-width: 782px) { .edit-post-fullscreen-mode-close.has-icon:focus::before { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) rgba(255, 255, 255, 0.1), inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } } .edit-post-fullscreen-mode-close.has-icon .edit-post-fullscreen-mode-close_site-icon { width: 36px; height: 36px; border-radius: 2px; -o-object-fit: cover; object-fit: cover; margin-top: -1px; } .edit-post-header-toolbar { display: inline-flex; flex-grow: 1; align-items: center; border: none; } .edit-post-header-toolbar .edit-post-header-toolbar__left > .components-button { display: none; } @media (min-width: 600px) { .edit-post-header-toolbar .edit-post-header-toolbar__left > .components-button { display: inline-flex; } } .edit-post-header-toolbar .edit-post-header-toolbar__left > .edit-post-header-toolbar__inserter-toggle { display: inline-flex; } .edit-post-header-toolbar .edit-post-header-toolbar__left > .edit-post-header-toolbar__inserter-toggle svg { transition: transform cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s; } @media (prefers-reduced-motion: reduce) { .edit-post-header-toolbar .edit-post-header-toolbar__left > .edit-post-header-toolbar__inserter-toggle svg { transition-duration: 0s; transition-delay: 0s; } } .edit-post-header-toolbar .edit-post-header-toolbar__left > .edit-post-header-toolbar__inserter-toggle.is-pressed svg { transform: rotate(45deg); } .edit-post-header-toolbar .block-editor-list-view { display: none; } @media (min-width: 600px) { .edit-post-header-toolbar .block-editor-list-view { display: flex; } } .edit-post-header-toolbar .edit-post-header-toolbar__left > .components-button.has-icon, .edit-post-header-toolbar .edit-post-header-toolbar__left > .components-dropdown > .components-button.has-icon { height: 36px; min-width: 36px; padding: 6px; } .edit-post-header-toolbar .edit-post-header-toolbar__left > .components-button.has-icon.is-pressed, .edit-post-header-toolbar .edit-post-header-toolbar__left > .components-dropdown > .components-button.has-icon.is-pressed { background: #1e1e1e; } .edit-post-header-toolbar .edit-post-header-toolbar__left > .components-button.has-icon:focus:not(:disabled), .edit-post-header-toolbar .edit-post-header-toolbar__left > .components-dropdown > .components-button.has-icon:focus:not(:disabled) { box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 0 0 1px #fff; outline: 1px solid transparent; } .edit-post-header-toolbar .edit-post-header-toolbar__left > .components-button.has-icon::before, .edit-post-header-toolbar .edit-post-header-toolbar__left > .components-dropdown > .components-button.has-icon::before { display: none; } @media (min-width: 600px) { .edit-post-header.has-reduced-ui .edit-post-header-toolbar__left > * + .components-button, .edit-post-header.has-reduced-ui .edit-post-header-toolbar__left > * + .components-dropdown > [aria-expanded=false] { transition: opacity 0.1s linear; } } @media (min-width: 600px) and (prefers-reduced-motion: reduce) { .edit-post-header.has-reduced-ui .edit-post-header-toolbar__left > * + .components-button, .edit-post-header.has-reduced-ui .edit-post-header-toolbar__left > * + .components-dropdown > [aria-expanded=false] { transition-duration: 0s; transition-delay: 0s; } } @media (min-width: 600px) { .edit-post-header.has-reduced-ui:not(:hover) .edit-post-header-toolbar__left > * + .components-button, .edit-post-header.has-reduced-ui:not(:hover) .edit-post-header-toolbar__left > * + .components-dropdown > [aria-expanded=false] { opacity: 0; } } .edit-post-header-toolbar__left { display: inline-flex; align-items: center; padding-left: 8px; } @media (min-width: 600px) { .edit-post-header-toolbar__left { padding-left: 24px; } } @media (min-width: 1280px) { .edit-post-header-toolbar__left { padding-right: 8px; } } .edit-post-header-toolbar .edit-post-header-toolbar__left > .edit-post-header-toolbar__inserter-toggle.has-icon { margin-right: 8px; min-width: 32px; width: 32px; height: 32px; padding: 0; } .show-icon-labels .edit-post-header-toolbar .edit-post-header-toolbar__left > .edit-post-header-toolbar__inserter-toggle.has-icon { height: 36px; } .edit-post-header-toolbar .edit-post-header-toolbar__left > .edit-post-header-toolbar__inserter-toggle.has-text.has-icon { width: auto; padding: 0 8px; } .show-icon-labels .edit-post-header-toolbar__left > * + * { margin-left: 8px; } .edit-post-more-menu { margin-left: -4px; } .edit-post-more-menu .components-button { width: auto; padding: 0 2px; } @media (min-width: 600px) { .edit-post-more-menu { margin-left: 0; } .edit-post-more-menu .components-button { padding: 0 4px; } } .edit-post-more-menu__content .components-popover__content { min-width: 280px; } @media (min-width: 480px) { .edit-post-more-menu__content .components-popover__content { width: auto; max-width: 480px; } } .edit-post-more-menu__content .components-popover__content .components-dropdown-menu__menu { padding: 0; } .components-popover.edit-post-more-menu__content { z-index: 99998; } .edit-post-template-top-area { display: flex; flex-direction: column; align-content: space-between; width: 100%; align-items: center; } .edit-post-template-top-area .edit-post-template-title, .edit-post-template-top-area .edit-post-template-post-title { padding: 0; text-decoration: none; height: auto; } .edit-post-template-top-area .edit-post-template-title::before, .edit-post-template-top-area .edit-post-template-post-title::before { height: 100%; } .edit-post-template-top-area .edit-post-template-title.has-icon svg, .edit-post-template-top-area .edit-post-template-post-title.has-icon svg { order: 1; margin-right: 0; } .edit-post-template-top-area .edit-post-template-title { color: #1e1e1e; } .edit-post-template-top-area .edit-post-template-post-title { margin-top: 4px; max-width: 160px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: block; } .edit-post-template-top-area .edit-post-template-post-title::before { left: 0; right: 0; } @media (min-width: 1080px) { .edit-post-template-top-area .edit-post-template-post-title { max-width: none; } } .edit-post-template-top-area__popover .components-popover__content { min-width: 280px; padding: 8px; } .edit-post-template-top-area__popover .edit-post-template-details__description { color: #757575; } .edit-post-template-top-area__second-menu-group { margin-left: -16px; margin-right: -16px; padding: 16px; padding-bottom: 0; border-top: 1px solid #ddd; } .edit-post-template-top-area__second-menu-group .edit-post-template-top-area__delete-template-button { display: flex; justify-content: center; } .edit-post-template-top-area__second-menu-group .edit-post-template-top-area__delete-template-button .components-menu-item__item { margin-right: 0; min-width: 0; } .edit-post-keyboard-shortcut-help-modal__section { margin: 0 0 2rem 0; } .edit-post-keyboard-shortcut-help-modal__main-shortcuts .edit-post-keyboard-shortcut-help-modal__shortcut-list { margin-top: -25px; } .edit-post-keyboard-shortcut-help-modal__section-title { font-size: 0.9rem; font-weight: 600; } .edit-post-keyboard-shortcut-help-modal__shortcut { display: flex; align-items: baseline; padding: 0.6rem 0; border-top: 1px solid #ddd; margin-bottom: 0; } .edit-post-keyboard-shortcut-help-modal__shortcut:last-child { border-bottom: 1px solid #ddd; } .edit-post-keyboard-shortcut-help-modal__shortcut:empty { display: none; } .edit-post-keyboard-shortcut-help-modal__shortcut-term { font-weight: 600; margin: 0 0 0 1rem; text-align: right; } .edit-post-keyboard-shortcut-help-modal__shortcut-description { flex: 1; margin: 0; flex-basis: auto; } .edit-post-keyboard-shortcut-help-modal__shortcut-key-combination { display: block; background: none; margin: 0; padding: 0; } .edit-post-keyboard-shortcut-help-modal__shortcut-key-combination + .edit-post-keyboard-shortcut-help-modal__shortcut-key-combination { margin-top: 10px; } .edit-post-keyboard-shortcut-help-modal__shortcut-key { padding: 0.25rem 0.5rem; border-radius: 8%; margin: 0 0.2rem 0 0.2rem; } .edit-post-keyboard-shortcut-help-modal__shortcut-key:last-child { margin: 0 0 0 0.2rem; } .edit-post-layout__metaboxes { flex-shrink: 0; clear: both; } .edit-post-layout .components-editor-notices__snackbar { position: fixed; right: 0; bottom: 40px; padding-left: 16px; padding-right: 16px; } .edit-post-layout .components-editor-notices__snackbar { /* Set left position when auto-fold is not on the body element. */ left: 0; } @media (min-width: 783px) { .edit-post-layout .components-editor-notices__snackbar { left: 160px; } } .auto-fold .edit-post-layout .components-editor-notices__snackbar { /* Auto fold is when on smaller breakpoints, nav menu auto collapses. */ } @media (min-width: 783px) { .auto-fold .edit-post-layout .components-editor-notices__snackbar { left: 36px; } } @media (min-width: 961px) { .auto-fold .edit-post-layout .components-editor-notices__snackbar { left: 160px; } } /* Sidebar manually collapsed. */ .folded .edit-post-layout .components-editor-notices__snackbar { left: 0; } @media (min-width: 783px) { .folded .edit-post-layout .components-editor-notices__snackbar { left: 36px; } } body.is-fullscreen-mode .edit-post-layout .components-editor-notices__snackbar { left: 0 !important; } .edit-post-layout .editor-post-publish-panel { position: fixed; z-index: 100001; top: 46px; bottom: 0; right: 0; left: 0; overflow: auto; } @media (min-width: 782px) { .edit-post-layout .editor-post-publish-panel { z-index: 99998; top: 32px; left: auto; width: 281px; border-left: 1px solid #ddd; transform: translateX(100%); animation: edit-post-post-publish-panel__slide-in-animation 0.1s forwards; } } @media (min-width: 782px) and (prefers-reduced-motion: reduce) { .edit-post-layout .editor-post-publish-panel { animation-duration: 1ms; animation-delay: 0s; } } @media (min-width: 782px) { body.is-fullscreen-mode .edit-post-layout .editor-post-publish-panel { top: 0; } } @media (min-width: 782px) { [role=region]:focus .edit-post-layout .editor-post-publish-panel { transform: translateX(0%); } } @keyframes edit-post-post-publish-panel__slide-in-animation { 100% { transform: translateX(0%); } } .edit-post-layout .editor-post-publish-panel__header-publish-button { justify-content: center; } .edit-post-layout__toggle-publish-panel, .edit-post-layout__toggle-sidebar-panel, .edit-post-layout__toggle-entities-saved-states-panel { z-index: 100000; position: fixed !important; top: -9999em; bottom: auto; left: auto; right: 0; width: 280px; background-color: #fff; border: 1px dotted #ddd; height: auto !important; padding: 24px; display: flex; justify-content: center; } .interface-interface-skeleton__actions:focus .edit-post-layout__toggle-publish-panel, .interface-interface-skeleton__actions:focus-within .edit-post-layout__toggle-publish-panel, .interface-interface-skeleton__actions:focus .edit-post-layout__toggle-sidebar-panel, .interface-interface-skeleton__actions:focus-within .edit-post-layout__toggle-sidebar-panel, .interface-interface-skeleton__actions:focus .edit-post-layout__toggle-entities-saved-states-panel, .interface-interface-skeleton__actions:focus-within .edit-post-layout__toggle-entities-saved-states-panel { top: auto; bottom: 0; } .edit-post-block-manager__no-results { font-style: italic; padding: 24px 0; text-align: center; } .edit-post-block-manager__search { margin: 16px 0; } .edit-post-block-manager__disabled-blocks-count { border: 1px solid #ddd; border-width: 1px 0; box-shadow: -32px 0 0 0 #fff, 32px 0 0 0 #fff; padding: 8px; background-color: #fff; text-align: center; font-style: italic; position: sticky; top: -1px; z-index: 2; } .edit-post-block-manager__disabled-blocks-count ~ .edit-post-block-manager__results .edit-post-block-manager__category-title { top: 35px; } .edit-post-block-manager__category { margin: 0 0 24px 0; } .edit-post-block-manager__category-title { position: sticky; top: 0; padding: 16px 0; background-color: #fff; z-index: 1; } .edit-post-block-manager__category-title .components-checkbox-control__label { font-weight: 600; } .edit-post-block-manager__show-all { margin-right: 8px; } .edit-post-block-manager__checklist { margin-top: 0; } .edit-post-block-manager__category-title, .edit-post-block-manager__checklist-item { border-bottom: 1px solid #ddd; } .edit-post-block-manager__category-title .components-base-control__field, .edit-post-block-manager__checklist-item .components-base-control__field { align-items: center; display: flex; margin: 0; } .edit-post-block-manager__checklist-item { margin-bottom: 0; padding-left: 16px; } .components-modal__content .edit-post-block-manager__checklist-item.components-checkbox-control__input-container { margin: 0 8px; } .edit-post-block-manager__checklist-item .components-checkbox-control__label { display: flex; align-items: center; justify-content: space-between; flex-grow: 1; padding: 8px 0; } .edit-post-block-manager__checklist-item .block-editor-block-icon { margin-right: 10px; fill: #1e1e1e; } .edit-post-block-manager__results { border-top: 1px solid #ddd; } .edit-post-block-manager__disabled-blocks-count + .edit-post-block-manager__results { border-top-width: 0; } .edit-post-meta-boxes-area { position: relative; /** * The wordpress default for most meta-box elements is content-box. Some * elements such as textarea and input are set to border-box in forms.css. * These elements therefore specifically set back to border-box here, while * other elements (such as .button) are unaffected by Gutenberg's style * because of their higher specificity. */ /* Match width and positioning of the meta boxes. Override default styles. */ /* Override Default meta box stylings */ } .edit-post-meta-boxes-area__container, .edit-post-meta-boxes-area .inside { box-sizing: content-box; } .edit-post-meta-boxes-area textarea, .edit-post-meta-boxes-area input { box-sizing: border-box; } .edit-post-meta-boxes-area .postbox-header { border-top: 1px solid #ddd; border-bottom: 0; } .edit-post-meta-boxes-area #poststuff { margin: 0 auto; padding-top: 0; min-width: auto; } .edit-post-meta-boxes-area #poststuff h3.hndle, .edit-post-meta-boxes-area #poststuff .stuffbox > h3, .edit-post-meta-boxes-area #poststuff h2.hndle { /* WordPress selectors yolo */ box-sizing: border-box; color: inherit; font-weight: 600; outline: none; padding: 0 24px; position: relative; width: 100%; } .edit-post-meta-boxes-area .postbox { border: 0; color: inherit; margin-bottom: 0; } .edit-post-meta-boxes-area .postbox > .inside { color: inherit; padding: 0 24px 24px; margin: 0; } .edit-post-meta-boxes-area .postbox .handlediv { height: 44px; width: 44px; } .edit-post-meta-boxes-area.is-loading::before { position: absolute; top: 0; left: 0; right: 0; bottom: 0; content: ""; background: transparent; z-index: 1; } .edit-post-meta-boxes-area .components-spinner { position: absolute; top: 10px; right: 20px; z-index: 5; } .edit-post-meta-boxes-area .is-hidden { display: none; } .edit-post-meta-boxes-area .metabox-location-side .postbox input[type=checkbox] { border: 1px solid #757575; } .edit-post-meta-boxes-area .metabox-location-side .postbox input[type=checkbox]:checked { background: #fff; border-color: #757575; } .edit-post-meta-boxes-area .metabox-location-side .postbox input[type=checkbox]::before { margin: -3px -4px; } .edit-post-meta-boxes-area__clear { clear: both; } @media (min-width: 600px) { .edit-post-preferences-modal { width: calc(100% - 32px); height: calc(100% - 120px); } } @media (min-width: 782px) { .edit-post-preferences-modal { width: 750px; } } @media (min-width: 960px) { .edit-post-preferences-modal { height: 70%; } } @media (max-width: 781px) { .edit-post-preferences-modal .components-modal__content { padding: 0; } .edit-post-preferences-modal .components-modal__content::before { content: none; } .edit-post-preferences-modal .components-navigator-provider { height: 100%; } } .edit-post-preferences-modal .edit-post-preferences__tabs .components-tab-panel__tabs { position: absolute; top: 84px; left: 16px; width: 160px; } .edit-post-preferences-modal .edit-post-preferences__tabs .components-tab-panel__tabs .components-tab-panel__tabs-item { border-radius: 2px; font-weight: 400; } .edit-post-preferences-modal .edit-post-preferences__tabs .components-tab-panel__tabs .components-tab-panel__tabs-item.is-active { background: #f0f0f0; box-shadow: none; font-weight: 500; } .edit-post-preferences-modal .edit-post-preferences__tabs .components-tab-panel__tabs .components-tab-panel__tabs-item:focus:not(:disabled) { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .edit-post-preferences-modal .edit-post-preferences__tabs .components-tab-panel__tab-content { padding-left: 24px; margin-left: 160px; } .edit-post-preferences-modal__section { margin: 0 0 2.5rem 0; } .edit-post-preferences-modal__section:last-child { margin: 0; } .edit-post-preferences-modal__section-title { font-size: 0.9rem; font-weight: 600; margin-top: 0; } .edit-post-preferences-modal__option .components-base-control .components-base-control__field { align-items: center; display: flex; margin-bottom: 0; } .edit-post-preferences-modal__option .components-base-control .components-base-control__field > label { flex-grow: 1; padding: 0.6rem 0 0.6rem 10px; } .edit-post-preferences-modal__custom-fields-confirmation-message, .edit-post-preferences-modal__custom-fields-confirmation-button { margin: 0 0 0.6rem 48px; } @media (min-width: 782px) { .edit-post-preferences-modal__custom-fields-confirmation-message, .edit-post-preferences-modal__custom-fields-confirmation-button { margin-left: 38px; } } @media (min-width: 600px) { .edit-post-preferences-modal__custom-fields-confirmation-message, .edit-post-preferences-modal__custom-fields-confirmation-button { max-width: 300px; } } .edit-post-preferences-modal .components-base-control__help { margin: -8px 0 8px 58px; font-size: 12px; font-style: normal; color: #757575; } .edit-post-preferences-modal .edit-post-preferences-modal__section-description { margin: -8px 0 8px 0; font-size: 12px; font-style: normal; color: #757575; } .edit-post-editor__inserter-panel, .edit-post-editor__list-view-panel { height: 100%; display: flex; flex-direction: column; } .edit-post-editor__list-view-panel { min-width: 350px; } .edit-post-editor__inserter-panel-header { padding-top: 8px; padding-right: 8px; display: flex; justify-content: flex-end; } @media (min-width: 782px) { .edit-post-editor__inserter-panel-header { display: none; } } .edit-post-editor__inserter-panel-content, .edit-post-editor__list-view-panel-content { height: calc(100% - 36px - 8px); } @media (min-width: 782px) { .edit-post-editor__inserter-panel-content { height: 100%; } } .edit-post-editor__list-view-panel-header { align-items: center; border-bottom: 1px solid #ddd; display: flex; justify-content: space-between; height: 48px; padding-left: 16px; padding-right: 4px; } .edit-post-editor__list-view-panel-content { overflow-y: auto; padding: 8px 6px; } .components-panel__header.edit-post-sidebar__panel-tabs { justify-content: flex-start; padding-left: 0; padding-right: 16px; border-top: 0; margin-top: 0; } .components-panel__header.edit-post-sidebar__panel-tabs ul { display: flex; } .components-panel__header.edit-post-sidebar__panel-tabs li { margin: 0; } .components-panel__header.edit-post-sidebar__panel-tabs .components-button.has-icon { display: none; margin: 0 0 0 auto; padding: 0; min-width: 24px; height: 24px; } @media (min-width: 782px) { .components-panel__header.edit-post-sidebar__panel-tabs .components-button.has-icon { display: flex; } } .components-panel__body.is-opened.edit-post-last-revision__panel { padding: 0; height: 48px; } .editor-post-last-revision__title.components-button { padding: 16px; } .editor-post-author__select { margin: -5px 0; width: 100%; } @supports (position: sticky) { .editor-post-author__select { width: auto; } } .edit-post-post-link__link-post-name { font-weight: 600; } .edit-post-post-link__preview-label { font-weight: 400; margin: 0; } .edit-post-post-link__link { text-align: left; word-wrap: break-word; display: block; } /* rtl:begin:ignore */ .edit-post-post-link__preview-link-container { direction: ltr; } /* rtl:end:ignore */ .edit-post-post-schedule { width: 100%; position: relative; justify-content: left; } .edit-post-post-schedule span { display: block; width: 45%; } .components-button.edit-post-post-schedule__toggle { text-align: right; } .edit-post-post-schedule__dialog .components-popover__content > div { padding: 0; } .editor-post-slug__input { margin: -5px 0; padding: 2px; } .edit-post-post-status .edit-post-post-publish-dropdown__switch-to-draft { margin-top: 15px; width: 100%; text-align: center; } .edit-post-post-visibility { width: 100%; justify-content: left; } .edit-post-post-visibility span { display: block; width: 45%; } @media (min-width: 782px) { .edit-post-post-visibility__dialog .components-popover__content { width: 257px; } } .edit-post-post-visibility__dialog-legend { font-weight: 600; } .edit-post-post-visibility__choice { margin: 10px 0; } .edit-post-post-visibility__dialog-radio, .edit-post-post-visibility__dialog-label { vertical-align: top; } .edit-post-post-visibility__dialog-password-input { width: calc(100% - 20px); margin-left: 20px; } .edit-post-post-visibility__dialog-info { color: #757575; padding-left: 20px; font-style: italic; margin: 4px 0 0; line-height: 1.4; } .components-button.edit-post-sidebar__panel-tab { border-radius: 0; height: 48px; background: transparent; border: none; box-shadow: none; cursor: pointer; display: inline-block; padding: 3px 15px; margin-left: 0; font-weight: 500; } .components-button.edit-post-sidebar__panel-tab::after { content: attr(data-label); display: block; font-weight: 600; height: 0; overflow: hidden; speak: none; visibility: hidden; } .components-button.edit-post-sidebar__panel-tab.is-active { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) transparent, inset 0 -4px 0 0 var(--wp-admin-theme-color); position: relative; z-index: 1; } .components-button.edit-post-sidebar__panel-tab.is-active::before { content: ""; position: absolute; top: 0; bottom: 1px; right: 0; left: 0; border-bottom: 4px solid transparent; } .components-button.edit-post-sidebar__panel-tab:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); position: relative; z-index: 1; } .components-button.edit-post-sidebar__panel-tab.is-active:focus { box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 -4px 0 0 var(--wp-admin-theme-color); } @media (min-width: 782px) { .edit-post-template__modal .components-base-control { width: 320px; } } .edit-post-template__modal .components-modal__header { border-bottom: none; } .edit-post-template__modal .components-modal__content::before { margin-bottom: 4px; } .edit-post-template__modal-actions { margin-top: 12px; } .edit-post-template-modal__tip { padding: 16px 24px; background: #f0f0f0; border-radius: 2px; } @media (min-width: 782px) { .edit-post-template-modal__tip { width: 240px; } } .edit-post-template__actions button:not(:last-child) { margin-right: 8px; } h2.edit-post-template-summary__title { line-height: 24px; margin: 0 0 4px; font-weight: 500; } .edit-post-text-editor { position: relative; width: 100%; background-color: #fff; flex-grow: 1; } .edit-post-text-editor .editor-post-title { max-width: none; line-height: 1.4; font-family: Menlo, Consolas, monaco, monospace; font-size: 2.5em; font-weight: normal; border: 1px solid #949494; padding: 16px; } @media (min-width: 600px) { .edit-post-text-editor .editor-post-title { padding: 24px; } } .edit-post-text-editor .editor-post-title:focus { border-color: var(--wp-admin-theme-color); box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color); } .edit-post-text-editor__body { width: 100%; padding: 0 12px 12px 12px; max-width: 1080px; margin-left: auto; margin-right: auto; } @media (min-width: 960px) { .edit-post-text-editor__body { padding: 16px 24px 96px 24px; padding: 0 24px 24px 24px; } } .edit-post-text-editor__toolbar { position: sticky; z-index: 1; top: 0; left: 0; right: 0; display: flex; background: rgba(255, 255, 255, 0.8); padding: 4px 12px; } @media (min-width: 600px) { .edit-post-text-editor__toolbar { padding: 12px; } } @media (min-width: 960px) { .edit-post-text-editor__toolbar { padding: 12px 24px; } } .edit-post-text-editor__toolbar h2 { line-height: 36px; margin: 0 auto 0 0; font-size: 13px; color: #1e1e1e; } .edit-post-text-editor__toolbar .components-button svg { order: 1; } .edit-post-visual-editor { position: relative; display: flex; flex-flow: column; background-color: #2f2f2f; flex: 1 0 auto; } .edit-post-visual-editor .components-button { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; padding: 6px 12px; } .edit-post-visual-editor .components-button.is-tertiary, .edit-post-visual-editor .components-button.has-icon { padding: 6px; } .edit-post-visual-editor__post-title-wrapper { margin-top: 4rem; margin-bottom: var(--wp--style--block-gap); } .edit-post-visual-editor__post-title-wrapper .editor-post-title { margin-left: auto; margin-right: auto; } .edit-post-visual-editor__exit-template-mode { position: absolute; top: 8px; left: 8px; color: #fff; } .edit-post-visual-editor__exit-template-mode:active:not([aria-disabled=true]), .edit-post-visual-editor__exit-template-mode:focus:not([aria-disabled=true]), .edit-post-visual-editor__exit-template-mode:hover { color: #f0f0f0; } .edit-post-visual-editor__content-area { width: 100%; height: 100%; position: relative; display: flex; flex-grow: 1; } .edit-post-welcome-guide { width: 312px; } .edit-post-welcome-guide__image { background: #00a0d2; margin: 0 0 16px; } .edit-post-welcome-guide__image > img { display: block; max-width: 100%; -o-object-fit: cover; object-fit: cover; } .edit-post-welcome-guide__heading { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 24px; line-height: 1.4; margin: 16px 0 16px 0; padding: 0 32px; } .edit-post-welcome-guide__text { font-size: 13px; line-height: 1.4; margin: 0 0 24px 0; padding: 0 32px; } .edit-post-welcome-guide__inserter-icon { margin: 0 4px; vertical-align: text-top; } /** * Animations */ @keyframes edit-post__fade-in-animation { from { opacity: 0; } to { opacity: 1; } } html.wp-toolbar { background: #fff; } body.block-editor-page { background: #fff; /* We hide legacy notices in Gutenberg Based Pages, because they were not designed in a way that scaled well. Plugins can use Gutenberg notices if they need to pass on information to the user when they are editing. */ } body.block-editor-page #wpcontent { padding-left: 0; } body.block-editor-page #wpbody-content { padding-bottom: 0; } body.block-editor-page #wpbody-content > div:not(.block-editor):not(#screen-meta) { display: none; } body.block-editor-page #wpfooter { display: none; } body.block-editor-page .a11y-speak-region { left: -1px; top: -1px; } body.block-editor-page ul#adminmenu a.wp-has-current-submenu::after, body.block-editor-page ul#adminmenu > li.current > a.current::after { border-right-color: #fff; } body.block-editor-page .media-frame select.attachment-filters:last-of-type { width: auto; max-width: 100%; } .block-editor-page #wpwrap { overflow-y: auto; } @media (min-width: 782px) { .block-editor-page #wpwrap { overflow-y: initial; } } .edit-post-header, .edit-post-visual-editor, .edit-post-text-editor, .edit-post-sidebar, .editor-post-publish-panel, .components-popover, .components-modal__frame, .edit-post-editor__inserter-panel { box-sizing: border-box; } .edit-post-header *, .edit-post-header *::before, .edit-post-header *::after, .edit-post-visual-editor *, .edit-post-visual-editor *::before, .edit-post-visual-editor *::after, .edit-post-text-editor *, .edit-post-text-editor *::before, .edit-post-text-editor *::after, .edit-post-sidebar *, .edit-post-sidebar *::before, .edit-post-sidebar *::after, .editor-post-publish-panel *, .editor-post-publish-panel *::before, .editor-post-publish-panel *::after, .components-popover *, .components-popover *::before, .components-popover *::after, .components-modal__frame *, .components-modal__frame *::before, .components-modal__frame *::after, .edit-post-editor__inserter-panel *, .edit-post-editor__inserter-panel *::before, .edit-post-editor__inserter-panel *::after { box-sizing: inherit; } @media (min-width: 600px) { .block-editor__container { position: absolute; top: 0; right: 0; bottom: 0; left: 0; min-height: calc(100vh - 46px); } } @media (min-width: 782px) { .block-editor__container { min-height: calc(100vh - 32px); } body.is-fullscreen-mode .block-editor__container { min-height: 100vh; } } .block-editor__container img { max-width: 100%; height: auto; } .block-editor__container iframe { width: 100%; } body.admin-color-light { --wp-admin-theme-color: #0085ba; --wp-admin-theme-color--rgb: 0, 133, 186; --wp-admin-theme-color-darker-10: #0073a1; --wp-admin-theme-color-darker-10--rgb: 0, 115, 161; --wp-admin-theme-color-darker-20: #006187; --wp-admin-theme-color-darker-20--rgb: 0, 97, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-light { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-modern { --wp-admin-theme-color: #3858e9; --wp-admin-theme-color--rgb: 56, 88, 233; --wp-admin-theme-color-darker-10: #2145e6; --wp-admin-theme-color-darker-10--rgb: 33, 69, 230; --wp-admin-theme-color-darker-20: #183ad6; --wp-admin-theme-color-darker-20--rgb: 24, 58, 214; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-modern { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-blue { --wp-admin-theme-color: #096484; --wp-admin-theme-color--rgb: 9, 100, 132; --wp-admin-theme-color-darker-10: #07526c; --wp-admin-theme-color-darker-10--rgb: 7, 82, 108; --wp-admin-theme-color-darker-20: #064054; --wp-admin-theme-color-darker-20--rgb: 6, 64, 84; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-blue { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-coffee { --wp-admin-theme-color: #46403c; --wp-admin-theme-color--rgb: 70, 64, 60; --wp-admin-theme-color-darker-10: #383330; --wp-admin-theme-color-darker-10--rgb: 56, 51, 48; --wp-admin-theme-color-darker-20: #2b2724; --wp-admin-theme-color-darker-20--rgb: 43, 39, 36; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-coffee { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-ectoplasm { --wp-admin-theme-color: #523f6d; --wp-admin-theme-color--rgb: 82, 63, 109; --wp-admin-theme-color-darker-10: #46365d; --wp-admin-theme-color-darker-10--rgb: 70, 54, 93; --wp-admin-theme-color-darker-20: #3a2c4d; --wp-admin-theme-color-darker-20--rgb: 58, 44, 77; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-ectoplasm { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-midnight { --wp-admin-theme-color: #e14d43; --wp-admin-theme-color--rgb: 225, 77, 67; --wp-admin-theme-color-darker-10: #dd382d; --wp-admin-theme-color-darker-10--rgb: 221, 56, 45; --wp-admin-theme-color-darker-20: #d02c21; --wp-admin-theme-color-darker-20--rgb: 208, 44, 33; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-midnight { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-ocean { --wp-admin-theme-color: #627c83; --wp-admin-theme-color--rgb: 98, 124, 131; --wp-admin-theme-color-darker-10: #576e74; --wp-admin-theme-color-darker-10--rgb: 87, 110, 116; --wp-admin-theme-color-darker-20: #4c6066; --wp-admin-theme-color-darker-20--rgb: 76, 96, 102; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-ocean { --wp-admin-border-width-focus: 1.5px; } } body.admin-color-sunrise { --wp-admin-theme-color: #dd823b; --wp-admin-theme-color--rgb: 221, 130, 59; --wp-admin-theme-color-darker-10: #d97426; --wp-admin-theme-color-darker-10--rgb: 217, 116, 38; --wp-admin-theme-color-darker-20: #c36922; --wp-admin-theme-color-darker-20--rgb: 195, 105, 34; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { body.admin-color-sunrise { --wp-admin-border-width-focus: 1.5px; } }PKj l\l+ex..&css/dist/edit-post/classic-rtl.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.editor-styles-wrapper .wp-block{margin-right:auto;margin-left:auto}html :where(.editor-styles-wrapper){padding:8px}html :where(.editor-styles-wrapper) .block-editor-block-list__layout.is-root-container>.wp-block[data-align=full]{margin-right:-8px;margin-left:-8px}html :where(.wp-block){max-width:840px;margin-top:28px;margin-bottom:28px}html :where(.wp-block)[data-align=wide]{max-width:1100px}html :where(.wp-block)[data-align=full]{max-width:none}html :where(.wp-block)[data-align=left],html :where(.wp-block)[data-align=right]{width:100%;height:0}html :where(.wp-block)[data-align=left]:before,html :where(.wp-block)[data-align=right]:before{content:none}html :where(.wp-block)[data-align=left]>*{float:left;margin-right:2em}html :where(.wp-block)[data-align=right]>*{float:right;margin-left:2em}html :where(.wp-block)[data-align=full],html :where(.wp-block)[data-align=wide]{clear:both}.wp-block-group>[data-align=full]{margin-right:auto;margin-left:auto}.wp-block-group.has-background>[data-align=full]{margin-right:-30px;width:calc(100% + 60px)}[data-align=full] .wp-block-group>.wp-block{padding-right:14px;padding-left:14px}@media (min-width:600px){[data-align=full] .wp-block-group>.wp-block{padding-right:0;padding-left:0}}[data-align=full] .wp-block-group>[data-align=full]{padding-left:0;padding-right:0;right:0;width:100%;max-width:none}[data-align=full] .wp-block-group.has-background>[data-align=full]{width:calc(100% + 60px)}PKj l\j`SS%css/dist/format-library/style.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.block-editor-format-toolbar__image-popover{z-index:159990}.block-editor-format-toolbar__image-container-content{display:flex}.block-editor-format-toolbar__image-container-content .components-button{align-self:flex-end;height:30px;margin-bottom:8px;margin-right:8px;padding:0 6px}.block-editor-format-toolbar__image-container-value{margin:7px;flex-grow:1;flex-shrink:1;white-space:nowrap;min-width:150px;max-width:500px}.block-editor-format-toolbar__image-container-value.components-base-control .components-base-control__field{margin-bottom:0}.block-editor-format-toolbar__image-container-value.components-base-control .components-base-control__label{display:block}.block-editor-format-toolbar__link-container-content{display:flex}.block-editor-format-toolbar__link-container-value{margin:7px;flex-grow:1;flex-shrink:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:150px;max-width:500px}.block-editor-format-toolbar__link-container-value.has-invalid-link{color:#cc1818}.components-inline-color-popover .components-popover__content .components-tab-panel__tab-content{padding:16px}.components-inline-color-popover .components-popover__content .components-color-palette{margin-top:.6rem}.components-inline-color-popover .components-popover__content .components-base-control__title{display:block;margin-bottom:16px;font-weight:600;color:#191e23}.components-inline-color-popover .components-popover__content .component-color-indicator{vertical-align:text-bottom}PKj l\'4RR)css/dist/format-library/style-rtl.min.cssnu[:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.block-editor-format-toolbar__image-popover{z-index:159990}.block-editor-format-toolbar__image-container-content{display:flex}.block-editor-format-toolbar__image-container-content .components-button{align-self:flex-end;height:30px;margin-bottom:8px;margin-left:8px;padding:0 6px}.block-editor-format-toolbar__image-container-value{margin:7px;flex-grow:1;flex-shrink:1;white-space:nowrap;min-width:150px;max-width:500px}.block-editor-format-toolbar__image-container-value.components-base-control .components-base-control__field{margin-bottom:0}.block-editor-format-toolbar__image-container-value.components-base-control .components-base-control__label{display:block}.block-editor-format-toolbar__link-container-content{display:flex}.block-editor-format-toolbar__link-container-value{margin:7px;flex-grow:1;flex-shrink:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:150px;max-width:500px}.block-editor-format-toolbar__link-container-value.has-invalid-link{color:#cc1818}.components-inline-color-popover .components-popover__content .components-tab-panel__tab-content{padding:16px}.components-inline-color-popover .components-popover__content .components-color-palette{margin-top:.6rem}.components-inline-color-popover .components-popover__content .components-base-control__title{display:block;margin-bottom:16px;font-weight:600;color:#191e23}.components-inline-color-popover .components-popover__content .component-color-indicator{vertical-align:text-bottom}PKj l\K(b%css/dist/format-library/style-rtl.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .block-editor-format-toolbar__image-popover { z-index: 159990; } .block-editor-format-toolbar__image-container-content { display: flex; } .block-editor-format-toolbar__image-container-content .components-button { align-self: flex-end; height: 30px; margin-bottom: 8px; margin-left: 8px; padding: 0 6px; } .block-editor-format-toolbar__image-container-value { margin: 7px; flex-grow: 1; flex-shrink: 1; white-space: nowrap; min-width: 150px; max-width: 500px; } .block-editor-format-toolbar__image-container-value.components-base-control .components-base-control__field { margin-bottom: 0; } .block-editor-format-toolbar__image-container-value.components-base-control .components-base-control__label { display: block; } .block-editor-format-toolbar__link-container-content { display: flex; } .block-editor-format-toolbar__link-container-value { margin: 7px; flex-grow: 1; flex-shrink: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 150px; max-width: 500px; } .block-editor-format-toolbar__link-container-value.has-invalid-link { color: #cc1818; } .components-inline-color-popover .components-popover__content .components-tab-panel__tab-content { padding: 16px; } .components-inline-color-popover .components-popover__content .components-color-palette { margin-top: 0.6rem; } .components-inline-color-popover .components-popover__content .components-base-control__title { display: block; margin-bottom: 16px; font-weight: 600; color: #191e23; } .components-inline-color-popover .components-popover__content .component-color-indicator { vertical-align: text-bottom; }PKj l\RL!css/dist/format-library/style.cssnu[/** * Colors */ /** * Breakpoints & Media Queries */ /** * SCSS Variables. * * Please use variables from this sheet to ensure consistency across the UI. * Don't add to this sheet unless you're pretty sure the value will be reused in many places. * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. */ /** * Colors */ /** * Fonts & basic variables. */ /** * Grid System. * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ */ /** * Dimensions. */ /** * Shadows. */ /** * Editor widths. */ /** * Block & Editor UI. */ /** * Block paddings. */ /** * React Native specific. * These variables do not appear to be used anywhere else. */ /** * Converts a hex value into the rgb equivalent. * * @param {string} hex - the hexadecimal value to convert * @return {string} comma separated rgb values */ /** * Breakpoint mixins */ /** * Long content fade mixin * * Creates a fading overlay to signify that the content is longer * than the space allows. */ /** * Focus styles. */ /** * Applies editor left position to the selector passed as argument */ /** * Styles that are reused verbatim in a few places */ /** * Allows users to opt-out of animations via OS-level preferences. */ /** * Reset default styles for JavaScript UI based pages. * This is a WP-admin agnostic reset */ /** * Reset the WP Admin page styles for Gutenberg-like pages. */ :root { --wp-admin-theme-color: #007cba; --wp-admin-theme-color--rgb: 0, 124, 186; --wp-admin-theme-color-darker-10: #006ba1; --wp-admin-theme-color-darker-10--rgb: 0, 107, 161; --wp-admin-theme-color-darker-20: #005a87; --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; --wp-admin-border-width-focus: 2px; } @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { :root { --wp-admin-border-width-focus: 1.5px; } } .block-editor-format-toolbar__image-popover { z-index: 159990; } .block-editor-format-toolbar__image-container-content { display: flex; } .block-editor-format-toolbar__image-container-content .components-button { align-self: flex-end; height: 30px; margin-bottom: 8px; margin-right: 8px; padding: 0 6px; } .block-editor-format-toolbar__image-container-value { margin: 7px; flex-grow: 1; flex-shrink: 1; white-space: nowrap; min-width: 150px; max-width: 500px; } .block-editor-format-toolbar__image-container-value.components-base-control .components-base-control__field { margin-bottom: 0; } .block-editor-format-toolbar__image-container-value.components-base-control .components-base-control__label { display: block; } .block-editor-format-toolbar__link-container-content { display: flex; } .block-editor-format-toolbar__link-container-value { margin: 7px; flex-grow: 1; flex-shrink: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 150px; max-width: 500px; } .block-editor-format-toolbar__link-container-value.has-invalid-link { color: #cc1818; } .components-inline-color-popover .components-popover__content .components-tab-panel__tab-content { padding: 16px; } .components-inline-color-popover .components-popover__content .components-color-palette { margin-top: 0.6rem; } .components-inline-color-popover .components-popover__content .components-base-control__title { display: block; margin-bottom: 16px; font-weight: 600; color: #191e23; } .components-inline-color-popover .components-popover__content .component-color-indicator { vertical-align: text-bottom; }PKj l\1ș__css/admin-bar-rtl.cssnu[/*! This file is auto-generated */ html { --wp-admin--admin-bar--height: 32px; scroll-padding-top: var(--wp-admin--admin-bar--height); } #wpadminbar * { height: auto; width: auto; margin: 0; padding: 0; position: static; text-shadow: none; text-transform: none; letter-spacing: normal; font-size: 13px; font-weight: 400; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; line-height: 2.46153846; border-radius: 0; box-sizing: content-box; transition: none; -webkit-font-smoothing: subpixel-antialiased; /* Prevent Safari from switching to standard antialiasing on hover */ -moz-osx-font-smoothing: auto; /* Prevent Firefox from inheriting from themes that use other values */ } .rtl #wpadminbar * { font-family: Tahoma, sans-serif; } html:lang(he-il) .rtl #wpadminbar * { font-family: Arial, sans-serif; } #wpadminbar .ab-empty-item { cursor: default; } #wpadminbar .ab-empty-item, #wpadminbar a.ab-item, #wpadminbar > #wp-toolbar span.ab-label, #wpadminbar > #wp-toolbar span.noticon { color: #f0f0f1; } #wpadminbar #wp-admin-bar-site-name a.ab-item, #wpadminbar #wp-admin-bar-my-sites a.ab-item { white-space: nowrap; } #wpadminbar ul li:before, #wpadminbar ul li:after { content: normal; } #wpadminbar a, #wpadminbar a:hover, #wpadminbar a img, #wpadminbar a img:hover { border: none; text-decoration: none; background: none; box-shadow: none; } #wpadminbar a:focus, #wpadminbar a:active, #wpadminbar input[type="text"], #wpadminbar input[type="password"], #wpadminbar input[type="number"], #wpadminbar input[type="search"], #wpadminbar input[type="email"], #wpadminbar input[type="url"], #wpadminbar select, #wpadminbar textarea, #wpadminbar div { box-shadow: none; } #wpadminbar a:focus { /* Inherits transparent outline only visible in Windows High Contrast mode */ outline-offset: -1px; } #wpadminbar { direction: rtl; color: #c3c4c7; font-size: 13px; font-weight: 400; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; line-height: 2.46153846; height: 32px; position: fixed; top: 0; right: 0; width: 100%; min-width: 600px; /* match the min-width of the body in wp-admin/css/common.css */ z-index: 99999; background: #1d2327; } #wpadminbar .ab-sub-wrapper, #wpadminbar ul, #wpadminbar ul li { background: none; clear: none; list-style: none; margin: 0; padding: 0; position: relative; text-indent: 0; z-index: 99999; } #wpadminbar ul#wp-admin-bar-root-default>li { margin-left: 0; } #wpadminbar .quicklinks ul { text-align: right; } #wpadminbar li { float: right; } #wpadminbar .ab-empty-item { outline: none; } #wpadminbar .quicklinks .ab-top-secondary > li { float: left; } #wpadminbar .quicklinks a, #wpadminbar .quicklinks .ab-empty-item, #wpadminbar .shortlink-input { height: 32px; display: block; padding: 0 10px; margin: 0; } #wpadminbar .quicklinks > ul > li > a { padding: 0 7px 0 8px; } #wpadminbar .menupop .ab-sub-wrapper, #wpadminbar .shortlink-input { margin: 0; padding: 0; box-shadow: 0 3px 5px rgba(0, 0, 0, 0.2); background: #2c3338; display: none; position: absolute; float: none; } #wpadminbar .ab-top-menu > .menupop > .ab-sub-wrapper { min-width: 100%; } #wpadminbar .ab-top-secondary .menupop .ab-sub-wrapper { left: 0; right: auto; } #wpadminbar .ab-submenu { padding: 6px 0; } #wpadminbar .selected .shortlink-input { display: block; } #wpadminbar .quicklinks .menupop ul li { float: none; } #wpadminbar .quicklinks .menupop ul li a strong { font-weight: 600; } #wpadminbar .quicklinks .menupop ul li .ab-item, #wpadminbar .quicklinks .menupop ul li a strong, #wpadminbar .quicklinks .menupop.hover ul li .ab-item, #wpadminbar.nojs .quicklinks .menupop:hover ul li .ab-item, #wpadminbar .shortlink-input { line-height: 2; height: 26px; white-space: nowrap; min-width: 140px; } #wpadminbar .shortlink-input { width: 200px; } #wpadminbar.nojs li:hover > .ab-sub-wrapper, #wpadminbar li.hover > .ab-sub-wrapper { display: block; } #wpadminbar .menupop li:hover > .ab-sub-wrapper, #wpadminbar .menupop li.hover > .ab-sub-wrapper { margin-right: 100%; margin-top: -32px; } #wpadminbar .ab-top-secondary .menupop li:hover > .ab-sub-wrapper, #wpadminbar .ab-top-secondary .menupop li.hover > .ab-sub-wrapper { margin-right: 0; right: inherit; left: 100%; } #wpadminbar:not(.mobile) .ab-top-menu > li > .ab-item:focus, #wpadminbar.nojq .quicklinks .ab-top-menu > li > .ab-item:focus, #wpadminbar:not(.mobile) .ab-top-menu > li:hover > .ab-item, #wpadminbar .ab-top-menu > li.hover > .ab-item { background: #2c3338; color: #72aee6; } #wpadminbar:not(.mobile) > #wp-toolbar li:hover span.ab-label, #wpadminbar > #wp-toolbar li.hover span.ab-label, #wpadminbar:not(.mobile) > #wp-toolbar a:focus span.ab-label { color: #72aee6; } #wpadminbar > #wp-toolbar > #wp-admin-bar-root-default .ab-icon, #wpadminbar .ab-icon, #wpadminbar .ab-item:before, .wp-admin-bar-arrow { position: relative; float: right; font: normal 20px/1 dashicons; speak: never; padding: 4px 0; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; background-image: none !important; margin-left: 6px; } #wpadminbar .ab-icon:before, #wpadminbar .ab-item:before, #wpadminbar #adminbarsearch:before { color: #a7aaad; color: rgba(240, 246, 252, 0.6); } #wpadminbar .ab-icon:before, #wpadminbar .ab-item:before, #wpadminbar #adminbarsearch:before { position: relative; transition: color .1s ease-in-out; } #wpadminbar .ab-label { display: inline-block; height: 32px; } #wpadminbar .ab-submenu .ab-item { color: #c3c4c7; color: rgba(240, 246, 252, 0.7); } #wpadminbar .quicklinks .menupop ul li a, #wpadminbar .quicklinks .menupop ul li a strong, #wpadminbar .quicklinks .menupop.hover ul li a, #wpadminbar.nojs .quicklinks .menupop:hover ul li a { color: #c3c4c7; color: rgba(240, 246, 252, 0.7); } #wpadminbar .quicklinks .menupop ul li a:hover, #wpadminbar .quicklinks .menupop ul li a:focus, #wpadminbar .quicklinks .menupop ul li a:hover strong, #wpadminbar .quicklinks .menupop ul li a:focus strong, #wpadminbar .quicklinks .ab-sub-wrapper .menupop.hover > a, #wpadminbar .quicklinks .menupop.hover ul li a:hover, #wpadminbar .quicklinks .menupop.hover ul li a:focus, #wpadminbar .quicklinks .menupop.hover ul li div[tabindex]:hover, #wpadminbar .quicklinks .menupop.hover ul li div[tabindex]:focus, #wpadminbar.nojs .quicklinks .menupop:hover ul li a:hover, #wpadminbar.nojs .quicklinks .menupop:hover ul li a:focus, #wpadminbar li:hover .ab-icon:before, #wpadminbar li:hover .ab-item:before, #wpadminbar li a:focus .ab-icon:before, #wpadminbar li .ab-item:focus:before, #wpadminbar li .ab-item:focus .ab-icon:before, #wpadminbar li.hover .ab-icon:before, #wpadminbar li.hover .ab-item:before, #wpadminbar li:hover #adminbarsearch:before, #wpadminbar li #adminbarsearch.adminbar-focused:before { color: #72aee6; } #wpadminbar.mobile .quicklinks .ab-icon:before, #wpadminbar.mobile .quicklinks .ab-item:before { color: #c3c4c7; } #wpadminbar.mobile .quicklinks .hover .ab-icon:before, #wpadminbar.mobile .quicklinks .hover .ab-item:before { color: #72aee6; } #wpadminbar .menupop .menupop > .ab-item .wp-admin-bar-arrow:before, #wpadminbar .ab-top-secondary .menupop .menupop > .ab-item:before { position: absolute; font: normal 17px/1 dashicons; speak: never; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } #wpadminbar .menupop .menupop > .ab-item { display: block; padding-left: 2em; } #wpadminbar .menupop .menupop > .ab-item .wp-admin-bar-arrow:before { top: 1px; left: 10px; padding: 4px 0; content: "\f141"; color: inherit; } #wpadminbar .ab-top-secondary .menupop .menupop > .ab-item { padding-right: 2em; padding-left: 1em; } #wpadminbar .ab-top-secondary .menupop .menupop > .ab-item .wp-admin-bar-arrow:before { top: 1px; right: 6px; content: "\f139"; } #wpadminbar .quicklinks .menupop ul.ab-sub-secondary { display: block; position: relative; left: auto; margin: 0; box-shadow: none; } #wpadminbar .quicklinks .menupop ul.ab-sub-secondary, #wpadminbar .quicklinks .menupop ul.ab-sub-secondary .ab-submenu { background: #3c434a; } #wpadminbar .quicklinks .menupop .ab-sub-secondary > li > a:hover, #wpadminbar .quicklinks .menupop .ab-sub-secondary > li .ab-item:focus a { color: #72aee6; } #wpadminbar .quicklinks a span#ab-updates { background: #f0f0f1; color: #2c3338; display: inline; padding: 2px 5px; font-size: 10px; font-weight: 600; border-radius: 10px; } #wpadminbar .quicklinks a:hover span#ab-updates { background: #fff; color: #000; } #wpadminbar .ab-top-secondary { float: left; } #wpadminbar ul li:last-child, #wpadminbar ul li:last-child .ab-item { box-shadow: none; } /** * Recovery Mode */ #wpadminbar #wp-admin-bar-recovery-mode { color: #fff; background-color: #d63638; } #wpadminbar .ab-top-menu > #wp-admin-bar-recovery-mode.hover >.ab-item, #wpadminbar.nojq .quicklinks .ab-top-menu > #wp-admin-bar-recovery-mode > .ab-item:focus, #wpadminbar:not(.mobile) .ab-top-menu > #wp-admin-bar-recovery-mode:hover > .ab-item, #wpadminbar:not(.mobile) .ab-top-menu > #wp-admin-bar-recovery-mode > .ab-item:focus { color: #fff; background-color: #d63638; } /** * My Account */ #wp-admin-bar-my-account > ul { min-width: 198px; } #wp-admin-bar-my-account:not(.with-avatar) > .ab-item { display: inline-block; } #wp-admin-bar-my-account > .ab-item:before { content: "\f110"; top: 2px; float: left; margin-right: 6px; margin-left: 0; } #wp-admin-bar-my-account.with-avatar > .ab-item:before { display: none; content: none; } #wp-admin-bar-my-account.with-avatar > ul { min-width: 270px; } #wpadminbar #wp-admin-bar-user-actions > li { margin-right: 16px; margin-left: 16px; } #wpadminbar #wp-admin-bar-user-actions.ab-submenu { padding: 6px 0 12px; } #wpadminbar #wp-admin-bar-my-account.with-avatar #wp-admin-bar-user-actions > li { margin-right: 88px; } #wpadminbar #wp-admin-bar-user-info { margin-top: 6px; margin-bottom: 15px; height: auto; background: none; } #wp-admin-bar-user-info .avatar { position: absolute; right: -72px; top: 4px; width: 64px; height: 64px; } #wpadminbar #wp-admin-bar-user-info a { background: none; height: auto; } #wpadminbar #wp-admin-bar-user-info span { background: none; padding: 0; height: 18px; } #wpadminbar #wp-admin-bar-user-info .display-name, #wpadminbar #wp-admin-bar-user-info .username { display: block; } #wpadminbar #wp-admin-bar-user-info .username { color: #a7aaad; font-size: 11px; } #wpadminbar #wp-admin-bar-my-account.with-avatar > .ab-empty-item img, #wpadminbar #wp-admin-bar-my-account.with-avatar > a img { width: auto; height: 16px; padding: 0; border: 1px solid #8c8f94; background: #f0f0f1; line-height: 1.84615384; vertical-align: middle; margin: -4px 6px 0 0; float: none; display: inline; } /** * WP Logo */ #wpadminbar #wp-admin-bar-wp-logo > .ab-item .ab-icon { width: 15px; height: 20px; margin-left: 0; padding: 6px 0 5px; } #wpadminbar #wp-admin-bar-wp-logo > .ab-item { padding: 0 7px; } #wpadminbar #wp-admin-bar-wp-logo > .ab-item .ab-icon:before { content: "\f120"; top: 2px; } /* * My Sites & Site Title */ #wpadminbar .quicklinks li .blavatar { display: inline-block; vertical-align: middle; font: normal 16px/1 dashicons !important; speak: never; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; color: #f0f0f1; } #wpadminbar .quicklinks li a:hover .blavatar, #wpadminbar .quicklinks li a:focus .blavatar, #wpadminbar .quicklinks .ab-sub-wrapper .menupop.hover > a .blavatar { color: #72aee6; } #wpadminbar .quicklinks li img.blavatar, #wpadminbar .quicklinks li div.blavatar:before { height: 16px; width: 16px; margin: 0 -2px 2px 8px; } #wpadminbar .quicklinks li div.blavatar:before { content: "\f120"; display: inline-block; } #wpadminbar #wp-admin-bar-appearance { margin-top: -12px; } #wpadminbar #wp-admin-bar-my-sites > .ab-item:before, #wpadminbar #wp-admin-bar-site-name > .ab-item:before { content: "\f541"; top: 2px; } #wpadminbar #wp-admin-bar-site-editor > .ab-item:before { content: "\f100"; top: 2px; } #wpadminbar #wp-admin-bar-customize > .ab-item:before { content: "\f540"; top: 2px; } #wpadminbar #wp-admin-bar-edit > .ab-item:before { content: "\f464"; top: 2px; } #wpadminbar #wp-admin-bar-site-name > .ab-item:before { content: "\f226"; } .wp-admin #wpadminbar #wp-admin-bar-site-name > .ab-item:before { content: "\f102"; } /** * Comments */ #wpadminbar #wp-admin-bar-comments .ab-icon { margin-left: 6px; } #wpadminbar #wp-admin-bar-comments .ab-icon:before { content: "\f101"; top: 3px; } #wpadminbar #wp-admin-bar-comments .count-0 { opacity: .5; } /** * New Content */ #wpadminbar #wp-admin-bar-new-content .ab-icon:before { content: "\f132"; top: 4px; } /** * Updates */ #wpadminbar #wp-admin-bar-updates .ab-icon:before { content: "\f463"; top: 2px; } #wpadminbar #wp-admin-bar-updates.spin .ab-icon:before { display: inline-block; animation: rotation 2s infinite linear; } @media (prefers-reduced-motion: reduce) { #wpadminbar #wp-admin-bar-updates.spin .ab-icon:before { animation: none; } } /** * Search */ #wpadminbar #wp-admin-bar-search .ab-item { padding: 0; background: transparent; } #wpadminbar #adminbarsearch { position: relative; height: 32px; padding: 0 2px; z-index: 1; } #wpadminbar #adminbarsearch:before { position: absolute; top: 6px; right: 5px; z-index: 20; font: normal 20px/1 dashicons !important; content: "\f179"; speak: never; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } /* The admin bar search field needs to reset many styles that might be inherited from the active Theme CSS. See ticket #40313. */ #wpadminbar > #wp-toolbar > #wp-admin-bar-top-secondary > #wp-admin-bar-search #adminbarsearch input.adminbar-input { display: inline-block; float: none; position: relative; z-index: 30; font-size: 13px; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; line-height: 1.84615384; text-indent: 0; height: 24px; width: 24px; max-width: none; padding: 0 24px 0 3px; margin: 0; color: #c3c4c7; background-color: rgba(255, 255, 255, 0); border: none; outline: none; cursor: pointer; box-shadow: none; box-sizing: border-box; transition-duration: 400ms; transition-property: width, background; transition-timing-function: ease; } #wpadminbar > #wp-toolbar > #wp-admin-bar-top-secondary > #wp-admin-bar-search #adminbarsearch input.adminbar-input:focus { z-index: 10; color: #000; width: 200px; background-color: rgba(255, 255, 255, 0.9); cursor: text; border: 0; } #wpadminbar #adminbarsearch .adminbar-button { display: none; } /** * Customize support classes */ .no-customize-support .hide-if-no-customize, .customize-support .hide-if-customize, .no-customize-support #wpadminbar .hide-if-no-customize, .no-customize-support.wp-core-ui .hide-if-no-customize, .no-customize-support .wp-core-ui .hide-if-no-customize, .customize-support #wpadminbar .hide-if-customize, .customize-support.wp-core-ui .hide-if-customize, .customize-support .wp-core-ui .hide-if-customize { display: none; } /* Skip link */ #wpadminbar .screen-reader-text, #wpadminbar .screen-reader-text span { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important; } #wpadminbar .screen-reader-shortcut { position: absolute; top: -1000em; } #wpadminbar .screen-reader-shortcut:focus { right: 6px; top: 7px; height: auto; width: auto; display: block; font-size: 14px; font-weight: 600; padding: 15px 23px 14px; background: #f0f0f1; color: #2271b1; z-index: 100000; line-height: normal; text-decoration: none; box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); } @media screen and (max-width: 782px) { html { --wp-admin--admin-bar--height: 46px; } /* Toolbar Touchification*/ html #wpadminbar { height: 46px; min-width: 240px; /* match the min-width of the body in wp-admin/css/common.css */ } #wpadminbar * { font-size: 14px; font-weight: 400; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; line-height: 2.28571428; } #wpadminbar .quicklinks > ul > li > a, #wpadminbar .quicklinks .ab-empty-item { padding: 0; height: 46px; line-height: 3.28571428; width: auto; } #wpadminbar .ab-icon { font: 40px/1 dashicons !important; margin: 0; padding: 0; width: 52px; height: 46px; text-align: center; } #wpadminbar .ab-icon:before { text-align: center; } #wpadminbar .ab-submenu { padding: 0; } #wpadminbar #wp-admin-bar-site-name a.ab-item, #wpadminbar #wp-admin-bar-my-sites a.ab-item, #wpadminbar #wp-admin-bar-my-account a.ab-item { text-overflow: clip; } #wpadminbar .quicklinks .menupop ul li .ab-item, #wpadminbar .quicklinks .menupop ul li a strong, #wpadminbar .quicklinks .menupop.hover ul li .ab-item, #wpadminbar.nojs .quicklinks .menupop:hover ul li .ab-item, #wpadminbar .shortlink-input { line-height: 1.6; } #wpadminbar .ab-label { display: none; } #wpadminbar .menupop li:hover > .ab-sub-wrapper, #wpadminbar .menupop li.hover > .ab-sub-wrapper { margin-top: -46px; } #wpadminbar .ab-top-menu .menupop .ab-sub-wrapper .menupop > .ab-item { padding-left: 30px; } #wpadminbar .menupop .menupop > .ab-item:before { top: 10px; left: 6px; } #wpadminbar .ab-top-menu > .menupop > .ab-sub-wrapper .ab-item { font-size: 16px; padding: 8px 16px; } #wpadminbar .ab-top-menu > .menupop > .ab-sub-wrapper a:empty { display: none; } /* WP logo */ #wpadminbar #wp-admin-bar-wp-logo > .ab-item { padding: 0; } #wpadminbar #wp-admin-bar-wp-logo > .ab-item .ab-icon { padding: 0; width: 52px; height: 46px; text-align: center; vertical-align: top; } #wpadminbar #wp-admin-bar-wp-logo > .ab-item .ab-icon:before { font: 28px/1 dashicons !important; top: -3px; } #wpadminbar .ab-icon, #wpadminbar .ab-item:before { padding: 0; } /* My Sites and "Site Title" menu */ #wpadminbar #wp-admin-bar-my-sites > .ab-item, #wpadminbar #wp-admin-bar-site-name > .ab-item, #wpadminbar #wp-admin-bar-site-editor > .ab-item, #wpadminbar #wp-admin-bar-customize > .ab-item, #wpadminbar #wp-admin-bar-edit > .ab-item, #wpadminbar #wp-admin-bar-my-account > .ab-item { text-indent: 100%; white-space: nowrap; overflow: hidden; width: 52px; padding: 0; color: #a7aaad; /* @todo not needed? this text is hidden */ position: relative; } #wpadminbar > #wp-toolbar > #wp-admin-bar-root-default .ab-icon, #wpadminbar .ab-icon, #wpadminbar .ab-item:before { padding: 0; margin-left: 0; } #wpadminbar #wp-admin-bar-edit > .ab-item:before, #wpadminbar #wp-admin-bar-my-sites > .ab-item:before, #wpadminbar #wp-admin-bar-site-name > .ab-item:before, #wpadminbar #wp-admin-bar-site-editor > .ab-item:before, #wpadminbar #wp-admin-bar-customize > .ab-item:before, #wpadminbar #wp-admin-bar-my-account > .ab-item:before { display: block; text-indent: 0; font: normal 32px/1 dashicons; speak: never; top: 7px; width: 52px; text-align: center; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } #wpadminbar #wp-admin-bar-appearance { margin-top: 0; } #wpadminbar .quicklinks li .blavatar:before { display: none; } /* Search */ #wpadminbar #wp-admin-bar-search { display: none; } /* New Content */ #wpadminbar #wp-admin-bar-new-content .ab-icon:before { top: 0; line-height: 1.33333333; height: 46px !important; text-align: center; width: 52px; display: block; } /* Updates */ #wpadminbar #wp-admin-bar-updates { text-align: center; } #wpadminbar #wp-admin-bar-updates .ab-icon:before { top: 3px; } /* Comments */ #wpadminbar #wp-admin-bar-comments .ab-icon { margin: 0; } #wpadminbar #wp-admin-bar-comments .ab-icon:before { display: block; font-size: 34px; height: 46px; line-height: 1.38235294; top: 0; } /* My Account */ #wpadminbar #wp-admin-bar-my-account > a { position: relative; white-space: nowrap; text-indent: 150%; /* More than 100% indention is needed since this element has padding */ width: 28px; padding: 0 10px; overflow: hidden; /* Prevent link text from forcing horizontal scrolling on mobile */ } #wpadminbar .quicklinks li#wp-admin-bar-my-account.with-avatar > a img { position: absolute; top: 13px; left: 10px; width: 26px; height: 26px; } #wpadminbar #wp-admin-bar-user-actions.ab-submenu { padding: 0; } #wpadminbar #wp-admin-bar-user-actions.ab-submenu img.avatar { display: none; } #wpadminbar #wp-admin-bar-my-account.with-avatar #wp-admin-bar-user-actions > li { margin: 0; } #wpadminbar #wp-admin-bar-user-info .display-name { height: auto; font-size: 16px; line-height: 1.5; color: #f0f0f1; } #wpadminbar #wp-admin-bar-user-info a { padding-top: 4px; } #wpadminbar #wp-admin-bar-user-info .username { line-height: 0.8 !important; margin-bottom: -2px; } /* Show only default top level items */ #wp-toolbar > ul > li { display: none; } #wpadminbar li#wp-admin-bar-menu-toggle, #wpadminbar li#wp-admin-bar-wp-logo, #wpadminbar li#wp-admin-bar-my-sites, #wpadminbar li#wp-admin-bar-updates, #wpadminbar li#wp-admin-bar-site-name, #wpadminbar li#wp-admin-bar-site-editor, #wpadminbar li#wp-admin-bar-customize, #wpadminbar li#wp-admin-bar-new-content, #wpadminbar li#wp-admin-bar-edit, #wpadminbar li#wp-admin-bar-comments, #wpadminbar li#wp-admin-bar-my-account { display: block; } /* Allow dropdown list items to appear normally */ #wpadminbar li:hover ul li, #wpadminbar li.hover ul li, #wpadminbar li:hover ul li:hover ul li { display: list-item; } /* Override default min-width so dropdown lists aren't stretched to 100% viewport width at responsive sizes. */ #wpadminbar .ab-top-menu > .menupop > .ab-sub-wrapper { min-width: -moz-fit-content; min-width: fit-content; } #wpadminbar ul#wp-admin-bar-root-default > li { margin-left: 0; } /* Experimental fix for touch toolbar dropdown positioning */ #wpadminbar .ab-top-menu, #wpadminbar .ab-top-secondary, #wpadminbar #wp-admin-bar-wp-logo, #wpadminbar #wp-admin-bar-my-sites, #wpadminbar #wp-admin-bar-site-name, #wpadminbar #wp-admin-bar-updates, #wpadminbar #wp-admin-bar-comments, #wpadminbar #wp-admin-bar-new-content, #wpadminbar #wp-admin-bar-edit, #wpadminbar #wp-admin-bar-my-account { position: static; } #wpadminbar #wp-admin-bar-my-account { float: left; } .network-admin #wpadminbar ul#wp-admin-bar-top-secondary > li#wp-admin-bar-my-account { margin-left: 0; } /* Realign arrows on taller responsive submenus */ #wpadminbar .ab-top-secondary .menupop .menupop > .ab-item:before { top: 10px; right: 0; } } /* Smartphone */ @media screen and (max-width: 600px) { #wpadminbar { position: absolute; } #wp-responsive-overlay { position: fixed; top: 0; right: 0; width: 100%; height: 100%; z-index: 400; } #wpadminbar .ab-top-menu > .menupop > .ab-sub-wrapper { width: 100%; right: 0; } #wpadminbar .menupop .menupop > .ab-item:before { display: none; } #wpadminbar #wp-admin-bar-wp-logo.menupop .ab-sub-wrapper { margin-right: 0; } #wpadminbar .ab-top-menu > .menupop li > .ab-sub-wrapper { margin: 0; width: 100%; top: auto; right: auto; position: relative; } #wpadminbar .ab-top-menu > .menupop li > .ab-sub-wrapper .ab-item { font-size: 16px; padding: 6px 30px 19px 15px; } #wpadminbar li:hover ul li ul li { display: list-item; } #wpadminbar li#wp-admin-bar-wp-logo, #wpadminbar li#wp-admin-bar-updates { display: none; } /* Make submenus full-width at this size */ #wpadminbar .ab-top-menu > .menupop li > .ab-sub-wrapper { position: static; box-shadow: none; } } /* Very narrow screens */ @media screen and (max-width: 400px) { #wpadminbar li#wp-admin-bar-comments { display: none; } } PKj l\>]UUcss/customize-preview-rtl.cssnu[/*! This file is auto-generated */ .customize-partial-refreshing { opacity: 0.25; transition: opacity 0.25s; cursor: progress; } /* Override highlight when refreshing */ .customize-partial-refreshing.widget-customizer-highlighted-widget { box-shadow: none; } /* Make shortcut buttons essentially invisible */ .widget .customize-partial-edit-shortcut, .customize-partial-edit-shortcut { position: absolute; float: right; width: 1px; /* required to have a size to be focusable in Safari */ height: 1px; padding: 0; margin: -1px -1px 0 0; border: 0; background: transparent; color: transparent; box-shadow: none; outline: none; z-index: 5; } /** * Styles for the actual shortcut * * Note that some properties are overly verbose to prevent theme interference. */ .widget .customize-partial-edit-shortcut button, .customize-partial-edit-shortcut button { position: absolute; right: -30px; top: 2px; color: #fff; width: 30px; height: 30px; min-width: 30px; min-height: 30px; line-height: 1 !important; font-size: 18px; z-index: 5; background: #3582c4 !important; border-radius: 50%; border: 2px solid #fff; box-shadow: 0 2px 1px rgba(60, 67, 74, 0.15); text-align: center; cursor: pointer; box-sizing: border-box; padding: 3px; animation-fill-mode: both; animation-duration: .4s; opacity: 0; pointer-events: none; text-shadow: 0 -1px 1px #135e96, -1px 0 1px #135e96, 0 1px 1px #135e96, 1px 0 1px #135e96; } .wp-custom-header .customize-partial-edit-shortcut button { right: 2px } .customize-partial-edit-shortcut button svg { fill: #fff; min-width: 20px; min-height: 20px; width: 20px; height: 20px; margin: auto; } .customize-partial-edit-shortcut button:hover { background: #4f94d4 !important; /* matches primary buttons */ } .customize-partial-edit-shortcut button:focus { box-shadow: 0 0 0 2px #4f94d4; } body.customize-partial-edit-shortcuts-shown .customize-partial-edit-shortcut button { animation-name: customize-partial-edit-shortcut-bounce-appear; pointer-events: auto; } body.customize-partial-edit-shortcuts-hidden .customize-partial-edit-shortcut button { animation-name: customize-partial-edit-shortcut-bounce-disappear; pointer-events: none; } .page-sidebar-collapsed .customize-partial-edit-shortcut button, .customize-partial-edit-shortcut-hidden .customize-partial-edit-shortcut button { visibility: hidden; } @keyframes customize-partial-edit-shortcut-bounce-appear { from, 20%, 40%, 60%, 80%, to { animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); } 0% { opacity: 0; transform: scale3d(.3, .3, .3); } 20% { transform: scale3d(1.1, 1.1, 1.1); } 40% { transform: scale3d(.9, .9, .9); } 60% { opacity: 1; transform: scale3d(1.03, 1.03, 1.03); } 80% { transform: scale3d(.97, .97, .97); } to { opacity: 1; transform: scale3d(1, 1, 1); } } @keyframes customize-partial-edit-shortcut-bounce-disappear { from, 20%, 40%, 60%, 80%, to { animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); } 0% { opacity: 1; transform: scale3d(1, 1, 1); } 20% { transform: scale3d(.97, .97, .97); } 40% { opacity: 1; transform: scale3d(1.03, 1.03, 1.03); } 60% { transform: scale3d(.9, .9, .9); } 80% { transform: scale3d(1.1, 1.1, 1.1); } to { opacity: 0; transform: scale3d(.3, .3, .3); } } @media screen and (max-width: 800px) { .widget .customize-partial-edit-shortcut button, .customize-partial-edit-shortcut button { right: -32px; } } @media screen and (max-width: 320px) { .widget .customize-partial-edit-shortcut button, .customize-partial-edit-shortcut button { right: -30px; } } PKj l\gֈcss/dashicons.min.cssnu[/*! This file is auto-generated */ @font-face{font-family:dashicons;src:url("../fonts/dashicons.eot?99ac726223c749443b642ce33df8b800");src:url("../fonts/dashicons.eot?99ac726223c749443b642ce33df8b800#iefix") format("embedded-opentype"),url("data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAHvwAAsAAAAA3EgAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADMAAABCsP6z7U9TLzIAAAE8AAAAQAAAAFZAuk8lY21hcAAAAXwAAAk/AAAU9l+BPsxnbHlmAAAKvAAAYwIAAKlAcWTMRWhlYWQAAG3AAAAALwAAADYXkmaRaGhlYQAAbfAAAAAfAAAAJAQ3A0hobXR4AABuEAAAACUAAAVQpgT/9mxvY2EAAG44AAACqgAAAqps5EEYbWF4cAAAcOQAAAAfAAAAIAJvAKBuYW1lAABxBAAAATAAAAIiwytf8nBvc3QAAHI0AAAJvAAAEhojMlz2eJxjYGRgYOBikGPQYWB0cfMJYeBgYGGAAJAMY05meiJQDMoDyrGAaQ4gZoOIAgCKIwNPAHicY2Bk/Mc4gYGVgYOBhzGNgYHBHUp/ZZBkaGFgYGJgZWbACgLSXFMYHD4yfHVnAnH1mBgZGIE0CDMAAI/zCGl4nN3Y93/eVRnG8c/9JE2bstLdQIF0N8x0t8w0pSMt0BZKS5ml7F32lrL3hlKmCxEQtzjAhQMRRcEJijhQQWV4vgNBGV4nl3+B/mbTd8+reeVJvuc859znvgL0A5pkO2nW3xcJ8qee02ej7/NNDOz7fHPTw/r/LnTo60ale4ooWov2orOYXXQXPWVr2V52lrPL3qq3WlmtqlZXx1bnVFdVd9TNdWvdXnfWk+tZ9dx6wfvvQ6KgaCraio6iq+/VUbaVHWVX2V0trJb2vXpNtbZaV91YU7fUbXVH3VVPrbvrefnV//WfYJc4M86OS2N9PBCP9n08FS/E6w0agxtDG2P6ProaPY3ljaMaJzVOb1ze2NC4s3Ff46G+VzfRQn8GsBEbM4RN2YQtGMVlMY2v8COGai0Hxm6MjEWxOBZGb+zJArbidjajjUGxJHbgUzwYG/EJPsNDfJLFsYzpXM6Pmcd8Ps1BvB8LGEE7W7KSzdmGA9ifgzmau7ibcUxkB7bnHhZxb+xDgw/yYb7GU/yQp2NgDI9xMZ61sWVsFZtHkxb5+ZgQE2NSdMYmDOM5HmZrfs6H+Cbf4bt8m28xhb2YyjQWciDHxk7RGg2W8DFWxbyYE20cx/GcwImcxKmxWYyIGXr3l7MPp/MAn+PzfIFH+Co/4296Q2v+wdvRHP1iQIyKMTE2ZsZesW8QSzmHi7mFK7iWsziTs7mIG/gAl3Irl3Az13A117GeC7iSdVzIjdzGMXycP/ITfskv+B5PRk/MjT1iCPuyLAbF4Jgds2Jj7uOj7MmX+DI78hfejBa6+Kxmekp0s5TBXM/kiNg29uaNmM5p0c6fmMmMGMbLMZS/8w2+zh78lPFMYFvt9Ul0Moax/IA/s5P2+hy6mcXO7EoPu7F7bM1feSR25wzuZAN3xBasiJGxDSfH9pzLeVzF7NgxtmM0+/FK7MLrvBNTeZSXYlP+wO/5J//SV/2O3/Iiv+EFfs2veDf68xHOj53p5Yt8n72ZG6MZzhoO5wgO4VCO5CgOY3VM4S1epYxdYzKP8QSPx3xu4v7o4Fmdydbo4j1eo+IZbdaW/+Gc/L/82Tj/0zbS/4kVue5YrmzpP3L1Sw3T+SY1mU46qdl05kn9TKef1GL5J6T+popAGmCqDaRWU5UgDTTVC9JGpspB2ti4TOMmpmpC2tRUV0ibmSoMqc1Ua0iDLFfwNNhypU5DTJWINNTQGqRhFos0DrdYrHGExUKNIy16Nbabqhhpc1M9I21hqmykUaYaR9rSyM+7lZGfd2sjP2+HxRKNo01VkTTGVB9JY40HNY6zyGs23lQ9SRNMdZQ00VRRSZNMtZXUaeQ5bmOqt6RtTZWXtJ2pBpO2N1Vj0g6mukza0VShSV2mWk2abKrapClGvtumWuS1mmbkNZ5u5HWdYeQ1m2mq+KRZRl7v2UZ+9p1M9wFpZ9PNQNrFdEeQdjXdFqTdTPcGaXfTDULqNvK6zjHy+vUYed5zjbwee5juHNI8I++f+ca9GheYbiTSQiOfp17TLUVaZLqvSItNNxdpT9MdRtrLdJuR9jae1rjEIu/tpRZ5/y6zyHPZxyLvkX2NtRqXW+R13s8i780VFnmdV1rkc7+/5SKRVhnPazzAIu+7Ay3yuh1kkffdwRZ53x1ikc/0oUY+f6tNNxTpMNOtTFpj5LNyuOmmJh1hurNJR5pub9JRpnucdLTpRicdY7rbSceabnnScUbep8cbeb1PMPKePdHIe/YkI7+fJxt53muN/L1Psch781SLXPNOs8h74HQjv4dnmLoL0plGXuOzLPL+Otsi781zLHINOdfI8zjPyPM438jzuMDI8/iAkedxoZGfcZ1FrlEXWeSzebFFPpeXGLlWXWrkfXSZkffa5Uae3xWmjoh0pak3Il1l6pJIV5v6JdI1ps6JdK2phyJdZ+qmSNeb+irSDaYOi3Sjqdci3WTqukg3G29rvMUi3123WuQ74jaLfEett8j1+3aLXIM3WOQafIdFrk93WuQ9c5dFPmd3W75G0z2mbi8/ah/1fRRh6gDV85t6QYpmU1dI0c/UH1K0mDpFiv6mnpFigKl7pGg19ZEUbaaOkmKQqbekGGzqMimGmPpNiqGmzpNimKkHpRhu6kYpRpj6UoqRpg6Vot3Uq1J0mLpWitGm/pVijKmTpRhr6mkpxpm6W4rxpj6XYoKp46WYaOp9KSaZumCKTlM/TNFl6owpJpt6ZIoppm6ZYqrxpMZpFqrvxXQL1fdihoXqezHTIq/TLFOnTTHbUJ0tui3yGvdYaH3LsNDXlQ0Lvb5sMnXplM2mfp2yn6lzp2wx9fCU/U3dPOUAU19P2Wrq8CnbTL0+5SDjTY2DLXe95RBTEqAcasoElMMs195yuKH6VY4wJQbKkabsQNlu5O/dYcoTlKMNrXs5xiKvwVgL9RblOFPuoBxvvKFxgimLUE40VCvLSRb5Z3aakgpllymzUE429J6VUyzynKYaL2ucZpHnPd2UcihnmPIO5UxT8qGcZcpAlLNNaYiy28jPPsfIz95j5DnOtfybg3IPI89jnpHnMd/I67TAyOu00JSzKHtNiYtqoSl7UfWaUhjVUlMeo1pmSmZU+5gyGtW+prRGtdyU26j2MyU4qhWmLEe10lBvVK0y5Tuq1aakR7XGcq2uDrfIX3+EKQdSHWlKhFRHmbIh1dGGamh1jCkvUh1r5GdZa6E9V51iSpNUpxq6d6vTTAmT6nRT1qQ6w5Qnqc405U+qswy9l9XZFjo71TmmdEq1zpRTqS4y8jpdbLyi8RKLvP6XmvIs1WXGOxovN2VcqitMaZfqSuMljVeZEjDVjaYsTHWTKRVT3WzKx1S3mJIy1a3WN8fbTOmZar0pR1PdbkrUVBtM2ZrqDlPKztdlH+Vt6jAlb+qG8a7GJlMap2425XLqFkN9Rt3flNWpB5hSO3WrKb9Tt5mSPPUgU6anHmzozNRDTDmfeqgp8VMPM2V/6uGG9lw9wtCeq0ca6i/rdkP9Zd1haC/Wow3txXqMoV6zHmtof9fjLFRH6vHGWxonGK9qnGiUGidZ6EzVnRaqR3WX8ZjGycYTGqcaj2ucZqFaUE839N7XM4z7Nc60yPOYZTyrsdvybyfrOUZe7x6L/PPnGu9pnGe8pnG+UWlcYDzzb8iLsxoAeJysvQmcJMdZJ5qRlZmR91F5VWXdZ/bd0511zEzP9PSMPKOrS5JHEpJGI0uyRbUk27KMMMuitVU25lgW+cAyuGt3f17A2Muaw6bHwMIzC5g15jFlMNcaA7vAmp41ZtnfW1h48PbVvC8is46eGZnj97qrIiMjj7i/+H9HfMWwDPyh/wddZTRmnWEaYbfj+cl/F4dYcErIc7BgIAHDv9ftdDtnEASbkL7ZRS98qimf8DXL84pOsbr/qTWMc6Io59OWVFC0WiVfkDTFUbEr5kQX/8mnmgpniLqtmTzGQ7gb0rGH4Q5NKuTLdU0pSJZZUDHOY0yKFpfvV9CvMCpjQGyziBwdVddQaxvZbYyY7uVO5/Jzlzvdy898EP0KjXYuv/mxzvi3Pvt68ih9fohGTJph7GjTKyBHWEa4Xas2T6NWZ3DoFYteNIjcYhGNiu4VtzgY0MMk7y+iX2fKTASxTrsTNsMmruIN2hg4aZJtRFql20GdbvLv+cW4vdBvI4RYLKqYU+or9XVPVZRUyg/8SMnUcjl//ICnYlHgJT29YkoCVvOrC+iHUqwoSIKEkODnc7WMlgm8IMOynpI51lipj39AdxQ/LemylrKkak3J8VxS1hHUM2SOQT/WBOzjUMBurd0McdhthrV21OmGXb/TbUeu53d97PkR3uy0mlXB8dDoONYXOgte0At8OOq42xWMhU7o5XuBB0ddOP6l8urqzurqKOeH8Q30CT/YTZ44flzQQ5LwArltZ5UUKUXL9Qvo5xmJ0UkfICgWlMdvR9h3K22/XXPRMMx99KO5X+i3hsPx1VEfNZPzaGF/f/+lwWD6nq+i/8x4TJU5DnFoYQPpCAYs1MBATRiW28hLkVMyWh2vg7sevWWNpdd8GMzeJvqsaxhu6J7IP2uW18xnsU5OTvz2PxctX/xO0fTVZ0VI8o6fWIb7FtzjhWetyir693AP3KjjZ821svlsnpwYxvhL/1z0TYRpGNFUT9eXZ7dWSLE5WvZr6BpjM3lmielA/7RbzWUU1nCtKsCI9KLKZifc9Byh2mx1/MiKI9EmNA+G7pqcop6hLFf71WXZMGTEKMYw12i0m83RgISBgHv9KI4dXpGNKDJkOBifbLbJXeH4L+nd7LvelXuExqBYUjzJ0G8yPKPADHOZHIz2BrPIQPch2lMGCtswWqCjfHJeilMbPgwtGpArFdKNb37zm+3BINj7+n5/t4XpyX+n4XjQv4r6/auDFmq10H1PPGE///zWQw/bly61lpf3Hn88/fzzaRpGj1y69Ah8dyL4S8b076P/RtuN9jiGDjfYGoznDkw7bzZ8fyJrWdnCPfVjvWYv+6tprZA5dy7UHSfvOOjnsufOZgua+aD4ePQfG68twK3fQi7knckcJ/QhRdqia1UsPnIrVjREzPhwdJ2JBqg3Pggi1EvG4GfRLzMYWqkGcWiITpHF0Dow14GqkG46g9qtbscnFwyE7rv/2P1CxuF+079W0kqFzFNlpewpZSx9FpJtHt+P3gd3YN7xW4VrriaJZcWDW96QLVQvQbKdEe5PaNgfoD9mYDghyKxJhzWZSJTINGOiHHY9Os6Rsv6D6+6G5Vi8trZ9B3ayaU/W5LSB79hedzbSdppHB2s/sK5xEN1wyS1GWtYkP51x8e3bSfp0zo3QFRgXy8ztMGqtVrNWqQquFY/YRkSG7DKi4/M0qpFBugXV72x6rj9/VkDzd7bRyFDGB3QM9xTjOpNVDEPJirI4jQwCcjXACg5IEon0UYukja9C+F2GazQFDFWHyMsk8shNKZN5N2IRrB0R8wBzGVaAqo6cItrcRq015OsIr6Gw021WsQALXgER6t6EZux2Qph7ReRvdrpeClK7HZg/zRDuhgMl8ckS6cGITAG9F3Cne7j97Pb2s28nwTt535RWSrwh2YLEsaInNyqcqAeSXpDa60GR5QwO/x92iuU5JImKUMAqdLaPc4WgYpXltMln3DvfbZQk00McyyRvheCjVh6XI81SBFGxJA1xWgbZnosUxcgG9omKKWrjrzielrUlQ8EplktxUr6TFnguldILS0iqr4Tn0JsESTM4RWFg1s/aaAFWjlPMG29oJRtinS40BtS0RhpICGmjkVUvJO2jo2YXmsrzyaXmOnLXYCKQxvPIdCUDFK7FLUf+BZc0IcS2WeiAuTZTeUlkeV3lUq7Ga6JTNNQ0JxliKFsPWTlWQk7uQmpTcQRsBxBWNZ9nWVZjOY7n0rwoaBiX/BrmIDGFrbKSYhGbUrx7X3/M9eebcPxLWEKiyIoFQ0urCPE4lTJVhDmfFwsZS87ZXAlaS4BLLMe77xQMSYYsDF7UeFbiBMnzcx5b9FRXF6DAdU8xpAa09tqWZTptaE5rrk3TTIYpAK1YYNZgDJ5gdpjzzC5zkXmYeYx5A/PMDW3NR55fa3bbMLIAXvm1dujWyFgjIYZvJPiRW2v6pAlDWELJ9D+N4ABXyHUYpPCGELoJQpKSglO4kzyJ55p6/Ndnkdg1vti0RV6V2Mdqtwui3XyMlZpnOaMrBo9dlB4l1565wEP6ZQTpKfO4yCLpuJFqrqn+sfL/8tXVcnlV9TdKf+lrq+Vj8038f9eqlR+7z2hoeq1aO/8N9xla4w3na9Xz9Ur1wvnqbffqDc249x5I1b8hSa7Wq9VKfa9e8JbPFurL4/9aK3or54q1JW9Kh2h7nmTuuGl84s5kbIUwKEndaSQeeHS0wsgssnS+kqGKJ3fPtUjwNGAuXUqrvMilMvbpNdYo2Xb/LCBRjktrupgXZFHXontdG/NVuRMoJtAkTeXE1JGx9fndlapnq1jGHAFfkrxoq2pu+96Uk81nChYrcDbisF7K6apsqvfV1pqXli1d0hVBlmd49zfQFxgHxg1DAE6yqjRhvmAfIA3vJase+nj2Qvm77E7T/pimbZ4t3XXHXbI+/jD2DMMDBJTV9Y/Zzbb9L8rnN3XlrjvvKu18GhsE/Uzz+RlY9xxY6xlUJQ2yDjO5s+l7CdjHXUDbBTqDq+RiGzB3hBjH0CSBSwmW07MtPgUTQjWcC4VOOVerHrv/WLWaK7ZLyNYVW7e0Zr5czjc1S7cV/dx6tZPfwRIviryEdwrtygSffwHquwXHJmE0CKILm8YU2QHJIFgWlxCBr9toHU0uzI4Avj+j+2njkW2T41Kav6Zxosw5mllWXjl5SbtvLS3sfFAVRN5NYSWluT6HZdYIntR5AX1GEwT99QHQwxQGTKqlZIFzBcxrr2wL6bX7tEsnX1GrmuZwsshpGz45GKcfUhyfFF2gnYbRb1F0WwT0vcXcyzDtShv4AjZcY3G74ls1i9cJAWwDCoXx522jNehZD+gfjM5tBHO9SwhqkRDOW6QhZvtU67zjpHffsHmdObyKHta6gSqaq25g38/JmIUVBF30o4zAszLPLVRsJSVLbErncmdLgsBKAt9ZDdI0zY6w6dkPvKm1cVtGw8F4iPq/EdiaID1hibLW5VNIkgUkKk8akoBkmUdQXM3iWUHm/K6t80iCvJBQtHI8yytceYoTrgBOSAEygkXFrrQrqF1xMRx7qA95RACkaGQAseGwH83G+uQ5QBcVyydPHoyHMMyuMwckgFv5G95vAB6kediAOhsRBPDlJ3kdHqJsD/7G1+Yy3IuG0X70NcpaQNOyQqZHizp5Zjh5pgsd2k3yPdwfAZOyD+hkfPUK5DKXx/T+Btwfwt0ufNHBfmv6wLWoFTGvXj9aL8imFlGIHZevB+HhoNdLyrgfDYd/R91c0qoDWq8oadoj/RDjpF9DP8eYwFvdxzwKJRZqMOXJKh7BEg/TrNuMuX/AcQnPGwJMAoq6eQYR8ttuwVivEaLhRICaYKDDNexWAQH4ruN1XU9nARG2W+jDd97/lsspjl16+vjqgw0eL6dDI4VYw0hjWQC8YhhfcRd0Q4ZJVeU4nWP5XC3dyJR4vAJPuYEmppaW/Ry7cInlJEvWjG8tdRCXaoRBFgkpX+RUJMC6X5M5xGqNFrLSrsyyJU7Scj3ADRmF1dM1zPOsZrCaZfKmGGaUbO2fyWo2rVjmMsOIU16atKMJPFEWaHEFuCI6RslIwW6U8GptwLpd4K3dyZe0+WjcR3vjq6h1rUdY4ZNucbhH/0hahIZwuRf0epSfjqKimw32WnvBXjDpw2uzsYMIk1yxKg3CYR2OW1n6dDBEw1arB3MkCBIaegXKKxIZhwUcAhDKw1Y/OjiI+lCYUT84OAj6zFQecgXtkVFnEylAOBgM4EbUHwyyBwezewaoRWYo8DhosNdH0f7+7BrhCURaNpoVnuWBgiTb6b17cC9P3kNuTXJBcZ7Te3pQHpZKn1APhvPe1x/Np9uuhLRSEYribCaVO5oH4YF8PKRZJDlMrtP3A8CGyYr60/cnbdaoWbQa4bT004xuarMG5X6TCgxvarMeyecM8g/2+gfD4Q3pCEco2BtBHae079MwroDTtr2YlfO9WIBEVgmSoBOWhEJt36OAu0kQ9e9hFokqm0qrvl4IZN8vFng+W1jffMtl11akU43mDm4sSorI1xcUBf1ECnNKWjYV0ZSCjKDywtnOyehksZRqbyxF6/c73idMFKQ9RxcKlj2hR59Evw6UKAPlC2kJfbIA+6SJ12FMYJ+MfsLUhZMItJ/fjRp+F4e1b9D1Vmlrq9TS9ai8tVV+dOnUqQdObS3HEqRzlfbZ+s74z8qdnfoO+mfxfeT+cgT3/+KpB7fg5mwsRMqfUL/3xHee0D54ImmzX4dylZglIg9gdZagO8p9bLNrrE4Hmb/N4ma7u0EkFd0memzzJI4uv3mjvqktSQvFxgMXQn717gcu2Mdekteyl9+8LaJstvcC4tBPwtkbTuIgfbKeK22aNr0Nbm5m7v1gZvOk8EdY4V988WIHsTOaPQLqKQIuNQFHQf/CZOVxFEbJl5AKBOtYfzzid8SI38HwFccjSrtHe9ksjCHyd53IF2MsgT6PPg84YoFpM+cASbyRoKIEruKQoB0ikY3FskB6IblBZbFwreUTmEi6gkoHZidCtZtgSALunG6z1gFcAo8ChiQUXgBSHTkEVaInK2mP01Sd812loe1oWtrQ9ee0hvIRT+fG/zMSTE67y+QcQXiO1yX+OUFbmkQ5/RMQkYXnBD3FvVkWRbG44KQkvZ7VBEtkFcWtB/UsSnNekE2pluundX0HOADHAG7gLZr2MU7XT7R4XrvPFPQXBI17q6Bq3HMCWhLIgcYvvJVX9NRbgHgbb5btpbyIFUkLmpqAjaLipoNcY4Yr/jX0jUAkJg1YjmqwBLVblC1YQ1XBdQBmFaCVSIetIcS4xX7xxaUqAt4x7Zt8dZnNuyjyC0Cb3eJvbNW6MiuximXBlBK7jeN+KO/siM052jAkXB8iazX5EqFeBfKroUGvD6uOjvq6gvot+NOV0UjRp/Laa/Ac4Pxuxa3A6mi1OhHQeiLR6loE4xNJy2aHiqBg6pTJUTGMbWA94NOLVkuoVVodDwHVP4ICgqvHhzwVnKPp+2FCo8hK3r6FrBp5e1RBwyh+5+EhkbCgAGDX3tz7pu1I3nECxiJjAxyB8rnwOSr3EWoTAVByrIaThDYVAfkTMd0oWi/6+cAtFt0A8tA0CKJJJFgtR0PZIBwKOjyIiuue1ysuFUmSfJyjwp9WHHLHyWEvW149OKAMjZHMHbJmS4zP1OnseRuUmXR1t9PuNP1OE2oOk8GLNrudIxxkqhpLdoC9idUL3dm923AVGKFOd9PBG0QgC8QYLpK51N10McFDRC5C2CcBw6vpC18omTkO4ccE3TVyHBYs3TO01e7j3e7jz5Ggu3B7lrO4Uuvhpx9utR5eFXTHDDiZswyn+GjzfMbyMR8UzaKt8Szp6nwG81kvqBRE4XgtYxpcfmV1c/2e9fV70JNL3Ubt7Z4gCx/JlV1rJe2kTbSc5APB+IVCjnf5Ns0IgrfTu2yPrSOpnGM5JH9T2t/2bKyzqRTiX0wvV8sriqyXuML6Pa+7Z500a6KIgeGgAhJqAq06xewyj9+gjfHnmxQfvYKLMFbwNnCQTUzGARkPRP9A5RxRi1A3gw3pCghgdcLOI+bC286ff9t3k+DCuefPnn3+3SQ4t/XU1tZT30SCZ1y7FOpBZeVyaWVle2XlHs0xVMyzbNk1sqrU6XQaviXyLMpxItZVU9FYJnkhBFryQgiyyQshWFHxRjnwhIVcaSUgL91eGRiCqaU1Q+3kHXiZ224j18w5vl0PfJrfhHZfgbki0hm9GNNuuxVCq0B9u5MIbpOpUIgT5+I+UKcbphE8MFHFbVJYsA3tOtE2uXHznkZTdd1hVjZNx9gL6BzaiydGcuhvLPhlL/DK/sKG7S6JtqfaVaJFEpcWDkxHXZIqtmYcu/j6i8d0wy5Ljqc66CCTkwuuacjJ8b2PKIYpHw3M/Lp+xvR9c3eXhGf09eOer6WwxAkCJ+GUtvoWIWWxAD78Xn49l1vP93zFklhRSgkz3oOsoz5TY9aJlHkiR25S4gHw2sGU3vAVEtYqFHbPxxNqBDdCSHiMLn0DunTF9DxzkfXMwPTYRTgZ/+85IXKdKFAM5ToJtymVySe35uEE9aCxME8qxWPSdnFD9uLDruEZk4sQnfAMA6iHDr2/ypxmzjLnmTuZHh0DzXUK59xkJMyfpqgmKB4FUFs6JubPw66LzyDXQPER/6Eqaqqii6q/6g1VUVdUTVS9Vf8VQ45IdSLZGNKQnh9GwBomH/QmM5t2LctNZ82sbWePnI3/dkQeGZFXTGMfCSL6DzglaMF3uq78FNRznWpkiEIG10IhFov7BE/4AvbbaywlpmSF7dJlF2gw+u6qFBiR95rcbV7HCKSaZbP8Yg4bUbCqOCvbq7a8FrRNKb/IszZ6In1XzQvYwSCV82p3WxIyjcoZ05OffJ+49ZqtWg0C8QOvF7PmTsUwETO3Xo0YjeqLAOz4wK/FiNoOuyGGDyBXDGwPYo7dv1Qe991cUC81R48/rpwU/lCNxMcfln/gY2i0Uy6PD1HgZJy86Yy/4+7b5cpz2jdmxNvvVJ5+dkoT0RfRLzH3MA8xTzDPMS8y38F8ANAGUeKtI4d0sJEIvdsT+NUlgxNaCNqDDtFooh1JjvFAjm8g497zw8nS2Z3QTaLFJAMDhhGMEz8eLXESzJPO5Nyfi6Nf8FbP+KIqpSVbIpyApIr+mVXPdNI1lq8EelPiyJoMa00LviTKSaEWVDm2mguuSSYZ9A/FS/N5HtYm+Ka4gHuNxO3CJBd2BfzILtG5kKBEcQgJ/sbfWfW1Zt41RYUXVNF0cw3NX93xZU1eP6nq1ZMuLDuwxGvkWS0O4ZQ1BPdkVVdPrpvWU/F8i+LDBzgVgA+f2hGwCAhzCyuiqOAohkMJLTlEf0TXKTIHATtTxEygMqxDs5NOi5g1kI6aImPPwfz81IQGRYpSVt5PFHLvV9BptaS+T/VJ3HwjSXvjGlHlvZ8E4y8roqpIiiA5hlhFv6Mo71dLPrl2WonvgOD736iUfRWeou/wS+p70jnbteyMHeh+fiq/eRl9gXHpCsKQqUREr2GXcDmeTway3zQQgTCwWgKxCCn2wB7KfmN6uflAczn9gn6ieSbKamo6WN/4pgyAtoWglmnuOIG90/R8M0QXf6Pu2bZX/0Imh+6ub7iKId6lvmOFy6653x14q17AF1zgZyhdZpk5mZTP5IDzqgE/uAyzP2K6zBZzhmEIYvVr7Wjyxf+AOJGYUElWP4r2WsB8R6NXj/SJwAr+WKZHDtGA4OnWII7T8HCfxOZli7/KNJg1qm+Pp2IN+y4O292wGuumCBtAFk8CCrsA9SiAaaIDzcooQdpeNIMgveza2YyMJZF385X1zQvbJfOgHqqNVkMN790pe0Vd5FIrlV4+36uspDhDlUwtY+1g4BV0jNGLJ+85duy+4zP53K8yAZUUE9kKnqAeKMMWonpcWlLCS4fT4lw8HgTH12F9S/mF4nJYDJeLBT8lOO47F+FvUhbE9Or1nuo7DX+bZI7gK2z7DccX0ouL/+ekGNNyjKActzN3Q+uQpqkRAUsVC3F7dD1SlHYLmKcuEUEkIIOQNShTZ9KcIVGdxv8wZXwoNBqaWb2EspcvZ08WskG5ura4uFYtB+O/MhqczYsqLyqGnQHWTeMaJUfLcBxiBfNZU2ARx2U0Z29ra+tQF1KpzusuHw+8E3eIooAR9JUo3tE5rwoZK6jwgoB5nLJM1RRULKT0QFP8ghmGZsFXtEBPCXgleOWV6Ti4hgYwgksQq8zsLU4jAKExiCCWQJDkuUT2TMgf6kPI6+p4qOq6ivqqjgZFl16C4IAkDhRdVxiqtKH2A7GsZImi4/PMa5lLzOvi/CbacuC/mqmbpCYz8cnXuBTjQapXnyZ2iWxhcJ2hBSThoWbZvp3Wjhx6WhoIDJxNDukgnX7O9h04rUCib1vZ67Cqo9F8ZcffBhfgcxluBJj7UHw4uCExk7Gz/vdoaUe5RILjSfpDpEm0ZC3+EtCN0hF6cRsdc/cy98d8qXV0DXRrFBWRvqkK/lzcJis5kIstRMThkYtviE8oC3Dc437PL/l9+B7GK8NBfKBkBpjwPSApyWFICQsajgdokCVwLkvDHbKE7ZD1aBobfwuRm1+jJCdLiU1Aw2iCBW6u6z+sfu2K241VCvQb1wMwaB/A5y3qMWwNSbn30d7fUe5XDg+zV+gfMzcfRolNDWBnGJ90EsTygW6UmhrVDO5WDVMZP6uYhnp3rx9RId4pmOHq+DeUdFpBa6oZjQ9OPXgKPvP2IsSWhtjbkXpYNVxzuxPbpmEPDa5Fg2ul1dUzq6sIyDaMvqB1OEpMxhKbDfRtgKhX6FxiGk6i8OzW1lhCtWsTdEwbNIrDuB0rVMHmT5lMtAMtCA14eRGv7VTD4zhtFx1NbGzWL9Y3G6LmFMb/QzpXcyv4E9B+Jd//KHAJ8MRT1cgTcadZtCu6k200suTr6EW3VKvLQtknAww+Ezz8x+h/EK1fN5HeAl1M7EO2UaxXpclNCgmbVIabcHaYGlRgYi9IFYRHokKUvufC3T1b05S8bsmOKWmeKuCMVlJ9N49QvaaJMse5Ws4GUq+noctLxYqb9pfrHOIlrr6SNhdKHMvLXDFsWOkFs1qK2mWvUijIImfpHAZ4Y2IuhQQ97aTLnKcVlBNphfV0gDKqKRlmRpJUtbyaSUkim8qs5ooLHitjlnXDO7bOMsxMXzECxFWFsc90owln1rYSRo6M/gqu4ckYiKaD4XDCgFF+pacYaLd/qMVd8Fcm6TiPCngUxNBDdLDnQdrkMyfnGhLrLbtC5psPE4hIzPoHrSsB6sH46rUOZ7wmKWuBacIsPU70OVQoUaWrF4YjDjuzczQpKD81zZtE0EglUNXUntXKgdBJERSr7qJ9hYLk8X9SiA7e+P4YM0doS8joZPEwssIPy2k9lCRidqr5+DvRIIa2B0f4y+lcGs3rEOk/mVOjvagf7cWKpGB8OBrN8T5lZgNijoCtCmE3OpSB9qnoipySo1tEKQt7iZghJLo+jEaaMn7Hm3hoVtSAZRVfNjwT0IuibTwoQEcsKjD0LqKPKg43/sSPSjIhNxxvquxH1LTpp1Ip3h7/S1T4PrgCTDebxuy75nEY0c9QCSkwhW7oRlPhEGI2Lh4bXdm4+OT9x47dj5iDYxc3hleOkZMnL27EfDXLoDFgz1Wmw5xktplzzAXmLoKOPaoogVkkEDRPBN3rKBFzA49HzeLaa6gGM6wm+EnHbRoIkBU++kUbNaOUV50sQimOrWP8VdEVfxnjP8Oup7/DAGjCskjVJE9Vc/eLtIt+KP2D6V+efn/A/lz6B230V3WWwJmMq+bKel104QX4l+FVXxXP6S8Zdk5VPUnTUIpNWSLtZwueege84aW571zfEz6mfoOczY4lbLG0DZgC7APLsoEdxBx/Xbf7uudJcHzpwtLShQdIkEml0Au9LNRslFyEYLyfXIXgO1MIdS6++CKvzPPQQ8CGZYbYPLeILBSTgErN3RjMAB8adgkf/SJ/aqmwoRpK0EzVVtp1BFh7/Zcu1teerKPAkJdOl7N8Iyezwma13ulcaH3gtfW119fn5m3lVXLZQu1al8xlSsdvzOZS74UXdh+BrG7OBK70IKN52pCDY+vVq4Lenjq1VNzQZW2uEqsoSFn80mngZ2flvz2a0pFfR78FfXMnc5H5ZrLSUeUCwWik3JR+ABV0CblI6lJt8gQwd6iomTAePiH1XWroFQe+12k3G1N8Rwu8jNzYaN2jGgtPoAnkCpEeVJv/SpRVCTCwkTZYRVUV1kjDoiAi2VnLK36KXauH95cKWSwWyk+t5DVdFRSFNWXTcPzU+K+XycJ9SknBQ1gWJUmRiLxZSxsp8i6k5SWJZWWlgHlN0bEti4Yo29iQDf4Zt1jAjeWF16TTWi57d2OhWDf8vJk2RU1CuiCzrO8ET8bI4EXexrqi8bgAr+NkKS/y8Ir4dbM1hPQTBh4TRl03AcyNmA2HlZ2qRKKQtK4LLdkvekRnMx4V3QM4/H7YbofLGVtR7MyAkNknHRKOogc2Lzu5x4LpuP499HuA0pcSucBUnRZLBKhdEZ/YLPqxgeMZFKLPOW17HeYrdjEeiI6YFkVjzR5/ryMJMi9aaddVV1Tbeddl9DnbXktjnIZ7B6KYxq5ordvta44NN7hu2hJ5WZDgxjm6OIhtX7qRVbPh29sn5iSxrQbDHFnfBBhlDbdrAfFEzHAI38ceG1997LEb7kF8G1t+G42uT25CLbiJTeSTwyQ/K7JIfkQ91aOmKOQ7zY/cR/TlGoqLMiSq7CltuEJl3Izt4nal7eO23+66FTfsuoMIZff2gmh8bW8P9XrNj0a93WiYHGfl3Kd2DaQmoVuzIrdLjAuAyx+h05fHo8uXX3wRRS++OF8vYnNDauW3ocxtPBoOye2foVV78cXxVXL35P4gtgWwI8igFu0NBlAUgpjn8SkP6//5yT0NOvWcmIslmpxONyIrB2FxiRiTMr01eiWWvU8vRERwQHM4L+sZ03XNjC6zKSnFcjyyrbKlOarKcXII8A1WEJIuiaqoKBBIHCfxyNLzcel+l5PTQe11tSAtcwDmZFZK1zohAAaJk2XuPQs5XUQSL6UEUbWWLFUUUpLMs6KeY+b3FxApzXGCme3KBNcLFNcjAEaNVoxOyXaCmOndjBUwcTI98XHFrRxHL2tOWh0/r9g2+nZiEQUcuqSnc7pK2M20qSmiwPNQFNWsmyoU5o/pCDq0lfHvahabVtGiYo9HZOjsyTKVoV4h3PKeqXmmY8LH00wRK6L024SeitN+0RgPOChih0w0jncTvSjBZ3S1A1pgT9DXzVASd+NNEtNNFJXplZiZ2ew8gXbcDF3+Mp+K4dmjMTz7TzFoe+nrAMTtxXG0HV96m0GNKfu5czW6uh6vnUPZOK0VI7X48563EdnAcnc+rRe/ipnTTYqMA/U7BjzwvWRVn4h2gYUltmEA7dq41enW4tr6sN633VildpqqJWEMzieRIRmtEXNBmob6MTm3KFvaymcCQFYPXYaA6nWOXfTXgslJZUW+HDhZ7uyjxy4iJibTsQgtCoptR89oduFPdV/vaRkdTnoQfZOgZ/QenEBSFATaos8WbXJhrn4yrLRrgNFuI/jM/sdXJZo2jU+b5fDvXZnvi9tgiUgIUf8fWpW4IQ56u7ukSvP1Kty6XjdXA99Y1VvXi3Q5Dif1+sjRysxquXFDvaBve7uzer3jSEX6R2s5uLFeQOppxebHoworLtmRdPv8eHSPjsOv3Vc39e1kHP6T/datqzep08asnnNjMLh15eZ6aXC0nrfspzv//+mnkFrI/YO7yVy+K3359D+2n966Ak9vz+tGVVqvM6SP5sD/TS0f/p0JlNuaFPrviqK+nsmRYkJweLTM/Vl94KDvkavwTQ5zmG5ELSfrsxVpAmgr7QQq0/WJJ9KvCPdQn0gEBhHZFQTs/gDO0MPjq8HhIdkzdJ2RgezKQUAPRH177cqVYX+ebyFtlbmRYwrn9X4zLumne71o8jnCHR3OXWDm94hhRidWjxE1zfXJDI7aaC8aX23t9waDHuCk0WjY2h8O52wlfx19nuzIRMTGhAzGyVZaujuhGAvbO/EOrm0YeGRnG6zFnSb6abVQvuvsome7fNrAAPEVwRZ5XledQOSB3xZct1sweMPJp5csQUYve7aTquzUC13XJdt9eDlnqzrPi46gmIIi6K7g2h5b2jElKTOzF/499AcUE9qw2vrddRb7tu8JBkv3sX6k8smqUflk/csPKEj+fz9Z/3NTrXxf5ROQ9ok6Wn5AKcrj+if/pyKlZjj+t9FvA75KA11h7JpVadfIrDIQAL12t9M00Bnk9wHBjtBTFTEjQc/uYXa44791EQ3GBxG6rSKyOBiPhn0p8z3+zlsXJ+/9CXQA8zvZQ0oKCJjdI8w80eqip85LCI/eWxzh3On35t+z9978e9EPn5ey4ucL7/m8iO57X/59PwVp0zk1s7WmVltk/PHJEfWvoiygnmx8AJJElFM0ZL7W8/7k+egwsUPv3/T4qz3vJ/mTIzo4PCRm+TS84fGkLd4JmNiAFi5BG1sxO0j2FhAGF7djARyONqk9xPAb26eDohds3Vaq5YNMEC4eD/KQDG29WmlilgsLK4vvvssK08eXfG8OcxP73ijG9RExFjscDK6h4bXeXr/HzMsJeGppTq17bbJBAx/2+9nhsEdD1O+TXb3XGXqY42euUJ4c4He35nb9ShcazweEj6M2DiuY8DgfOHmy3C8/Me4/AYc4joYQR/c/MYbjXvnECQieQP1JfGqL99FYZkLkXgImwnSK5qlQD2YbEa/HWnmAxcxGlNaX9l/XsOwHP/CAbTYe23dVU7Qi9E3d9kYtl4P1qBquv+be+25bDytwpiuGWdlod0lW/LQuRN4d750FnsKtQaZhF/OkLn7Kx1C5CqlleDAcDvZKx59Ezl7pyeOl6taTpfEIolvE2rhfevLE7f3SiSfR7ZXHT5T6EH183qZfjTWZM/IPND0kBnbAqBLBBg4JGoY+BwbWxYkQoYoOEmIOwfcvqJahGJpXMCuNUsNwdbGJ9ayuZ+eXBUXRXeD2bdmo2MWs5RuKIt0rBCqQ+ilWv5aMXzIbParNrBIZCLByRBsTEaaw1iDR5Bslx95h0O9H8LnOHB7AMA/6ox4Z4kE224suPULgZ6/V2o0ich7N2viGvREomW0TXUk8a8jWiMM+0G6YNjD69qiqprXfn7Ph/hcxL4lgduBaN+rCF31L546O8aMmDWHSRdFhazpPR/Pz1AbWaP4/Fr/Ofw8I7qYqoUR/fm0qv/0a+nNi4U/XP3d+G0H89V/lGtF4VZI42RUAte/3okE0aME36s8njAbZEcpCFAHbPOj3e63p3+DatdHBwX6U/O3GqXM6Irpyo1o83rYQVVeR5Zou5TROkZIPLHzv58vtYrFd1kzbjD+BZJrmAI1K7TPt0r5smjKKSDge0XgPbtm72mdmtnNXoG3uZy4zTzBPMU8TqSCwpDCHHYOsuLVuwpOvI+KBoSoQDwcdv0kn9wakwwwgUu4OoXs4hhk+NTskeLUauqS4rdRml7wL+3w0Gz9okDJYIcUv3rFSYgWWZ/mUgkUeiYhs+dwQZRXWUlW3dZno1JEp8KoIHDyHeJlXeMzLoRdxnJOuyOO/uEb/UImFl/Apll9Mp4speI6XOY4kpFhR5j8mcgKv6ByWDZ7VeJ5Np1iOg7U9xad53VRQTby3n9XCYAj/8+0j0l26K8xF5uuodg37Z4iBFSE5wDtSC8GYPGB/mxJAWCbjy5RC+ARguBMMBotEtQntMls/yObSIVRDFdGdh4flFc1ICRw2LFnFqqCoQiplZGFZqtimo8tY5g1Fw1hXFQXrWEs7nqbJWgXWvV4/0CQsn4+CD6WRCvVUDRWzgqDzgiBAPY3A2AzuVjXF4FOqKFiCiVOcLViGrCHE6lYwoTNXbk1nanStxDAN/HbUoAQg/taS40EfZnJACA2aIzTDbJbqbG9FaGZ+Qip/nxGPBv+h3C6V2mUFWHzTIQZSAYxqMth32qUPUYvqiNhIjqlFHSJqnSlNGQFV02FmrRAkAxO8O7WP7t6kjiUG6sTBAqGh6PRt15nXnIplF98XkhePhyQMddRqXd1toVEvCHqJCimAq6NJQaxTp34Q5vvgpjJs3FQG2yJSZ5pWmxkvECM/+ER+Fz5HCvJFkv/4qk7LQ/A7NGgQtDeAqLeywZEijUdxWU6bSdm+eGUwgA+UK6Y5vwj02SaWMd3YCAawMNGDJtvQbpH2F6bipA1htVbbqi2K/Gajsvz5I0nCRrO8/GN5R4fpV7qQ3sy3tm5b74aVm1LmcP5PMQ6lez6RuydapdMo1isR/yLraCY4Rs/lTfPfGavGCcMgh3d9RBS72MM/hHFXdNF35Q0fUOq/M83jptfx4RZj/NUfwi7cgz8ieriLGeYfTm9LqP2Po7ejPpHxTuwVfo0iyHVYh04z54m0jQoEu82YZwZWpK3Htrg4CmHFhPXSfRWsSYhzaeLjgerUQvS9kiTIkrNateoVPy06kp/Jfil3Incyp291ukHBsDSjUHY8y9DN51Z0PiU+lbUsy8gBzgxGffTv2RTnynY901zEXorLHy9++3C4/Jah75oWh9i05tg7y7KnBAuWEtTVjPbBwSgY9qaY4RfQPcxZ5nbmXqCWl+gukK5LhbhhLbYUBsRZIx5YyO49GNWAUagI1IUujwgl3fTxGtQfMCSQRbjQwNE6EqANKN7CG7Uo1sW00AdlS0n7lbSRyvCFbLeeyRknjVwmU83k/LXVtCJhA7MVVpDKa46EbcnVJPbuu1lJHf8FnxMF7vmirJvWG1euoI3AND/LpVzsWAVRdTI7O8vLO8HOzk4KnnbgMVNN27KbEgzFChzZeFB3PNNcQqIvv2ZZzc5kO1eO4I7ZvsUb7O9mOxXjmRh/kn2wxDqmNYzxTDxG3011NDK8L0rVUtBqYa2L7j/2TKt/LP9G5WJzQLTRvfDtszVrSNcsl1oHNMnO/Yl2iyxKr3rycqz7P3Z4uHOLGDXNhngU7N8UmckC9tCArhpMbE8fxob11JS+7RIlej+qd9JOlCn+01LmEA2+pxHabu0D37taDsPS6k9CreM16Kvoq0wGkFsRZmebOQ6YbZtJvA8JOCSKI6AGbBi7H+J9IJEh9qncKPE85MdGp10+hPEGc8NPXBApVmc5JD6InNOWqBInRON3jYatfjQcjT5t2rXEBVH9lBValVUT8ZOL8DzxMKSK1lJIvBHZZ7qmQtwRnYWLo71+9H7rVB1Ol08c92q2uWCuViw3uUSqZE3Xuq+FS2M7LdJ6sKpaBMFHKEGdeA6B3ur4atfQsAcYfdi7zgSICbLDLDlcnQY3JaBREIwH2SzqZ8nfYBCQv2gaBJBCLkQ0IAlTe5QW1VHBcLATtb/XmNgE1SaRQXGpCB9EfH9B7HPxgSgWybEYX40/UxpN+O7V2H9Tbc6WMCSepoghQpVujiTD7QyRe3Q7RL2CDj1zvE/sItCe6VWEFPf0U5hPSannO93nUxLLC089zbGACP/Nv9FfPiSWFST4G0HhnngaCyn28Y2Nx9mUgJ9+glMEWX3nO9Up//1nUJ4i0foR7TAAiAZVQhPvCWTbaIklXpIcYE6uUqvGFoTC8ONEc8Rx3/+ulKygL78orvn/xXPFbyFH3737z19QMM8idPLjHIul2Xy6RnmnLJXkQVZQe8iIbIci0h1i0+T5bwBacGz8o8e+9CM8p1ji+78Hp+UUj4ZrX1yDzx+8hzMNln/DG3jWMDlmprcibUp8pBCL5xvsM3HNnbnCinzsu8R1WDds+0csNT9HNooVXV3t95vN3d2g2QS0V/SuEiMbCHp7RDlTFJ97GQAEDEDC/vfm91onvPuNuUOX3jq/198ql4/Nv1yYe7cNrVaClX31VvU7WquwDaOnOzXAO1LHg4Np5a6tFVumQsSt+nwJRvsvzJUhu9N01rZjqeyRtl6lnmhuUdupT6nmvD+pkHqcetW2/zNZTAluvoJNB+sKruRd2RexxApuz1X8b71VSw1EMSO5haqgati2hGreEVhJlDKKc5fLp47Nt+N8uX06Sm5uw5Aywt1XHx3RAHjiW3ZZfWOwVt07Miom+CHWp2aYPPWGdpPvq6ltWIUg9PkTdGjI4z71bjWUjfEg0Sg+NL7WmkUjRHcc0fvQd8XweH9/NInM2U0RDwRE5mwBE2ABKxAbLSFA2f3+Z56rf/zj9efQQexfY9R6rv4jP1J/jpm3uxJjz4cuGVrdmk109Ras/+7hKHpv/V8+HUXja6NWHx2MgnvfW/9X15ledICy0Wxv/ltgnXCJhQKgpBpxbbaF2k1qggkF+t27t+U7BMltZspL0Zkz0c/euZYW5bOpaLVz51TWNzoq/4/fc+Q1bqIGuAu9SQYm8um2eFpLl61iY7nd/iUJBvlIk8evyNqHt0PDOM4uh6vbH9ZkcjMzlR9cozbYs9VsTgcevxxROQpdyNp8cjzaDeNhtheMxlchoC7KhhOWZrx/7doIWEVgbAOqEpjKGr9EfXW0EwV6CbnYBbK/jtq9bKWy9sBapZId2F7FVNHLEcY8/URXDlK8qesvMUd9oLiJZ5H2xLmYK8Q29oOol615axvBci1YzrY3/GaEBuPBcCQiRGzjpZHKIowRO6Fpv0/bnOiZAXGRJk42GtamGw4npsfxcuFDF8T8RVXwYYwLc9fDVvOAF7NYga+KfUPP6IaPVwOgKuXVK7kG6zgQdRzURC9L3M6OgCfhA1aWpabyB2zWeoCTtOE+NTAfrODNmr+gf5ycfVxf8Gubc3Nusp+e+kCxcMUmIrCEC/a7tQBd3R+PdmOTleFwNBigw/FoHwE22AOIEAT9wax/rqFDsjrajQ4dCZOFBLsJY0NOWp0DRBRKd7XbDds+5KNqo9Vq2I6OPhmxpjL+xUa7fVdL+v7oT8orcJP0W3TQsdPy2gTXIjqSp15FY5vXqbdRN0zSUeC6tR7BG+6+V9wnR+haIEaoX7fXe72iS82X+nD0iru7RW9A/JDO2iZLLVepZcS85TZ1vRdvHid7GMh+nInRg9+ZGH3U2nPmHhEdrFYtFgah4SYVJnxKMWkE3a2YY6AC42sDArnLfgToQ1Q0M30trco8x6KUIGt2ThfZg6yp/AkamuRheHLTJA+Td30eZRPE/obEBGQ0VGVL1VXNkLWspsH7/0Qxs8yN9it5gq9vmrvAv9jTOk0MWax5Q5aNJJHET6Lv1tNpffyNEKLvGA8PYhTXS+xYYpvjcqAJsRFLuhyoGB0mD+jk4fEe5YFI3ywXi29U1UKmamfoXlHlIAqyUA9LVgNtNhYIP019aR2VU2DhFsKLJPH3bC3j2EJ7cWm51ky72tZyuPl/pbWMm8btxcWVatN2tJOQ9jOVjMnzfOOie9KpNlc333R2Nbw5aUoHr1GOq0g9wZ6IuXqHQlLil3KCLaKbIvgm6xrEvP3EsWMn/pYEcmyV/a0mtb3+1rhrfyVOPD3ZtX9scbh4jAZX5+2048/LyViKzWemcghSXonRAK3HfnbKk96HFbfjE7EDkT0kX7oLBBLpytoy3toKoh7wAoP4m+2Nh4P9/XgBRmhfNqgnKOIM6pDu3tijugB9ui6lKDerQ97OdN1oQh+ukN2tRJND1gu+WwPs6TZCtwuMHZSBOGMCxMHDlIJruBuWUNtAUXRwcO1g/PPN3mgA4SAMd0Kylg6Je48BAmwRhOGl5g4gkBHx+bHTHAwGcEsvbGrhdQZSgMEJw72wCbfuNBlmTlYnQPs4VLtE9EhUywYMZjuFY4UZ0ZeF3YPB2vnwjs+t3RGeX3shPL88WPub82uDtTvQaEDT4CokXmdCmkqun791HvFbqRTHjXiaU60SZ/xQ/Q54+PAOchh/jh5QH95Wh1zopTpNe4WGNH1ajy8AhiO7Y1p0X+YaIltTqf/kif57M1n1yJ4JHFtD0UXan3Bw3UkEfZ+y4A/9BSVv6IJjFKywqGfyvl5sWkXTEXTjMMgG8PkuzdHgs6Hbmmbr6AXbcezl4+2HdMWUSxnJMKRMSbIU/aH28TVyf9CUyY36kkwe02bryK9Su3rCC0fUPRu1BNz0u2sTWR1x/NAOm+gzP/88PruweZ5FpRPVldpWcEez+7rjx1/XPXlpg2VRc3dhg0XnN6tbdVQ8HuSpi4bo0ZO6fSPunOCYmyihn3jbnXjdnUcwPzdE/f2IBEcx6FXicIy6KUtoxK+gnwZezqO+h7aoTRPphk3Cy1UpcUqi/iya6naASpQQ2f0XwhG6Yh016XaCTY+wDtUw3vjyeU5R9WqgiIVq4bmU5BU8GWcL2T/kZIhKOFPIpsv6xrObRpkvheUP5ay8Vs1xOXVpVZY/v7qkQryqF6x8ipPRe6wl3Swu1TKZRb2ezdYLjmNMIuOrz60fP77+nJZOf6HZeVLU1ccW1hFaX3hM1cUnuk2OQ9P++1P0acK5Evam2wwnGwW6jWSfTgmh/1h/pO7p2W/6DuyKJYBS2a2ve+ZMLjACAb2u/lDdrQQ//M0Yl7CHxw1UzihZo4pn42OQ6BVnohIL7Qx24IOG3/7t44Nv+zbUm9z7m+iniFSqETt0IO7EBRxvUiDGIIg5vbESZHmvcTK7Ydsb2ZMNj49WNu4Klhc31h/Mr7GuabrsWv7rHl9cno6ZrwB+JLLcJnOK2WFi6+ZmTUcYcJxHBFFF1EWdFo+hwl0dxTYmJaBJmJiVLyPcKRHXA9Q7jgEx9LOiL28vLd35YpU3iivLIrIyEjovjr9S3Siu35nl3iyzsKrLP+hlsmWv8swpJ1A948xb65zGcdo39JdOoR/BeNtAd52RHbRQWBYzFpLQHVLmv1Tya+cyubuPSzkZ462ymc2UoxMBi9BWJDg8l5b6p2bt+jGYd4T3qlHLeWgwuljVKvGGd0IuCAlJPNpQvczLGmvYx9Yck9WIxen4kIRH01AAYb9TDguFsNKO+eOjZ3M8xRXoV5vKJtaZNvFEVqPMZsw9UP0rifsRkVq2a7hG3PzRG1LUIiKm1f2IiKei+uOVKKilmkHA5s08e3U3G/2vrS3zkUfWaNine5kHgGL3Bg89NLhvZ+e+QR85J7dKlx55Zetk6ZFLTOKvO1m74vWK9PhrmDuYXWgnQH54G51JdShhYl0yX1Ob3UQrhsNqst2ZjLRN4PFZYltb86catEpswEKEwsPrPE5xKUBMlibqIo8QD7yGrH4BVq2HambOEARRti090DXNteH8Cl1nqR050KT3pDAvi5LiG4KsYl6y4Iy7LYA1OrvumTm9TFwtAZCEA8eX9ZyVy2ZbQbBLQ2amoxgm9Tye1JPWkZ+rI3ZcH+rI/z3rF9dtfI0XWS7FskJaEzWoHM8Cw6IibvBdNSOvAypU0lA1Q42rdo2oqMbDPmp9IytysiTCYCfV4mSoFlSu3/d8K9DLQOFT8FIWsTypk9mmcsoomPn1A6iYBpyTgXokBr/JIgejBLgE14/a6LDfG/X7vYNe0OvvEcVln353s70DGBxTO/b/hr4wkXGiCTLmyUwn9NqfuBhFfbJl84FT4//e8JZfe5e3dPHXGq9d9u66uOShZ5eoseJ97sW73KWLd3qfdV2SfufFGSaH8hIZMSkzQ9iFCX1LAZ8KIxwwETq82rp6taUFO/0+YvqxGQbqUysMgqC1S/B3JX4fC2+E9+nJ+1y6grWJNV0jCv2KW8E1n2V68RvGf3Hl0gF5ySNXLqGA5HH1atT/KOTDTMpHfRIpVL5WINgI8G3UBva15jegrGTrrU81pyG8+mAzbYenzq/dhj4MXXk4gjwGdOPzoGY7ndtPPPRpwI6IOYyg3Ye3fD8MpG4NqI8LQKVRARIPhbdJa7SJkhZ9aPPibasXtkLbGr8L3gNvi3q7WZLBQw+duL3j2LcdEhwYXWd6B4dztlCERy1TlF4ku/aoUr4bIwoyeKvE+W3b3wZOf6e9eeLEZnvn1NPlc97ZxuLtS0u3LzbOumv7xypvQIfl4jMvPVMsd9fDQm3p9tfevlQtNltXFpeJK/fpfCIyf6IVyUOei8TrHBAHq0IaCapjQ9tFrSaBFt2IjCkSa0z4A79dpdCn5hL3iK1oPAImda/4K9lRH3irQTARnN+xVHV2nMryoIeYXg+qi6gXNeDUe3DDjw0GWcJSLRf7kQrQVR0cobVE4lakPgcJ919z426MqA3MdDt8mwCfLl+JI4BAI+LXNEK98egwLgM/Pgx61Ifs+BrxbHatFaEgGl27thdzgsPg6uHh/iA7OpzDXfP6EIZwGpXEFw/5lQMojEX3mcM3QFfHwAn/E806JH4ziRM/9OPjd6M9V01bX0e3NDPEX0WrNcfbphLvWUSSVpt6cwmPOiKj9qqx7ephq0VMChzTlM88e/r0s+8gwZmZndZg2I/1vv3kGgTjvZm117wNbqyBu8Ff14RoUGXYnFnsxWR/w7xJbLIt4vfpuJ3ZJSvQW1Q6SqSDber6DvD6vI2yPZ9lqtKuHLaojVQwZ3Fc26pWty6Q4H2EZIyoMdLw2MU3kKsQoFZ16/aT1erJ27eq40E0zf/aLH9Ec3ZpKV69SVNkngZfqwC/g/ooujH/8dVZ/sRajWSfmvYr6dUGxF8917myIeaWfem3dnfhgw5v3ZUoS662ZjxCbLtvUf8dj8/R/+5NrFJYrVVrsEoKxLGHAyslcTOyOfmdmtOIuO2lflH82GqKTHEiqSJiXmo/hc4vnFyAT/30w6fhk48R0rfxSsOu5l2OaIpYyc3X7EaxYdf0nJqk6HrNafyHSrXzb6OGkU4bS2s0gpgCedtCYYW87fQ5GFe+bm6wqqfpVbtRpm+VyCt4NWfU7Dp5K+SDWfTDD0SNSiW9mv232dU0jczJjq7QmevNpAczjokH6h/GprkxTOwRFxeJuwv0CIEsPeKRs2Wq6BXVRAe6MvGqoejR6KB/kCW/SzHf9vN+munOPbdGdvCliB6bWAYOBsPBYH9vbx8iRCUOqOMQBYAhYIkcZPeYmdyX+KWlnmuJ/qJHXENf37t6de/rmek974cxVmY249nr0p9ioro+6uuMCG/XETVmhelFfylmOblEZJGICc+FmgxcsmQofcWQgDeW9PBccygqWFcjVcOKiA6b50K35GUcMafEv8Ch5EQn45VcuHP8rOdppqppqjkb95+lbaASayxS7yk18yk8aAEj4cceL+gPPuz0ek07lwuD4IO7u5axZJg9362UTkUo/45cMwefH14ef/l7CmkTmVbpe35soxAIQmaCdY/qYTaZDtVNM93Eo8pEJ2O/qj7m1U/meefTt1TT3DoaxGx1/CTaT1xURf1JZO+mlCkt/gVKi4Gvb3TnPA9M3WP4XUCxuN0FjrRXNOxmu5E2i7GQ7dQDb//Xg8FzK5/4kFhMB81mkC6Kr4sla99SvdZqRYetxs/M7VUgFhdMvHFusr948ttdbeqhcSrkW7qw5JgFPg8sLa4aeb5gOpBUb7XuaMEiQKLVYpbznZVsdsXxuWyxWofEc9Gdrdads30EQ+rDr0G1nFN9w43aTuAvE5cEAqZaICKvHgQAUANqpMRA+HxLkTW/6CtqnQALFOwunzq1vGvKB+QWCK6c4GzZ8H1DTade3CWqvKP7P25c6Y7smD+yTX5G+I/s/zhIEiEgr535+OGovFCj2gmP0n1ikU2czPlRiKkKMpwL8WZn4lDMm3YxivbGV0e9Xn+ttLbWmwahlWFZJRIExGZMIpRWFDTaGwMHtNfTokALslor0LKBFmUh7GctqZzPFVUjd1qxFPgc6QdSznBWMpsaa0FXJP7gNgnl77rEHwmV/06KFAjcmyVeTOmOUxLNnmoLsmsZzrQc4799Nyc4rPIQ6xQcrOsPmlspXpALjnskb5lqLEnedOcNMMdk8w3NBFZPokXr9bIA1+LXjg+jVra3u9vLEl/47JE6TGswKeG0KDf2i3iTLUvyLNmoQ/oGDu1KgY3oL46F8SnlCumrgyEU62DYv870gXL3h0Qem+RFbNN7wMP1qIQQeNxsNjtlUxPsOilveqJ7nLU8LP0YuLtoHU0NnBIUOalTdBVeF5BsYgrzTb3ecNbk1/b3iVH2bgLKWq0ezdg8UvfY/3SGovo6tRA+xrQSnjkpS8IDT8ye8T8gTgt6hVjutIbQd7cKp+XtxYY5weRADXeyyaFFTXQSu6pb9dut+izZm3PLzor3ydOd7jd1VkRzh0+CESZ9RNH9pH9u9L5JdIOTfsmaco+6pZHN3WiuQ3bJEkkCYxDbm8Vj/0voT6Hl6a9/IM8lkAuo3zLy49W4G1InmWvUp8A2S382rDbdZY4SQXgsjqT7VgSq+YVFAn1BRGbJ4QSW437sBBZ6AkZBCUmu5Boidr6S4kTRWWmWTiJD9bBWMSpGSVMLpXIFi5Ysp0RdMLHBC5hV0dPFUn6zIrDoZXiIexkhUbJP5DPSd7MpjhX0WvRTnB60/FxUNlROWlp4rlD8NJvCtptRZAfuwHrG9SWNme1Lmf0mBvm9CvhaEMT2g/R72LrSQkyrNWunQeLzIHmmTdS709+nSL4D4vRv2Jo8wzIzPzhobkSwzJiZfNGAWJb19nu9adlumc9c2QiLPslnQncIT0E8m8576XXILqLYtjX5TbPpKkY3FRCNRBTzlXt3diMiY6ToIOrcBVMW1jbyczzBfqL1LbknHpTbMTBoyw+eIHeSBU425n1uD+O9hnZEERWgS7qnpj/dX4j6rcmuw6ntOrV+I7tUYocOwbT96Lp4grlAfa6R4daKf2SAuAQC6A/zihhUT2BCvGOCyoY9wrbEG4zCr8GqIsNSeJ7jMId5T/dFQ7WKjmmnTCWPNVUUZcOVVTFQjGw671mSIknp5pw37GOvPXbstU+QAAWcwkqSxPIoxaZLoizW65zlO4Gh6CleFDOqLEtq3lCMapiy5HyQwemfnXN2/a7kPRBMeCUYO4Q3aMLMJL5aGJj3tZkfGFzp6ogKSbdTAI1ifY5PpYaJNDHWeJxh6fJNnUOF2wgnu6uaLGNvVLMLiizbBWH8v38HGBcO8RiqiPkUYWJMDav4eSOjlyt6RlczYtEtitbXFxYXTzgStE3tm4NGAB90MB5VN3Ie51pfxqpgpiSR5wVJ4kSZ/MzY9xe0rEH8S2iFlIBSKcSxiycXbcPSA2z7j6RzuUa8Hk1kSteI1S+iFJxsUq3RbXyJQx0iYuzv0k9yRMzcCTlO5UUx9o5R9x3MffHMOOKfeIJr7NhbzYQvmf9hS/ITJlMWdRLBAEMAoTVRZMixW3fZiJItBUW3l02/Jp3tTawWg/FwP3F6Hx8+1HxHkzt5z0mY9onrMOPhZJPBwQiaOJ3NpqGtIVr88eEwwe5yfHAdxyatha5fT2jLg8SieWKtMTHhIG3390qbbGSeWX5Mtti4aEQZKrqrORjM4tlBMIsX3SNX3OJBvL6QIIpeJe4V58+KM19oL6GXKJ3E8Q+tEh0EeunRR+uPXmo8+mjj0qPoUXICMXKePPN+9H76zOwRH3Ue7V56tPMo/SDmUvfR5KQ7R6M4uks0rMH9qYqNtOhj6dCJUC8C8vSXP59NnNjE938efYZ6xmTs2Mx+YqvRrBIv+kVWmFjbC24tNvAgW5boXeQH3cjJnNDq91XRV2Tdz3sFP68s7VUMO7+ZZg0j1a6kzSXPGZTy6yvrGf/ia/RaaSGzoivloFbIWLvvi80Q0Gc4uRDU7bSbzmxkPC5dWm7Ki2fl7IWdS7ed7iw2TG6znc+kjdA2pEztKzETlrTXf0Z/NLMC1xFg/DUU/8YsoZ9Ev0jdkNFfJ9OpR0JiSknEfcLcD0iiK+RHS69kzuxkORJ7h3XM00TPe4cIK/s7sO7hd5DfRLI075h1xV8pplKSIAJUkDhhA/1s9ty5zKcyluFxmXPnsi9ZoiKI/hn/JWy4+CX6hvQxT00Lsmh9yttZQYjYinnEGT7LTuTB8Z52smO+CphxkzkJa2XicYvs3bYwHcg1ss3D9WPbPfpzR4m7kgiWVeLHInnkFQdWSjwYod4fO6YTrJnOM3mnXrcLj0fArvbGh1f671UURTeGARBFFBHndZ8x3GzfMdN2oZ93fEDB/eCwf9DSfWNeB6TQX8Ob+FaF9bwzdQrTnZDiKU2mJk8b9Ffrmq1pavemyBNoZ5Xyewcxth7Eh2/U72k2GqFurpbfnphjxheGiVuX43fEKv07/igmJ4uEaOn6rrbgWLv3aGZ5NRunKEcOE/nRj9P1qAR88gnqxW4zBoFk6BNOvTZ/LhRRl6ZT/8Tk1xNasfcywrV1af0hsglnpD3Qhm/qkpL2TaB096UV2TD9tCKxWvbXMpaZNn0I/rzqmemaZ1oXsyeaTbMVbBrLzRNoMZ8NPNMuZHKuadummw/yacu1wiDIZ/J2LpfN2fn7cu28HbRzmdWz+YrjVPJnV2e6qK8CN7ZKf5c5bMZChhLC5PfBsDBxtEx6hPiy9r1EDNHthHzYjB0flBBqCxKSexoPy9/eWz3V1mEJ9PDJJ+RA1OzierH0fEkgysazpiYI4vjTvMKyWk9RZR71BVmT79EQq/IvvbVYXCs5mhjI5x4RfQANSlp137oIC7LmnU1rqiF8mVdEXu3JrMTP6ZmJVQpxCk3kMV7shjkhUXQPqQDknSxe1NOxD3BJ2IjlKVNVDeI7C82wkBFSKS7lS8VK1C1kvUzN8K1UpqyoYglLiCtqLMZSOR1uV5fvRCPPOb9QaJssp6T5VP6+fLFSXFkuVVnHlI9V7TTWraxjvhhusmilLgYZzVi6cP9tzdk+n2sJxiW/17wxQ8eEV2pQ59aT7Q7dNjD8SZzKYhKGEIDHgBiTjkbou4e8IJpuobCQZweKnCkUlgrSXw/39sjG5thBd1RAgvC2VGGxkEm/lH+Eh0jB/QQW9ycOCvAN5crRPZvNoyXr3rCGElOjG4qztxc7ByXBww8+COdzpWjNfqPgSivqTX0rXP9bsqij65AzkX516CrY7ayxbeJklRrgEacblPoSQweINRtUMo5jt/BklhGXb5fvXbtX4GxX+aenT2Zydo4XO7nC+XvWz36b7Av02vhXVQmXFL+olp7M5opa8b+it5MLvs29DT9xbFM3RJUXtkvwVHThqzIn3Lt+kfNrWjmfeT0846slLGrOl5O18XfR7yZ+S4pIZ9fYbdZLzRQqLnplMZ9/7Zve9FoaXtjb24XWeGVhkgDh+CdJ2u7MB8KVxB5lakYV/+5gC7iCfRKZYcVYj3PDvQPqzqRHQvrz60k5D9BvQo9ukV9Bi61nyc+UEY0zZZfohshOy16DOnhxnCyMUJnkPuIDF118RobZyeoax4qOya2dW/OfwWmzVn3k4ddkMlUSF5/JWNaxc2czJZwVBMMRKsqHn5EDJ5XK6LLJif9fZVce3MZ13vft9fbGsVgssABxElyKBEGRi0MSKZKSTOowoYOU4viWFQW04qN2bcty3ThIrXQSJemRNrXJmcTNjNI2mTRNQ9e5HWfGaTIxWTfH1E3SNskfISepp+00bqedNlDf9xYAQcpuEhDcA8Du2337ju/4fb8vFMyMlg6Rw/QI4rK2feiWm7MXpGCIHHfwwO5QKJa5rYAjmiCV3w6X7ev/LVInJrn6GkVF5wHLRBE4E4gmUhCxnfedHpyYJ0IrGaHIx76wCzZ3PyFQgYahT1DAaWNBUtFg3BFZQ74cEQKnJZV9uIElXMPKU1oE/YFisMNIwQsKvoto22z4QVFhizza/wBPtHG8T8M8i5qacu38haQiTYZknNd1vfVtU1X+XlYKvIJ5vh+LX7R/KEoC0JxvPYcl8sx8zz/opmAuGOvopLjDlowaw1lH17PDRAFtm6hRI1+TPhw0ZfxNqZYnSmfIl7d79M5NonWCN8sPD3cxEOpOoTZqlA58oCn6/SSKfiM3NpaT5URr4zWulItls7uz4oIcMAVWilt4UUMbu2fH2ETrZ6hZcN+XG83liA60KNsJHoUMaVHs9Uv740UnCo0pgCeR/AOgpkbDxzo6Bxju/TGMy9NO4kcyes2ms7JSr9dpMAT4bzxE1zevkVfZcTbidaceX1taMtSmZjSblMK9tbnaqC/He3yaOvUiwUzWZgH2XMgf5ULxHqllF1t+go4K3qYFQMC97Qv9jGYoopTFAVaXjegsGw6usudOnDjH1g11BcwDEjtYHWQl1UAK2VFZ0HJV4/6Q7rp66Ey9fvpKOn3ldH2dkuaphgvmftdQmS285ia1NfYD43KHZRyC+4EBIUVqCFJ11cZyogCW3zEy2Lr06sto1Wk1nNxEPhGLJfITuda652RGEDOScepOmYhkmyjukc8VhfzG84byI4teZiQ/5N1r5zwv18uhCFbeuK9jYhpBWxE8oj/kBfIBmeSJlrm+1GjWyWNprdf7kgkPrSw1+/qcBmrMe+tgeNlT8p6dh6W3dV/PUZbfObCiFWiyKKKm1+xu4B45f87COUxT10W9LrXVFBK64p/o5lw/jzHwcUd9wnwiqaP1hCmFxMnJyCEzEY4YcoA/LLLOwao+4OiSQD2tmtFaD8fDZjy0OlgYyvM8i1E6m0sJAU0PR2Jh1vx5xGGJHHNXUA+RsyhSWLjfNRIFQ9Jy4CLOaWI0Arz6kfDhBG/zEstaPG8JUtGMmWY83KujQ+5lsPCAZcdHtFl536yy3lxebg7t3z/UbFImX6LlLjXqk2cmvV2HFw/vYnb6n/v+P/8zGLvfwO/81NobuZzXy+UeW0KFPA1S+fmyWxvvAMZhMBjIV3q8WFY7brxa8yi8nfQatBJ3pXu1v+KDXKJQqAyIz1p5O1k8UEzadnJyqK+kXZIGY+kSO7KatOPWF7iBSqGQUAKfC98rufFMsZghx18yRp3hyaRtpUYyqeJWG/wa6asxmuHPTyFGkTlE4vTAfGMRlRJ3A+meOLGndtvZX7ulfmNx5L0njr79qDtb63tPNJMZyWS8++64rVKrF4tH528+8vjherI6W0gXM5liuvusPoEe83OYUrLod3/ySP+930KXyOqebzLXj2FbGBLgiWmz4gCEXKDpYdvoQWCMoTTe15jGNWZpjYzpS8sNSHBCptzmChG7INLodfiizB0I4I1l1CBTOqB+nS2gb3dM/wJ6kWJ9aLYm38QHiTMByQOeY2qUJlM0blfVOKrllYQsa6GgpIdVFIo7CU1WHVEcvDWbMM3qkaOyUzlWLh9DH+x/yy4JS5om6URNCLKqqcmBgiRYejZx9EjVNJ93biyXb+yx/W6ir9I4yAWwkUNu0xJHZDKDx5ZIx5ApDhi9uS5lJx6APMIAWqhN8bVKlQaKGxzpfyUOPSOLTloWiZ6i2rZqhUMa6a4Xb+AUJ5MLu244l3HODJQHyPsHnV+aejSmm+Gg3v1l1nRdM5tx0L1GOiwaOKzJrCCw5PbDCpKUeTHgWAFOkriA5TzuwMkGFjq/lDhB4CQtGJE7vzTArG5YTi9XrkKxbrgCSFWYNbisH4JH7pj08339uwvCrYubyPFazX+fGz6OvMY80sPF2ePC8damt+v3kKO5nXb4FdLGcsBlQEc6MsS7PszDbjO9g4kSR4HuHT1EU61yD9gHR0YOxB7gIL/CAftBjnswSnMtZGR5wiEbzoQs05+SjTD5aJtcCFwo7exynk+Q20n70k5sBUgSxGAciiT7+vOlbNWJSIoSMIimaYQ0Q5RmZjImWud5BcwTT9x2aDgq84KkaEEzGk9lC7tKXrwnhsYvc88vUyqRCqgKWaGfUYIGCuT+RRfT5AXyx+fdvkG1KUdDTjgS/IUXuC6Sx2wn85Ks6Opqvr8vGQnrPXMhpihBpkblkZBne2be9tN9h1bK5aWlZPWO6gLZWFkrt9YgnL28Vka0X3T0uKXtfA01wETCyEHGCpgW3LZ61ERMa9UjR5NRYoW81tbiK/S11Cay6fhY1tt4GDK/dOIufTSMSXOX45U10K5g8fyK02jsCHek1L0bzW6//TZ6nNosimC9A32Y2ifG/HwC2/c5PytVbsDFKbRqpbAWDMZNnPoLsqkHgk4Y99UOP2LnzHOXzpk5+xH0OMRtc6yg0QQJ3c3WRxZvUPfMze1Rb1hktuLt6j5eBmVtL+si5xrTnEdME9UhC/MWD6hG7t0hsuQQ1Yl7GdMKNmlNRFrAFGTZJZ0AUwUuIdut1mxjO1X+qwNx9awxhtSzanwgPfaUDzD8vL/3T+0ve0AF/+h/c9L/Ztn3C0X8vWn/O6Y37kZjksxuyK+6bQY3aZwJzrngqoGomFzeDz2hjkH4KIV8hbaEqDGRqliI2XKrDLIav+uOosYLwvjSqBhFiOV1sfS2iqCznL7vsbLAs7uPHPIkncfSxNHFKlE3VHLnW96U73I8a6u6IsgooDnqqMjxCS3IYsGQw4E0r1eSokB2gwYXEsUsFxSDvXGRMmVqI0o2rtmQMzqNIHqq5pLxor58oW9lpe/Ccn3y0VPRS5eipx5FG8vmox+bn//Yo+bZS4FbL09OXr41sM2fIZP1652j50hme/mB68u/ruzryu2WuYQ2YPyDgGmfW8Emcw8djsA5RpPb+sGzzY1YOh27CZHZABuYTAlvJvvo6gF0UHDjenxAOHhQTqSseNxKJeSDB4UB8qHbnZ8pxjgDyHaTUpO0GUq2rfYjN0vUPNuPOvDHwAimnWzHBnYCpYCzY1FvER2n2WjqWoDHmO8bTfWsEjpiVNXMZMydS8h/nvnvZnOVlRVRDhCVxrK6a8Uga5PtznPALAXcqFkM+b/JI5qGCof8VPX19Y8Ui1L/mG2P9RNBdn39PGxJwyUp2+ufBD4q0GhrgocLOD8NilbErnkBMhdMsW7FRcm/bG14q8h55tjMC+dXB35wZOq5wfHKYhEJiFknL6f0/mK9fvzAxdJv9wfM+tLeOuePCazexrF3cQaFHuuKANw4vkmb/kP8LLr7jjuKd97ZepHVWk8/SV/oSOu7yP3M7aXbyfu30EutCvr4uSz5Q3e3nn6jcswt6GeFI+Vw5NxmT1lXaTF/y2ovwsmvXqYv9IxfSOuP/FJaT6O7aUlMx6epd/Py5WmkYq3i2jXLBVBDIV+hhAi4za1vV/wF1/XsYPtqNns1k3nx56+hVy+LzpMJ8cknw4EnY9LlPzx52l08OXhywV04iVAGZ7OZuey/wFUcdHCiVEpgB909GQ5MTMSk4dbayUV38ZR7cmFw4WR3Lnuduu5UNOC423Vda/8DjyI6d6z/GHm3PuxX9lXyvnyZ3PhL/3PsWO7YsavtuoZXevONyzE7FU1Kg7ouANEfYG5BCidlfdwv5uOklM/RUuh5XyL1fSstp/VZeqOkFCRups91sAedcvJg9doiEoY7cfOu75vP+rYKTARy9NcnT5HacxdOu6dPts6yWkbLjpQyRqvyTObLz2c/hF76PlTvqQH4waknoMir8GzbD3grN19n/n69SGgPN3oS2aL+awyR/HdSFvgggGYvNo6HvGzIs5DbRfUjZ/Uas4rm/UBntA57DR+gD4cp7fH0Web1eCwpd+UWw0+W4pp6GX86fJUwU6O11eYyIOfja2hto0FEmaVVb7WBVsHj3IToIZrdse60Xz0cnB32P1obvuW4G2sP8F4/dsTyGpThxnKaQP6BRgF061B87+YmWqW5QppNuvIcL16OM1v8optML6YXemqe8lRQ+1LFz1JJlHJvjb4o5eZa69m4nx+XeUPeLdQmL+itE6DWo2FINLPG0vIKWllvEJHLN29Tsl/for2lQ1Dew1rOHSsh6kZspzkeo7ZICwL9DES6mfd5Dqsyx9m2VlcNjxcl/NOqdFzkDaRC3kw+oipzVtBQg1dlLG9ID6uSsrzRLueb6G8oVzdEooylECWtAm92hPJVg+uPaC9EciKPE831lhN3egpq/QcA+7olWW863VvSFiZjkwmSeyozpyh+HVcofxAu1KJTRCusQQZ2opzSFOxpSHdadW24JAOBQdknyjajnp2tULtQxcO2P0f72WLsqECd8nYbjcAyTmQgELac1hOO6RrhiIO4vKBpX9FiQp5Xta+IghL69AsS5vJcAL8giWyeVURuVQ+hFhDIWAl8VNFNfV03LaG1oeHoN1RpHWvo9qMIEwUSH3nPESk86OKjrR+fJeecI+c+q8f4OVZdn+MMfBfGHFlLZwXc+rpSnycC4fFIgguqDd009REpFGlI6pExSVUZzccksAy1rk0SufAYqaMLzGPMO5h3Me+HDMOICNrbasuuQqhXClXdqJ0nX9ljUbBY1+xodZQdENMsBnbHUVJrmIi3JXB7TIP67Vo2iDKAcNlWlX5iajKliBGPTOJubXwggPJVXIaDa9TBDZioaSC8qgG1/vX1+5+Bwol6H/n3ckEkqkTU5Fk9wiocy8WiPMdLyKU7feHSWayjsPZgVRM4PlQYQsGArpypCImtur8vMXlm8k8LLKcYkZzKIz4mChGpGEveU+REpRS3kryOLib6AgENXTyCw4MD+OiVw7CWjv5wsJ7sP0n+P6KlWVEPBlUcSl7gkISwjESWHxq/wGEkG3g6bDRN7+whIyDbpczxBVbkpZvNkDV/IxkJj1tunwsgrRkdiWhw8jw5Hkn7zPAldWQ6KAUi2T3OkHZKE/jbT53osdP7/D1EDiUaf0XEFbGQtYjqWq2R0eSOM7ehQGsF8u989p7n7Oqx6k+ei9fqnsUI0AbomGuTUW+IuZHaS3zrJ6aRpltYEwvna/ZOd1pHtEkh0i3y5CkRnYw844FpEBRJLybKj0caCHJcLYrto/uHzSOUd2Q1mnqo7Dy0SrfJ4uWFvlMZLqQH8xKRsYKjlrU7RDbkfEgPsdMRsYpNhOqKNLvqNfwjrMaN4+0tGGyTtVoylA9gmY/JIU0LKXHSrwL9wbFwOh1GW3YhP38qxcWjnuwAYFLHHo1Jz3L+/bnIq2tGazWg1PlCqXCuztux6D3IsYPKZ+UAi1YMzXHUAFyAahhvbv1cNnSlq289T8qR20wTjIlDEHjp1SqkdQN/Lp1CwN8wG14olW78/fzM0p4TqDTT37/U34/WD7W+tWvXu1793oTnvXbo/PnzbT3hQ+ScSZBycvtRO+d2Bzxo0yzclRJC569IH7CyWesD2ZFUKrXvSjTDZp9R6umRdNVOp+1/rmaybNay0+1z/hh9nuYMaDt3wBMDCIASaq/2k+5fQjSVeFsHt6s1EVfRj81kOrNvZuH4QV054KV2y7Kk6dmhSNS09fxb93E1N9KvZxJqKoF+py+izUzOFIaG0CDqTyJOLOeQivRd49FimVUVtxY0cDAX5np4nCLQDinrrg+HtDqub+8XGax77dUWZCjazmO+lawHxqZ2PqYA3aCggTEfPADADtB+0MbUhScuTNHFhs9IslxMjxeL4+liysr1KZqAsVIwg+FIwMJKSFZTOSuFmOn2MVMX/tcnjHwMCzQImRcCMsZCbcrdw/E35PL9g/E8x7+tUibn6eHA+xh6npEoPvRXvWDml7/KL/0ql7aFl++jviDfGJ9vp5z1x4VuhmPb7c12STGrHoRedLJwBtQVRdHIdWqKghwaWUFDLwLqKuW9UQPP1gRTBSJD1RRqW/UCY1WIcm7BzBztEGPgPPBTe5RsCcxB0Fpq3gekqcFkKThszw0W58dx5eZbXrhlQpnc9hlyBrxY1EumB+eGl5a8JXc8Fh3ry5C9bpmvoj/3ywQ3hw0oRz9altyjmSM9BbCOPvUOWHSEkflxsXrLLZPy1GBid3A4PtdXrO/4BH1i8PBwo+GOx63xvkzrz3r3tu51hXKlGDRyFuCUHTP8OjjLl8uoXF4BgG4ZoLq9MWMgEQL7yYHrueRciGmnkm1HNezh++jYwl3KZk7NvtXadlnfoWjmryFN0kBw1qTWa5Kmfd/PJrMUMcJkCgsb7eQqncPimpSZL89nwH4PR6742X0fTYnxIAyfwbjIbOnnKzTGIANZddpBJBQuXwu5eAcglFxZE1STphpYXlqKb0E1UNP3Nj8C7g4PMqWqyzSurjdHt+lza/aesGaHoK12ZxWi6qx2MnGnzjyEmIe2tUOIVr+uhgsVG22krBY9B6pbqdYmZNmDvWuwHF3rxtX/hFwHsCdVGGCpoeZnPzcjRQvUgIii3fntHJBSiF0nZHnABToN9J1d75w9vG84JwR3zUxd2bcrwuu8JP2dnDDNhIknLmRHj8ad0b27+wL60dHsBaTv24vxULaqRvb1JbTBTEqwBFWbkU044At7xw/GUm5yLOmM9nFmvxE7OL53e2xv8PrY3lo+jboOnR7j5Bl5Xt4jh/tNM99r5Py3j370TXI6HE6He2UXwIWADuOLE6EsUYRq21AiXn0DxR0H8mHHEcRdtJqbNC+208MZDOcJv4HuZvco1O3H4dEo8X+dAdZj/43WKY4XNDey+l7n4/jMDNMbH4D99olcM2+6BaFL9wqmXeo6pvBScFd8WfM0MiKD/uW3SPV3k6KujJ2KxU6NKbqYRMx8axP1B5aWHKxKkopX9g6U2N2uu5stDfTmhghQK/Pw6/TocWgJVNraomKjzj/gXO7tu+vDJzKZE2+CxR2+rdgDAoS1FcRAv6GX+Mpgf2FwsNA/OE95TFOfcRzQXfV2m+/lPfRjf/Yy+8k4c4w5/jq8lURV7rAgUibEzkwGiiTIlu62D3b+ghILNenFN4HcEtVbq04dkBWt74oYaqvYaCw3my90d1Z7v2mgOh2DVsFsMbVU92Otm34tO06zLikSeTvA0y8B0Fvq+tL+Af2EtHXIIUw1EIuMmbXqOK65RJD9VL8k3U8eWagkWVeu9F8Jox/1Y0u6/79QsyT96D2FK9Wtdv0yepm0xxnauylOiegwIFURVYrmeWx7mSjR5XgUlKMIpgRHbXoqGAVonAT6ZOqu++4c51JCZF4qVybHR8e4xWCc19Rw3/SQxUckrAtExTBY4O7lOTYQicdkng3zAr8LeHHvJwfsu+u+UVyPCMk0OdkH4xxiOTU1FXfTFiY6dpYXWSwqLOaJKqsIWAjziLUENgA6wrVrRE9EpE4OMHVmkbl5h0wluHBLeSI8uv6kPOADTMm1+4ghdxwUaaLagXg5NiBGvTS7uwKoTJo4AgGgqJam37LM7MUrF2dnH3nvxdnW125KibwoWnEjkH7rRPFkOqAbAi8LRliWj8tYEHlBjMYC0QFR4EU7+3Vwkyb2l1/ZN2d+52Aunybda5ac6+J7HyGLG37KIkNHLBrdk0myimapmhTEMdeuJexXWJZog0QE4lAwyN6kISuUdscnpt+WkpIPHBofeueqJm/ZHeHxAhaiztzE3M68ZUdt7EwINl6FqhlGb1w1/i9yo2QmgpqhiFWX9ISCCRXTrZdH3kduAxbXeqRL7XhCILVgRnWj75aKeyShq7rIyZwWlKRZDD4CnnzpRE2R54Ro3wOHeIE0klit9am7vOmXJ1IZJ4GYufaJZx9BxS1xt/XMt1hdQ2hoPBlHsmIqmhTgonlrLBZ5gWUNA0RGsjz+pU/roXA8Xrz/zp+2fuacnyyd+GNV6vSBT1P8WIGMyRTeFvEA0AqT7TRbpWg4sPnYkIIA7AZf4owJ0n53zXCcwO1ThZlvcBwrwsYBdJqV+QkB8wvoQUUSZu/nRUF5YIXDnPLrD/ErAmkMT22LzTV3IlXyfrRBzxx1JLeYO3g5t80J98WHM1NPx5iOb+bD6Ema69bGcDj6zdwH4Rj0ZOyVhzP7u+X9CUWfQsQTOMpyFIIcafficT+djEDkgq9KyUpipP/USS1CpunOTlKSrjHvQpeSkgBJW/iItv/i/vaOlNw7PfFuyDXwfwVB8YUAAHicY2BkYGAA4lWM4ubx/DZfGbiZGEDgtpnQKRj9/9f//0y8TCCVHAxgaQAQawqVAHicY2BkYGBiAAI9Job/v/5/ZuJlYGRAAYwhAF9SBIQAeJxjYGBgYBrFo3gUD0H8/z8Zen4NvLtpHR7khAt1wh4A/0IMmAAAAAAAAAAAUABwAI4A5AEwAVQBsgIAAk4CgAKWAtIDDgNuBAAEqgVSBcgF/AZABqAHIgc+B1IHeAeSB6oHwgfmCAIIigjICOII+AkKCRgJLglACUwJYAlwCXwJkgmkCbAJvAoKClYKnArGC2oLoAu8C+wMDgxkDRINpA5ADqQPGA9mD5wQZhDGEQwRbBG2EfoScBKgEywTohP4FCYUSBSgFSAVYBV2FcwV5BYwFlAWyhcIFzwXbheaGEIYdBi8GNAY4hj0GQgZFhk2GU4ZZhl2GeIaQhqyGyIbjhv6HGIczh0sHWQdkh2uHf4eJh5SHngemB64HtgfCB8cHzgfZh+eH9AgGCBQIHQgjCCsIQohQiHSIkwihCK2IvgjRCOGI8Ij+iRqJOglFCUsJWoljiX6JmgmlCbcJxInPid+J6wn9ChQKIoozCjsKQ4pLiliKZwpwCnoKkQqbCqcKtIrQiuiK+YsPix6LM4tAC0yLZAtxi34LnAuoC62LuAvTC+ML9gwTDC0MNoxDDE0MVwxjDG+MfQyQjKCMrAy7jMaM1oznDPYNGA0ljS8NM41GDVONbQ16DYiNmQ2kjbmNyQ3SDdeN6A33Dg6OHI4ojkcOTY5UDlqOYQ5yDniOfA6bjroOww7fjvmPAA8GjwyPJg8/D1OPbY+ID6APtw/KD9mP8A/6D/+QBRAckDYQQRBQEGEQdhCGEJEQrpC3EMOQ1pDkEOiQ9BD7kQ0RKxE1EUKRURFnkXARehGEEZURmZGvEcoR1BHaEeKR75IIEhASHBIpEjYSSZJWkmOSchJ8koQSk5KgEqkSs5LAks4S8hMrEzKTUBNdE2eTchOEk40TpRO4E8gT1pPlk+wUBBQQlBkUIZQ3FEKUS5RYFGaUd5SUlJ2UtxTYlP4VDJUWFRqVKAAAHicY2BkYGAMYZjCIMgAAkxAzAWEDAz/wXwGACE9AhEAeJxtkE1OwzAQhV/6h2glVIGExM5iwQaR/iy66AHafRfZp6nTpEriyHEr9QKcgDNwBk7AkjNwFF7CKAuoR7K/efPGIxvAGJ/wUC8P181erw6umP1ylzQW7pEfhPsY4VF4QP1FeIhnLIRHuEPIG7xefdstnHAHN3gV7lJ/E+6R34X7uMeH8ID6l/AQAb6FR3jyFruwStLIFNVG749ZaNu8hUDbKjWFmvnTVlvrQtvQ6Z3anlV12s+di1VsTa5WpnA6y4wqrTnoyPmJc+VyMolF9yOTY8d3VUiQIoJBQd5AY48jMlbshfp/JWCH5Zk2ucIMPqYXfGv6isYb8gc1HQpbnLlXOHHmnKpDzDymxyAnrZre2p0xDJWyqR2oRNR9Tqi7SiwxYcR//H4zPf8B3ldh6nicbVcFdOO4Fu1Vw1Camd2dZeYsdJaZmeEzKbaSaCtbXktum/3MzMzMzMzMzMzMzP9JtpN0zu85je99kp+fpEeaY3P5X3Xu//7hJjDMo4IqaqijgSZaaKODLhawiCUsYwXbsB07sAf2xF7Yib2xD/bFftgfB+BAHISDcQgOxWE4HEfgSByFo3EMjkUPx+F4nIATsYpdOAkn4xScitNwOs7AmTgLZ+McnIvzcD4uwIW4CBfjElyKy3A5rsCVuApX4xpci+twPW7AjWTlzbgdbo874I64E+6Mu+CuuBvujnuAo48AIQQGGGIEiVuwBoUIMTQS3IoUBhYZ1rGBTYxxG+6Je+HeuA/ui/vh/ngAHogH4cF4CB6Kh+HheAQeiUfh0XgMHovH4fF4Ap6IJ+HJeAqeiqfh6XgGnoln4dl4Dp6L5+H5eAFeiBfhxXgJXoqX4eV4BV6JV+HVeA1ei9fh9XgD3og34c14C96Kt+HteAfeiXfh3XgP3ov34f34AD6ID+HD+Ag+io/h4/gEPolP4dP4DD6Lz+Hz+AK+iC/hy/gKvoqv4ev4Br6Jb+Hb+A6+i+/h+/gBfogf4cf4CX6Kn+Hn+AV+iV/h1/gNfovf4ff4A/6IP+HP+Av+ir/h7/gH/ol/4d/4D/7L5hgYY/OswqqsxuqswZqsxdqsw7psgS2yJbbMVtg2tp3tYHuwPdlebCfbm+3D9mX7sf3ZAexAdhA7mB3CDmWHscPZEexIdhQ7mh3DjmU9dhw7np3ATmSrbBc7iZ3MTmGnstPY6ewMdiY7i53NzmHnsvPY+ewCdiG7iF3MLmGXssvY5ewKdiW7il3NrmHXsuvY9ewGdiO7id08t8TDSMY9niSCpzwOxEIuCLRSPDFTGkUitqaYHmTG6kjeJtJuLhiKWKQyaOVspCPRzqGS8ZopcCRCyRcLnCkrjbSiUBALu6HTtUJBwoflQKKyoYxNOaCNLUwywloZD01JSVePK7u4la7uxne1prwwy2qtShMzI1LT4DJNFI9Flat+FnW4kkNaM61fpEs5GWRK9TZkaEetXKDEwBYw1rFYzGHiprmhpRmeyuHItnOBx8V7pE7UeMRv03GTx1yNrQxMnafBSK7TOaSp3uiFeiPOV7mFrramvJjpvjozs6TlTMeLIW+DG1vaja+2ZwSdHGeJG+nOktWVCQuzRMmAW9EoRfM8tTW+wdPQ1Po8WMuSSp/Ha5W+ECn9KNXtKx2s9UIx4OQSjb7Wa05pxYGVfhaGMtCx6fHAynVpx3tMRf1+kgpjekoP9c4ZMaHxdGTbdMQ5cRaTkqWpbKDTLDLLM4JUijg0M1OGqc4S05kKkmhmfipoyWJ2vtUJHdyM7TalhZOrNvqZVCGBdj8zMiYLIx4vlDghz9Nxt6QbmgZr/cxaHbcCroJMcavTDkGyj6dukxoloQmRSLmT1XI4H/CUIJ2CrdDDTbViqNNxKxgR7fFU8GYO++59jyhYRSFMJCElk76mo6sG7oza9JuFPcPXRdjJMR235n44CxcCHYqesdwZRKcd6MFAiA4lEp2SumBNpHUiWRSbLm2LTSnqes4lliaMDsN5ysJEkHAKyOlsCsrx4oTRzgtulyfcrJG5pG/7Fkmhc2UiXHc2CDJueXdR3A70ukh7MqL00wy5GfnVd0JueZ8byh9huDghYjPRqZ1yGW3lqYhIW3fC16XYaJSsHgqzRo5SD6WJpDENF7luL5uh80eK/LUWZUs6Ep6SLR66pFhxaMX9aOcBlDaKtDQrcrG9PCvIM04h6WsVdkpMXrC2oyD+/CYRvDiRxs5/Jwrz1O+cpFtIaCPozEv1I6GSckTGIVm3PGGUXG2kUzEZt2ResFCwW0izHIzL1a1JG4xETNGQbwWJlJ18VFMetao5YaUSnVn3zXI/Eipqw5Qno+WJwFAhsGLTbpVQ8Znsyq2ZtmLPguTHSF4UcV9vSlvo66UGCl2lyFZyvVJiU7km7Igyx3BUqqWTV6I0zFngQ6NcQqbKoYx2LXWh2J0IXBUt1axTmdAN+qJMjDRNEXGpXOC3Jmi16mFbRH0R9ngWSt3NcVGmi5FkpK1uFZgKayH2H+iIzUCkifVuWxGb0jbIYpFSXeoMeCDKPN0oSYOCPXThVxtIRRMrA8WHlYHWYSffvB43pHhCnFXtgpA32YUCD7lSIh2X83wslsQfTLcglGlsZsohb3TVEbPgirMJUiF8bdw2Q906nKw6pCRpakOth0o0h6kM/TpreaqvjTh1O2l9JLjL1lV6UhEbyZA8qznSWTpU3JjKyEaqRm+SPibDlre0F6Q66eQw34cdBaHjor4olVTdyeu3zUgp5VC8c7WcyyhjU/j5Ar2yRZKX4VlR/k3jLGhP4WrLxd1mL3C5S8YD7YLC+VPFkU4ehj0+IOO6Bek7Bxe1nDXpYV3URDVqASlJ0WNMKprOJG9EU7nffqb6DeeZ5JgxiUzuLB2qFdxK7Te/UZKFvMqX2aUW8ZQKQte3hL2ix2kXzLlGK8cuJxWTig5hoWA6yFxHupxT6ZKg7xFEITHUAvDQjISwhS4XcsUnvLc0IzGkzEDdWoM0Zc7cZglWJ2hXxaFWJN3Jusn1SNLeWFGlfjEzzYhEY+9THlVctqjH5F60ha2iqyUnqsXaO0qs2zohTxxQFhZpI+EqsuSazYRT/XcFdz4JB23C3q8pu1cSYU3Vf7mZ+GUKaoFdJfQ77jdrSv3CFoueuedzkggbxL1nNEuwWnGommh6uenKFplD4eiSQBFXTd9B2ZE09ST1n3XPdR6MG0mqwyywpkn3hdDfAmqpoF7HVuiha3nCbDgz6Voh51Njqr5naBiyJ8yU6ObRqBPnGKZmhDv/pqGS4lv01gStVj0kgRTKB1othzSZjHbOUTOKlmxa1Eql1u9SjQqqooMwNGPeaFM3iXZ1pUULo2IVJXbc9pDiUwlS5fCIq0HNl91xleoblSiT0SGMROqPrTlhiz6Lu+tRHkFLU54H0YwgFEpQIc0Frh2efcPxLW/4/t2/UfMCO08e1KB/3121Le2nJBeTXDWdJ+ftgPdpO8qivvHNf7PAWdJ2iyHXcebXC1yxtFdtKuexUT4qq4TNqGY3XK1tuwcZmL+R4woVI72dmmZKUobTmoPANdbusrC7sEZlimK8lSUhz+9atRzWii5x3YVv03uoP+YJWp3CXQSN7EtFXXqd+raYQmdpQyhq3X375Vc9EZS30pVSoMiV6G5Jm7pcilxK8re9HaWE7llDtzEurqevbqTuhkiXkWFjg8qRoRtx1zUF+U3C+cCEVTbJqvo4z7bz9Ky79Jj1xdzc/wARDj0u") format("woff"),url("../fonts/dashicons.ttf?99ac726223c749443b642ce33df8b800") format("truetype");font-weight:400;font-style:normal}.dashicons,.dashicons-before:before{font-family:dashicons;display:inline-block;line-height:1;font-weight:400;font-style:normal;speak:never;text-decoration:inherit;text-transform:none;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:20px;height:20px;font-size:20px;vertical-align:top;text-align:center;transition:color .1s ease-in}.dashicons-admin-appearance:before{content:"\f100"}.dashicons-admin-collapse:before{content:"\f148"}.dashicons-admin-comments:before{content:"\f101"}.dashicons-admin-customizer:before{content:"\f540"}.dashicons-admin-generic:before{content:"\f111"}.dashicons-admin-home:before{content:"\f102"}.dashicons-admin-links:before{content:"\f103"}.dashicons-admin-media:before{content:"\f104"}.dashicons-admin-multisite:before{content:"\f541"}.dashicons-admin-network:before{content:"\f112"}.dashicons-admin-page:before{content:"\f105"}.dashicons-admin-plugins:before{content:"\f106"}.dashicons-admin-post:before{content:"\f109"}.dashicons-admin-settings:before{content:"\f108"}.dashicons-admin-site-alt:before{content:"\f11d"}.dashicons-admin-site-alt2:before{content:"\f11e"}.dashicons-admin-site-alt3:before{content:"\f11f"}.dashicons-admin-site:before{content:"\f319"}.dashicons-admin-tools:before{content:"\f107"}.dashicons-admin-users:before{content:"\f110"}.dashicons-airplane:before{content:"\f15f"}.dashicons-album:before{content:"\f514"}.dashicons-align-center:before{content:"\f134"}.dashicons-align-full-width:before{content:"\f114"}.dashicons-align-left:before{content:"\f135"}.dashicons-align-none:before{content:"\f138"}.dashicons-align-pull-left:before{content:"\f10a"}.dashicons-align-pull-right:before{content:"\f10b"}.dashicons-align-right:before{content:"\f136"}.dashicons-align-wide:before{content:"\f11b"}.dashicons-amazon:before{content:"\f162"}.dashicons-analytics:before{content:"\f183"}.dashicons-archive:before{content:"\f480"}.dashicons-arrow-down-alt:before{content:"\f346"}.dashicons-arrow-down-alt2:before{content:"\f347"}.dashicons-arrow-down:before{content:"\f140"}.dashicons-arrow-left-alt:before{content:"\f340"}.dashicons-arrow-left-alt2:before{content:"\f341"}.dashicons-arrow-left:before{content:"\f141"}.dashicons-arrow-right-alt:before{content:"\f344"}.dashicons-arrow-right-alt2:before{content:"\f345"}.dashicons-arrow-right:before{content:"\f139"}.dashicons-arrow-up-alt:before{content:"\f342"}.dashicons-arrow-up-alt2:before{content:"\f343"}.dashicons-arrow-up-duplicate:before{content:"\f143"}.dashicons-arrow-up:before{content:"\f142"}.dashicons-art:before{content:"\f309"}.dashicons-awards:before{content:"\f313"}.dashicons-backup:before{content:"\f321"}.dashicons-bank:before{content:"\f16a"}.dashicons-beer:before{content:"\f16c"}.dashicons-bell:before{content:"\f16d"}.dashicons-block-default:before{content:"\f12b"}.dashicons-book-alt:before{content:"\f331"}.dashicons-book:before{content:"\f330"}.dashicons-buddicons-activity:before{content:"\f452"}.dashicons-buddicons-bbpress-logo:before{content:"\f477"}.dashicons-buddicons-buddypress-logo:before{content:"\f448"}.dashicons-buddicons-community:before{content:"\f453"}.dashicons-buddicons-forums:before{content:"\f449"}.dashicons-buddicons-friends:before{content:"\f454"}.dashicons-buddicons-groups:before{content:"\f456"}.dashicons-buddicons-pm:before{content:"\f457"}.dashicons-buddicons-replies:before{content:"\f451"}.dashicons-buddicons-topics:before{content:"\f450"}.dashicons-buddicons-tracking:before{content:"\f455"}.dashicons-building:before{content:"\f512"}.dashicons-businessman:before{content:"\f338"}.dashicons-businessperson:before{content:"\f12e"}.dashicons-businesswoman:before{content:"\f12f"}.dashicons-button:before{content:"\f11a"}.dashicons-calculator:before{content:"\f16e"}.dashicons-calendar-alt:before{content:"\f508"}.dashicons-calendar:before{content:"\f145"}.dashicons-camera-alt:before{content:"\f129"}.dashicons-camera:before{content:"\f306"}.dashicons-car:before{content:"\f16b"}.dashicons-carrot:before{content:"\f511"}.dashicons-cart:before{content:"\f174"}.dashicons-category:before{content:"\f318"}.dashicons-chart-area:before{content:"\f239"}.dashicons-chart-bar:before{content:"\f185"}.dashicons-chart-line:before{content:"\f238"}.dashicons-chart-pie:before{content:"\f184"}.dashicons-clipboard:before{content:"\f481"}.dashicons-clock:before{content:"\f469"}.dashicons-cloud-saved:before{content:"\f137"}.dashicons-cloud-upload:before{content:"\f13b"}.dashicons-cloud:before{content:"\f176"}.dashicons-code-standards:before{content:"\f13a"}.dashicons-coffee:before{content:"\f16f"}.dashicons-color-picker:before{content:"\f131"}.dashicons-columns:before{content:"\f13c"}.dashicons-controls-back:before{content:"\f518"}.dashicons-controls-forward:before{content:"\f519"}.dashicons-controls-pause:before{content:"\f523"}.dashicons-controls-play:before{content:"\f522"}.dashicons-controls-repeat:before{content:"\f515"}.dashicons-controls-skipback:before{content:"\f516"}.dashicons-controls-skipforward:before{content:"\f517"}.dashicons-controls-volumeoff:before{content:"\f520"}.dashicons-controls-volumeon:before{content:"\f521"}.dashicons-cover-image:before{content:"\f13d"}.dashicons-dashboard:before{content:"\f226"}.dashicons-database-add:before{content:"\f170"}.dashicons-database-export:before{content:"\f17a"}.dashicons-database-import:before{content:"\f17b"}.dashicons-database-remove:before{content:"\f17c"}.dashicons-database-view:before{content:"\f17d"}.dashicons-database:before{content:"\f17e"}.dashicons-desktop:before{content:"\f472"}.dashicons-dismiss:before{content:"\f153"}.dashicons-download:before{content:"\f316"}.dashicons-drumstick:before{content:"\f17f"}.dashicons-edit-large:before{content:"\f327"}.dashicons-edit-page:before{content:"\f186"}.dashicons-edit:before{content:"\f464"}.dashicons-editor-aligncenter:before{content:"\f207"}.dashicons-editor-alignleft:before{content:"\f206"}.dashicons-editor-alignright:before{content:"\f208"}.dashicons-editor-bold:before{content:"\f200"}.dashicons-editor-break:before{content:"\f474"}.dashicons-editor-code-duplicate:before{content:"\f494"}.dashicons-editor-code:before{content:"\f475"}.dashicons-editor-contract:before{content:"\f506"}.dashicons-editor-customchar:before{content:"\f220"}.dashicons-editor-expand:before{content:"\f211"}.dashicons-editor-help:before{content:"\f223"}.dashicons-editor-indent:before{content:"\f222"}.dashicons-editor-insertmore:before{content:"\f209"}.dashicons-editor-italic:before{content:"\f201"}.dashicons-editor-justify:before{content:"\f214"}.dashicons-editor-kitchensink:before{content:"\f212"}.dashicons-editor-ltr:before{content:"\f10c"}.dashicons-editor-ol-rtl:before{content:"\f12c"}.dashicons-editor-ol:before{content:"\f204"}.dashicons-editor-outdent:before{content:"\f221"}.dashicons-editor-paragraph:before{content:"\f476"}.dashicons-editor-paste-text:before{content:"\f217"}.dashicons-editor-paste-word:before{content:"\f216"}.dashicons-editor-quote:before{content:"\f205"}.dashicons-editor-removeformatting:before{content:"\f218"}.dashicons-editor-rtl:before{content:"\f320"}.dashicons-editor-spellcheck:before{content:"\f210"}.dashicons-editor-strikethrough:before{content:"\f224"}.dashicons-editor-table:before{content:"\f535"}.dashicons-editor-textcolor:before{content:"\f215"}.dashicons-editor-ul:before{content:"\f203"}.dashicons-editor-underline:before{content:"\f213"}.dashicons-editor-unlink:before{content:"\f225"}.dashicons-editor-video:before{content:"\f219"}.dashicons-ellipsis:before{content:"\f11c"}.dashicons-email-alt:before{content:"\f466"}.dashicons-email-alt2:before{content:"\f467"}.dashicons-email:before{content:"\f465"}.dashicons-embed-audio:before{content:"\f13e"}.dashicons-embed-generic:before{content:"\f13f"}.dashicons-embed-photo:before{content:"\f144"}.dashicons-embed-post:before{content:"\f146"}.dashicons-embed-video:before{content:"\f149"}.dashicons-excerpt-view:before{content:"\f164"}.dashicons-exit:before{content:"\f14a"}.dashicons-external:before{content:"\f504"}.dashicons-facebook-alt:before{content:"\f305"}.dashicons-facebook:before{content:"\f304"}.dashicons-feedback:before{content:"\f175"}.dashicons-filter:before{content:"\f536"}.dashicons-flag:before{content:"\f227"}.dashicons-food:before{content:"\f187"}.dashicons-format-aside:before{content:"\f123"}.dashicons-format-audio:before{content:"\f127"}.dashicons-format-chat:before{content:"\f125"}.dashicons-format-gallery:before{content:"\f161"}.dashicons-format-image:before{content:"\f128"}.dashicons-format-quote:before{content:"\f122"}.dashicons-format-status:before{content:"\f130"}.dashicons-format-video:before{content:"\f126"}.dashicons-forms:before{content:"\f314"}.dashicons-fullscreen-alt:before{content:"\f188"}.dashicons-fullscreen-exit-alt:before{content:"\f189"}.dashicons-games:before{content:"\f18a"}.dashicons-google:before{content:"\f18b"}.dashicons-googleplus:before{content:"\f462"}.dashicons-grid-view:before{content:"\f509"}.dashicons-groups:before{content:"\f307"}.dashicons-hammer:before{content:"\f308"}.dashicons-heading:before{content:"\f10e"}.dashicons-heart:before{content:"\f487"}.dashicons-hidden:before{content:"\f530"}.dashicons-hourglass:before{content:"\f18c"}.dashicons-html:before{content:"\f14b"}.dashicons-id-alt:before{content:"\f337"}.dashicons-id:before{content:"\f336"}.dashicons-image-crop:before{content:"\f165"}.dashicons-image-filter:before{content:"\f533"}.dashicons-image-flip-horizontal:before{content:"\f169"}.dashicons-image-flip-vertical:before{content:"\f168"}.dashicons-image-rotate-left:before{content:"\f166"}.dashicons-image-rotate-right:before{content:"\f167"}.dashicons-image-rotate:before{content:"\f531"}.dashicons-images-alt:before{content:"\f232"}.dashicons-images-alt2:before{content:"\f233"}.dashicons-index-card:before{content:"\f510"}.dashicons-info-outline:before{content:"\f14c"}.dashicons-info:before{content:"\f348"}.dashicons-insert-after:before{content:"\f14d"}.dashicons-insert-before:before{content:"\f14e"}.dashicons-insert:before{content:"\f10f"}.dashicons-instagram:before{content:"\f12d"}.dashicons-laptop:before{content:"\f547"}.dashicons-layout:before{content:"\f538"}.dashicons-leftright:before{content:"\f229"}.dashicons-lightbulb:before{content:"\f339"}.dashicons-linkedin:before{content:"\f18d"}.dashicons-list-view:before{content:"\f163"}.dashicons-location-alt:before{content:"\f231"}.dashicons-location:before{content:"\f230"}.dashicons-lock-duplicate:before{content:"\f315"}.dashicons-lock:before{content:"\f160"}.dashicons-marker:before{content:"\f159"}.dashicons-media-archive:before{content:"\f501"}.dashicons-media-audio:before{content:"\f500"}.dashicons-media-code:before{content:"\f499"}.dashicons-media-default:before{content:"\f498"}.dashicons-media-document:before{content:"\f497"}.dashicons-media-interactive:before{content:"\f496"}.dashicons-media-spreadsheet:before{content:"\f495"}.dashicons-media-text:before{content:"\f491"}.dashicons-media-video:before{content:"\f490"}.dashicons-megaphone:before{content:"\f488"}.dashicons-menu-alt:before{content:"\f228"}.dashicons-menu-alt2:before{content:"\f329"}.dashicons-menu-alt3:before{content:"\f349"}.dashicons-menu:before{content:"\f333"}.dashicons-microphone:before{content:"\f482"}.dashicons-migrate:before{content:"\f310"}.dashicons-minus:before{content:"\f460"}.dashicons-money-alt:before{content:"\f18e"}.dashicons-money:before{content:"\f526"}.dashicons-move:before{content:"\f545"}.dashicons-nametag:before{content:"\f484"}.dashicons-networking:before{content:"\f325"}.dashicons-no-alt:before{content:"\f335"}.dashicons-no:before{content:"\f158"}.dashicons-open-folder:before{content:"\f18f"}.dashicons-palmtree:before{content:"\f527"}.dashicons-paperclip:before{content:"\f546"}.dashicons-pdf:before{content:"\f190"}.dashicons-performance:before{content:"\f311"}.dashicons-pets:before{content:"\f191"}.dashicons-phone:before{content:"\f525"}.dashicons-pinterest:before{content:"\f192"}.dashicons-playlist-audio:before{content:"\f492"}.dashicons-playlist-video:before{content:"\f493"}.dashicons-plugins-checked:before{content:"\f485"}.dashicons-plus-alt:before{content:"\f502"}.dashicons-plus-alt2:before{content:"\f543"}.dashicons-plus:before{content:"\f132"}.dashicons-podio:before{content:"\f19c"}.dashicons-portfolio:before{content:"\f322"}.dashicons-post-status:before{content:"\f173"}.dashicons-pressthis:before{content:"\f157"}.dashicons-printer:before{content:"\f193"}.dashicons-privacy:before{content:"\f194"}.dashicons-products:before{content:"\f312"}.dashicons-randomize:before{content:"\f503"}.dashicons-reddit:before{content:"\f195"}.dashicons-redo:before{content:"\f172"}.dashicons-remove:before{content:"\f14f"}.dashicons-rest-api:before{content:"\f124"}.dashicons-rss:before{content:"\f303"}.dashicons-saved:before{content:"\f15e"}.dashicons-schedule:before{content:"\f489"}.dashicons-screenoptions:before{content:"\f180"}.dashicons-search:before{content:"\f179"}.dashicons-share-alt:before{content:"\f240"}.dashicons-share-alt2:before{content:"\f242"}.dashicons-share:before{content:"\f237"}.dashicons-shield-alt:before{content:"\f334"}.dashicons-shield:before{content:"\f332"}.dashicons-shortcode:before{content:"\f150"}.dashicons-slides:before{content:"\f181"}.dashicons-smartphone:before{content:"\f470"}.dashicons-smiley:before{content:"\f328"}.dashicons-sort:before{content:"\f156"}.dashicons-sos:before{content:"\f468"}.dashicons-spotify:before{content:"\f196"}.dashicons-star-empty:before{content:"\f154"}.dashicons-star-filled:before{content:"\f155"}.dashicons-star-half:before{content:"\f459"}.dashicons-sticky:before{content:"\f537"}.dashicons-store:before{content:"\f513"}.dashicons-superhero-alt:before{content:"\f197"}.dashicons-superhero:before{content:"\f198"}.dashicons-table-col-after:before{content:"\f151"}.dashicons-table-col-before:before{content:"\f152"}.dashicons-table-col-delete:before{content:"\f15a"}.dashicons-table-row-after:before{content:"\f15b"}.dashicons-table-row-before:before{content:"\f15c"}.dashicons-table-row-delete:before{content:"\f15d"}.dashicons-tablet:before{content:"\f471"}.dashicons-tag:before{content:"\f323"}.dashicons-tagcloud:before{content:"\f479"}.dashicons-testimonial:before{content:"\f473"}.dashicons-text-page:before{content:"\f121"}.dashicons-text:before{content:"\f478"}.dashicons-thumbs-down:before{content:"\f542"}.dashicons-thumbs-up:before{content:"\f529"}.dashicons-tickets-alt:before{content:"\f524"}.dashicons-tickets:before{content:"\f486"}.dashicons-tide:before{content:"\f10d"}.dashicons-translation:before{content:"\f326"}.dashicons-trash:before{content:"\f182"}.dashicons-twitch:before{content:"\f199"}.dashicons-twitter-alt:before{content:"\f302"}.dashicons-twitter:before{content:"\f301"}.dashicons-undo:before{content:"\f171"}.dashicons-universal-access-alt:before{content:"\f507"}.dashicons-universal-access:before{content:"\f483"}.dashicons-unlock:before{content:"\f528"}.dashicons-update-alt:before{content:"\f113"}.dashicons-update:before{content:"\f463"}.dashicons-upload:before{content:"\f317"}.dashicons-vault:before{content:"\f178"}.dashicons-video-alt:before{content:"\f234"}.dashicons-video-alt2:before{content:"\f235"}.dashicons-video-alt3:before{content:"\f236"}.dashicons-visibility:before{content:"\f177"}.dashicons-warning:before{content:"\f534"}.dashicons-welcome-add-page:before{content:"\f133"}.dashicons-welcome-comments:before{content:"\f117"}.dashicons-welcome-learn-more:before{content:"\f118"}.dashicons-welcome-view-site:before{content:"\f115"}.dashicons-welcome-widgets-menus:before{content:"\f116"}.dashicons-welcome-write-blog:before{content:"\f119"}.dashicons-whatsapp:before{content:"\f19a"}.dashicons-wordpress-alt:before{content:"\f324"}.dashicons-wordpress:before{content:"\f120"}.dashicons-xing:before{content:"\f19d"}.dashicons-yes-alt:before{content:"\f12a"}.dashicons-yes:before{content:"\f147"}.dashicons-youtube:before{content:"\f19b"}.dashicons-editor-distractionfree:before{content:"\f211"}.dashicons-exerpt-view:before{content:"\f164"}.dashicons-format-links:before{content:"\f103"}.dashicons-format-standard:before{content:"\f109"}.dashicons-post-trash:before{content:"\f182"}.dashicons-share1:before{content:"\f237"}.dashicons-welcome-edit-page:before{content:"\f119"}PKj l\)\,css/wp-embed-template.cssnu[html, body { padding: 0; margin: 0; } body { font-family: sans-serif; } /* Text meant only for screen readers */ .screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important; } /* Dashicons */ .dashicons { display: inline-block; width: 20px; height: 20px; background-color: transparent; background-repeat: no-repeat; background-size: 20px; background-position: center; transition: background .1s ease-in; position: relative; top: 5px; } .dashicons-no { background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2020%2020%27%3E%3Cpath%20d%3D%27M15.55%2013.7l-2.19%202.06-3.42-3.65-3.64%203.43-2.06-2.18%203.64-3.43-3.42-3.64%202.18-2.06%203.43%203.64%203.64-3.42%202.05%202.18-3.64%203.43z%27%20fill%3D%27%23fff%27%2F%3E%3C%2Fsvg%3E"); } .dashicons-admin-comments { background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2020%2020%27%3E%3Cpath%20d%3D%27M5%202h9q.82%200%201.41.59T16%204v7q0%20.82-.59%201.41T14%2013h-2l-5%205v-5H5q-.82%200-1.41-.59T3%2011V4q0-.82.59-1.41T5%202z%27%20fill%3D%27%2382878c%27%2F%3E%3C%2Fsvg%3E"); } .wp-embed-comments a:hover .dashicons-admin-comments { background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2020%2020%27%3E%3Cpath%20d%3D%27M5%202h9q.82%200%201.41.59T16%204v7q0%20.82-.59%201.41T14%2013h-2l-5%205v-5H5q-.82%200-1.41-.59T3%2011V4q0-.82.59-1.41T5%202z%27%20fill%3D%27%230073aa%27%2F%3E%3C%2Fsvg%3E"); } .dashicons-share { background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2020%2020%27%3E%3Cpath%20d%3D%27M14.5%2012q1.24%200%202.12.88T17.5%2015t-.88%202.12-2.12.88-2.12-.88T11.5%2015q0-.34.09-.69l-4.38-2.3Q6.32%2013%205%2013q-1.24%200-2.12-.88T2%2010t.88-2.12T5%207q1.3%200%202.21.99l4.38-2.3q-.09-.35-.09-.69%200-1.24.88-2.12T14.5%202t2.12.88T17.5%205t-.88%202.12T14.5%208q-1.3%200-2.21-.99l-4.38%202.3Q8%209.66%208%2010t-.09.69l4.38%202.3q.89-.99%202.21-.99z%27%20fill%3D%27%2382878c%27%2F%3E%3C%2Fsvg%3E"); display: none; } .js .dashicons-share { display: inline-block; } .wp-embed-share-dialog-open:hover .dashicons-share { background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2020%2020%27%3E%3Cpath%20d%3D%27M14.5%2012q1.24%200%202.12.88T17.5%2015t-.88%202.12-2.12.88-2.12-.88T11.5%2015q0-.34.09-.69l-4.38-2.3Q6.32%2013%205%2013q-1.24%200-2.12-.88T2%2010t.88-2.12T5%207q1.3%200%202.21.99l4.38-2.3q-.09-.35-.09-.69%200-1.24.88-2.12T14.5%202t2.12.88T17.5%205t-.88%202.12T14.5%208q-1.3%200-2.21-.99l-4.38%202.3Q8%209.66%208%2010t-.09.69l4.38%202.3q.89-.99%202.21-.99z%27%20fill%3D%27%230073aa%27%2F%3E%3C%2Fsvg%3E"); } .wp-embed { padding: 25px; font-size: 14px; font-weight: 400; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; line-height: 1.5; color: #8c8f94; background: #fff; border: 1px solid #dcdcde; box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); /* Clearfix */ overflow: auto; zoom: 1; } .wp-embed a { color: #8c8f94; text-decoration: none; } .wp-embed a:hover { text-decoration: underline; } .wp-embed-featured-image { margin-bottom: 20px; } .wp-embed-featured-image img { width: 100%; height: auto; border: none; } .wp-embed-featured-image.square { float: left; max-width: 160px; margin-right: 20px; } .wp-embed p { margin: 0; } p.wp-embed-heading { margin: 0 0 15px; font-weight: 600; font-size: 22px; line-height: 1.3; } .wp-embed-heading a { color: #2c3338; } .wp-embed .wp-embed-more { color: #c3c4c7; } .wp-embed-footer { display: table; width: 100%; margin-top: 30px; } .wp-embed-site-icon { position: absolute; top: 50%; left: 0; transform: translateY(-50%); height: 25px; width: 25px; border: 0; } .wp-embed-site-title { font-weight: 600; line-height: 1.78571428; } .wp-embed-site-title a { position: relative; display: inline-block; padding-left: 35px; } .wp-embed-site-title, .wp-embed-meta { display: table-cell; } .wp-embed-meta { text-align: right; white-space: nowrap; vertical-align: middle; } .wp-embed-comments, .wp-embed-share { display: inline; } .wp-embed-meta a:hover { text-decoration: none; color: #2271b1; } .wp-embed-comments a { line-height: 1.78571428; display: inline-block; } .wp-embed-comments + .wp-embed-share { margin-left: 10px; } .wp-embed-share-dialog { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-color: #1d2327; background-color: rgba(0, 0, 0, 0.9); color: #fff; opacity: 1; transition: opacity .25s ease-in-out; } .wp-embed-share-dialog.hidden { opacity: 0; visibility: hidden; } .wp-embed-share-dialog-open, .wp-embed-share-dialog-close { margin: -8px 0 0; padding: 0; background: transparent; border: none; cursor: pointer; outline: none; } .wp-embed-share-dialog-open .dashicons, .wp-embed-share-dialog-close .dashicons { padding: 4px; } .wp-embed-share-dialog-open .dashicons { top: 8px; } .wp-embed-share-dialog-open:focus .dashicons, .wp-embed-share-dialog-close:focus .dashicons { box-shadow: 0 0 0 1px #4f94d4, 0 0 2px 1px rgba(79, 148, 212, 0.8); border-radius: 100%; } .wp-embed-share-dialog-close { position: absolute; top: 20px; right: 20px; font-size: 22px; } .wp-embed-share-dialog-close:hover { text-decoration: none; } .wp-embed-share-dialog-close .dashicons { height: 24px; width: 24px; background-size: 24px; } .wp-embed-share-dialog-content { height: 100%; transform-style: preserve-3d; overflow: hidden; } .wp-embed-share-dialog-text { margin-top: 25px; padding: 20px; } .wp-embed-share-tabs { margin: 0 0 20px; padding: 0; list-style: none; } .wp-embed-share-tab-button { display: inline-block; } .wp-embed-share-tab-button button { margin: 0; padding: 0; border: none; background: transparent; font-size: 16px; line-height: 1.3; color: #a7aaad; cursor: pointer; transition: color .1s ease-in; } .wp-embed-share-tab-button [aria-selected="true"] { color: #fff; } .wp-embed-share-tab-button button:hover { color: #fff; } .wp-embed-share-tab-button + .wp-embed-share-tab-button { margin: 0 0 0 10px; padding: 0 0 0 11px; border-left: 1px solid #a7aaad; } .wp-embed-share-tab[aria-hidden="true"] { display: none; } p.wp-embed-share-description { margin: 0; font-size: 14px; line-height: 1; font-style: italic; color: #a7aaad; } .wp-embed-share-input { box-sizing: border-box; width: 100%; border: none; height: 28px; margin: 0 0 10px; padding: 0 5px; font-size: 14px; font-weight: 400; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; line-height: 1.5; resize: none; cursor: text; } textarea.wp-embed-share-input { height: 72px; } html[dir="rtl"] .wp-embed-featured-image.square { float: right; margin-right: 0; margin-left: 20px; } html[dir="rtl"] .wp-embed-site-title a { padding-left: 0; padding-right: 35px; } html[dir="rtl"] .wp-embed-site-icon { margin-right: 0; margin-left: 10px; left: auto; right: 0; } html[dir="rtl"] .wp-embed-meta { text-align: left; } html[dir="rtl"] .wp-embed-footer { } html[dir="rtl"] .wp-embed-share { margin-left: 0; margin-right: 10px; } html[dir="rtl"] .wp-embed-share-dialog-close { right: auto; left: 20px; } html[dir="rtl"] .wp-embed-share-tab-button + .wp-embed-share-tab-button { margin: 0 10px 0 0; padding: 0 11px 0 0; border-left: none; border-right: 1px solid #a7aaad; } PKj l\c css/wp-auth-check-rtl.cssnu[/*! This file is auto-generated */ /*------------------------------------------------------------------------------ Interim login dialog ------------------------------------------------------------------------------*/ #wp-auth-check-wrap.hidden { display: none; } #wp-auth-check-wrap #wp-auth-check-bg { position: fixed; top: 0; bottom: 0; right: 0; left: 0; background: #000; opacity: 0.7; filter: alpha(opacity=70); z-index: 1000010; /* needs to appear above .notification-dialog */ } #wp-auth-check-wrap #wp-auth-check { position: fixed; right: 50%; overflow: hidden; top: 40px; bottom: 20px; max-height: 415px; width: 380px; margin: 0 -190px 0 0; padding: 30px 0 0; background-color: #f0f0f1; z-index: 1000011; /* needs to appear above #wp-auth-check-bg */ box-shadow: 0 3px 6px rgba(0, 0, 0, 0.3); } @media screen and (max-width: 380px) { #wp-auth-check-wrap #wp-auth-check { right: 0; width: 100%; margin: 0; } } #wp-auth-check-wrap.fallback #wp-auth-check { max-height: 180px; overflow: auto; } #wp-auth-check-wrap #wp-auth-check-form { height: 100%; position: relative; overflow: auto; -webkit-overflow-scrolling: touch; } #wp-auth-check-form.loading:before { content: ""; display: block; width: 20px; height: 20px; position: absolute; right: 50%; top: 50%; margin: -10px -10px 0 0; background: url(../images/spinner.gif) no-repeat center; background-size: 20px 20px; transform: translateZ(0); } @media print, (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) { #wp-auth-check-form.loading:before { background-image: url(../images/spinner-2x.gif); } } #wp-auth-check-wrap #wp-auth-check-form iframe { height: 98%; /* Scrollbar fix */ width: 100%; } #wp-auth-check-wrap .wp-auth-check-close { position: absolute; top: 5px; left: 5px; height: 22px; width: 22px; color: #787c82; text-decoration: none; text-align: center; } #wp-auth-check-wrap .wp-auth-check-close:before { content: "\f158"; font: normal 20px/22px dashicons; speak: never; -webkit-font-smoothing: antialiased !important; -moz-osx-font-smoothing: grayscale; } #wp-auth-check-wrap .wp-auth-check-close:hover, #wp-auth-check-wrap .wp-auth-check-close:focus { color: #2271b1; } #wp-auth-check-wrap .wp-auth-fallback-expired { outline: 0; } #wp-auth-check-wrap .wp-auth-fallback { font-size: 14px; line-height: 1.5; padding: 0 25px; display: none; } #wp-auth-check-wrap.fallback .wp-auth-fallback, #wp-auth-check-wrap.fallback .wp-auth-check-close { display: block; } PKj l\qM7j7jcss/editor-rtl.min.cssnu[/*! This file is auto-generated */ .mce-tinymce{box-shadow:none}.mce-container,.mce-container *,.mce-widget,.mce-widget *{color:inherit;font-family:inherit}.mce-container .mce-monospace,.mce-widget .mce-monospace{font-family:Consolas,Monaco,monospace;font-size:13px;line-height:150%}#mce-modal-block,#mce-modal-block.mce-fade{opacity:.7;transition:none;background:#000}.mce-window{border-radius:0;box-shadow:0 3px 6px rgba(0,0,0,.3);-webkit-font-smoothing:subpixel-antialiased;transition:none}.mce-window .mce-container-body.mce-abs-layout{overflow:visible}.mce-window .mce-window-head{background:#fff;border-bottom:1px solid #dcdcde;padding:0;min-height:36px}.mce-window .mce-window-head .mce-title{color:#3c434a;font-size:18px;font-weight:600;line-height:36px;margin:0;padding:0 16px 0 36px}.mce-window .mce-window-head .mce-close,.mce-window-head .mce-close .mce-i-remove{color:transparent;top:0;left:0;width:36px;height:36px;padding:0;line-height:36px;text-align:center}.mce-window-head .mce-close .mce-i-remove:before{font:normal 20px/36px dashicons;text-align:center;color:#646970;width:36px;height:36px;display:block}.mce-window-head .mce-close:focus .mce-i-remove:before,.mce-window-head .mce-close:hover .mce-i-remove:before{color:#135e96}.mce-window-head .mce-close:focus .mce-i-remove,div.mce-tab:focus{box-shadow:0 0 0 1px #4f94d4,0 0 2px 1px rgba(79,148,212,.8)}.mce-window .mce-window-head .mce-dragh{width:calc(100% - 36px)}.mce-window .mce-foot{border-top:1px solid #dcdcde}#wp-link .query-results,.mce-checkbox i.mce-i-checkbox,.mce-textbox{border:1px solid #dcdcde;border-radius:0;box-shadow:inset 0 1px 2px rgba(0,0,0,.07);transition:.05s all ease-in-out}#wp-link .query-results:focus,.mce-checkbox:focus i.mce-i-checkbox,.mce-textbox.mce-focus,.mce-textbox:focus{border-color:#4f94d4;box-shadow:0 0 2px rgba(79,148,212,.8)}.mce-window .mce-wp-help{height:360px;width:460px;overflow:auto}.mce-window .mce-wp-help *{box-sizing:border-box}.mce-window .mce-wp-help>.mce-container-body{width:auto!important}.mce-window .wp-editor-help{padding:10px 20px 0 10px}.mce-window .wp-editor-help h2,.mce-window .wp-editor-help p{margin:8px 0;white-space:normal;font-size:14px;font-weight:400}.mce-window .wp-editor-help table{width:100%;margin-bottom:20px}.mce-window .wp-editor-help table.wp-help-single{margin:0 8px 20px}.mce-window .wp-editor-help table.fixed{table-layout:fixed}.mce-window .wp-editor-help table.fixed td:nth-child(odd),.mce-window .wp-editor-help table.fixed th:nth-child(odd){width:12%}.mce-window .wp-editor-help table.fixed td:nth-child(even),.mce-window .wp-editor-help table.fixed th:nth-child(even){width:38%}.mce-window .wp-editor-help table.fixed th:nth-child(odd){padding:5px 0 0}.mce-window .wp-editor-help td,.mce-window .wp-editor-help th{font-size:13px;padding:5px;vertical-align:middle;word-wrap:break-word;white-space:normal}.mce-window .wp-editor-help th{font-weight:600;padding-bottom:0}.mce-window .wp-editor-help kbd{font-family:monospace;padding:2px 7px 3px;font-weight:600;margin:0;background:#f0f0f1;background:rgba(0,0,0,.08)}.mce-window .wp-help-th-center td:nth-child(odd),.mce-window .wp-help-th-center th:nth-child(odd){text-align:center}.mce-floatpanel.mce-popover,.mce-menu{border-color:rgba(0,0,0,.15);border-radius:0;box-shadow:0 3px 5px rgba(0,0,0,.2)}.mce-floatpanel.mce-popover.mce-bottom,.mce-menu{margin-top:2px}.mce-floatpanel .mce-arrow{display:none}.mce-menu .mce-container-body{min-width:160px}.mce-menu-item{border:none;margin-bottom:2px;padding:6px 12px 6px 15px}.mce-menu-has-icons i.mce-ico{line-height:20px}div.mce-panel{border:0;background:#fff}.mce-panel.mce-menu{border:1px solid #dcdcde}div.mce-tab{line-height:13px}div.mce-toolbar-grp{border-bottom:1px solid #dcdcde;background:#f6f7f7;padding:0;position:relative}div.mce-inline-toolbar-grp{border:1px solid #a7aaad;border-radius:2px;box-shadow:0 1px 3px rgba(0,0,0,.15);box-sizing:border-box;margin-bottom:8px;position:absolute;-webkit-user-select:none;user-select:none;max-width:98%;z-index:100100}div.mce-inline-toolbar-grp>div.mce-stack-layout{padding:1px}div.mce-inline-toolbar-grp.mce-arrow-up{margin-bottom:0;margin-top:8px}div.mce-inline-toolbar-grp:after,div.mce-inline-toolbar-grp:before{position:absolute;right:50%;display:block;width:0;height:0;border-style:solid;border-color:transparent;content:""}div.mce-inline-toolbar-grp.mce-arrow-up:before{top:-9px;border-bottom-color:#a7aaad;border-width:0 9px 9px;margin-right:-9px}div.mce-inline-toolbar-grp.mce-arrow-down:before{bottom:-9px;border-top-color:#a7aaad;border-width:9px 9px 0;margin-right:-9px}div.mce-inline-toolbar-grp.mce-arrow-up:after{top:-8px;border-bottom-color:#f6f7f7;border-width:0 8px 8px;margin-right:-8px}div.mce-inline-toolbar-grp.mce-arrow-down:after{bottom:-8px;border-top-color:#f6f7f7;border-width:8px 8px 0;margin-right:-8px}div.mce-inline-toolbar-grp.mce-arrow-left:after,div.mce-inline-toolbar-grp.mce-arrow-left:before{margin:0}div.mce-inline-toolbar-grp.mce-arrow-left:before{right:20px}div.mce-inline-toolbar-grp.mce-arrow-left:after{right:21px}div.mce-inline-toolbar-grp.mce-arrow-right:after,div.mce-inline-toolbar-grp.mce-arrow-right:before{right:auto;margin:0}div.mce-inline-toolbar-grp.mce-arrow-right:before{left:20px}div.mce-inline-toolbar-grp.mce-arrow-right:after{left:21px}div.mce-inline-toolbar-grp.mce-arrow-full{left:0}div.mce-inline-toolbar-grp.mce-arrow-full>div{width:100%;overflow-x:auto}div.mce-toolbar-grp>div{padding:3px}.has-dfw div.mce-toolbar-grp .mce-toolbar.mce-first{padding-left:32px}.mce-toolbar .mce-btn-group{margin:0}.block-library-classic__toolbar .mce-toolbar-grp .mce-toolbar:not(:first-child){display:none}.block-library-classic__toolbar.has-advanced-toolbar .mce-toolbar-grp .mce-toolbar{display:block}div.mce-statusbar{border-top:1px solid #dcdcde}div.mce-path{padding:2px 10px;margin:0}.mce-path,.mce-path .mce-divider,.mce-path-item{font-size:12px}.mce-toolbar .mce-btn,.qt-dfw{border-color:transparent;background:0 0;box-shadow:none;text-shadow:none;cursor:pointer}.mce-btn .mce-txt{direction:inherit;text-align:inherit}.mce-toolbar .mce-btn-group .mce-btn,.qt-dfw{border:1px solid transparent;margin:2px;border-radius:2px}.mce-toolbar .mce-btn-group .mce-btn:focus,.mce-toolbar .mce-btn-group .mce-btn:hover,.qt-dfw:focus,.qt-dfw:hover{background:#f6f7f7;border-color:#50575e;color:#1d2327;box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,.08);outline:0}.mce-toolbar .mce-btn-group .mce-btn.mce-active,.mce-toolbar .mce-btn-group .mce-btn:active,.qt-dfw.active{background:#f0f0f1;border-color:#50575e;box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.3)}.mce-btn.mce-active,.mce-btn.mce-active button,.mce-btn.mce-active i,.mce-btn.mce-active:hover button,.mce-btn.mce-active:hover i{color:inherit}.mce-toolbar .mce-btn-group .mce-btn.mce-active:focus,.mce-toolbar .mce-btn-group .mce-btn.mce-active:hover{border-color:#1d2327}.mce-toolbar .mce-btn-group .mce-btn.mce-disabled:focus,.mce-toolbar .mce-btn-group .mce-btn.mce-disabled:hover{color:#a7aaad;background:0 0;border-color:#dcdcde;text-shadow:0 1px 0 #fff;box-shadow:none}.mce-toolbar .mce-btn-group .mce-btn.mce-disabled:focus{border-color:#50575e}.mce-toolbar .mce-btn-group .mce-first,.mce-toolbar .mce-btn-group .mce-last{border-color:transparent}.mce-toolbar .mce-btn button,.qt-dfw{padding:2px 3px;line-height:normal}.mce-toolbar .mce-listbox button{font-size:13px;line-height:1.53846153;padding-right:6px;padding-left:20px}.mce-toolbar .mce-btn i{text-shadow:none}.mce-toolbar .mce-btn-group>div{white-space:normal}.mce-toolbar .mce-colorbutton .mce-open{border-left:0}.mce-toolbar .mce-colorbutton .mce-preview{margin:0;padding:0;top:auto;bottom:2px;right:3px;height:3px;width:20px;background:#50575e}.mce-toolbar .mce-btn-group .mce-btn.mce-primary{min-width:0;background:#3582c4;border-color:#2271b1 #135e96 #135e96;box-shadow:0 1px 0 #135e96;color:#fff;text-decoration:none;text-shadow:none}.mce-toolbar .mce-btn-group .mce-btn.mce-primary button{padding:2px 3px 1px}.mce-toolbar .mce-btn-group .mce-btn.mce-primary .mce-ico{color:#fff}.mce-toolbar .mce-btn-group .mce-btn.mce-primary:focus,.mce-toolbar .mce-btn-group .mce-btn.mce-primary:hover{background:#4f94d4;border-color:#135e96;color:#fff}.mce-toolbar .mce-btn-group .mce-btn.mce-primary:focus{box-shadow:0 0 1px 1px #72aee6}.mce-toolbar .mce-btn-group .mce-btn.mce-primary:active{background:#2271b1;border-color:#135e96;box-shadow:inset 0 2px 0 #135e96}.mce-toolbar .mce-btn-group .mce-btn.mce-listbox{border-radius:0;direction:rtl;background:#fff;border:1px solid #dcdcde;box-shadow:inset 0 1px 1px -1px rgba(0,0,0,.2)}.mce-toolbar .mce-btn-group .mce-btn.mce-listbox:focus,.mce-toolbar .mce-btn-group .mce-btn.mce-listbox:hover{border-color:#c3c4c7}.mce-panel .mce-btn i.mce-caret{border-top:6px solid #50575e;margin-right:2px;margin-left:2px}.mce-listbox i.mce-caret{left:4px}.mce-panel .mce-btn:focus i.mce-caret,.mce-panel .mce-btn:hover i.mce-caret{border-top-color:#1d2327}.mce-panel .mce-active i.mce-caret{border-top:0;border-bottom:6px solid #1d2327;margin-top:7px}.mce-listbox.mce-active i.mce-caret{margin-top:-3px}.mce-toolbar .mce-splitbtn:hover .mce-open{border-left-color:transparent}.mce-toolbar .mce-splitbtn .mce-open.mce-active{background:0 0;outline:0}.mce-menu .mce-menu-item.mce-active.mce-menu-item-normal,.mce-menu .mce-menu-item.mce-active.mce-menu-item-preview,.mce-menu .mce-menu-item.mce-selected,.mce-menu .mce-menu-item:focus,.mce-menu .mce-menu-item:hover{background:#2271b1;color:#fff}.mce-menu .mce-menu-item.mce-selected .mce-caret,.mce-menu .mce-menu-item:focus .mce-caret,.mce-menu .mce-menu-item:hover .mce-caret{border-right-color:#fff}.rtl .mce-menu .mce-menu-item.mce-selected .mce-caret,.rtl .mce-menu .mce-menu-item:focus .mce-caret,.rtl .mce-menu .mce-menu-item:hover .mce-caret{border-left-color:inherit;border-right-color:#fff}.mce-menu .mce-menu-item.mce-active .mce-menu-shortcut,.mce-menu .mce-menu-item.mce-disabled:hover .mce-ico,.mce-menu .mce-menu-item.mce-disabled:hover .mce-text,.mce-menu .mce-menu-item.mce-selected .mce-ico,.mce-menu .mce-menu-item.mce-selected .mce-text,.mce-menu .mce-menu-item:focus .mce-ico,.mce-menu .mce-menu-item:focus .mce-menu-shortcut,.mce-menu .mce-menu-item:focus .mce-text,.mce-menu .mce-menu-item:hover .mce-ico,.mce-menu .mce-menu-item:hover .mce-menu-shortcut,.mce-menu .mce-menu-item:hover .mce-text{color:inherit}.mce-menu .mce-menu-item.mce-disabled{cursor:default}.mce-menu .mce-menu-item.mce-disabled:hover{background:#c3c4c7}div.mce-menubar{border-color:#dcdcde;background:#fff;border-width:0 0 1px}.mce-menubar .mce-menubtn.mce-active,.mce-menubar .mce-menubtn:focus,.mce-menubar .mce-menubtn:hover{border-color:transparent;background:0 0}.mce-menubar .mce-menubtn:focus{color:#043959;box-shadow:0 0 0 1px #4f94d4,0 0 2px 1px rgba(79,148,212,.8)}.mce-menu-item-sep:hover,div.mce-menu .mce-menu-item-sep{border-bottom:1px solid #dcdcde;height:0;margin:5px 0}.mce-menubtn span{margin-left:0;padding-right:3px}.mce-menu-has-icons i.mce-ico:before{margin-right:-2px}.mce-menu.mce-menu-align .mce-menu-item-normal{position:relative}.mce-menu.mce-menu-align .mce-menu-shortcut{bottom:.6em;font-size:.9em}.mce-primary button,.mce-primary button i{text-align:center;color:#fff;text-shadow:none;padding:0;line-height:1.85714285}.mce-window .mce-btn{color:#50575e;background:#f6f7f7;text-decoration:none;font-size:13px;line-height:26px;height:28px;margin:0;padding:0;cursor:pointer;border:1px solid #c3c4c7;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-shadow:0 1px 0 #c3c4c7}.mce-window .mce-btn::-moz-focus-inner{border-width:0;border-style:none;padding:0}.mce-window .mce-btn:focus,.mce-window .mce-btn:hover{background:#f6f7f7;border-color:#8c8f94;color:#1d2327}.mce-window .mce-btn:focus{border-color:#4f94d4;box-shadow:0 0 3px rgba(34,113,177,.8)}.mce-window .mce-btn:active{background:#f0f0f1;border-color:#8c8f94;box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);transform:translateY(1px)}.mce-window .mce-btn.mce-disabled{color:#a7aaad!important;border-color:#dcdcde!important;background:#f6f7f7!important;box-shadow:none!important;text-shadow:0 1px 0 #fff!important;cursor:default;transform:none!important}.mce-window .mce-btn.mce-primary{background:#3582c4;border-color:#2271b1 #135e96 #135e96;box-shadow:0 1px 0 #135e96;color:#fff;text-decoration:none;text-shadow:0 -1px 1px #135e96,-1px 0 1px #135e96,0 1px 1px #135e96,1px 0 1px #135e96}.mce-window .mce-btn.mce-primary:focus,.mce-window .mce-btn.mce-primary:hover{background:#4f94d4;border-color:#135e96;color:#fff}.mce-window .mce-btn.mce-primary:focus{box-shadow:0 1px 0 #2271b1,0 0 2px 1px #72aee6}.mce-window .mce-btn.mce-primary:active{background:#2271b1;border-color:#135e96;box-shadow:inset 0 2px 0 #135e96;vertical-align:top}.mce-window .mce-btn.mce-primary.mce-disabled{color:#9ec2e6!important;background:#4f94d4!important;border-color:#3582c4!important;box-shadow:none!important;text-shadow:0 -1px 0 rgba(0,0,0,.1)!important;cursor:default}.mce-menubtn.mce-fixed-width span{overflow-x:hidden;text-overflow:ellipsis;width:82px}.mce-charmap{margin:3px}.mce-charmap td{padding:0;border-color:#dcdcde;cursor:pointer}.mce-charmap td:hover{background:#f6f7f7}.mce-charmap td div{width:18px;height:22px;line-height:1.57142857}.mce-tooltip{margin-top:2px}.mce-tooltip-inner{border-radius:3px;box-shadow:0 3px 5px rgba(0,0,0,.2);color:#fff;font-size:12px}.mce-ico{font-family:tinymce,Arial}.mce-btn-small .mce-ico{font-family:tinymce-small,Arial}.mce-toolbar .mce-ico{color:#50575e;line-height:1;width:20px;height:20px;text-align:center;text-shadow:none;margin:0;padding:0}.qt-dfw{color:#50575e;line-height:1;width:28px;height:26px;text-align:center;text-shadow:none}.mce-toolbar .mce-btn .mce-open{line-height:20px}.mce-toolbar .mce-btn.mce-active .mce-open,.mce-toolbar .mce-btn:focus .mce-open,.mce-toolbar .mce-btn:hover .mce-open{border-right-color:#1d2327}div.mce-notification{right:10%!important;left:10%}.mce-notification button.mce-close{left:6px;top:3px;font-weight:400;color:#50575e}.mce-notification button.mce-close:focus,.mce-notification button.mce-close:hover{color:#000}i.mce-i-aligncenter,i.mce-i-alignjustify,i.mce-i-alignleft,i.mce-i-alignright,i.mce-i-backcolor,i.mce-i-blockquote,i.mce-i-bold,i.mce-i-bullist,i.mce-i-charmap,i.mce-i-dashicon,i.mce-i-dfw,i.mce-i-forecolor,i.mce-i-fullscreen,i.mce-i-help,i.mce-i-hr,i.mce-i-indent,i.mce-i-italic,i.mce-i-link,i.mce-i-ltr,i.mce-i-numlist,i.mce-i-outdent,i.mce-i-pastetext,i.mce-i-pasteword,i.mce-i-redo,i.mce-i-remove,i.mce-i-removeformat,i.mce-i-spellchecker,i.mce-i-strikethrough,i.mce-i-underline,i.mce-i-undo,i.mce-i-unlink,i.mce-i-wp-media-library,i.mce-i-wp_adv,i.mce-i-wp_code,i.mce-i-wp_fullscreen,i.mce-i-wp_help,i.mce-i-wp_more,i.mce-i-wp_page{font:normal 20px/1 dashicons;padding:0;vertical-align:top;speak:never;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin-right:-2px;padding-left:2px}.qt-dfw{font:normal 20px/1 dashicons;vertical-align:top;speak:never;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}i.mce-i-bold:before{content:"\f200"}i.mce-i-italic:before{content:"\f201"}i.mce-i-bullist:before{content:"\f203"}i.mce-i-numlist:before{content:"\f204"}i.mce-i-blockquote:before{content:"\f205"}i.mce-i-alignleft:before{content:"\f206"}i.mce-i-aligncenter:before{content:"\f207"}i.mce-i-alignright:before{content:"\f208"}i.mce-i-link:before{content:"\f103"}i.mce-i-unlink:before{content:"\f225"}i.mce-i-wp_more:before{content:"\f209"}i.mce-i-strikethrough:before{content:"\f224"}i.mce-i-spellchecker:before{content:"\f210"}.qt-dfw:before,i.mce-i-dfw:before,i.mce-i-fullscreen:before,i.mce-i-wp_fullscreen:before{content:"\f211"}i.mce-i-wp_adv:before{content:"\f212"}i.mce-i-underline:before{content:"\f213"}i.mce-i-alignjustify:before{content:"\f214"}i.mce-i-backcolor:before,i.mce-i-forecolor:before{content:"\f215"}i.mce-i-pastetext:before{content:"\f217"}i.mce-i-removeformat:before{content:"\f218"}i.mce-i-charmap:before{content:"\f220"}i.mce-i-outdent:before{content:"\f221"}i.mce-i-indent:before{content:"\f222"}i.mce-i-undo:before{content:"\f171"}i.mce-i-redo:before{content:"\f172"}i.mce-i-help:before,i.mce-i-wp_help:before{content:"\f223"}i.mce-i-wp-media-library:before{content:"\f104"}i.mce-i-ltr:before{content:"\f320"}i.mce-i-wp_page:before{content:"\f105"}i.mce-i-hr:before{content:"\f460"}i.mce-i-remove:before{content:"\f158"}i.mce-i-wp_code:before{content:"\f475"}.rtl i.mce-i-outdent:before{content:"\f222"}.rtl i.mce-i-indent:before{content:"\f221"}.wp-editor-wrap{position:relative}.wp-editor-tools{position:relative;z-index:1}.wp-editor-tools:after{clear:both;content:"";display:table}.wp-editor-container{clear:both;border:1px solid #dcdcde}.wp-editor-area{font-family:Consolas,Monaco,monospace;font-size:13px;padding:10px;margin:1px 0 0;line-height:150%;border:0;outline:0;display:block;resize:vertical;box-sizing:border-box}.rtl .wp-editor-area{font-family:Tahoma,Monaco,monospace}.locale-he-il .wp-editor-area{font-family:Arial,Monaco,monospace}.wp-editor-container textarea.wp-editor-area{width:100%;margin:0;box-shadow:none}.wp-editor-tabs{float:left}.wp-switch-editor{float:right;box-sizing:content-box;position:relative;top:1px;background:#f0f0f1;color:#646970;cursor:pointer;font-size:13px;line-height:1.46153846;height:20px;margin:5px 5px 0 0;padding:3px 8px 4px;border:1px solid #dcdcde}.wp-switch-editor:focus{box-shadow:0 0 0 1px #4f94d4,0 0 2px 1px rgba(79,148,212,.8);outline:0;color:#1d2327}.html-active .switch-html:focus,.tmce-active .switch-tmce:focus,.wp-switch-editor:active{box-shadow:none}.wp-switch-editor:active{background-color:#f6f7f7;box-shadow:none}.js .tmce-active .wp-editor-area{color:#fff}.tmce-active .quicktags-toolbar{display:none}.html-active .switch-html,.tmce-active .switch-tmce{background:#f6f7f7;color:#50575e;border-bottom-color:#f6f7f7}.wp-media-buttons{float:right}.wp-media-buttons .button{margin-left:5px;margin-bottom:4px;padding-right:7px;padding-left:7px}.wp-media-buttons .button:active{position:relative;top:1px;margin-top:-1px;margin-bottom:1px}.wp-media-buttons .insert-media{padding-right:5px}.wp-media-buttons a{text-decoration:none;color:#3c434a;font-size:12px}.wp-media-buttons img{padding:0 4px;vertical-align:middle}.wp-media-buttons span.wp-media-buttons-icon{display:inline-block;width:20px;height:20px;line-height:1;vertical-align:middle;margin:0 2px}.wp-media-buttons .add_media span.wp-media-buttons-icon{background:0 0}.wp-media-buttons .add_media span.wp-media-buttons-icon:before{font:normal 18px/1 dashicons;speak:never;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.wp-media-buttons .add_media span.wp-media-buttons-icon:before{content:"\f104"}.mce-content-body dl.wp-caption{max-width:100%}.quicktags-toolbar{padding:3px;position:relative;border-bottom:1px solid #dcdcde;background:#f6f7f7;min-height:30px}.has-dfw .quicktags-toolbar{padding-left:35px}.wp-core-ui .quicktags-toolbar input.button.button-small{margin:2px}.quicktags-toolbar input[value=link]{text-decoration:underline}.quicktags-toolbar input[value=del]{text-decoration:line-through}.quicktags-toolbar input[value="i"]{font-style:italic}.quicktags-toolbar input[value="b"]{font-weight:600}.mce-toolbar .mce-btn-group .mce-btn.mce-wp-dfw,.qt-dfw{position:absolute;top:0;left:0}.mce-toolbar .mce-btn-group .mce-btn.mce-wp-dfw{margin:7px 0 0 7px}.qt-dfw{margin:5px 0 0 5px}.qt-fullscreen{position:static;margin:2px}@media screen and (max-width:782px){.mce-toolbar .mce-btn button,.qt-dfw{padding:6px 7px}.mce-toolbar .mce-btn-group .mce-btn.mce-primary button{padding:6px 7px 5px}.mce-toolbar .mce-btn-group .mce-btn{margin:1px}.qt-dfw{width:36px;height:34px}.mce-toolbar .mce-btn-group .mce-btn.mce-wp-dfw{margin:4px 0 0 4px}.mce-toolbar .mce-colorbutton .mce-preview{right:8px;bottom:6px}.mce-window .mce-btn{padding:2px 0}.has-dfw .quicktags-toolbar,.has-dfw div.mce-toolbar-grp .mce-toolbar.mce-first{padding-left:40px}}@media screen and (min-width:782px){.wp-core-ui .quicktags-toolbar input.button.button-small{font-size:12px;min-height:26px;line-height:2}}#wp_editbtns,#wp_gallerybtns{padding:2px;position:absolute;display:none;z-index:100020}#wp_delgallery,#wp_delimgbtn,#wp_editgallery,#wp_editimgbtn{background-color:#f0f0f1;margin:2px;padding:2px;border:1px solid #8c8f94;border-radius:3px}#wp_delgallery:hover,#wp_delimgbtn:hover,#wp_editgallery:hover,#wp_editimgbtn:hover{border-color:#50575e;background-color:#c3c4c7}#wp-link-wrap{display:none;background-color:#fff;box-shadow:0 3px 6px rgba(0,0,0,.3);width:500px;overflow:hidden;margin-right:-250px;margin-top:-125px;position:fixed;top:50%;right:50%;z-index:100105;transition:height .2s,margin-top .2s}#wp-link-backdrop{display:none;position:fixed;top:0;right:0;left:0;bottom:0;min-height:360px;background:#000;opacity:.7;z-index:100100}#wp-link{position:relative;height:100%}#wp-link-wrap{height:500px;margin-top:-250px}#wp-link-wrap .wp-link-text-field{display:none}#wp-link-wrap.has-text-field .wp-link-text-field{display:block}#link-modal-title{background:#fff;border-bottom:1px solid #dcdcde;height:36px;font-size:18px;font-weight:600;line-height:2;margin:0;padding:0 16px 0 36px}#wp-link-close{color:#646970;padding:0;position:absolute;top:0;left:0;width:36px;height:36px;text-align:center;background:0 0;border:none;cursor:pointer}#wp-link-close:before{font:normal 20px/36px dashicons;vertical-align:top;speak:never;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:36px;height:36px;content:"\f158"}#wp-link-close:focus,#wp-link-close:hover{color:#135e96}#wp-link-close:focus{outline:0;box-shadow:0 0 0 1px #4f94d4,0 0 2px 1px rgba(79,148,212,.8);outline:2px solid transparent;outline-offset:-2px}#wp-link-wrap #link-selector{-webkit-overflow-scrolling:touch;padding:0 16px;position:absolute;top:37px;right:0;left:0;bottom:44px}#wp-link ol,#wp-link ul{list-style:none;margin:0;padding:0}#wp-link input[type=text]{box-sizing:border-box}#wp-link #link-options{padding:8px 0 12px}#wp-link p.howto{margin:3px 0}#wp-link p.howto a{text-decoration:none;color:inherit}#wp-link label input[type=text]{margin-top:5px;width:70%}#wp-link #link-options label span,#wp-link #search-panel label span.search-label{display:inline-block;width:80px;text-align:left;padding-left:5px;max-width:24%;vertical-align:middle;word-wrap:break-word}#wp-link .link-search-field{width:250px;max-width:70%}#wp-link .link-search-wrapper{margin:5px 0 9px;display:block;overflow:hidden}#wp-link .link-search-wrapper .spinner{float:none;margin:-3px 4px 0 0}#wp-link .link-target{padding:3px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#wp-link .link-target label{max-width:70%}#wp-link .query-results{border:1px #dcdcde solid;margin:0 0 12px;background:#fff;overflow:auto;position:absolute;right:16px;left:16px;bottom:0;top:166px}.has-text-field #wp-link .query-results{top:210px}#wp-link li{clear:both;margin-bottom:0;border-bottom:1px solid #f0f0f1;color:#2c3338;padding:4px 10px 4px 6px;cursor:pointer;position:relative}#wp-link .query-notice{padding:0;border-bottom:1px solid #dcdcde;background-color:#fff;color:#000}#wp-link .query-notice .query-notice-default,#wp-link .query-notice .query-notice-hint{display:block;padding:6px;border-right:4px solid #72aee6}#wp-link .unselectable.no-matches-found{padding:0;border-bottom:1px solid #dcdcde;background-color:#f6f7f7}#wp-link .no-matches-found .item-title{display:block;padding:6px;border-right:4px solid #d63638}#wp-link .query-results em{font-style:normal}#wp-link li:hover{background:#f0f6fc;color:#101517}#wp-link li.unselectable{border-bottom:1px solid #dcdcde}#wp-link li.unselectable:hover{background:#fff;cursor:auto;color:#2c3338}#wp-link li.selected{background:#dcdcde;color:#2c3338}#wp-link li.selected .item-title{font-weight:600}#wp-link li:last-child{border:none}#wp-link .item-title{display:inline-block;width:80%;width:calc(100% - 68px);word-wrap:break-word}#wp-link .item-info{text-transform:uppercase;color:#646970;font-size:11px;position:absolute;left:5px;top:5px}#wp-link .river-waiting{display:none;padding:10px 0}#wp-link .submitbox{padding:8px 16px;background:#fff;border-top:1px solid #dcdcde;position:absolute;bottom:0;right:0;left:0}#wp-link-cancel{line-height:1.92307692;float:right}#wp-link-update{line-height:1.76923076;float:left}#wp-link-submit{float:left}@media screen and (max-width:782px){#wp-link-wrap{margin-top:-140px}#wp-link-wrap .query-results{top:195px}#wp-link-wrap.has-text-field .query-results{top:235px}#link-selector{padding:0 16px 60px}#wp-link-wrap #link-selector{bottom:52px}#wp-link-cancel{line-height:2.46153846}#wp-link .link-target{padding-top:10px}#wp-link .submitbox .button{margin-bottom:0}}@media screen and (max-width:520px){#wp-link-wrap{width:auto;margin-right:0;right:10px;left:10px;max-width:500px}}@media screen and (max-height:520px){#wp-link-wrap{transition:none;height:auto;margin-top:0;top:10px;bottom:10px}#link-selector{overflow:auto}#search-panel .query-results{position:static}}@media screen and (max-height:290px){#wp-link-wrap{height:auto;margin-top:0;top:10px;bottom:10px}#link-selector{overflow:auto;height:calc(100% - 92px);padding-bottom:2px}#search-panel .query-results{position:static}}div.wp-link-preview{float:right;margin:5px;max-width:694px;overflow:hidden;text-overflow:ellipsis}div.wp-link-preview a{color:#2271b1;text-decoration:underline;transition-property:border,background,color;transition-duration:.05s;transition-timing-function:ease-in-out;cursor:pointer}div.wp-link-preview a.wplink-url-error{color:#d63638}div.wp-link-input{float:right;margin:2px;max-width:694px}div.wp-link-input input{width:300px;padding:3px;box-sizing:border-box;line-height:1.28571429;min-height:26px}.mce-toolbar div.wp-link-input~.mce-btn,.mce-toolbar div.wp-link-preview~.mce-btn{margin:2px 1px}.mce-inline-toolbar-grp .mce-btn-group .mce-btn:last-child{margin-left:2px}.ui-autocomplete.wplink-autocomplete{z-index:100110;max-height:200px;overflow-y:auto;padding:0;margin:0;list-style:none;position:absolute;border:1px solid #4f94d4;box-shadow:0 1px 2px rgba(79,148,212,.8);background-color:#fff}.ui-autocomplete.wplink-autocomplete li{margin-bottom:0;padding:4px 10px;clear:both;white-space:normal;text-align:right}.ui-autocomplete.wplink-autocomplete li .wp-editor-float-right{float:left}.ui-autocomplete.wplink-autocomplete li.ui-state-focus{background-color:#dcdcde;cursor:pointer}@media screen and (max-width:782px){div.wp-link-input,div.wp-link-preview{max-width:70%;max-width:calc(100% - 86px)}div.wp-link-preview{margin:8px 5px 8px 0}div.wp-link-input{width:300px}div.wp-link-input input{width:100%;font-size:16px;padding:5px}}.mce-fullscreen{z-index:100010}.rtl .quicktags-toolbar input,.rtl .wp-switch-editor{font-family:Tahoma,sans-serif}.mce-rtl .mce-flow-layout .mce-flow-layout-item>div{direction:rtl}.mce-rtl .mce-listbox i.mce-caret{left:6px}html:lang(he-il) .rtl .quicktags-toolbar input,html:lang(he-il) .rtl .wp-switch-editor{font-family:Arial,sans-serif}@media print,(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){.wp-media-buttons .add_media span.wp-media-buttons-icon{background:0 0}}PKj l\css/media-views-rtl.cssnu[/*! This file is auto-generated */ /** * Base Styles */ .media-modal * { box-sizing: content-box; } .media-modal input, .media-modal select, .media-modal textarea { box-sizing: border-box; } .media-modal, .media-frame { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 12px; -webkit-overflow-scrolling: touch; } .media-modal legend { padding: 0; font-size: 13px; } .media-modal label { font-size: 13px; } .media-modal .legend-inline { position: absolute; transform: translate(100%, 50%); margin-right: -1%; line-height: 1.2; } .media-frame a { border-bottom: none; color: #2271b1; } .media-frame a:hover, .media-frame a:active { color: #135e96; } .media-frame a:focus { box-shadow: 0 0 0 1px #4f94d4, 0 0 2px 1px rgba(79, 148, 212, 0.8); color: #043959; /* Only visible in Windows High Contrast mode */ outline: 1px solid transparent; } .media-frame a.button { color: #2c3338; } .media-frame a.button:hover { color: #1d2327; } .media-frame a.button-primary, .media-frame a.button-primary:hover { color: #fff; } .media-frame input, .media-frame textarea { padding: 6px 8px; } .media-frame select, .wp-admin .media-frame select { min-height: 30px; vertical-align: middle; } .media-frame input[type="text"], .media-frame input[type="password"], .media-frame input[type="color"], .media-frame input[type="date"], .media-frame input[type="datetime"], .media-frame input[type="datetime-local"], .media-frame input[type="email"], .media-frame input[type="month"], .media-frame input[type="number"], .media-frame input[type="search"], .media-frame input[type="tel"], .media-frame input[type="time"], .media-frame input[type="url"], .media-frame input[type="week"], .media-frame textarea, .media-frame select { box-shadow: 0 0 0 transparent; border-radius: 4px; border: 1px solid #8c8f94; background-color: #fff; color: #2c3338; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; } .media-frame input[type="text"], .media-frame input[type="password"], .media-frame input[type="date"], .media-frame input[type="datetime"], .media-frame input[type="datetime-local"], .media-frame input[type="email"], .media-frame input[type="month"], .media-frame input[type="number"], .media-frame input[type="search"], .media-frame input[type="tel"], .media-frame input[type="time"], .media-frame input[type="url"], .media-frame input[type="week"] { padding: 0 8px; /* inherits font size 13px */ line-height: 2.15384615; /* 28px */ } /* Search field in the Media Library toolbar */ .media-frame.mode-grid .wp-filter input[type="search"] { font-size: 14px; line-height: 2; } .media-frame input[type="text"]:focus, .media-frame input[type="password"]:focus, .media-frame input[type="number"]:focus, .media-frame input[type="search"]:focus, .media-frame input[type="email"]:focus, .media-frame input[type="url"]:focus, .media-frame textarea:focus, .media-frame select:focus { border-color: #3582c4; box-shadow: 0 0 0 1px #3582c4; outline: 2px solid transparent; } .media-frame input:disabled, .media-frame textarea:disabled, .media-frame input[readonly], .media-frame textarea[readonly] { background-color: #f0f0f1; } .media-frame input[type="search"] { -webkit-appearance: textfield; } .media-frame ::-webkit-input-placeholder { color: #646970; } .media-frame ::-moz-placeholder { color: #646970; opacity: 1; } .media-frame :-ms-input-placeholder { color: #646970; } /* * In some cases there's the need of higher specificity, * for example higher than `.media-embed .setting`. */ .media-frame .hidden, .media-frame .setting.hidden { display: none; } /*! * jQuery UI Draggable/Sortable 1.11.4 * http://jqueryui.com * * Copyright jQuery Foundation and other contributors * Released under the MIT license. * http://jquery.org/license */ .ui-draggable-handle, .ui-sortable-handle { touch-action: none; } /** * Modal */ .media-modal { position: fixed; top: 30px; right: 30px; left: 30px; bottom: 30px; z-index: 160000; } .wp-customizer .media-modal { z-index: 560000; } .media-modal-backdrop { position: fixed; top: 0; right: 0; left: 0; bottom: 0; min-height: 360px; background: #000; opacity: 0.7; z-index: 159900; } .wp-customizer .media-modal-backdrop { z-index: 559900; } .media-modal-close { position: absolute; top: 0; left: 0; width: 50px; height: 50px; margin: 0; padding: 0; border: 1px solid transparent; background: none; color: #646970; z-index: 1000; cursor: pointer; outline: none; transition: color .1s ease-in-out, background .1s ease-in-out; } .media-modal-close:hover, .media-modal-close:active { color: #135e96; } .media-modal-close:focus { color: #135e96; border-color: #4f94d4; box-shadow: 0 0 3px rgba(34, 113, 177, 0.8); /* Only visible in Windows High Contrast mode */ outline: 2px solid transparent; } .media-modal-close span.media-modal-icon { background-image: none; } .media-modal-close .media-modal-icon:before { content: "\f158"; font: normal 20px/1 dashicons; speak: never; vertical-align: middle; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .media-modal-content { position: absolute; top: 0; right: 0; left: 0; bottom: 0; overflow: auto; min-height: 300px; box-shadow: 0 5px 15px rgba(0, 0, 0, 0.7); background: #fff; -webkit-font-smoothing: subpixel-antialiased; } .media-modal-content .media-frame select.attachment-filters { margin-top: 32px; margin-left: 2%; width: 42%; width: calc(48% - 12px); } .media-modal-content .attachments-browser .search { width: 100%; } /* higher specificity */ .wp-core-ui .media-modal-icon { background-image: url(../images/uploader-icons.png); background-repeat: no-repeat; } /** * Toolbar */ .media-toolbar { position: absolute; top: 0; right: 0; left: 0; z-index: 100; height: 60px; padding: 0 16px; border: 0 solid #dcdcde; overflow: hidden; } .media-frame-toolbar .media-toolbar { top: auto; bottom: -47px; height: auto; overflow: visible; border-top: 1px solid #dcdcde; } .media-toolbar-primary { float: left; height: 100%; position: relative; } .media-toolbar-secondary { float: right; height: 100%; } .media-toolbar-primary > .media-button, .media-toolbar-primary > .media-button-group { margin-right: 10px; float: right; margin-top: 15px; } .media-toolbar-secondary > .media-button, .media-toolbar-secondary > .media-button-group { margin-left: 10px; margin-top: 15px; } /** * Sidebar */ .media-sidebar { position: absolute; top: 0; left: 0; bottom: 0; width: 267px; padding: 0 16px; z-index: 75; background: #f6f7f7; border-right: 1px solid #dcdcde; overflow: auto; -webkit-overflow-scrolling: touch; } /* * Implementation of bottom padding in overflow content differs across browsers. * We need a different method. See https://github.com/w3c/csswg-drafts/issues/129 */ .media-sidebar::after { content: ""; display: flex; clear: both; height: 24px; } .hide-toolbar .media-sidebar { bottom: 0; } .media-sidebar h2, .image-details h2:not(.media-attachments-filter-heading) { position: relative; font-weight: 600; text-transform: uppercase; font-size: 12px; color: #646970; margin: 24px 0 8px; } .media-sidebar .setting, .attachment-details .setting { display: block; float: right; width: 100%; margin: 0 0 10px; } .media-sidebar .collection-settings .setting { margin: 1px 0; } .media-sidebar .setting.has-description, .attachment-details .setting.has-description { margin-bottom: 5px; } .media-sidebar .setting .link-to-custom { margin: 3px 2px 0; } .media-sidebar .setting span, /* Back-compat for pre-5.3 */ .attachment-details .setting span, /* Back-compat for pre-5.3 */ .media-sidebar .setting .name, .media-sidebar .setting .value, .attachment-details .setting .name { min-width: 30%; margin-left: 4%; font-size: 12px; text-align: left; word-wrap: break-word; } .media-sidebar .setting .name { max-width: 80px; } .media-sidebar .setting .value { text-align: right; } .media-sidebar .setting select { max-width: 65%; } .media-sidebar .setting input[type="checkbox"], .media-sidebar .field input[type="checkbox"], .media-sidebar .setting input[type="radio"], .media-sidebar .field input[type="radio"], .attachment-details .setting input[type="checkbox"], .attachment-details .field input[type="checkbox"], .attachment-details .setting input[type="radio"], .attachment-details .field input[type="radio"] { float: none; margin: 8px 3px 0; padding: 0; } .media-sidebar .setting span, /* Back-compat for pre-5.3 */ .attachment-details .setting span, /* Back-compat for pre-5.3 */ .media-sidebar .setting .name, .media-sidebar .setting .value, .media-sidebar .checkbox-label-inline, .attachment-details .setting .name, .attachment-details .setting .value, .compat-item label span { float: right; min-height: 22px; padding-top: 8px; line-height: 1.33333333; font-weight: 400; color: #646970; } .media-sidebar .checkbox-label-inline { font-size: 12px; } .media-sidebar .copy-to-clipboard-container, .attachment-details .copy-to-clipboard-container { flex-wrap: wrap; margin-top: 10px; margin-right: calc( 35% - 1px ); padding-top: 10px; } /* Needs high specificity. */ .attachment-details .attachment-info .copy-to-clipboard-container { float: none; } .media-sidebar .copy-to-clipboard-container .success, .attachment-details .copy-to-clipboard-container .success { padding: 0; min-height: 0; line-height: 2.18181818; text-align: right; color: #008a20; } .compat-item label span { text-align: left; } .media-sidebar .setting input[type="text"], .media-sidebar .setting input[type="password"], .media-sidebar .setting input[type="email"], .media-sidebar .setting input[type="number"], .media-sidebar .setting input[type="search"], .media-sidebar .setting input[type="tel"], .media-sidebar .setting input[type="url"], .media-sidebar .setting textarea, .media-sidebar .setting .value, .attachment-details .setting input[type="text"], .attachment-details .setting input[type="password"], .attachment-details .setting input[type="email"], .attachment-details .setting input[type="number"], .attachment-details .setting input[type="search"], .attachment-details .setting input[type="tel"], .attachment-details .setting input[type="url"], .attachment-details .setting textarea, .attachment-details .setting .value, .attachment-details .setting + .description { box-sizing: border-box; margin: 1px; width: 65%; float: left; } .media-sidebar .setting .value, .attachment-details .setting .value, .attachment-details .setting + .description { margin: 0 1px; text-align: right; } .attachment-details .setting + .description { clear: both; font-size: 12px; font-style: normal; margin-bottom: 10px; } .media-sidebar .setting textarea, .attachment-details .setting textarea, .compat-item .field textarea { height: 62px; resize: vertical; } .compat-item { float: right; width: 100%; overflow: hidden; } .compat-item table { width: 100%; table-layout: fixed; border-spacing: 0; border: 0; } .compat-item tr { padding: 2px 0; display: block; overflow: hidden; } .compat-item .label, .compat-item .field { display: block; margin: 0; padding: 0; } .compat-item .label { min-width: 30%; margin-left: 4%; float: right; text-align: left; } .compat-item .label span { display: block; width: 100%; } .compat-item .field { float: left; width: 65%; margin: 1px; } .compat-item .field input[type="text"], .compat-item .field input[type="password"], .compat-item .field input[type="email"], .compat-item .field input[type="number"], .compat-item .field input[type="search"], .compat-item .field input[type="tel"], .compat-item .field input[type="url"], .compat-item .field textarea { width: 100%; margin: 0; box-sizing: border-box; } .sidebar-for-errors .attachment-details, .sidebar-for-errors .compat-item, .sidebar-for-errors .media-sidebar .media-progress-bar, .sidebar-for-errors .upload-details { display: none !important; } /** * Menu */ .media-menu { position: absolute; top: 0; right: 0; left: 0; bottom: 0; margin: 0; padding: 50px 0 10px; background: #f6f7f7; border-left-width: 1px; border-left-style: solid; border-left-color: #c3c4c7; -webkit-user-select: none; user-select: none; } .media-menu .media-menu-item { display: block; box-sizing: border-box; width: 100%; position: relative; border: 0; margin: 0; padding: 8px 20px; font-size: 14px; line-height: 1.28571428; background: transparent; color: #2271b1; text-align: right; text-decoration: none; cursor: pointer; } .media-menu .media-menu-item:hover { background: rgba(0, 0, 0, 0.04); } .media-menu .media-menu-item:active { color: #2271b1; outline: none; } .media-menu .active, .media-menu .active:hover { color: #1d2327; font-weight: 600; } .media-menu .media-menu-item:focus { box-shadow: 0 0 0 1px #4f94d4, 0 0 2px 1px rgba(79, 148, 212, 0.8); color: #043959; /* Only visible in Windows High Contrast mode */ outline: 1px solid transparent; } .media-menu .separator { height: 0; margin: 12px 20px; padding: 0; border-top: 1px solid #dcdcde; } /** * Menu */ .media-router { position: relative; padding: 0 6px; margin: 0; clear: both; } .media-router .media-menu-item { position: relative; float: right; border: 0; margin: 0; padding: 8px 10px 9px; height: 18px; line-height: 1.28571428; font-size: 14px; text-decoration: none; background: transparent; cursor: pointer; transition: none; } .media-router .media-menu-item:last-child { border-left: 0; } .media-router .media-menu-item:hover, .media-router .media-menu-item:active { color: #2271b1; } .media-router .active, .media-router .active:hover { color: #1d2327; } .media-router .media-menu-item:focus { box-shadow: 0 0 0 1px #4f94d4, 0 0 2px 1px rgba(79, 148, 212, 0.8); color: #043959; /* Only visible in Windows High Contrast mode */ outline: 1px solid transparent; } .media-router .active, .media-router .media-menu-item.active:last-child { margin: -1px -1px 0; background: #fff; border: 1px solid #dcdcde; border-bottom: none; } .media-router .active:after { display: none; } /** * Frame */ .media-frame { overflow: hidden; position: absolute; top: 0; right: 0; left: 0; bottom: 0; } .media-frame-menu { position: absolute; top: 0; right: 0; bottom: 0; width: 200px; z-index: 150; } .media-frame-title { position: absolute; top: 0; right: 200px; left: 0; height: 50px; z-index: 200; } .media-frame-router { position: absolute; top: 50px; right: 200px; left: 0; height: 36px; z-index: 200; } .media-frame-content { position: absolute; top: 84px; right: 200px; left: 0; bottom: 61px; height: auto; width: auto; margin: 0; overflow: auto; background: #fff; border-top: 1px solid #dcdcde; } .media-frame-toolbar { position: absolute; right: 200px; left: 0; z-index: 100; bottom: 60px; height: auto; } .media-frame.hide-menu .media-frame-title, .media-frame.hide-menu .media-frame-router, .media-frame.hide-menu .media-frame-toolbar, .media-frame.hide-menu .media-frame-content { right: 0; } .media-frame.hide-toolbar .media-frame-content { bottom: 0; } .media-frame.hide-router .media-frame-content { top: 50px; } .media-frame.hide-menu .media-frame-menu, .media-frame.hide-menu .media-frame-menu-heading, .media-frame.hide-router .media-frame-router, .media-frame.hide-toolbar .media-frame-toolbar { display: none; } .media-frame-title h1 { padding: 0 16px; font-size: 22px; line-height: 2.27272727; margin: 0; } .media-frame-menu-heading, .media-attachments-filter-heading { position: absolute; right: 20px; top: 22px; margin: 0; font-size: 13px; line-height: 1; /* Above the media-frame-menu. */ z-index: 151; } .media-attachments-filter-heading { top: 10px; right: 16px; } .mode-grid .media-attachments-filter-heading { top: 0; right: -9999px; } .mode-grid .media-frame-actions-heading { display: none; } .wp-core-ui .button.media-frame-menu-toggle { display: none; } .media-frame-title .suggested-dimensions { font-size: 14px; float: left; margin-left: 20px; } .media-frame-content .crop-content { height: 100%; } .wp-customizer:not(.mobile) .media-frame-content .crop-content.site-icon { margin-left: 300px; } .media-frame-content .crop-content .crop-image { display: block; margin: auto; max-width: 100%; max-height: 100%; } .media-frame-content .crop-content .upload-errors { position: absolute; width: 300px; top: 50%; right: 50%; margin-right: -150px; margin-left: -150px; z-index: 600000; } /** * Iframes */ .media-frame .media-iframe { overflow: hidden; } .media-frame .media-iframe, .media-frame .media-iframe iframe { height: 100%; width: 100%; border: 0; } /** * Attachment Browser Filters */ .media-frame select.attachment-filters { margin-top: 11px; margin-left: 2%; max-width: 42%; max-width: calc(48% - 12px); } .media-frame select.attachment-filters:last-of-type { margin-left: 0; width: auto; max-width: 100%; } /** * Search */ .media-frame .search { margin: 32px 0 0; padding: 4px; font-size: 13px; color: #3c434a; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; -webkit-appearance: none; } .media-toolbar-primary .search { max-width: 100%; } .media-frame .media-search-input-label { position: absolute; right: 0; top: 10px; margin: 0; line-height: 1; } /** * Attachments */ .wp-core-ui .attachments { margin: 0; -webkit-overflow-scrolling: touch; } /** * Attachment */ .wp-core-ui .attachment { position: relative; float: right; padding: 8px; margin: 0; color: #3c434a; cursor: pointer; list-style: none; text-align: center; -webkit-user-select: none; user-select: none; width: 25%; box-sizing: border-box; } .wp-core-ui .attachment:focus, .wp-core-ui .selected.attachment:focus, .wp-core-ui .attachment.details:focus { box-shadow: inset 0 0 2px 3px #fff, inset 0 0 0 7px #4f94d4; /* Only visible in Windows High Contrast mode */ outline: 2px solid transparent; outline-offset: -6px; } .wp-core-ui .selected.attachment { box-shadow: inset 0 0 0 5px #fff, inset 0 0 0 7px #c3c4c7; } .wp-core-ui .attachment.details { box-shadow: inset 0 0 0 3px #fff, inset 0 0 0 7px #2271b1; } .wp-core-ui .attachment-preview { position: relative; box-shadow: inset 0 0 15px rgba(0, 0, 0, 0.1), inset 0 0 0 1px rgba(0, 0, 0, 0.05); background: #f0f0f1; cursor: pointer; } .wp-core-ui .attachment-preview:before { content: ""; display: block; padding-top: 100%; } .wp-core-ui .attachment .icon { margin: 0 auto; overflow: hidden; } .wp-core-ui .attachment .thumbnail { overflow: hidden; position: absolute; top: 0; left: 0; bottom: 0; right: 0; opacity: 1; transition: opacity .1s; } .wp-core-ui .attachment .portrait img { max-width: 100%; } .wp-core-ui .attachment .landscape img { max-height: 100%; } .wp-core-ui .attachment .thumbnail:after { content: ""; display: block; position: absolute; top: 0; right: 0; left: 0; bottom: 0; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1); overflow: hidden; } .wp-core-ui .attachment .thumbnail img { top: 0; right: 0; } .wp-core-ui .attachment .thumbnail .centered { position: absolute; top: 0; right: 0; width: 100%; height: 100%; transform: translate( -50%, 50% ); } .wp-core-ui .attachment .thumbnail .centered img { transform: translate( 50%, -50% ); } .wp-core-ui .attachments-browser .attachment .thumbnail .centered img.icon { transform: translate( 50%, -70% ); } .wp-core-ui .attachment .filename { position: absolute; right: 0; left: 0; bottom: 0; overflow: hidden; max-height: 100%; word-wrap: break-word; text-align: center; font-weight: 600; background: rgba(255, 255, 255, 0.8); box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.15); } .wp-core-ui .attachment .filename div { padding: 5px 10px; } .wp-core-ui .attachment .thumbnail img { position: absolute; } .wp-core-ui .attachment-close { display: block; position: absolute; top: 5px; left: 5px; height: 22px; width: 22px; padding: 0; background-color: #fff; background-position: -96px 4px; border-radius: 3px; box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.3); transition: none; } .wp-core-ui .attachment-close:hover, .wp-core-ui .attachment-close:focus { background-position: -36px 4px; } .wp-core-ui .attachment .check { display: none; height: 24px; width: 24px; padding: 0; border: 0; position: absolute; z-index: 10; top: 0; left: 0; outline: none; background: #f0f0f1; cursor: pointer; box-shadow: 0 0 0 1px #fff, 0 0 0 2px rgba(0, 0, 0, 0.15); } .wp-core-ui .attachment .check .media-modal-icon { display: block; background-position: -1px 0; height: 15px; width: 15px; margin: 5px; } .wp-core-ui .attachment .check:hover .media-modal-icon { background-position: -40px 0; } .wp-core-ui .attachment.selected .check { display: block; } .wp-core-ui .attachment.details .check, .wp-core-ui .attachment.selected .check:focus, .wp-core-ui .media-frame.mode-grid .attachment.selected .check { background-color: #2271b1; box-shadow: 0 0 0 1px #fff, 0 0 0 2px #2271b1; } .wp-core-ui .attachment.selected .check:focus { /* Only visible in Windows High Contrast mode */ outline: 2px solid transparent; } .wp-core-ui .attachment.details .check .media-modal-icon, .wp-core-ui .media-frame.mode-grid .attachment.selected .check .media-modal-icon { background-position: -21px 0; } .wp-core-ui .attachment.details .check:hover .media-modal-icon, .wp-core-ui .attachment.selected .check:focus .media-modal-icon, .wp-core-ui .media-frame.mode-grid .attachment.selected .check:hover .media-modal-icon { background-position: -60px 0; } .wp-core-ui .media-frame .attachment .describe { position: relative; display: block; width: 100%; margin: 0; padding: 0 8px; font-size: 12px; border-radius: 0; } /** * Attachments Browser */ .media-frame .attachments-browser { position: relative; width: 100%; height: 100%; overflow: hidden; } .attachments-browser .media-toolbar { left: 300px; height: 72px; background: #fff; } .attachments-browser.hide-sidebar .media-toolbar { left: 0; } .attachments-browser .media-toolbar-primary > .media-button, .attachments-browser .media-toolbar-primary > .media-button-group, .attachments-browser .media-toolbar-secondary > .media-button, .attachments-browser .media-toolbar-secondary > .media-button-group { margin: 10px 0; } .attachments-browser .attachments { padding: 2px 8px 8px; } .attachments-browser:not(.has-load-more) .attachments, .attachments-browser.has-load-more .attachments-wrapper, .attachments-browser .uploader-inline { position: absolute; top: 72px; right: 0; left: 300px; bottom: 0; overflow: auto; outline: none; } .attachments-browser .uploader-inline.hidden { display: none; } .attachments-browser .media-toolbar-primary { max-width: 33%; } .mode-grid .attachments-browser .media-toolbar-primary { display: flex; align-items: center; } .mode-grid .attachments-browser .media-toolbar-mode-select .media-toolbar-primary { display: none; } .attachments-browser .media-toolbar-secondary { max-width: 66%; } .uploader-inline .close { background-color: transparent; border: 0; cursor: pointer; height: 48px; outline: none; padding: 0; position: absolute; left: 2px; text-align: center; top: 2px; width: 48px; z-index: 1; } .uploader-inline .close:before { font: normal 30px/1 dashicons !important; color: #50575e; display: inline-block; content: "\f335"; font-weight: 300; margin-top: 1px; } .uploader-inline .close:focus { outline: 1px solid #4f94d4; box-shadow: 0 0 3px rgba(34, 113, 177, 0.8); } .attachments-browser.hide-sidebar .attachments, .attachments-browser.hide-sidebar .uploader-inline { left: 0; margin-left: 0; } .attachments-browser .instructions { display: inline-block; margin-top: 16px; line-height: 1.38461538; font-size: 13px; color: #646970; } .attachments-browser .no-media { padding: 2em 2em 0 0; } .more-loaded .attachment:not(.found-media) { background: #dcdcde; } .load-more-wrapper { clear: both; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; padding: 1em 0; } .load-more-wrapper .load-more-count { min-width: 100%; margin: 0 0 1em; text-align: center; } .load-more-wrapper .load-more { margin: 0; } /* Needs high specificity. */ .media-frame .load-more-wrapper .load-more + .spinner { float: none; margin: 0 10px 0 -30px; } /* Reset spinner margin when the button is hidden to avoid horizontal scrollbar. */ .media-frame .load-more-wrapper .load-more.hidden + .spinner { margin: 0; } /* Force a new row within the flex container. */ .load-more-wrapper::after { content: ""; min-width: 100%; order: 1; } .load-more-wrapper .load-more-jump { margin: 0 12px 0 0; } .attachment.new-media { outline: 2px dotted #c3c4c7; } .load-more-wrapper { clear: both; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; padding: 1em 0; } .load-more-wrapper .load-more-count { min-width: 100%; margin: 0 0 1em; text-align: center; } .load-more-wrapper .load-more { margin: 0; } /* Needs high specificity. */ .media-frame .load-more-wrapper .load-more + .spinner { float: none; margin: 0 10px 0 -30px; } /* Reset spinner margin when the button is hidden to avoid horizontal scrollbar. */ .media-frame .load-more-wrapper .load-more.hidden + .spinner { margin: 0; } /* Force a new row within the flex container. */ .load-more-wrapper::after { content: ""; min-width: 100%; order: 1; } .load-more-wrapper .load-more-jump { margin: 0 12px 0 0; } /** * Progress Bar */ .media-progress-bar { position: relative; height: 10px; width: 70%; margin: 10px auto; border-radius: 10px; background: #dcdcde; background: rgba(0, 0, 0, 0.1); } .media-progress-bar div { height: 10px; min-width: 20px; width: 0; background: #2271b1; border-radius: 10px; transition: width 300ms; } .media-uploader-status .media-progress-bar { display: none; width: 100%; } .uploading.media-uploader-status .media-progress-bar { display: block; } .attachment-preview .media-progress-bar { position: absolute; top: 50%; right: 15%; width: 70%; margin: -5px 0 0; } .media-uploader-status { position: relative; margin: 0 auto; padding-bottom: 10px; max-width: 400px; } .uploader-inline .media-uploader-status h2 { display: none; } .media-uploader-status .upload-details { display: none; font-size: 12px; color: #646970; } .uploading.media-uploader-status .upload-details { display: block; } .media-uploader-status .upload-detail-separator { padding: 0 4px; } .media-uploader-status .upload-count { color: #3c434a; } .media-uploader-status .upload-dismiss-errors, .media-uploader-status .upload-errors { display: none; } .errors.media-uploader-status .upload-dismiss-errors, .errors.media-uploader-status .upload-errors { display: block; } .media-uploader-status .upload-dismiss-errors { transition: none; text-decoration: none; } .upload-errors .upload-error { padding: 12px; margin-bottom: 12px; background: #fff; border-right: 4px solid #d63638; box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1); } .uploader-inline .upload-errors .upload-error { padding: 12px 30px; background-color: #fcf0f1; box-shadow: none; } .upload-errors .upload-error-filename { font-weight: 600; } .upload-errors .upload-error-message { display: block; padding-top: 8px; word-wrap: break-word; } /** * Window and Editor uploaders used to display "drop zones" */ .uploader-window, .wp-editor-wrap .uploader-editor { top: 0; right: 0; left: 0; bottom: 0; text-align: center; display: none; } .uploader-window { position: fixed; z-index: 250000; opacity: 0; /* Only the inline uploader is animated with JS, the editor one isn't */ transition: opacity 250ms; } .wp-editor-wrap .uploader-editor { position: absolute; z-index: 99998; /* under the toolbar */ background: rgba(140, 143, 148, 0.9); } .uploader-window, .wp-editor-wrap .uploader-editor.droppable { background: rgba(10, 75, 120, 0.9); } .uploader-window-content, .wp-editor-wrap .uploader-editor-content { position: absolute; top: 10px; right: 10px; left: 10px; bottom: 10px; border: 1px dashed #fff; } /* uploader drop-zone title */ .uploader-window h1, /* Back-compat for pre-5.3 */ .uploader-window .uploader-editor-title, .wp-editor-wrap .uploader-editor .uploader-editor-title { position: absolute; top: 50%; right: 0; left: 0; transform: translateY(-50%); font-size: 3em; line-height: 1.3; font-weight: 600; color: #fff; margin: 0; padding: 0 10px; } .wp-editor-wrap .uploader-editor .uploader-editor-title { display: none; } .wp-editor-wrap .uploader-editor.droppable .uploader-editor-title { display: block; } .uploader-window .media-progress-bar { margin-top: 20px; max-width: 300px; background: transparent; border-color: #fff; display: none; } .uploader-window .media-progress-bar div { background: #fff; } .uploading .uploader-window .media-progress-bar { display: block; } .media-frame .uploader-inline { margin-bottom: 20px; padding: 0; text-align: center; } .uploader-inline-content { position: absolute; top: 30%; right: 0; left: 0; } .uploader-inline-content .upload-ui { margin: 2em 0; } .uploader-inline-content .post-upload-ui { margin-bottom: 2em; } .uploader-inline .has-upload-message .upload-ui { margin: 0 0 4em; } .uploader-inline h2 { font-size: 20px; line-height: 1.4; font-weight: 400; margin: 0; } .uploader-inline .has-upload-message .upload-instructions { font-size: 14px; color: #3c434a; font-weight: 400; } .uploader-inline .drop-instructions { display: none; } .supports-drag-drop .uploader-inline .drop-instructions { display: block; } .uploader-inline p { margin: 0.5em 0; } .uploader-inline .media-progress-bar { display: none; } .uploading.uploader-inline .media-progress-bar { display: block; } .uploader-inline .browser { display: inline-block !important; } /** * Selection */ .media-selection { position: absolute; top: 0; right: 0; left: 350px; height: 60px; padding: 0 16px 0 0; overflow: hidden; white-space: nowrap; } .media-selection .selection-info { display: inline-block; font-size: 12px; height: 60px; margin-left: 10px; vertical-align: top; } .media-selection.empty, .media-selection.editing { display: none; } .media-selection.one .edit-selection { display: none; } .media-selection .count { display: block; padding-top: 12px; font-size: 14px; line-height: 1.42857142; font-weight: 600; } .media-selection .button-link { float: right; padding: 1px 8px; margin: 1px -8px 1px 8px; line-height: 1.4; border-left: 1px solid #dcdcde; color: #2271b1; text-decoration: none; } .media-selection .button-link:hover, .media-selection .button-link:focus { color: #135e96; } .media-selection .button-link:last-child { border-left: 0; margin-left: 0; } .selection-info .clear-selection { color: #d63638; } .selection-info .clear-selection:hover, .selection-info .clear-selection:focus { color: #d63638; } .media-selection .selection-view { display: inline-block; vertical-align: top; } .media-selection .attachments { display: inline-block; height: 48px; margin: 6px; padding: 0; overflow: hidden; vertical-align: top; } .media-selection .attachment { width: 40px; padding: 0; margin: 4px; } .media-selection .attachment .thumbnail { top: 0; left: 0; bottom: 0; right: 0; } .media-selection .attachment .icon { width: 50%; } .media-selection .attachment-preview { box-shadow: none; background: none; } .wp-core-ui .media-selection .attachment:focus, .wp-core-ui .media-selection .selected.attachment:focus, .wp-core-ui .media-selection .attachment.details:focus { box-shadow: 0 0 0 1px #fff, 0 0 2px 3px #4f94d4; /* Only visible in Windows High Contrast mode */ outline: 2px solid transparent; } .wp-core-ui .media-selection .selected.attachment { box-shadow: none; } .wp-core-ui .media-selection .attachment.details { box-shadow: 0 0 0 1px #fff, 0 0 0 3px #2271b1; } .media-selection:after { content: ""; display: block; position: absolute; top: 0; left: 0; bottom: 0; width: 25px; background-image: linear-gradient(to right,#fff,rgba(255, 255, 255, 0)); } .media-selection .attachment .filename { display: none; } /** * Spinner */ .media-frame .spinner { background: url(../images/spinner.gif) no-repeat; background-size: 20px 20px; float: left; display: inline-block; visibility: hidden; opacity: 0.7; filter: alpha(opacity=70); width: 20px; height: 20px; margin: 0; vertical-align: middle; } .media-frame.mode-grid .spinner { margin: 0; float: none; vertical-align: middle; } .media-modal .media-toolbar .spinner { float: none; vertical-align: bottom; margin: 0 5px 5px 0; } .media-frame .instructions + .spinner.is-active { vertical-align: middle; } .media-frame .spinner.is-active { visibility: visible; } /** * Attachment Details */ .attachment-details { position: relative; overflow: auto; } .attachment-details .settings-save-status { float: left; text-transform: none; font-weight: 400; } .attachment-details .settings-save-status .spinner { float: none; margin-right: 5px; } .attachment-details .settings-save-status .saved { display: none; } .attachment-details.save-waiting .settings-save-status .spinner { visibility: visible; } .attachment-details.save-complete .settings-save-status .saved { display: inline-block; } .attachment-info { overflow: hidden; min-height: 60px; margin-bottom: 16px; line-height: 1.5; color: #646970; border-bottom: 1px solid #dcdcde; padding-bottom: 11px; } .attachment-info .wp-media-wrapper { margin-bottom: 8px; } .attachment-info .wp-media-wrapper.wp-audio { margin-top: 13px; } .attachment-info .filename { font-weight: 600; color: #3c434a; word-wrap: break-word; } .attachment-info .thumbnail { position: relative; float: right; max-width: 120px; max-height: 120px; margin-top: 5px; margin-left: 10px; margin-bottom: 5px; } .uploading .attachment-info .thumbnail { width: 120px; height: 80px; box-shadow: inset 0 0 15px rgba(0, 0, 0, 0.1); } .uploading .attachment-info .media-progress-bar { margin-top: 35px; } .attachment-info .thumbnail-image:after { content: ""; display: block; position: absolute; top: 0; right: 0; left: 0; bottom: 0; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.15); overflow: hidden; } .attachment-info .thumbnail img { display: block; max-width: 120px; max-height: 120px; margin: 0 auto; } .attachment-info .details { float: right; font-size: 12px; max-width: 100%; } .attachment-info .edit-attachment, .attachment-info .delete-attachment, .attachment-info .trash-attachment, .attachment-info .untrash-attachment { display: block; text-decoration: none; white-space: nowrap; } .attachment-details.needs-refresh .attachment-info .edit-attachment { display: none; } .attachment-info .edit-attachment { display: block; } .media-modal .delete-attachment, .media-modal .trash-attachment, .media-modal .untrash-attachment { display: inline; padding: 0; color: #d63638; } .media-modal .delete-attachment:hover, .media-modal .delete-attachment:focus, .media-modal .trash-attachment:hover, .media-modal .trash-attachment:focus, .media-modal .untrash-attachment:hover, .media-modal .untrash-attachment:focus { color: #d63638; } /** * Attachment Display Settings */ .attachment-display-settings { width: 100%; float: right; overflow: hidden; } .collection-settings { overflow: hidden; } .collection-settings .setting input[type="checkbox"] { float: right; margin-left: 8px; } .collection-settings .setting span, /* Back-compat for pre-5.3 */ .collection-settings .setting .name { min-width: inherit; } /** * Image Editor */ .media-modal .imgedit-wrap { position: static; } .media-modal .imgedit-wrap .imgedit-panel-content { padding: 16px 16px 0; position: absolute; top: 0; left: 282px; bottom: 0; right: 0; overflow: auto; } /* * Implementation of bottom padding in overflow content differs across browsers. * We need a different method. See https://github.com/w3c/csswg-drafts/issues/129 */ .media-modal .imgedit-wrap .imgedit-submit { margin-bottom: 16px; } .media-modal .imgedit-wrap .imgedit-settings { background: #f6f7f7; border-right: 1px solid #dcdcde; padding: 20px 16px 0; position: absolute; top: 0; left: 0; bottom: 0; width: 250px; overflow: auto; } /* * Implementation of bottom padding in overflow content differs across browsers. * We need a different method. See https://github.com/w3c/csswg-drafts/issues/129 */ .media-modal .imgedit-wrap .imgedit-save-target { margin: 8px 0 24px; } .media-modal .imgedit-group { background: none; border: none; border-bottom: 1px solid #dcdcde; box-shadow: none; margin: 0; margin-bottom: 16px; padding: 0; padding-bottom: 16px; position: relative; /* RTL fix, #WP29352 */ } .media-modal .imgedit-group:last-of-type { border: none; margin: 0; padding: 0; } .media-modal .imgedit-group-top { margin: 0; } .media-modal .imgedit-group-top h2, .media-modal .imgedit-group-top h2 .button-link { display: inline-block; text-transform: uppercase; font-size: 12px; color: #646970; margin: 0; margin-top: 3px; } .media-modal .imgedit-group-top h2 a, .media-modal .imgedit-group-top h2 .button-link { text-decoration: none; color: #646970; } /* higher specificity than media.css */ .wp-core-ui.media-modal .image-editor .imgedit-help-toggle, .wp-core-ui.media-modal .image-editor .imgedit-help-toggle:hover, .wp-core-ui.media-modal .image-editor .imgedit-help-toggle:active { border: 1px solid transparent; margin: 0; padding: 0; background: transparent; color: #2271b1; font-size: 20px; line-height: 1; cursor: pointer; box-sizing: content-box; box-shadow: none; } .wp-core-ui.media-modal .image-editor .imgedit-help-toggle:focus { color: #2271b1; border-color: #4f94d4; box-shadow: 0 0 3px rgba(34, 113, 177, 0.8); /* Only visible in Windows High Contrast mode */ outline: 2px solid transparent; } .wp-core-ui.media-modal .imgedit-group-top .dashicons-arrow-down.imgedit-help-toggle { margin-top: -3px; } .wp-core-ui.media-modal .image-editor h3 .imgedit-help-toggle { margin-top: -2px; } .media-modal .imgedit-help-toggled span.dashicons:before { content: "\f142"; } .media-modal .imgedit-thumbnail-preview { margin: 10px 0 0 8px; } .imgedit-thumbnail-preview-caption { display: block; } .media-modal .imgedit-wrap div.updated, /* Back-compat for pre-5.5 */ .media-modal .imgedit-wrap .notice { margin: 0; margin-bottom: 16px; } /** * Embed from URL and Image Details */ .embed-url { display: block; position: relative; padding: 16px; margin: 0; z-index: 250; background: #fff; font-size: 18px; } .media-frame .embed-url input { font-size: 18px; line-height: 1.22222222; /* 22px */ padding: 12px 14px 12px 40px; /* right padding to leave room for the spinner */ width: 100%; min-width: 200px; box-shadow: inset -2px 2px 4px -2px rgba(0, 0, 0, 0.1); } .media-frame .embed-url input::-ms-clear { display: none; /* the "x" in IE 11 conflicts with the spinner */ } .media-frame .embed-url .spinner { position: absolute; top: 32px; left: 26px; } .media-frame .embed-loading .embed-url .spinner { visibility: visible; } .embed-link-settings, .embed-media-settings { position: absolute; top: 82px; right: 0; left: 0; bottom: 0; padding: 0 16px; overflow: auto; } .media-embed .embed-link-settings .link-text { margin-top: 0; } /* * Implementation of bottom padding in overflow content differs across browsers. * We need a different method. See https://github.com/w3c/csswg-drafts/issues/129 */ .embed-link-settings::after, .embed-media-settings::after { content: ""; display: flex; clear: both; height: 24px; } .media-embed .embed-link-settings { /* avoid Firefox to give focus to the embed preview container parent */ overflow: visible; } .embed-preview img, .embed-preview iframe, .embed-preview embed, .mejs-container video { max-width: 100%; vertical-align: middle; } .embed-preview a { display: inline-block; } .embed-preview img { display: block; height: auto; } .mejs-container:focus { outline: 1px solid #4f94d4; box-shadow: 0 0 2px 1px rgba(79, 148, 212, 0.8); } .image-details .media-modal { right: 140px; left: 140px; } .image-details .media-frame-title, .image-details .media-frame-content, .image-details .media-frame-router { right: 0; } .image-details .embed-media-settings { top: 0; overflow: visible; padding: 0; } .image-details .embed-media-settings::after { content: none; } .image-details .embed-media-settings, .image-details .embed-media-settings div { box-sizing: border-box; } .image-details .column-settings { background: #f6f7f7; border-left: 1px solid #dcdcde; min-height: 100%; width: 55%; position: absolute; top: 0; right: 0; } .image-details .column-settings h2 { margin: 20px; padding-top: 20px; border-top: 1px solid #dcdcde; color: #1d2327; } .image-details .column-image { width: 45%; position: absolute; right: 55%; top: 0; } .image-details .image { margin: 20px; } .image-details .image img { max-width: 100%; max-height: 500px; } .image-details .advanced-toggle { padding: 0; color: #646970; text-transform: uppercase; text-decoration: none; } .image-details .advanced-toggle:hover, .image-details .advanced-toggle:active { color: #646970; } .image-details .advanced-toggle:after { font: normal 20px/1 dashicons; speak: never; vertical-align: top; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; content: "\f140"; display: inline-block; margin-top: -2px; } .image-details .advanced-visible .advanced-toggle:after { content: "\f142"; } .image-details .custom-size label, /* Back-compat for pre-5.3 */ .image-details .custom-size .custom-size-setting { display: block; float: right; } .image-details .custom-size .custom-size-setting label { float: none; } .image-details .custom-size input { width: 5em; } .image-details .custom-size .sep { float: right; margin: 26px 6px 0; } .image-details .custom-size .description { margin-right: 0; } .media-embed .thumbnail { max-width: 100%; max-height: 200px; position: relative; float: right; } .media-embed .thumbnail img { max-height: 200px; display: block; } .media-embed .thumbnail:after { content: ""; display: block; position: absolute; top: 0; right: 0; left: 0; bottom: 0; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1); overflow: hidden; } .media-embed .setting, .media-embed .setting-group { width: 100%; margin: 10px 0; float: right; display: block; clear: both; } .media-embed .setting-group .setting:not(.checkbox-setting) { margin: 0; } .media-embed .setting.has-description { margin-bottom: 5px; } .media-embed .description { clear: both; font-style: normal; } .media-embed .content-track + .description { line-height: 1.4; /* The !important needs to override a high specificity selector from wp-medialement.css */ max-width: none !important; } .media-embed .remove-track { margin-bottom: 10px; } .image-details .embed-media-settings .setting, .image-details .embed-media-settings .setting-group { float: none; width: auto; } .image-details .actions { margin: 10px 0; } .image-details .hidden { display: none; } .media-embed .setting input[type="text"], .media-embed .setting textarea, .media-embed fieldset { display: block; width: 100%; max-width: 400px; } .image-details .embed-media-settings .setting input[type="text"], .image-details .embed-media-settings .setting textarea { max-width: inherit; width: 70%; } .image-details .embed-media-settings .setting input.link-to-custom, .image-details .embed-media-settings .link-target, .image-details .embed-media-settings .custom-size, .image-details .embed-media-settings .setting-group, .image-details .description { margin-right: 27%; width: 70%; } .image-details .description { font-style: normal; margin-top: 0; } .image-details .embed-media-settings .link-target { margin-top: 16px; } .image-details .checkbox-label, .audio-details .checkbox-label, .video-details .checkbox-label { vertical-align: baseline; } .media-embed .setting input.hidden, .media-embed .setting textarea.hidden { display: none; } .media-embed .setting span, /* Back-compat for pre-5.3 */ .media-embed .setting .name, .media-embed .setting-group .name { display: inline-block; font-size: 13px; line-height: 1.84615384; color: #646970; } .media-embed .setting span { display: block; /* Back-compat for pre-5.3 */ width: 200px; /* Back-compat for pre-5.3 */ } .image-details .embed-media-settings .setting span, /* Back-compat for pre-5.3 */ .image-details .embed-media-settings .setting .name { float: right; width: 25%; text-align: left; margin: 8px 1% 0; line-height: 1.1; } /* Buttons group in IE 11. */ .media-frame .setting-group .button-group, .image-details .embed-media-settings .setting .button-group { width: auto; } .media-embed-sidebar { position: absolute; top: 0; right: 440px; } .advanced-section, .link-settings { margin-top: 10px; } /** * Button groups fix: can be removed together with the Back-compat for pre-5.3 */ .media-frame .setting .button-group { display: flex; margin: 0 !important; max-width: none !important; } /** * Localization */ .rtl .media-modal, .rtl .media-frame, .rtl .media-frame .search, .rtl .media-frame input[type="text"], .rtl .media-frame input[type="password"], .rtl .media-frame input[type="number"], .rtl .media-frame input[type="search"], .rtl .media-frame input[type="email"], .rtl .media-frame input[type="url"], .rtl .media-frame input[type="tel"], .rtl .media-frame textarea, .rtl .media-frame select { font-family: Tahoma, sans-serif; } :lang(he-il) .rtl .media-modal, :lang(he-il) .rtl .media-frame, :lang(he-il) .rtl .media-frame .search, :lang(he-il) .rtl .media-frame input[type="text"], :lang(he-il) .rtl .media-frame input[type="password"], :lang(he-il) .rtl .media-frame input[type="number"], :lang(he-il) .rtl .media-frame input[type="search"], :lang(he-il) .rtl .media-frame input[type="email"], :lang(he-il) .rtl .media-frame input[type="url"], :lang(he-il) .rtl .media-frame textarea, :lang(he-il) .rtl .media-frame select { font-family: Arial, sans-serif; } /** * Responsive layout */ @media only screen and (max-width: 900px) { .media-modal .media-frame-title { height: 40px; } .media-modal .media-frame-title h1 { line-height: 2.22222222; font-size: 18px; } .media-modal-close { width: 42px; height: 42px; } /* Drop-down menu */ .media-frame .media-frame-title { position: static; padding: 0 44px; text-align: center; } .media-frame:not(.hide-menu) .media-frame-router, .media-frame:not(.hide-menu) .media-frame-content, .media-frame:not(.hide-menu) .media-frame-toolbar { right: 0; } .media-frame:not(.hide-menu) .media-frame-router { /* 40 title + (40 - 6) menu toggle button + 6 spacing */ top: 80px; } .media-frame:not(.hide-menu) .media-frame-content { /* 80 + room for the tabs */ top: 114px; } .media-frame.hide-router .media-frame-content { top: 80px; } .media-frame:not(.hide-menu) .media-frame-menu { position: static; width: 0; } .media-frame:not(.hide-menu) .media-menu { display: none; width: auto; max-width: 80%; overflow: auto; z-index: 2000; top: 75px; right: 50%; transform: translateX(50%); left: auto; bottom: auto; padding: 5px 0; border: 1px solid #c3c4c7; } .media-frame:not(.hide-menu) .media-menu.visible { display: block; } .media-frame:not(.hide-menu) .media-menu > a { padding: 12px 16px; font-size: 16px; } .media-frame:not(.hide-menu) .media-menu .separator { margin: 5px 10px; } /* Visually hide the menu heading keeping it available to assistive technologies. */ .media-frame-menu-heading { clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; overflow: hidden; padding: 0; width: 1px; word-wrap: normal !important; } /* Reveal the menu toggle button. */ .wp-core-ui .media-frame:not(.hide-menu) .button.media-frame-menu-toggle { display: inline-flex; align-items: center; position: absolute; right: 50%; transform: translateX(50%); margin: -6px 0 0; padding: 0 12px 0 2px; font-size: 0.875rem; font-weight: 600; text-decoration: none; background: transparent; /* Only for IE11 to vertically align text within the inline-flex button */ height: 0.1%; /* Modern browsers */ min-height: 40px; } .wp-core-ui .button.media-frame-menu-toggle:hover, .wp-core-ui .button.media-frame-menu-toggle:active { background: transparent; transform: none; } .wp-core-ui .button.media-frame-menu-toggle:focus { /* Only visible in Windows High Contrast mode */ outline: 1px solid transparent; } /* End drop-down menu */ .media-sidebar { width: 230px; } .attachments-browser .attachments, .attachments-browser .uploader-inline, .attachments-browser .media-toolbar, .attachments-browser .attachments-wrapper, .attachments-browser.has-load-more .attachments-wrapper { left: 262px; } .media-sidebar .setting, .attachment-details .setting { margin: 6px 0; } .media-sidebar .setting input, .media-sidebar .setting textarea, .media-sidebar .setting .name, .attachment-details .setting input, .attachment-details .setting textarea, .attachment-details .setting .name, .compat-item label span { float: none; display: inline-block; } .media-sidebar .setting span, /* Back-compat for pre-5.3 */ .attachment-details .setting span, /* Back-compat for pre-5.3 */ .media-sidebar .checkbox-label-inline { float: none; } .media-sidebar .setting .select-label-inline { display: inline; } .media-sidebar .setting .name, .media-sidebar .checkbox-label-inline, .attachment-details .setting .name, .compat-item label span { text-align: inherit; min-height: 16px; margin: 0; padding: 8px 2px 2px; } /* Needs high specificity. */ .media-sidebar .setting .copy-to-clipboard-container, .attachment-details .attachment-info .copy-to-clipboard-container { margin-right: 0; padding-top: 0; } .media-sidebar .setting .copy-attachment-url, .attachment-details .attachment-info .copy-attachment-url { margin: 0 1px; } .media-sidebar .setting .value, .attachment-details .setting .value { float: none; width: auto; } .media-sidebar .setting input[type="text"], .media-sidebar .setting input[type="password"], .media-sidebar .setting input[type="email"], .media-sidebar .setting input[type="number"], .media-sidebar .setting input[type="search"], .media-sidebar .setting input[type="tel"], .media-sidebar .setting input[type="url"], .media-sidebar .setting textarea, .media-sidebar .setting select, .attachment-details .setting input[type="text"], .attachment-details .setting input[type="password"], .attachment-details .setting input[type="email"], .attachment-details .setting input[type="number"], .attachment-details .setting input[type="search"], .attachment-details .setting input[type="tel"], .attachment-details .setting input[type="url"], .attachment-details .setting textarea, .attachment-details .setting select, .attachment-details .setting + .description { float: none; width: 98%; max-width: none; height: auto; } .media-frame .media-toolbar input[type="search"] { line-height: 2.25; /* 36px */ } .media-sidebar .setting select.columns, .attachment-details .setting select.columns { width: auto; } .media-frame input, .media-frame textarea, .media-frame .search { padding: 3px 6px; } .wp-admin .media-frame select { min-height: 40px; font-size: 16px; line-height: 1.625; padding: 5px 8px 5px 24px; } .image-details .column-image { width: 30%; right: 70%; } .image-details .column-settings { width: 70%; } .image-details .media-modal { right: 30px; left: 30px; } .image-details .embed-media-settings .setting, .image-details .embed-media-settings .setting-group { margin: 20px; } .image-details .embed-media-settings .setting span, /* Back-compat for pre-5.3 */ .image-details .embed-media-settings .setting .name { float: none; text-align: right; width: 100%; margin-bottom: 4px; margin-right: 0; } .media-modal .legend-inline { position: static; transform: none; margin-right: 0; margin-bottom: 6px; } .image-details .embed-media-settings .setting-group .setting { margin-bottom: 0; } .image-details .embed-media-settings .setting input.link-to-custom, .image-details .embed-media-settings .setting input[type="text"], .image-details .embed-media-settings .setting textarea { width: 100%; margin-right: 0; } .image-details .embed-media-settings .setting.has-description { margin-bottom: 5px; } .image-details .description { width: auto; margin: 0 20px; } .image-details .embed-media-settings .custom-size { margin-right: 20px; } .collection-settings .setting input[type="checkbox"] { float: none; margin-top: 0; } .media-selection { min-width: 120px; } .media-selection:after { background: none; } .media-selection .attachments { display: none; } .media-modal .attachments-browser .media-toolbar .search { max-width: 100%; height: auto; float: left; } .media-modal .attachments-browser .media-toolbar .attachment-filters { height: auto; } /* Text inputs need to be 16px, or they force zooming on iOS */ .media-frame input[type="text"], .media-frame input[type="password"], .media-frame input[type="number"], .media-frame input[type="search"], .media-frame input[type="email"], .media-frame input[type="url"], .media-frame textarea, .media-frame select { font-size: 16px; } .media-frame .media-toolbar input[type="search"] { line-height: 2.3755; /* 38px */ } .media-modal .media-toolbar .spinner { margin-bottom: 10px; } } @media screen and (max-width: 782px) { .attachments-browser .media-toolbar { height: 82px; } .attachments-browser .attachments, .attachments-browser .uploader-inline { top: 82px; } .media-frame-toolbar .media-toolbar { bottom: -54px; } .mode-grid .attachments-browser .media-toolbar-primary { display: block; } .media-sidebar .copy-to-clipboard-container .success, .attachment-details .copy-to-clipboard-container .success { font-size: 14px; line-height: 2.71428571; } } /* Responsive on portrait and landscape */ @media only screen and (max-width: 640px), screen and (max-height: 400px) { /* Full-bleed modal */ .media-modal, .image-details .media-modal { position: fixed; top: 0; right: 0; left: 0; bottom: 0; } .media-modal-backdrop { position: fixed; } .media-sidebar { z-index: 1900; max-width: 70%; bottom: 120%; box-sizing: border-box; padding-bottom: 0; } .media-sidebar.visible { bottom: 0; } .attachments-browser .attachments, .attachments-browser .uploader-inline, .attachments-browser .media-toolbar, .media-frame-content .attachments-browser .attachments-wrapper { left: 0; } .attachments-browser .attachments-wrapper { padding-top: 12px; } .image-details .media-frame-title { display: block; top: 0; font-size: 14px; } .image-details .column-image, .image-details .column-settings { width: 100%; position: relative; right: 0; } .image-details .column-settings { padding: 4px 0; } /* Media tabs on the top */ .media-frame-content .media-toolbar .instructions { display: none; } /* Change margin direction on load more button in responsive views. */ .load-more-wrapper .load-more-jump { margin: 12px 0 0; } } @media only screen and (min-width: 901px) and (max-height: 400px) { .media-menu, .media-frame:not(.hide-menu) .media-menu { top: 0; padding-top: 44px; } /* Change margin direction on load more button in responsive views. */ .load-more-wrapper .load-more-jump { margin: 12px 0 0; } } @media only screen and (max-width: 480px) { .wp-core-ui.wp-customizer .media-button { margin-top: 13px; } } /** * HiDPI Displays */ @media print, (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) { .wp-core-ui .media-modal-icon { background-image: url(../images/uploader-icons-2x.png); background-size: 134px 15px; } .media-frame .spinner { background-image: url(../images/spinner-2x.gif); } } .media-frame-content[data-columns="1"] .attachment { width: 100%; } .media-frame-content[data-columns="2"] .attachment { width: 50%; } .media-frame-content[data-columns="3"] .attachment { width: 33.33%; } .media-frame-content[data-columns="4"] .attachment { width: 25%; } .media-frame-content[data-columns="5"] .attachment { width: 20%; } .media-frame-content[data-columns="6"] .attachment { width: 16.66%; } .media-frame-content[data-columns="7"] .attachment { width: 14.28%; } .media-frame-content[data-columns="8"] .attachment { width: 12.5%; } .media-frame-content[data-columns="9"] .attachment { width: 11.11%; } .media-frame-content[data-columns="10"] .attachment { width: 10%; } .media-frame-content[data-columns="11"] .attachment { width: 9.09%; } .media-frame-content[data-columns="12"] .attachment { width: 8.33%; } PKj l\FNNcss/admin-bar-rtl.min.cssnu[/*! This file is auto-generated */ html{--wp-admin--admin-bar--height:32px;scroll-padding-top:var(--wp-admin--admin-bar--height)}#wpadminbar *{height:auto;width:auto;margin:0;padding:0;position:static;text-shadow:none;text-transform:none;letter-spacing:normal;font-size:13px;font-weight:400;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;line-height:2.46153846;border-radius:0;box-sizing:content-box;transition:none;-webkit-font-smoothing:subpixel-antialiased;-moz-osx-font-smoothing:auto}.rtl #wpadminbar *{font-family:Tahoma,sans-serif}html:lang(he-il) .rtl #wpadminbar *{font-family:Arial,sans-serif}#wpadminbar .ab-empty-item{cursor:default}#wpadminbar .ab-empty-item,#wpadminbar a.ab-item,#wpadminbar>#wp-toolbar span.ab-label,#wpadminbar>#wp-toolbar span.noticon{color:#f0f0f1}#wpadminbar #wp-admin-bar-my-sites a.ab-item,#wpadminbar #wp-admin-bar-site-name a.ab-item{white-space:nowrap}#wpadminbar ul li:after,#wpadminbar ul li:before{content:normal}#wpadminbar a,#wpadminbar a img,#wpadminbar a img:hover,#wpadminbar a:hover{border:none;text-decoration:none;background:0 0;box-shadow:none}#wpadminbar a:active,#wpadminbar a:focus,#wpadminbar div,#wpadminbar input[type=email],#wpadminbar input[type=number],#wpadminbar input[type=password],#wpadminbar input[type=search],#wpadminbar input[type=text],#wpadminbar input[type=url],#wpadminbar select,#wpadminbar textarea{box-shadow:none}#wpadminbar a:focus{outline-offset:-1px}#wpadminbar{direction:rtl;color:#c3c4c7;font-size:13px;font-weight:400;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;line-height:2.46153846;height:32px;position:fixed;top:0;right:0;width:100%;min-width:600px;z-index:99999;background:#1d2327}#wpadminbar .ab-sub-wrapper,#wpadminbar ul,#wpadminbar ul li{background:0 0;clear:none;list-style:none;margin:0;padding:0;position:relative;text-indent:0;z-index:99999}#wpadminbar ul#wp-admin-bar-root-default>li{margin-left:0}#wpadminbar .quicklinks ul{text-align:right}#wpadminbar li{float:right}#wpadminbar .ab-empty-item{outline:0}#wpadminbar .quicklinks .ab-top-secondary>li{float:left}#wpadminbar .quicklinks .ab-empty-item,#wpadminbar .quicklinks a,#wpadminbar .shortlink-input{height:32px;display:block;padding:0 10px;margin:0}#wpadminbar .quicklinks>ul>li>a{padding:0 7px 0 8px}#wpadminbar .menupop .ab-sub-wrapper,#wpadminbar .shortlink-input{margin:0;padding:0;box-shadow:0 3px 5px rgba(0,0,0,.2);background:#2c3338;display:none;position:absolute;float:none}#wpadminbar .ab-top-menu>.menupop>.ab-sub-wrapper{min-width:100%}#wpadminbar .ab-top-secondary .menupop .ab-sub-wrapper{left:0;right:auto}#wpadminbar .ab-submenu{padding:6px 0}#wpadminbar .selected .shortlink-input{display:block}#wpadminbar .quicklinks .menupop ul li{float:none}#wpadminbar .quicklinks .menupop ul li a strong{font-weight:600}#wpadminbar .quicklinks .menupop ul li .ab-item,#wpadminbar .quicklinks .menupop ul li a strong,#wpadminbar .quicklinks .menupop.hover ul li .ab-item,#wpadminbar .shortlink-input,#wpadminbar.nojs .quicklinks .menupop:hover ul li .ab-item{line-height:2;height:26px;white-space:nowrap;min-width:140px}#wpadminbar .shortlink-input{width:200px}#wpadminbar li.hover>.ab-sub-wrapper,#wpadminbar.nojs li:hover>.ab-sub-wrapper{display:block}#wpadminbar .menupop li.hover>.ab-sub-wrapper,#wpadminbar .menupop li:hover>.ab-sub-wrapper{margin-right:100%;margin-top:-32px}#wpadminbar .ab-top-secondary .menupop li.hover>.ab-sub-wrapper,#wpadminbar .ab-top-secondary .menupop li:hover>.ab-sub-wrapper{margin-right:0;right:inherit;left:100%}#wpadminbar .ab-top-menu>li.hover>.ab-item,#wpadminbar.nojq .quicklinks .ab-top-menu>li>.ab-item:focus,#wpadminbar:not(.mobile) .ab-top-menu>li:hover>.ab-item,#wpadminbar:not(.mobile) .ab-top-menu>li>.ab-item:focus{background:#2c3338;color:#72aee6}#wpadminbar:not(.mobile)>#wp-toolbar a:focus span.ab-label,#wpadminbar:not(.mobile)>#wp-toolbar li:hover span.ab-label,#wpadminbar>#wp-toolbar li.hover span.ab-label{color:#72aee6}#wpadminbar .ab-icon,#wpadminbar .ab-item:before,#wpadminbar>#wp-toolbar>#wp-admin-bar-root-default .ab-icon,.wp-admin-bar-arrow{position:relative;float:right;font:normal 20px/1 dashicons;speak:never;padding:4px 0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:none!important;margin-left:6px}#wpadminbar #adminbarsearch:before,#wpadminbar .ab-icon:before,#wpadminbar .ab-item:before{color:#a7aaad;color:rgba(240,246,252,.6)}#wpadminbar #adminbarsearch:before,#wpadminbar .ab-icon:before,#wpadminbar .ab-item:before{position:relative;transition:color .1s ease-in-out}#wpadminbar .ab-label{display:inline-block;height:32px}#wpadminbar .ab-submenu .ab-item{color:#c3c4c7;color:rgba(240,246,252,.7)}#wpadminbar .quicklinks .menupop ul li a,#wpadminbar .quicklinks .menupop ul li a strong,#wpadminbar .quicklinks .menupop.hover ul li a,#wpadminbar.nojs .quicklinks .menupop:hover ul li a{color:#c3c4c7;color:rgba(240,246,252,.7)}#wpadminbar .quicklinks .ab-sub-wrapper .menupop.hover>a,#wpadminbar .quicklinks .menupop ul li a:focus,#wpadminbar .quicklinks .menupop ul li a:focus strong,#wpadminbar .quicklinks .menupop ul li a:hover,#wpadminbar .quicklinks .menupop ul li a:hover strong,#wpadminbar .quicklinks .menupop.hover ul li a:focus,#wpadminbar .quicklinks .menupop.hover ul li a:hover,#wpadminbar .quicklinks .menupop.hover ul li div[tabindex]:focus,#wpadminbar .quicklinks .menupop.hover ul li div[tabindex]:hover,#wpadminbar li #adminbarsearch.adminbar-focused:before,#wpadminbar li .ab-item:focus .ab-icon:before,#wpadminbar li .ab-item:focus:before,#wpadminbar li a:focus .ab-icon:before,#wpadminbar li.hover .ab-icon:before,#wpadminbar li.hover .ab-item:before,#wpadminbar li:hover #adminbarsearch:before,#wpadminbar li:hover .ab-icon:before,#wpadminbar li:hover .ab-item:before,#wpadminbar.nojs .quicklinks .menupop:hover ul li a:focus,#wpadminbar.nojs .quicklinks .menupop:hover ul li a:hover{color:#72aee6}#wpadminbar.mobile .quicklinks .ab-icon:before,#wpadminbar.mobile .quicklinks .ab-item:before{color:#c3c4c7}#wpadminbar.mobile .quicklinks .hover .ab-icon:before,#wpadminbar.mobile .quicklinks .hover .ab-item:before{color:#72aee6}#wpadminbar .ab-top-secondary .menupop .menupop>.ab-item:before,#wpadminbar .menupop .menupop>.ab-item .wp-admin-bar-arrow:before{position:absolute;font:normal 17px/1 dashicons;speak:never;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#wpadminbar .menupop .menupop>.ab-item{display:block;padding-left:2em}#wpadminbar .menupop .menupop>.ab-item .wp-admin-bar-arrow:before{top:1px;left:10px;padding:4px 0;content:"\f141";color:inherit}#wpadminbar .ab-top-secondary .menupop .menupop>.ab-item{padding-right:2em;padding-left:1em}#wpadminbar .ab-top-secondary .menupop .menupop>.ab-item .wp-admin-bar-arrow:before{top:1px;right:6px;content:"\f139"}#wpadminbar .quicklinks .menupop ul.ab-sub-secondary{display:block;position:relative;left:auto;margin:0;box-shadow:none}#wpadminbar .quicklinks .menupop ul.ab-sub-secondary,#wpadminbar .quicklinks .menupop ul.ab-sub-secondary .ab-submenu{background:#3c434a}#wpadminbar .quicklinks .menupop .ab-sub-secondary>li .ab-item:focus a,#wpadminbar .quicklinks .menupop .ab-sub-secondary>li>a:hover{color:#72aee6}#wpadminbar .quicklinks a span#ab-updates{background:#f0f0f1;color:#2c3338;display:inline;padding:2px 5px;font-size:10px;font-weight:600;border-radius:10px}#wpadminbar .quicklinks a:hover span#ab-updates{background:#fff;color:#000}#wpadminbar .ab-top-secondary{float:left}#wpadminbar ul li:last-child,#wpadminbar ul li:last-child .ab-item{box-shadow:none}#wpadminbar #wp-admin-bar-recovery-mode{color:#fff;background-color:#d63638}#wpadminbar .ab-top-menu>#wp-admin-bar-recovery-mode.hover>.ab-item,#wpadminbar.nojq .quicklinks .ab-top-menu>#wp-admin-bar-recovery-mode>.ab-item:focus,#wpadminbar:not(.mobile) .ab-top-menu>#wp-admin-bar-recovery-mode:hover>.ab-item,#wpadminbar:not(.mobile) .ab-top-menu>#wp-admin-bar-recovery-mode>.ab-item:focus{color:#fff;background-color:#d63638}#wp-admin-bar-my-account>ul{min-width:198px}#wp-admin-bar-my-account:not(.with-avatar)>.ab-item{display:inline-block}#wp-admin-bar-my-account>.ab-item:before{content:"\f110";top:2px;float:left;margin-right:6px;margin-left:0}#wp-admin-bar-my-account.with-avatar>.ab-item:before{display:none;content:none}#wp-admin-bar-my-account.with-avatar>ul{min-width:270px}#wpadminbar #wp-admin-bar-user-actions>li{margin-right:16px;margin-left:16px}#wpadminbar #wp-admin-bar-user-actions.ab-submenu{padding:6px 0 12px}#wpadminbar #wp-admin-bar-my-account.with-avatar #wp-admin-bar-user-actions>li{margin-right:88px}#wpadminbar #wp-admin-bar-user-info{margin-top:6px;margin-bottom:15px;height:auto;background:0 0}#wp-admin-bar-user-info .avatar{position:absolute;right:-72px;top:4px;width:64px;height:64px}#wpadminbar #wp-admin-bar-user-info a{background:0 0;height:auto}#wpadminbar #wp-admin-bar-user-info span{background:0 0;padding:0;height:18px}#wpadminbar #wp-admin-bar-user-info .display-name,#wpadminbar #wp-admin-bar-user-info .username{display:block}#wpadminbar #wp-admin-bar-user-info .username{color:#a7aaad;font-size:11px}#wpadminbar #wp-admin-bar-my-account.with-avatar>.ab-empty-item img,#wpadminbar #wp-admin-bar-my-account.with-avatar>a img{width:auto;height:16px;padding:0;border:1px solid #8c8f94;background:#f0f0f1;line-height:1.84615384;vertical-align:middle;margin:-4px 6px 0 0;float:none;display:inline}#wpadminbar #wp-admin-bar-wp-logo>.ab-item .ab-icon{width:15px;height:20px;margin-left:0;padding:6px 0 5px}#wpadminbar #wp-admin-bar-wp-logo>.ab-item{padding:0 7px}#wpadminbar #wp-admin-bar-wp-logo>.ab-item .ab-icon:before{content:"\f120";top:2px}#wpadminbar .quicklinks li .blavatar{display:inline-block;vertical-align:middle;font:normal 16px/1 dashicons!important;speak:never;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#f0f0f1}#wpadminbar .quicklinks .ab-sub-wrapper .menupop.hover>a .blavatar,#wpadminbar .quicklinks li a:focus .blavatar,#wpadminbar .quicklinks li a:hover .blavatar{color:#72aee6}#wpadminbar .quicklinks li div.blavatar:before,#wpadminbar .quicklinks li img.blavatar{height:16px;width:16px;margin:0 -2px 2px 8px}#wpadminbar .quicklinks li div.blavatar:before{content:"\f120";display:inline-block}#wpadminbar #wp-admin-bar-appearance{margin-top:-12px}#wpadminbar #wp-admin-bar-my-sites>.ab-item:before,#wpadminbar #wp-admin-bar-site-name>.ab-item:before{content:"\f541";top:2px}#wpadminbar #wp-admin-bar-site-editor>.ab-item:before{content:"\f100";top:2px}#wpadminbar #wp-admin-bar-customize>.ab-item:before{content:"\f540";top:2px}#wpadminbar #wp-admin-bar-edit>.ab-item:before{content:"\f464";top:2px}#wpadminbar #wp-admin-bar-site-name>.ab-item:before{content:"\f226"}.wp-admin #wpadminbar #wp-admin-bar-site-name>.ab-item:before{content:"\f102"}#wpadminbar #wp-admin-bar-comments .ab-icon{margin-left:6px}#wpadminbar #wp-admin-bar-comments .ab-icon:before{content:"\f101";top:3px}#wpadminbar #wp-admin-bar-comments .count-0{opacity:.5}#wpadminbar #wp-admin-bar-new-content .ab-icon:before{content:"\f132";top:4px}#wpadminbar #wp-admin-bar-updates .ab-icon:before{content:"\f463";top:2px}#wpadminbar #wp-admin-bar-updates.spin .ab-icon:before{display:inline-block;animation:rotation 2s infinite linear}@media (prefers-reduced-motion:reduce){#wpadminbar #wp-admin-bar-updates.spin .ab-icon:before{animation:none}}#wpadminbar #wp-admin-bar-search .ab-item{padding:0;background:0 0}#wpadminbar #adminbarsearch{position:relative;height:32px;padding:0 2px;z-index:1}#wpadminbar #adminbarsearch:before{position:absolute;top:6px;right:5px;z-index:20;font:normal 20px/1 dashicons!important;content:"\f179";speak:never;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#wpadminbar>#wp-toolbar>#wp-admin-bar-top-secondary>#wp-admin-bar-search #adminbarsearch input.adminbar-input{display:inline-block;float:none;position:relative;z-index:30;font-size:13px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;line-height:1.84615384;text-indent:0;height:24px;width:24px;max-width:none;padding:0 24px 0 3px;margin:0;color:#c3c4c7;background-color:rgba(255,255,255,0);border:none;outline:0;cursor:pointer;box-shadow:none;box-sizing:border-box;transition-duration:.4s;transition-property:width,background;transition-timing-function:ease}#wpadminbar>#wp-toolbar>#wp-admin-bar-top-secondary>#wp-admin-bar-search #adminbarsearch input.adminbar-input:focus{z-index:10;color:#000;width:200px;background-color:rgba(255,255,255,.9);cursor:text;border:0}#wpadminbar #adminbarsearch .adminbar-button{display:none}.customize-support #wpadminbar .hide-if-customize,.customize-support .hide-if-customize,.customize-support .wp-core-ui .hide-if-customize,.customize-support.wp-core-ui .hide-if-customize,.no-customize-support #wpadminbar .hide-if-no-customize,.no-customize-support .hide-if-no-customize,.no-customize-support .wp-core-ui .hide-if-no-customize,.no-customize-support.wp-core-ui .hide-if-no-customize{display:none}#wpadminbar .screen-reader-text,#wpadminbar .screen-reader-text span{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}#wpadminbar .screen-reader-shortcut{position:absolute;top:-1000em}#wpadminbar .screen-reader-shortcut:focus{right:6px;top:7px;height:auto;width:auto;display:block;font-size:14px;font-weight:600;padding:15px 23px 14px;background:#f0f0f1;color:#2271b1;z-index:100000;line-height:normal;text-decoration:none;box-shadow:0 0 2px 2px rgba(0,0,0,.6)}@media screen and (max-width:782px){html{--wp-admin--admin-bar--height:46px}html #wpadminbar{height:46px;min-width:240px}#wpadminbar *{font-size:14px;font-weight:400;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;line-height:2.28571428}#wpadminbar .quicklinks .ab-empty-item,#wpadminbar .quicklinks>ul>li>a{padding:0;height:46px;line-height:3.28571428;width:auto}#wpadminbar .ab-icon{font:40px/1 dashicons!important;margin:0;padding:0;width:52px;height:46px;text-align:center}#wpadminbar .ab-icon:before{text-align:center}#wpadminbar .ab-submenu{padding:0}#wpadminbar #wp-admin-bar-my-account a.ab-item,#wpadminbar #wp-admin-bar-my-sites a.ab-item,#wpadminbar #wp-admin-bar-site-name a.ab-item{text-overflow:clip}#wpadminbar .quicklinks .menupop ul li .ab-item,#wpadminbar .quicklinks .menupop ul li a strong,#wpadminbar .quicklinks .menupop.hover ul li .ab-item,#wpadminbar .shortlink-input,#wpadminbar.nojs .quicklinks .menupop:hover ul li .ab-item{line-height:1.6}#wpadminbar .ab-label{display:none}#wpadminbar .menupop li.hover>.ab-sub-wrapper,#wpadminbar .menupop li:hover>.ab-sub-wrapper{margin-top:-46px}#wpadminbar .ab-top-menu .menupop .ab-sub-wrapper .menupop>.ab-item{padding-left:30px}#wpadminbar .menupop .menupop>.ab-item:before{top:10px;left:6px}#wpadminbar .ab-top-menu>.menupop>.ab-sub-wrapper .ab-item{font-size:16px;padding:8px 16px}#wpadminbar .ab-top-menu>.menupop>.ab-sub-wrapper a:empty{display:none}#wpadminbar #wp-admin-bar-wp-logo>.ab-item{padding:0}#wpadminbar #wp-admin-bar-wp-logo>.ab-item .ab-icon{padding:0;width:52px;height:46px;text-align:center;vertical-align:top}#wpadminbar #wp-admin-bar-wp-logo>.ab-item .ab-icon:before{font:28px/1 dashicons!important;top:-3px}#wpadminbar .ab-icon,#wpadminbar .ab-item:before{padding:0}#wpadminbar #wp-admin-bar-customize>.ab-item,#wpadminbar #wp-admin-bar-edit>.ab-item,#wpadminbar #wp-admin-bar-my-account>.ab-item,#wpadminbar #wp-admin-bar-my-sites>.ab-item,#wpadminbar #wp-admin-bar-site-editor>.ab-item,#wpadminbar #wp-admin-bar-site-name>.ab-item{text-indent:100%;white-space:nowrap;overflow:hidden;width:52px;padding:0;color:#a7aaad;position:relative}#wpadminbar .ab-icon,#wpadminbar .ab-item:before,#wpadminbar>#wp-toolbar>#wp-admin-bar-root-default .ab-icon{padding:0;margin-left:0}#wpadminbar #wp-admin-bar-customize>.ab-item:before,#wpadminbar #wp-admin-bar-edit>.ab-item:before,#wpadminbar #wp-admin-bar-my-account>.ab-item:before,#wpadminbar #wp-admin-bar-my-sites>.ab-item:before,#wpadminbar #wp-admin-bar-site-editor>.ab-item:before,#wpadminbar #wp-admin-bar-site-name>.ab-item:before{display:block;text-indent:0;font:normal 32px/1 dashicons;speak:never;top:7px;width:52px;text-align:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#wpadminbar #wp-admin-bar-appearance{margin-top:0}#wpadminbar .quicklinks li .blavatar:before{display:none}#wpadminbar #wp-admin-bar-search{display:none}#wpadminbar #wp-admin-bar-new-content .ab-icon:before{top:0;line-height:1.33333333;height:46px!important;text-align:center;width:52px;display:block}#wpadminbar #wp-admin-bar-updates{text-align:center}#wpadminbar #wp-admin-bar-updates .ab-icon:before{top:3px}#wpadminbar #wp-admin-bar-comments .ab-icon{margin:0}#wpadminbar #wp-admin-bar-comments .ab-icon:before{display:block;font-size:34px;height:46px;line-height:1.38235294;top:0}#wpadminbar #wp-admin-bar-my-account>a{position:relative;white-space:nowrap;text-indent:150%;width:28px;padding:0 10px;overflow:hidden}#wpadminbar .quicklinks li#wp-admin-bar-my-account.with-avatar>a img{position:absolute;top:13px;left:10px;width:26px;height:26px}#wpadminbar #wp-admin-bar-user-actions.ab-submenu{padding:0}#wpadminbar #wp-admin-bar-user-actions.ab-submenu img.avatar{display:none}#wpadminbar #wp-admin-bar-my-account.with-avatar #wp-admin-bar-user-actions>li{margin:0}#wpadminbar #wp-admin-bar-user-info .display-name{height:auto;font-size:16px;line-height:1.5;color:#f0f0f1}#wpadminbar #wp-admin-bar-user-info a{padding-top:4px}#wpadminbar #wp-admin-bar-user-info .username{line-height:.8!important;margin-bottom:-2px}#wp-toolbar>ul>li{display:none}#wpadminbar li#wp-admin-bar-comments,#wpadminbar li#wp-admin-bar-customize,#wpadminbar li#wp-admin-bar-edit,#wpadminbar li#wp-admin-bar-menu-toggle,#wpadminbar li#wp-admin-bar-my-account,#wpadminbar li#wp-admin-bar-my-sites,#wpadminbar li#wp-admin-bar-new-content,#wpadminbar li#wp-admin-bar-site-editor,#wpadminbar li#wp-admin-bar-site-name,#wpadminbar li#wp-admin-bar-updates,#wpadminbar li#wp-admin-bar-wp-logo{display:block}#wpadminbar li.hover ul li,#wpadminbar li:hover ul li,#wpadminbar li:hover ul li:hover ul li{display:list-item}#wpadminbar .ab-top-menu>.menupop>.ab-sub-wrapper{min-width:-moz-fit-content;min-width:fit-content}#wpadminbar ul#wp-admin-bar-root-default>li{margin-left:0}#wpadminbar #wp-admin-bar-comments,#wpadminbar #wp-admin-bar-edit,#wpadminbar #wp-admin-bar-my-account,#wpadminbar #wp-admin-bar-my-sites,#wpadminbar #wp-admin-bar-new-content,#wpadminbar #wp-admin-bar-site-name,#wpadminbar #wp-admin-bar-updates,#wpadminbar #wp-admin-bar-wp-logo,#wpadminbar .ab-top-menu,#wpadminbar .ab-top-secondary{position:static}#wpadminbar #wp-admin-bar-my-account{float:left}.network-admin #wpadminbar ul#wp-admin-bar-top-secondary>li#wp-admin-bar-my-account{margin-left:0}#wpadminbar .ab-top-secondary .menupop .menupop>.ab-item:before{top:10px;right:0}}@media screen and (max-width:600px){#wpadminbar{position:absolute}#wp-responsive-overlay{position:fixed;top:0;right:0;width:100%;height:100%;z-index:400}#wpadminbar .ab-top-menu>.menupop>.ab-sub-wrapper{width:100%;right:0}#wpadminbar .menupop .menupop>.ab-item:before{display:none}#wpadminbar #wp-admin-bar-wp-logo.menupop .ab-sub-wrapper{margin-right:0}#wpadminbar .ab-top-menu>.menupop li>.ab-sub-wrapper{margin:0;width:100%;top:auto;right:auto;position:relative}#wpadminbar .ab-top-menu>.menupop li>.ab-sub-wrapper .ab-item{font-size:16px;padding:6px 30px 19px 15px}#wpadminbar li:hover ul li ul li{display:list-item}#wpadminbar li#wp-admin-bar-updates,#wpadminbar li#wp-admin-bar-wp-logo{display:none}#wpadminbar .ab-top-menu>.menupop li>.ab-sub-wrapper{position:static;box-shadow:none}}@media screen and (max-width:400px){#wpadminbar li#wp-admin-bar-comments{display:none}}PKj l\gNNcss/admin-bar.min.cssnu[/*! This file is auto-generated */ html{--wp-admin--admin-bar--height:32px;scroll-padding-top:var(--wp-admin--admin-bar--height)}#wpadminbar *{height:auto;width:auto;margin:0;padding:0;position:static;text-shadow:none;text-transform:none;letter-spacing:normal;font-size:13px;font-weight:400;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;line-height:2.46153846;border-radius:0;box-sizing:content-box;transition:none;-webkit-font-smoothing:subpixel-antialiased;-moz-osx-font-smoothing:auto}.rtl #wpadminbar *{font-family:Tahoma,sans-serif}html:lang(he-il) .rtl #wpadminbar *{font-family:Arial,sans-serif}#wpadminbar .ab-empty-item{cursor:default}#wpadminbar .ab-empty-item,#wpadminbar a.ab-item,#wpadminbar>#wp-toolbar span.ab-label,#wpadminbar>#wp-toolbar span.noticon{color:#f0f0f1}#wpadminbar #wp-admin-bar-my-sites a.ab-item,#wpadminbar #wp-admin-bar-site-name a.ab-item{white-space:nowrap}#wpadminbar ul li:after,#wpadminbar ul li:before{content:normal}#wpadminbar a,#wpadminbar a img,#wpadminbar a img:hover,#wpadminbar a:hover{border:none;text-decoration:none;background:0 0;box-shadow:none}#wpadminbar a:active,#wpadminbar a:focus,#wpadminbar div,#wpadminbar input[type=email],#wpadminbar input[type=number],#wpadminbar input[type=password],#wpadminbar input[type=search],#wpadminbar input[type=text],#wpadminbar input[type=url],#wpadminbar select,#wpadminbar textarea{box-shadow:none}#wpadminbar a:focus{outline-offset:-1px}#wpadminbar{direction:ltr;color:#c3c4c7;font-size:13px;font-weight:400;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;line-height:2.46153846;height:32px;position:fixed;top:0;left:0;width:100%;min-width:600px;z-index:99999;background:#1d2327}#wpadminbar .ab-sub-wrapper,#wpadminbar ul,#wpadminbar ul li{background:0 0;clear:none;list-style:none;margin:0;padding:0;position:relative;text-indent:0;z-index:99999}#wpadminbar ul#wp-admin-bar-root-default>li{margin-right:0}#wpadminbar .quicklinks ul{text-align:left}#wpadminbar li{float:left}#wpadminbar .ab-empty-item{outline:0}#wpadminbar .quicklinks .ab-top-secondary>li{float:right}#wpadminbar .quicklinks .ab-empty-item,#wpadminbar .quicklinks a,#wpadminbar .shortlink-input{height:32px;display:block;padding:0 10px;margin:0}#wpadminbar .quicklinks>ul>li>a{padding:0 8px 0 7px}#wpadminbar .menupop .ab-sub-wrapper,#wpadminbar .shortlink-input{margin:0;padding:0;box-shadow:0 3px 5px rgba(0,0,0,.2);background:#2c3338;display:none;position:absolute;float:none}#wpadminbar .ab-top-menu>.menupop>.ab-sub-wrapper{min-width:100%}#wpadminbar .ab-top-secondary .menupop .ab-sub-wrapper{right:0;left:auto}#wpadminbar .ab-submenu{padding:6px 0}#wpadminbar .selected .shortlink-input{display:block}#wpadminbar .quicklinks .menupop ul li{float:none}#wpadminbar .quicklinks .menupop ul li a strong{font-weight:600}#wpadminbar .quicklinks .menupop ul li .ab-item,#wpadminbar .quicklinks .menupop ul li a strong,#wpadminbar .quicklinks .menupop.hover ul li .ab-item,#wpadminbar .shortlink-input,#wpadminbar.nojs .quicklinks .menupop:hover ul li .ab-item{line-height:2;height:26px;white-space:nowrap;min-width:140px}#wpadminbar .shortlink-input{width:200px}#wpadminbar li.hover>.ab-sub-wrapper,#wpadminbar.nojs li:hover>.ab-sub-wrapper{display:block}#wpadminbar .menupop li.hover>.ab-sub-wrapper,#wpadminbar .menupop li:hover>.ab-sub-wrapper{margin-left:100%;margin-top:-32px}#wpadminbar .ab-top-secondary .menupop li.hover>.ab-sub-wrapper,#wpadminbar .ab-top-secondary .menupop li:hover>.ab-sub-wrapper{margin-left:0;left:inherit;right:100%}#wpadminbar .ab-top-menu>li.hover>.ab-item,#wpadminbar.nojq .quicklinks .ab-top-menu>li>.ab-item:focus,#wpadminbar:not(.mobile) .ab-top-menu>li:hover>.ab-item,#wpadminbar:not(.mobile) .ab-top-menu>li>.ab-item:focus{background:#2c3338;color:#72aee6}#wpadminbar:not(.mobile)>#wp-toolbar a:focus span.ab-label,#wpadminbar:not(.mobile)>#wp-toolbar li:hover span.ab-label,#wpadminbar>#wp-toolbar li.hover span.ab-label{color:#72aee6}#wpadminbar .ab-icon,#wpadminbar .ab-item:before,#wpadminbar>#wp-toolbar>#wp-admin-bar-root-default .ab-icon,.wp-admin-bar-arrow{position:relative;float:left;font:normal 20px/1 dashicons;speak:never;padding:4px 0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:none!important;margin-right:6px}#wpadminbar #adminbarsearch:before,#wpadminbar .ab-icon:before,#wpadminbar .ab-item:before{color:#a7aaad;color:rgba(240,246,252,.6)}#wpadminbar #adminbarsearch:before,#wpadminbar .ab-icon:before,#wpadminbar .ab-item:before{position:relative;transition:color .1s ease-in-out}#wpadminbar .ab-label{display:inline-block;height:32px}#wpadminbar .ab-submenu .ab-item{color:#c3c4c7;color:rgba(240,246,252,.7)}#wpadminbar .quicklinks .menupop ul li a,#wpadminbar .quicklinks .menupop ul li a strong,#wpadminbar .quicklinks .menupop.hover ul li a,#wpadminbar.nojs .quicklinks .menupop:hover ul li a{color:#c3c4c7;color:rgba(240,246,252,.7)}#wpadminbar .quicklinks .ab-sub-wrapper .menupop.hover>a,#wpadminbar .quicklinks .menupop ul li a:focus,#wpadminbar .quicklinks .menupop ul li a:focus strong,#wpadminbar .quicklinks .menupop ul li a:hover,#wpadminbar .quicklinks .menupop ul li a:hover strong,#wpadminbar .quicklinks .menupop.hover ul li a:focus,#wpadminbar .quicklinks .menupop.hover ul li a:hover,#wpadminbar .quicklinks .menupop.hover ul li div[tabindex]:focus,#wpadminbar .quicklinks .menupop.hover ul li div[tabindex]:hover,#wpadminbar li #adminbarsearch.adminbar-focused:before,#wpadminbar li .ab-item:focus .ab-icon:before,#wpadminbar li .ab-item:focus:before,#wpadminbar li a:focus .ab-icon:before,#wpadminbar li.hover .ab-icon:before,#wpadminbar li.hover .ab-item:before,#wpadminbar li:hover #adminbarsearch:before,#wpadminbar li:hover .ab-icon:before,#wpadminbar li:hover .ab-item:before,#wpadminbar.nojs .quicklinks .menupop:hover ul li a:focus,#wpadminbar.nojs .quicklinks .menupop:hover ul li a:hover{color:#72aee6}#wpadminbar.mobile .quicklinks .ab-icon:before,#wpadminbar.mobile .quicklinks .ab-item:before{color:#c3c4c7}#wpadminbar.mobile .quicklinks .hover .ab-icon:before,#wpadminbar.mobile .quicklinks .hover .ab-item:before{color:#72aee6}#wpadminbar .ab-top-secondary .menupop .menupop>.ab-item:before,#wpadminbar .menupop .menupop>.ab-item .wp-admin-bar-arrow:before{position:absolute;font:normal 17px/1 dashicons;speak:never;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#wpadminbar .menupop .menupop>.ab-item{display:block;padding-right:2em}#wpadminbar .menupop .menupop>.ab-item .wp-admin-bar-arrow:before{top:1px;right:10px;padding:4px 0;content:"\f139";color:inherit}#wpadminbar .ab-top-secondary .menupop .menupop>.ab-item{padding-left:2em;padding-right:1em}#wpadminbar .ab-top-secondary .menupop .menupop>.ab-item .wp-admin-bar-arrow:before{top:1px;left:6px;content:"\f141"}#wpadminbar .quicklinks .menupop ul.ab-sub-secondary{display:block;position:relative;right:auto;margin:0;box-shadow:none}#wpadminbar .quicklinks .menupop ul.ab-sub-secondary,#wpadminbar .quicklinks .menupop ul.ab-sub-secondary .ab-submenu{background:#3c434a}#wpadminbar .quicklinks .menupop .ab-sub-secondary>li .ab-item:focus a,#wpadminbar .quicklinks .menupop .ab-sub-secondary>li>a:hover{color:#72aee6}#wpadminbar .quicklinks a span#ab-updates{background:#f0f0f1;color:#2c3338;display:inline;padding:2px 5px;font-size:10px;font-weight:600;border-radius:10px}#wpadminbar .quicklinks a:hover span#ab-updates{background:#fff;color:#000}#wpadminbar .ab-top-secondary{float:right}#wpadminbar ul li:last-child,#wpadminbar ul li:last-child .ab-item{box-shadow:none}#wpadminbar #wp-admin-bar-recovery-mode{color:#fff;background-color:#d63638}#wpadminbar .ab-top-menu>#wp-admin-bar-recovery-mode.hover>.ab-item,#wpadminbar.nojq .quicklinks .ab-top-menu>#wp-admin-bar-recovery-mode>.ab-item:focus,#wpadminbar:not(.mobile) .ab-top-menu>#wp-admin-bar-recovery-mode:hover>.ab-item,#wpadminbar:not(.mobile) .ab-top-menu>#wp-admin-bar-recovery-mode>.ab-item:focus{color:#fff;background-color:#d63638}#wp-admin-bar-my-account>ul{min-width:198px}#wp-admin-bar-my-account:not(.with-avatar)>.ab-item{display:inline-block}#wp-admin-bar-my-account>.ab-item:before{content:"\f110";top:2px;float:right;margin-left:6px;margin-right:0}#wp-admin-bar-my-account.with-avatar>.ab-item:before{display:none;content:none}#wp-admin-bar-my-account.with-avatar>ul{min-width:270px}#wpadminbar #wp-admin-bar-user-actions>li{margin-left:16px;margin-right:16px}#wpadminbar #wp-admin-bar-user-actions.ab-submenu{padding:6px 0 12px}#wpadminbar #wp-admin-bar-my-account.with-avatar #wp-admin-bar-user-actions>li{margin-left:88px}#wpadminbar #wp-admin-bar-user-info{margin-top:6px;margin-bottom:15px;height:auto;background:0 0}#wp-admin-bar-user-info .avatar{position:absolute;left:-72px;top:4px;width:64px;height:64px}#wpadminbar #wp-admin-bar-user-info a{background:0 0;height:auto}#wpadminbar #wp-admin-bar-user-info span{background:0 0;padding:0;height:18px}#wpadminbar #wp-admin-bar-user-info .display-name,#wpadminbar #wp-admin-bar-user-info .username{display:block}#wpadminbar #wp-admin-bar-user-info .username{color:#a7aaad;font-size:11px}#wpadminbar #wp-admin-bar-my-account.with-avatar>.ab-empty-item img,#wpadminbar #wp-admin-bar-my-account.with-avatar>a img{width:auto;height:16px;padding:0;border:1px solid #8c8f94;background:#f0f0f1;line-height:1.84615384;vertical-align:middle;margin:-4px 0 0 6px;float:none;display:inline}#wpadminbar #wp-admin-bar-wp-logo>.ab-item .ab-icon{width:15px;height:20px;margin-right:0;padding:6px 0 5px}#wpadminbar #wp-admin-bar-wp-logo>.ab-item{padding:0 7px}#wpadminbar #wp-admin-bar-wp-logo>.ab-item .ab-icon:before{content:"\f120";top:2px}#wpadminbar .quicklinks li .blavatar{display:inline-block;vertical-align:middle;font:normal 16px/1 dashicons!important;speak:never;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#f0f0f1}#wpadminbar .quicklinks .ab-sub-wrapper .menupop.hover>a .blavatar,#wpadminbar .quicklinks li a:focus .blavatar,#wpadminbar .quicklinks li a:hover .blavatar{color:#72aee6}#wpadminbar .quicklinks li div.blavatar:before,#wpadminbar .quicklinks li img.blavatar{height:16px;width:16px;margin:0 8px 2px -2px}#wpadminbar .quicklinks li div.blavatar:before{content:"\f120";display:inline-block}#wpadminbar #wp-admin-bar-appearance{margin-top:-12px}#wpadminbar #wp-admin-bar-my-sites>.ab-item:before,#wpadminbar #wp-admin-bar-site-name>.ab-item:before{content:"\f541";top:2px}#wpadminbar #wp-admin-bar-site-editor>.ab-item:before{content:"\f100";top:2px}#wpadminbar #wp-admin-bar-customize>.ab-item:before{content:"\f540";top:2px}#wpadminbar #wp-admin-bar-edit>.ab-item:before{content:"\f464";top:2px}#wpadminbar #wp-admin-bar-site-name>.ab-item:before{content:"\f226"}.wp-admin #wpadminbar #wp-admin-bar-site-name>.ab-item:before{content:"\f102"}#wpadminbar #wp-admin-bar-comments .ab-icon{margin-right:6px}#wpadminbar #wp-admin-bar-comments .ab-icon:before{content:"\f101";top:3px}#wpadminbar #wp-admin-bar-comments .count-0{opacity:.5}#wpadminbar #wp-admin-bar-new-content .ab-icon:before{content:"\f132";top:4px}#wpadminbar #wp-admin-bar-updates .ab-icon:before{content:"\f463";top:2px}#wpadminbar #wp-admin-bar-updates.spin .ab-icon:before{display:inline-block;animation:rotation 2s infinite linear}@media (prefers-reduced-motion:reduce){#wpadminbar #wp-admin-bar-updates.spin .ab-icon:before{animation:none}}#wpadminbar #wp-admin-bar-search .ab-item{padding:0;background:0 0}#wpadminbar #adminbarsearch{position:relative;height:32px;padding:0 2px;z-index:1}#wpadminbar #adminbarsearch:before{position:absolute;top:6px;left:5px;z-index:20;font:normal 20px/1 dashicons!important;content:"\f179";speak:never;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#wpadminbar>#wp-toolbar>#wp-admin-bar-top-secondary>#wp-admin-bar-search #adminbarsearch input.adminbar-input{display:inline-block;float:none;position:relative;z-index:30;font-size:13px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;line-height:1.84615384;text-indent:0;height:24px;width:24px;max-width:none;padding:0 3px 0 24px;margin:0;color:#c3c4c7;background-color:rgba(255,255,255,0);border:none;outline:0;cursor:pointer;box-shadow:none;box-sizing:border-box;transition-duration:.4s;transition-property:width,background;transition-timing-function:ease}#wpadminbar>#wp-toolbar>#wp-admin-bar-top-secondary>#wp-admin-bar-search #adminbarsearch input.adminbar-input:focus{z-index:10;color:#000;width:200px;background-color:rgba(255,255,255,.9);cursor:text;border:0}#wpadminbar #adminbarsearch .adminbar-button{display:none}.customize-support #wpadminbar .hide-if-customize,.customize-support .hide-if-customize,.customize-support .wp-core-ui .hide-if-customize,.customize-support.wp-core-ui .hide-if-customize,.no-customize-support #wpadminbar .hide-if-no-customize,.no-customize-support .hide-if-no-customize,.no-customize-support .wp-core-ui .hide-if-no-customize,.no-customize-support.wp-core-ui .hide-if-no-customize{display:none}#wpadminbar .screen-reader-text,#wpadminbar .screen-reader-text span{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}#wpadminbar .screen-reader-shortcut{position:absolute;top:-1000em}#wpadminbar .screen-reader-shortcut:focus{left:6px;top:7px;height:auto;width:auto;display:block;font-size:14px;font-weight:600;padding:15px 23px 14px;background:#f0f0f1;color:#2271b1;z-index:100000;line-height:normal;text-decoration:none;box-shadow:0 0 2px 2px rgba(0,0,0,.6)}@media screen and (max-width:782px){html{--wp-admin--admin-bar--height:46px}html #wpadminbar{height:46px;min-width:240px}#wpadminbar *{font-size:14px;font-weight:400;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;line-height:2.28571428}#wpadminbar .quicklinks .ab-empty-item,#wpadminbar .quicklinks>ul>li>a{padding:0;height:46px;line-height:3.28571428;width:auto}#wpadminbar .ab-icon{font:40px/1 dashicons!important;margin:0;padding:0;width:52px;height:46px;text-align:center}#wpadminbar .ab-icon:before{text-align:center}#wpadminbar .ab-submenu{padding:0}#wpadminbar #wp-admin-bar-my-account a.ab-item,#wpadminbar #wp-admin-bar-my-sites a.ab-item,#wpadminbar #wp-admin-bar-site-name a.ab-item{text-overflow:clip}#wpadminbar .quicklinks .menupop ul li .ab-item,#wpadminbar .quicklinks .menupop ul li a strong,#wpadminbar .quicklinks .menupop.hover ul li .ab-item,#wpadminbar .shortlink-input,#wpadminbar.nojs .quicklinks .menupop:hover ul li .ab-item{line-height:1.6}#wpadminbar .ab-label{display:none}#wpadminbar .menupop li.hover>.ab-sub-wrapper,#wpadminbar .menupop li:hover>.ab-sub-wrapper{margin-top:-46px}#wpadminbar .ab-top-menu .menupop .ab-sub-wrapper .menupop>.ab-item{padding-right:30px}#wpadminbar .menupop .menupop>.ab-item:before{top:10px;right:6px}#wpadminbar .ab-top-menu>.menupop>.ab-sub-wrapper .ab-item{font-size:16px;padding:8px 16px}#wpadminbar .ab-top-menu>.menupop>.ab-sub-wrapper a:empty{display:none}#wpadminbar #wp-admin-bar-wp-logo>.ab-item{padding:0}#wpadminbar #wp-admin-bar-wp-logo>.ab-item .ab-icon{padding:0;width:52px;height:46px;text-align:center;vertical-align:top}#wpadminbar #wp-admin-bar-wp-logo>.ab-item .ab-icon:before{font:28px/1 dashicons!important;top:-3px}#wpadminbar .ab-icon,#wpadminbar .ab-item:before{padding:0}#wpadminbar #wp-admin-bar-customize>.ab-item,#wpadminbar #wp-admin-bar-edit>.ab-item,#wpadminbar #wp-admin-bar-my-account>.ab-item,#wpadminbar #wp-admin-bar-my-sites>.ab-item,#wpadminbar #wp-admin-bar-site-editor>.ab-item,#wpadminbar #wp-admin-bar-site-name>.ab-item{text-indent:100%;white-space:nowrap;overflow:hidden;width:52px;padding:0;color:#a7aaad;position:relative}#wpadminbar .ab-icon,#wpadminbar .ab-item:before,#wpadminbar>#wp-toolbar>#wp-admin-bar-root-default .ab-icon{padding:0;margin-right:0}#wpadminbar #wp-admin-bar-customize>.ab-item:before,#wpadminbar #wp-admin-bar-edit>.ab-item:before,#wpadminbar #wp-admin-bar-my-account>.ab-item:before,#wpadminbar #wp-admin-bar-my-sites>.ab-item:before,#wpadminbar #wp-admin-bar-site-editor>.ab-item:before,#wpadminbar #wp-admin-bar-site-name>.ab-item:before{display:block;text-indent:0;font:normal 32px/1 dashicons;speak:never;top:7px;width:52px;text-align:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#wpadminbar #wp-admin-bar-appearance{margin-top:0}#wpadminbar .quicklinks li .blavatar:before{display:none}#wpadminbar #wp-admin-bar-search{display:none}#wpadminbar #wp-admin-bar-new-content .ab-icon:before{top:0;line-height:1.33333333;height:46px!important;text-align:center;width:52px;display:block}#wpadminbar #wp-admin-bar-updates{text-align:center}#wpadminbar #wp-admin-bar-updates .ab-icon:before{top:3px}#wpadminbar #wp-admin-bar-comments .ab-icon{margin:0}#wpadminbar #wp-admin-bar-comments .ab-icon:before{display:block;font-size:34px;height:46px;line-height:1.38235294;top:0}#wpadminbar #wp-admin-bar-my-account>a{position:relative;white-space:nowrap;text-indent:150%;width:28px;padding:0 10px;overflow:hidden}#wpadminbar .quicklinks li#wp-admin-bar-my-account.with-avatar>a img{position:absolute;top:13px;right:10px;width:26px;height:26px}#wpadminbar #wp-admin-bar-user-actions.ab-submenu{padding:0}#wpadminbar #wp-admin-bar-user-actions.ab-submenu img.avatar{display:none}#wpadminbar #wp-admin-bar-my-account.with-avatar #wp-admin-bar-user-actions>li{margin:0}#wpadminbar #wp-admin-bar-user-info .display-name{height:auto;font-size:16px;line-height:1.5;color:#f0f0f1}#wpadminbar #wp-admin-bar-user-info a{padding-top:4px}#wpadminbar #wp-admin-bar-user-info .username{line-height:.8!important;margin-bottom:-2px}#wp-toolbar>ul>li{display:none}#wpadminbar li#wp-admin-bar-comments,#wpadminbar li#wp-admin-bar-customize,#wpadminbar li#wp-admin-bar-edit,#wpadminbar li#wp-admin-bar-menu-toggle,#wpadminbar li#wp-admin-bar-my-account,#wpadminbar li#wp-admin-bar-my-sites,#wpadminbar li#wp-admin-bar-new-content,#wpadminbar li#wp-admin-bar-site-editor,#wpadminbar li#wp-admin-bar-site-name,#wpadminbar li#wp-admin-bar-updates,#wpadminbar li#wp-admin-bar-wp-logo{display:block}#wpadminbar li.hover ul li,#wpadminbar li:hover ul li,#wpadminbar li:hover ul li:hover ul li{display:list-item}#wpadminbar .ab-top-menu>.menupop>.ab-sub-wrapper{min-width:-moz-fit-content;min-width:fit-content}#wpadminbar ul#wp-admin-bar-root-default>li{margin-right:0}#wpadminbar #wp-admin-bar-comments,#wpadminbar #wp-admin-bar-edit,#wpadminbar #wp-admin-bar-my-account,#wpadminbar #wp-admin-bar-my-sites,#wpadminbar #wp-admin-bar-new-content,#wpadminbar #wp-admin-bar-site-name,#wpadminbar #wp-admin-bar-updates,#wpadminbar #wp-admin-bar-wp-logo,#wpadminbar .ab-top-menu,#wpadminbar .ab-top-secondary{position:static}#wpadminbar #wp-admin-bar-my-account{float:right}.network-admin #wpadminbar ul#wp-admin-bar-top-secondary>li#wp-admin-bar-my-account{margin-right:0}#wpadminbar .ab-top-secondary .menupop .menupop>.ab-item:before{top:10px;left:0}}@media screen and (max-width:600px){#wpadminbar{position:absolute}#wp-responsive-overlay{position:fixed;top:0;left:0;width:100%;height:100%;z-index:400}#wpadminbar .ab-top-menu>.menupop>.ab-sub-wrapper{width:100%;left:0}#wpadminbar .menupop .menupop>.ab-item:before{display:none}#wpadminbar #wp-admin-bar-wp-logo.menupop .ab-sub-wrapper{margin-left:0}#wpadminbar .ab-top-menu>.menupop li>.ab-sub-wrapper{margin:0;width:100%;top:auto;left:auto;position:relative}#wpadminbar .ab-top-menu>.menupop li>.ab-sub-wrapper .ab-item{font-size:16px;padding:6px 15px 19px 30px}#wpadminbar li:hover ul li ul li{display:list-item}#wpadminbar li#wp-admin-bar-updates,#wpadminbar li#wp-admin-bar-wp-logo{display:none}#wpadminbar .ab-top-menu>.menupop li>.ab-sub-wrapper{position:static;box-shadow:none}}@media screen and (max-width:400px){#wpadminbar li#wp-admin-bar-comments{display:none}}PKj l\d; ; !css/customize-preview-rtl.min.cssnu[/*! This file is auto-generated */ .customize-partial-refreshing{opacity:.25;transition:opacity .25s;cursor:progress}.customize-partial-refreshing.widget-customizer-highlighted-widget{box-shadow:none}.customize-partial-edit-shortcut,.widget .customize-partial-edit-shortcut{position:absolute;float:right;width:1px;height:1px;padding:0;margin:-1px -1px 0 0;border:0;background:0 0;color:transparent;box-shadow:none;outline:0;z-index:5}.customize-partial-edit-shortcut button,.widget .customize-partial-edit-shortcut button{position:absolute;right:-30px;top:2px;color:#fff;width:30px;height:30px;min-width:30px;min-height:30px;line-height:1!important;font-size:18px;z-index:5;background:#3582c4!important;border-radius:50%;border:2px solid #fff;box-shadow:0 2px 1px rgba(60,67,74,.15);text-align:center;cursor:pointer;box-sizing:border-box;padding:3px;animation-fill-mode:both;animation-duration:.4s;opacity:0;pointer-events:none;text-shadow:0 -1px 1px #135e96,-1px 0 1px #135e96,0 1px 1px #135e96,1px 0 1px #135e96}.wp-custom-header .customize-partial-edit-shortcut button{right:2px}.customize-partial-edit-shortcut button svg{fill:#fff;min-width:20px;min-height:20px;width:20px;height:20px;margin:auto}.customize-partial-edit-shortcut button:hover{background:#4f94d4!important}.customize-partial-edit-shortcut button:focus{box-shadow:0 0 0 2px #4f94d4}body.customize-partial-edit-shortcuts-shown .customize-partial-edit-shortcut button{animation-name:customize-partial-edit-shortcut-bounce-appear;pointer-events:auto}body.customize-partial-edit-shortcuts-hidden .customize-partial-edit-shortcut button{animation-name:customize-partial-edit-shortcut-bounce-disappear;pointer-events:none}.customize-partial-edit-shortcut-hidden .customize-partial-edit-shortcut button,.page-sidebar-collapsed .customize-partial-edit-shortcut button{visibility:hidden}@keyframes customize-partial-edit-shortcut-bounce-appear{20%,40%,60%,80%,from,to{animation-timing-function:cubic-bezier(0.215,0.610,0.355,1.000)}0%{opacity:0;transform:scale3d(.3,.3,.3)}20%{transform:scale3d(1.1,1.1,1.1)}40%{transform:scale3d(.9,.9,.9)}60%{opacity:1;transform:scale3d(1.03,1.03,1.03)}80%{transform:scale3d(.97,.97,.97)}to{opacity:1;transform:scale3d(1,1,1)}}@keyframes customize-partial-edit-shortcut-bounce-disappear{20%,40%,60%,80%,from,to{animation-timing-function:cubic-bezier(0.215,0.610,0.355,1.000)}0%{opacity:1;transform:scale3d(1,1,1)}20%{transform:scale3d(.97,.97,.97)}40%{opacity:1;transform:scale3d(1.03,1.03,1.03)}60%{transform:scale3d(.9,.9,.9)}80%{transform:scale3d(1.1,1.1,1.1)}to{opacity:0;transform:scale3d(.3,.3,.3)}}@media screen and (max-width:800px){.customize-partial-edit-shortcut button,.widget .customize-partial-edit-shortcut button{right:-32px}}@media screen and (max-width:320px){.customize-partial-edit-shortcut button,.widget .customize-partial-edit-shortcut button{right:-30px}}PKj l\}6 6 css/customize-preview.min.cssnu[/*! This file is auto-generated */ .customize-partial-refreshing{opacity:.25;transition:opacity .25s;cursor:progress}.customize-partial-refreshing.widget-customizer-highlighted-widget{box-shadow:none}.customize-partial-edit-shortcut,.widget .customize-partial-edit-shortcut{position:absolute;float:left;width:1px;height:1px;padding:0;margin:-1px 0 0 -1px;border:0;background:0 0;color:transparent;box-shadow:none;outline:0;z-index:5}.customize-partial-edit-shortcut button,.widget .customize-partial-edit-shortcut button{position:absolute;left:-30px;top:2px;color:#fff;width:30px;height:30px;min-width:30px;min-height:30px;line-height:1!important;font-size:18px;z-index:5;background:#3582c4!important;border-radius:50%;border:2px solid #fff;box-shadow:0 2px 1px rgba(60,67,74,.15);text-align:center;cursor:pointer;box-sizing:border-box;padding:3px;animation-fill-mode:both;animation-duration:.4s;opacity:0;pointer-events:none;text-shadow:0 -1px 1px #135e96,1px 0 1px #135e96,0 1px 1px #135e96,-1px 0 1px #135e96}.wp-custom-header .customize-partial-edit-shortcut button{left:2px}.customize-partial-edit-shortcut button svg{fill:#fff;min-width:20px;min-height:20px;width:20px;height:20px;margin:auto}.customize-partial-edit-shortcut button:hover{background:#4f94d4!important}.customize-partial-edit-shortcut button:focus{box-shadow:0 0 0 2px #4f94d4}body.customize-partial-edit-shortcuts-shown .customize-partial-edit-shortcut button{animation-name:customize-partial-edit-shortcut-bounce-appear;pointer-events:auto}body.customize-partial-edit-shortcuts-hidden .customize-partial-edit-shortcut button{animation-name:customize-partial-edit-shortcut-bounce-disappear;pointer-events:none}.customize-partial-edit-shortcut-hidden .customize-partial-edit-shortcut button,.page-sidebar-collapsed .customize-partial-edit-shortcut button{visibility:hidden}@keyframes customize-partial-edit-shortcut-bounce-appear{20%,40%,60%,80%,from,to{animation-timing-function:cubic-bezier(0.215,0.610,0.355,1.000)}0%{opacity:0;transform:scale3d(.3,.3,.3)}20%{transform:scale3d(1.1,1.1,1.1)}40%{transform:scale3d(.9,.9,.9)}60%{opacity:1;transform:scale3d(1.03,1.03,1.03)}80%{transform:scale3d(.97,.97,.97)}to{opacity:1;transform:scale3d(1,1,1)}}@keyframes customize-partial-edit-shortcut-bounce-disappear{20%,40%,60%,80%,from,to{animation-timing-function:cubic-bezier(0.215,0.610,0.355,1.000)}0%{opacity:1;transform:scale3d(1,1,1)}20%{transform:scale3d(.97,.97,.97)}40%{opacity:1;transform:scale3d(1.03,1.03,1.03)}60%{transform:scale3d(.9,.9,.9)}80%{transform:scale3d(1.1,1.1,1.1)}to{opacity:0;transform:scale3d(.3,.3,.3)}}@media screen and (max-width:800px){.customize-partial-edit-shortcut button,.widget .customize-partial-edit-shortcut button{left:-32px}}@media screen and (max-width:320px){.customize-partial-edit-shortcut button,.widget .customize-partial-edit-shortcut button{left:-30px}}PKj l\x̵̵css/media-views.min.cssnu[/*! This file is auto-generated */ .media-modal *{box-sizing:content-box}.media-modal input,.media-modal select,.media-modal textarea{box-sizing:border-box}.media-frame,.media-modal{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size:12px;-webkit-overflow-scrolling:touch}.media-modal legend{padding:0;font-size:13px}.media-modal label{font-size:13px}.media-modal .legend-inline{position:absolute;transform:translate(-100%,50%);margin-left:-1%;line-height:1.2}.media-frame a{border-bottom:none;color:#2271b1}.media-frame a:active,.media-frame a:hover{color:#135e96}.media-frame a:focus{box-shadow:0 0 0 1px #4f94d4,0 0 2px 1px rgba(79,148,212,.8);color:#043959;outline:1px solid transparent}.media-frame a.button{color:#2c3338}.media-frame a.button:hover{color:#1d2327}.media-frame a.button-primary,.media-frame a.button-primary:hover{color:#fff}.media-frame input,.media-frame textarea{padding:6px 8px}.media-frame select,.wp-admin .media-frame select{min-height:30px;vertical-align:middle}.media-frame input[type=color],.media-frame input[type=date],.media-frame input[type=datetime-local],.media-frame input[type=datetime],.media-frame input[type=email],.media-frame input[type=month],.media-frame input[type=number],.media-frame input[type=password],.media-frame input[type=search],.media-frame input[type=tel],.media-frame input[type=text],.media-frame input[type=time],.media-frame input[type=url],.media-frame input[type=week],.media-frame select,.media-frame textarea{box-shadow:0 0 0 transparent;border-radius:4px;border:1px solid #8c8f94;background-color:#fff;color:#2c3338;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size:13px}.media-frame input[type=date],.media-frame input[type=datetime-local],.media-frame input[type=datetime],.media-frame input[type=email],.media-frame input[type=month],.media-frame input[type=number],.media-frame input[type=password],.media-frame input[type=search],.media-frame input[type=tel],.media-frame input[type=text],.media-frame input[type=time],.media-frame input[type=url],.media-frame input[type=week]{padding:0 8px;line-height:2.15384615}.media-frame.mode-grid .wp-filter input[type=search]{font-size:14px;line-height:2}.media-frame input[type=email]:focus,.media-frame input[type=number]:focus,.media-frame input[type=password]:focus,.media-frame input[type=search]:focus,.media-frame input[type=text]:focus,.media-frame input[type=url]:focus,.media-frame select:focus,.media-frame textarea:focus{border-color:#3582c4;box-shadow:0 0 0 1px #3582c4;outline:2px solid transparent}.media-frame input:disabled,.media-frame input[readonly],.media-frame textarea:disabled,.media-frame textarea[readonly]{background-color:#f0f0f1}.media-frame input[type=search]{-webkit-appearance:textfield}.media-frame ::-webkit-input-placeholder{color:#646970}.media-frame ::-moz-placeholder{color:#646970;opacity:1}.media-frame :-ms-input-placeholder{color:#646970}.media-frame .hidden,.media-frame .setting.hidden{display:none}/*! * jQuery UI Draggable/Sortable 1.11.4 * http://jqueryui.com * * Copyright jQuery Foundation and other contributors * Released under the MIT license. * http://jquery.org/license */.ui-draggable-handle,.ui-sortable-handle{touch-action:none}.media-modal{position:fixed;top:30px;left:30px;right:30px;bottom:30px;z-index:160000}.wp-customizer .media-modal{z-index:560000}.media-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;min-height:360px;background:#000;opacity:.7;z-index:159900}.wp-customizer .media-modal-backdrop{z-index:559900}.media-modal-close{position:absolute;top:0;right:0;width:50px;height:50px;margin:0;padding:0;border:1px solid transparent;background:0 0;color:#646970;z-index:1000;cursor:pointer;outline:0;transition:color .1s ease-in-out,background .1s ease-in-out}.media-modal-close:active,.media-modal-close:hover{color:#135e96}.media-modal-close:focus{color:#135e96;border-color:#4f94d4;box-shadow:0 0 3px rgba(34,113,177,.8);outline:2px solid transparent}.media-modal-close span.media-modal-icon{background-image:none}.media-modal-close .media-modal-icon:before{content:"\f158";font:normal 20px/1 dashicons;speak:never;vertical-align:middle;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.media-modal-content{position:absolute;top:0;left:0;right:0;bottom:0;overflow:auto;min-height:300px;box-shadow:0 5px 15px rgba(0,0,0,.7);background:#fff;-webkit-font-smoothing:subpixel-antialiased}.media-modal-content .media-frame select.attachment-filters{margin-top:32px;margin-right:2%;width:42%;width:calc(48% - 12px)}.media-modal-content .attachments-browser .search{width:100%}.wp-core-ui .media-modal-icon{background-image:url(../images/uploader-icons.png);background-repeat:no-repeat}.media-toolbar{position:absolute;top:0;left:0;right:0;z-index:100;height:60px;padding:0 16px;border:0 solid #dcdcde;overflow:hidden}.media-frame-toolbar .media-toolbar{top:auto;bottom:-47px;height:auto;overflow:visible;border-top:1px solid #dcdcde}.media-toolbar-primary{float:right;height:100%;position:relative}.media-toolbar-secondary{float:left;height:100%}.media-toolbar-primary>.media-button,.media-toolbar-primary>.media-button-group{margin-left:10px;float:left;margin-top:15px}.media-toolbar-secondary>.media-button,.media-toolbar-secondary>.media-button-group{margin-right:10px;margin-top:15px}.media-sidebar{position:absolute;top:0;right:0;bottom:0;width:267px;padding:0 16px;z-index:75;background:#f6f7f7;border-left:1px solid #dcdcde;overflow:auto;-webkit-overflow-scrolling:touch}.media-sidebar::after{content:"";display:flex;clear:both;height:24px}.hide-toolbar .media-sidebar{bottom:0}.image-details h2:not(.media-attachments-filter-heading),.media-sidebar h2{position:relative;font-weight:600;text-transform:uppercase;font-size:12px;color:#646970;margin:24px 0 8px}.attachment-details .setting,.media-sidebar .setting{display:block;float:left;width:100%;margin:0 0 10px}.media-sidebar .collection-settings .setting{margin:1px 0}.attachment-details .setting.has-description,.media-sidebar .setting.has-description{margin-bottom:5px}.media-sidebar .setting .link-to-custom{margin:3px 2px 0}.attachment-details .setting .name,.attachment-details .setting span,.media-sidebar .setting .name,.media-sidebar .setting .value,.media-sidebar .setting span{min-width:30%;margin-right:4%;font-size:12px;text-align:right;word-wrap:break-word}.media-sidebar .setting .name{max-width:80px}.media-sidebar .setting .value{text-align:left}.media-sidebar .setting select{max-width:65%}.attachment-details .field input[type=checkbox],.attachment-details .field input[type=radio],.attachment-details .setting input[type=checkbox],.attachment-details .setting input[type=radio],.media-sidebar .field input[type=checkbox],.media-sidebar .field input[type=radio],.media-sidebar .setting input[type=checkbox],.media-sidebar .setting input[type=radio]{float:none;margin:8px 3px 0;padding:0}.attachment-details .setting .name,.attachment-details .setting .value,.attachment-details .setting span,.compat-item label span,.media-sidebar .checkbox-label-inline,.media-sidebar .setting .name,.media-sidebar .setting .value,.media-sidebar .setting span{float:left;min-height:22px;padding-top:8px;line-height:1.33333333;font-weight:400;color:#646970}.media-sidebar .checkbox-label-inline{font-size:12px}.attachment-details .copy-to-clipboard-container,.media-sidebar .copy-to-clipboard-container{flex-wrap:wrap;margin-top:10px;margin-left:calc(35% - 1px);padding-top:10px}.attachment-details .attachment-info .copy-to-clipboard-container{float:none}.attachment-details .copy-to-clipboard-container .success,.media-sidebar .copy-to-clipboard-container .success{padding:0;min-height:0;line-height:2.18181818;text-align:left;color:#008a20}.compat-item label span{text-align:right}.attachment-details .setting .value,.attachment-details .setting input[type=email],.attachment-details .setting input[type=number],.attachment-details .setting input[type=password],.attachment-details .setting input[type=search],.attachment-details .setting input[type=tel],.attachment-details .setting input[type=text],.attachment-details .setting input[type=url],.attachment-details .setting textarea,.attachment-details .setting+.description,.media-sidebar .setting .value,.media-sidebar .setting input[type=email],.media-sidebar .setting input[type=number],.media-sidebar .setting input[type=password],.media-sidebar .setting input[type=search],.media-sidebar .setting input[type=tel],.media-sidebar .setting input[type=text],.media-sidebar .setting input[type=url],.media-sidebar .setting textarea{box-sizing:border-box;margin:1px;width:65%;float:right}.attachment-details .setting .value,.attachment-details .setting+.description,.media-sidebar .setting .value{margin:0 1px;text-align:left}.attachment-details .setting+.description{clear:both;font-size:12px;font-style:normal;margin-bottom:10px}.attachment-details .setting textarea,.compat-item .field textarea,.media-sidebar .setting textarea{height:62px;resize:vertical}.compat-item{float:left;width:100%;overflow:hidden}.compat-item table{width:100%;table-layout:fixed;border-spacing:0;border:0}.compat-item tr{padding:2px 0;display:block;overflow:hidden}.compat-item .field,.compat-item .label{display:block;margin:0;padding:0}.compat-item .label{min-width:30%;margin-right:4%;float:left;text-align:right}.compat-item .label span{display:block;width:100%}.compat-item .field{float:right;width:65%;margin:1px}.compat-item .field input[type=email],.compat-item .field input[type=number],.compat-item .field input[type=password],.compat-item .field input[type=search],.compat-item .field input[type=tel],.compat-item .field input[type=text],.compat-item .field input[type=url],.compat-item .field textarea{width:100%;margin:0;box-sizing:border-box}.sidebar-for-errors .attachment-details,.sidebar-for-errors .compat-item,.sidebar-for-errors .media-sidebar .media-progress-bar,.sidebar-for-errors .upload-details{display:none!important}.media-menu{position:absolute;top:0;left:0;right:0;bottom:0;margin:0;padding:50px 0 10px;background:#f6f7f7;border-right-width:1px;border-right-style:solid;border-right-color:#c3c4c7;-webkit-user-select:none;user-select:none}.media-menu .media-menu-item{display:block;box-sizing:border-box;width:100%;position:relative;border:0;margin:0;padding:8px 20px;font-size:14px;line-height:1.28571428;background:0 0;color:#2271b1;text-align:left;text-decoration:none;cursor:pointer}.media-menu .media-menu-item:hover{background:rgba(0,0,0,.04)}.media-menu .media-menu-item:active{color:#2271b1;outline:0}.media-menu .active,.media-menu .active:hover{color:#1d2327;font-weight:600}.media-menu .media-menu-item:focus{box-shadow:0 0 0 1px #4f94d4,0 0 2px 1px rgba(79,148,212,.8);color:#043959;outline:1px solid transparent}.media-menu .separator{height:0;margin:12px 20px;padding:0;border-top:1px solid #dcdcde}.media-router{position:relative;padding:0 6px;margin:0;clear:both}.media-router .media-menu-item{position:relative;float:left;border:0;margin:0;padding:8px 10px 9px;height:18px;line-height:1.28571428;font-size:14px;text-decoration:none;background:0 0;cursor:pointer;transition:none}.media-router .media-menu-item:last-child{border-right:0}.media-router .media-menu-item:active,.media-router .media-menu-item:hover{color:#2271b1}.media-router .active,.media-router .active:hover{color:#1d2327}.media-router .media-menu-item:focus{box-shadow:0 0 0 1px #4f94d4,0 0 2px 1px rgba(79,148,212,.8);color:#043959;outline:1px solid transparent}.media-router .active,.media-router .media-menu-item.active:last-child{margin:-1px -1px 0;background:#fff;border:1px solid #dcdcde;border-bottom:none}.media-router .active:after{display:none}.media-frame{overflow:hidden;position:absolute;top:0;left:0;right:0;bottom:0}.media-frame-menu{position:absolute;top:0;left:0;bottom:0;width:200px;z-index:150}.media-frame-title{position:absolute;top:0;left:200px;right:0;height:50px;z-index:200}.media-frame-router{position:absolute;top:50px;left:200px;right:0;height:36px;z-index:200}.media-frame-content{position:absolute;top:84px;left:200px;right:0;bottom:61px;height:auto;width:auto;margin:0;overflow:auto;background:#fff;border-top:1px solid #dcdcde}.media-frame-toolbar{position:absolute;left:200px;right:0;z-index:100;bottom:60px;height:auto}.media-frame.hide-menu .media-frame-content,.media-frame.hide-menu .media-frame-router,.media-frame.hide-menu .media-frame-title,.media-frame.hide-menu .media-frame-toolbar{left:0}.media-frame.hide-toolbar .media-frame-content{bottom:0}.media-frame.hide-router .media-frame-content{top:50px}.media-frame.hide-menu .media-frame-menu,.media-frame.hide-menu .media-frame-menu-heading,.media-frame.hide-router .media-frame-router,.media-frame.hide-toolbar .media-frame-toolbar{display:none}.media-frame-title h1{padding:0 16px;font-size:22px;line-height:2.27272727;margin:0}.media-attachments-filter-heading,.media-frame-menu-heading{position:absolute;left:20px;top:22px;margin:0;font-size:13px;line-height:1;z-index:151}.media-attachments-filter-heading{top:10px;left:16px}.mode-grid .media-attachments-filter-heading{top:0;left:-9999px}.mode-grid .media-frame-actions-heading{display:none}.wp-core-ui .button.media-frame-menu-toggle{display:none}.media-frame-title .suggested-dimensions{font-size:14px;float:right;margin-right:20px}.media-frame-content .crop-content{height:100%}.wp-customizer:not(.mobile) .media-frame-content .crop-content.site-icon{margin-right:300px}.media-frame-content .crop-content .crop-image{display:block;margin:auto;max-width:100%;max-height:100%}.media-frame-content .crop-content .upload-errors{position:absolute;width:300px;top:50%;left:50%;margin-left:-150px;margin-right:-150px;z-index:600000}.media-frame .media-iframe{overflow:hidden}.media-frame .media-iframe,.media-frame .media-iframe iframe{height:100%;width:100%;border:0}.media-frame select.attachment-filters{margin-top:11px;margin-right:2%;max-width:42%;max-width:calc(48% - 12px)}.media-frame select.attachment-filters:last-of-type{margin-right:0;width:auto;max-width:100%}.media-frame .search{margin:32px 0 0;padding:4px;font-size:13px;color:#3c434a;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;-webkit-appearance:none}.media-toolbar-primary .search{max-width:100%}.media-frame .media-search-input-label{position:absolute;left:0;top:10px;margin:0;line-height:1}.wp-core-ui .attachments{margin:0;-webkit-overflow-scrolling:touch}.wp-core-ui .attachment{position:relative;float:left;padding:8px;margin:0;color:#3c434a;cursor:pointer;list-style:none;text-align:center;-webkit-user-select:none;user-select:none;width:25%;box-sizing:border-box}.wp-core-ui .attachment.details:focus,.wp-core-ui .attachment:focus,.wp-core-ui .selected.attachment:focus{box-shadow:inset 0 0 2px 3px #fff,inset 0 0 0 7px #4f94d4;outline:2px solid transparent;outline-offset:-6px}.wp-core-ui .selected.attachment{box-shadow:inset 0 0 0 5px #fff,inset 0 0 0 7px #c3c4c7}.wp-core-ui .attachment.details{box-shadow:inset 0 0 0 3px #fff,inset 0 0 0 7px #2271b1}.wp-core-ui .attachment-preview{position:relative;box-shadow:inset 0 0 15px rgba(0,0,0,.1),inset 0 0 0 1px rgba(0,0,0,.05);background:#f0f0f1;cursor:pointer}.wp-core-ui .attachment-preview:before{content:"";display:block;padding-top:100%}.wp-core-ui .attachment .icon{margin:0 auto;overflow:hidden}.wp-core-ui .attachment .thumbnail{overflow:hidden;position:absolute;top:0;right:0;bottom:0;left:0;opacity:1;transition:opacity .1s}.wp-core-ui .attachment .portrait img{max-width:100%}.wp-core-ui .attachment .landscape img{max-height:100%}.wp-core-ui .attachment .thumbnail:after{content:"";display:block;position:absolute;top:0;left:0;right:0;bottom:0;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);overflow:hidden}.wp-core-ui .attachment .thumbnail img{top:0;left:0}.wp-core-ui .attachment .thumbnail .centered{position:absolute;top:0;left:0;width:100%;height:100%;transform:translate(50%,50%)}.wp-core-ui .attachment .thumbnail .centered img{transform:translate(-50%,-50%)}.wp-core-ui .attachments-browser .attachment .thumbnail .centered img.icon{transform:translate(-50%,-70%)}.wp-core-ui .attachment .filename{position:absolute;left:0;right:0;bottom:0;overflow:hidden;max-height:100%;word-wrap:break-word;text-align:center;font-weight:600;background:rgba(255,255,255,.8);box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}.wp-core-ui .attachment .filename div{padding:5px 10px}.wp-core-ui .attachment .thumbnail img{position:absolute}.wp-core-ui .attachment-close{display:block;position:absolute;top:5px;right:5px;height:22px;width:22px;padding:0;background-color:#fff;background-position:-96px 4px;border-radius:3px;box-shadow:0 0 0 1px rgba(0,0,0,.3);transition:none}.wp-core-ui .attachment-close:focus,.wp-core-ui .attachment-close:hover{background-position:-36px 4px}.wp-core-ui .attachment .check{display:none;height:24px;width:24px;padding:0;border:0;position:absolute;z-index:10;top:0;right:0;outline:0;background:#f0f0f1;cursor:pointer;box-shadow:0 0 0 1px #fff,0 0 0 2px rgba(0,0,0,.15)}.wp-core-ui .attachment .check .media-modal-icon{display:block;background-position:-1px 0;height:15px;width:15px;margin:5px}.wp-core-ui .attachment .check:hover .media-modal-icon{background-position:-40px 0}.wp-core-ui .attachment.selected .check{display:block}.wp-core-ui .attachment.details .check,.wp-core-ui .attachment.selected .check:focus,.wp-core-ui .media-frame.mode-grid .attachment.selected .check{background-color:#2271b1;box-shadow:0 0 0 1px #fff,0 0 0 2px #2271b1}.wp-core-ui .attachment.selected .check:focus{outline:2px solid transparent}.wp-core-ui .attachment.details .check .media-modal-icon,.wp-core-ui .media-frame.mode-grid .attachment.selected .check .media-modal-icon{background-position:-21px 0}.wp-core-ui .attachment.details .check:hover .media-modal-icon,.wp-core-ui .attachment.selected .check:focus .media-modal-icon,.wp-core-ui .media-frame.mode-grid .attachment.selected .check:hover .media-modal-icon{background-position:-60px 0}.wp-core-ui .media-frame .attachment .describe{position:relative;display:block;width:100%;margin:0;padding:0 8px;font-size:12px;border-radius:0}.media-frame .attachments-browser{position:relative;width:100%;height:100%;overflow:hidden}.attachments-browser .media-toolbar{right:300px;height:72px;background:#fff}.attachments-browser.hide-sidebar .media-toolbar{right:0}.attachments-browser .media-toolbar-primary>.media-button,.attachments-browser .media-toolbar-primary>.media-button-group,.attachments-browser .media-toolbar-secondary>.media-button,.attachments-browser .media-toolbar-secondary>.media-button-group{margin:10px 0}.attachments-browser .attachments{padding:2px 8px 8px}.attachments-browser .uploader-inline,.attachments-browser.has-load-more .attachments-wrapper,.attachments-browser:not(.has-load-more) .attachments{position:absolute;top:72px;left:0;right:300px;bottom:0;overflow:auto;outline:0}.attachments-browser .uploader-inline.hidden{display:none}.attachments-browser .media-toolbar-primary{max-width:33%}.mode-grid .attachments-browser .media-toolbar-primary{display:flex;align-items:center}.mode-grid .attachments-browser .media-toolbar-mode-select .media-toolbar-primary{display:none}.attachments-browser .media-toolbar-secondary{max-width:66%}.uploader-inline .close{background-color:transparent;border:0;cursor:pointer;height:48px;outline:0;padding:0;position:absolute;right:2px;text-align:center;top:2px;width:48px;z-index:1}.uploader-inline .close:before{font:normal 30px/1 dashicons!important;color:#50575e;display:inline-block;content:"\f335";font-weight:300;margin-top:1px}.uploader-inline .close:focus{outline:1px solid #4f94d4;box-shadow:0 0 3px rgba(34,113,177,.8)}.attachments-browser.hide-sidebar .attachments,.attachments-browser.hide-sidebar .uploader-inline{right:0;margin-right:0}.attachments-browser .instructions{display:inline-block;margin-top:16px;line-height:1.38461538;font-size:13px;color:#646970}.attachments-browser .no-media{padding:2em 0 0 2em}.more-loaded .attachment:not(.found-media){background:#dcdcde}.load-more-wrapper{clear:both;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;padding:1em 0}.load-more-wrapper .load-more-count{min-width:100%;margin:0 0 1em;text-align:center}.load-more-wrapper .load-more{margin:0}.media-frame .load-more-wrapper .load-more+.spinner{float:none;margin:0 -30px 0 10px}.media-frame .load-more-wrapper .load-more.hidden+.spinner{margin:0}.load-more-wrapper::after{content:"";min-width:100%;order:1}.load-more-wrapper .load-more-jump{margin:0 0 0 12px}.attachment.new-media{outline:2px dotted #c3c4c7}.load-more-wrapper{clear:both;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;padding:1em 0}.load-more-wrapper .load-more-count{min-width:100%;margin:0 0 1em;text-align:center}.load-more-wrapper .load-more{margin:0}.media-frame .load-more-wrapper .load-more+.spinner{float:none;margin:0 -30px 0 10px}.media-frame .load-more-wrapper .load-more.hidden+.spinner{margin:0}.load-more-wrapper::after{content:"";min-width:100%;order:1}.load-more-wrapper .load-more-jump{margin:0 0 0 12px}.media-progress-bar{position:relative;height:10px;width:70%;margin:10px auto;border-radius:10px;background:#dcdcde;background:rgba(0,0,0,.1)}.media-progress-bar div{height:10px;min-width:20px;width:0;background:#2271b1;border-radius:10px;transition:width .3s}.media-uploader-status .media-progress-bar{display:none;width:100%}.uploading.media-uploader-status .media-progress-bar{display:block}.attachment-preview .media-progress-bar{position:absolute;top:50%;left:15%;width:70%;margin:-5px 0 0}.media-uploader-status{position:relative;margin:0 auto;padding-bottom:10px;max-width:400px}.uploader-inline .media-uploader-status h2{display:none}.media-uploader-status .upload-details{display:none;font-size:12px;color:#646970}.uploading.media-uploader-status .upload-details{display:block}.media-uploader-status .upload-detail-separator{padding:0 4px}.media-uploader-status .upload-count{color:#3c434a}.media-uploader-status .upload-dismiss-errors,.media-uploader-status .upload-errors{display:none}.errors.media-uploader-status .upload-dismiss-errors,.errors.media-uploader-status .upload-errors{display:block}.media-uploader-status .upload-dismiss-errors{transition:none;text-decoration:none}.upload-errors .upload-error{padding:12px;margin-bottom:12px;background:#fff;border-left:4px solid #d63638;box-shadow:0 1px 1px 0 rgba(0,0,0,.1)}.uploader-inline .upload-errors .upload-error{padding:12px 30px;background-color:#fcf0f1;box-shadow:none}.upload-errors .upload-error-filename{font-weight:600}.upload-errors .upload-error-message{display:block;padding-top:8px;word-wrap:break-word}.uploader-window,.wp-editor-wrap .uploader-editor{top:0;left:0;right:0;bottom:0;text-align:center;display:none}.uploader-window{position:fixed;z-index:250000;opacity:0;transition:opacity 250ms}.wp-editor-wrap .uploader-editor{position:absolute;z-index:99998;background:rgba(140,143,148,.9)}.uploader-window,.wp-editor-wrap .uploader-editor.droppable{background:rgba(10,75,120,.9)}.uploader-window-content,.wp-editor-wrap .uploader-editor-content{position:absolute;top:10px;left:10px;right:10px;bottom:10px;border:1px dashed #fff}.uploader-window .uploader-editor-title,.uploader-window h1,.wp-editor-wrap .uploader-editor .uploader-editor-title{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);font-size:3em;line-height:1.3;font-weight:600;color:#fff;margin:0;padding:0 10px}.wp-editor-wrap .uploader-editor .uploader-editor-title{display:none}.wp-editor-wrap .uploader-editor.droppable .uploader-editor-title{display:block}.uploader-window .media-progress-bar{margin-top:20px;max-width:300px;background:0 0;border-color:#fff;display:none}.uploader-window .media-progress-bar div{background:#fff}.uploading .uploader-window .media-progress-bar{display:block}.media-frame .uploader-inline{margin-bottom:20px;padding:0;text-align:center}.uploader-inline-content{position:absolute;top:30%;left:0;right:0}.uploader-inline-content .upload-ui{margin:2em 0}.uploader-inline-content .post-upload-ui{margin-bottom:2em}.uploader-inline .has-upload-message .upload-ui{margin:0 0 4em}.uploader-inline h2{font-size:20px;line-height:1.4;font-weight:400;margin:0}.uploader-inline .has-upload-message .upload-instructions{font-size:14px;color:#3c434a;font-weight:400}.uploader-inline .drop-instructions{display:none}.supports-drag-drop .uploader-inline .drop-instructions{display:block}.uploader-inline p{margin:.5em 0}.uploader-inline .media-progress-bar{display:none}.uploading.uploader-inline .media-progress-bar{display:block}.uploader-inline .browser{display:inline-block!important}.media-selection{position:absolute;top:0;left:0;right:350px;height:60px;padding:0 0 0 16px;overflow:hidden;white-space:nowrap}.media-selection .selection-info{display:inline-block;font-size:12px;height:60px;margin-right:10px;vertical-align:top}.media-selection.editing,.media-selection.empty{display:none}.media-selection.one .edit-selection{display:none}.media-selection .count{display:block;padding-top:12px;font-size:14px;line-height:1.42857142;font-weight:600}.media-selection .button-link{float:left;padding:1px 8px;margin:1px 8px 1px -8px;line-height:1.4;border-right:1px solid #dcdcde;color:#2271b1;text-decoration:none}.media-selection .button-link:focus,.media-selection .button-link:hover{color:#135e96}.media-selection .button-link:last-child{border-right:0;margin-right:0}.selection-info .clear-selection{color:#d63638}.selection-info .clear-selection:focus,.selection-info .clear-selection:hover{color:#d63638}.media-selection .selection-view{display:inline-block;vertical-align:top}.media-selection .attachments{display:inline-block;height:48px;margin:6px;padding:0;overflow:hidden;vertical-align:top}.media-selection .attachment{width:40px;padding:0;margin:4px}.media-selection .attachment .thumbnail{top:0;right:0;bottom:0;left:0}.media-selection .attachment .icon{width:50%}.media-selection .attachment-preview{box-shadow:none;background:0 0}.wp-core-ui .media-selection .attachment.details:focus,.wp-core-ui .media-selection .attachment:focus,.wp-core-ui .media-selection .selected.attachment:focus{box-shadow:0 0 0 1px #fff,0 0 2px 3px #4f94d4;outline:2px solid transparent}.wp-core-ui .media-selection .selected.attachment{box-shadow:none}.wp-core-ui .media-selection .attachment.details{box-shadow:0 0 0 1px #fff,0 0 0 3px #2271b1}.media-selection:after{content:"";display:block;position:absolute;top:0;right:0;bottom:0;width:25px;background-image:linear-gradient(to left,#fff,rgba(255,255,255,0))}.media-selection .attachment .filename{display:none}.media-frame .spinner{background:url(../images/spinner.gif) no-repeat;background-size:20px 20px;float:right;display:inline-block;visibility:hidden;opacity:.7;width:20px;height:20px;margin:0;vertical-align:middle}.media-frame.mode-grid .spinner{margin:0;float:none;vertical-align:middle}.media-modal .media-toolbar .spinner{float:none;vertical-align:bottom;margin:0 0 5px 5px}.media-frame .instructions+.spinner.is-active{vertical-align:middle}.media-frame .spinner.is-active{visibility:visible}.attachment-details{position:relative;overflow:auto}.attachment-details .settings-save-status{float:right;text-transform:none;font-weight:400}.attachment-details .settings-save-status .spinner{float:none;margin-left:5px}.attachment-details .settings-save-status .saved{display:none}.attachment-details.save-waiting .settings-save-status .spinner{visibility:visible}.attachment-details.save-complete .settings-save-status .saved{display:inline-block}.attachment-info{overflow:hidden;min-height:60px;margin-bottom:16px;line-height:1.5;color:#646970;border-bottom:1px solid #dcdcde;padding-bottom:11px}.attachment-info .wp-media-wrapper{margin-bottom:8px}.attachment-info .wp-media-wrapper.wp-audio{margin-top:13px}.attachment-info .filename{font-weight:600;color:#3c434a;word-wrap:break-word}.attachment-info .thumbnail{position:relative;float:left;max-width:120px;max-height:120px;margin-top:5px;margin-right:10px;margin-bottom:5px}.uploading .attachment-info .thumbnail{width:120px;height:80px;box-shadow:inset 0 0 15px rgba(0,0,0,.1)}.uploading .attachment-info .media-progress-bar{margin-top:35px}.attachment-info .thumbnail-image:after{content:"";display:block;position:absolute;top:0;left:0;right:0;bottom:0;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15);overflow:hidden}.attachment-info .thumbnail img{display:block;max-width:120px;max-height:120px;margin:0 auto}.attachment-info .details{float:left;font-size:12px;max-width:100%}.attachment-info .delete-attachment,.attachment-info .edit-attachment,.attachment-info .trash-attachment,.attachment-info .untrash-attachment{display:block;text-decoration:none;white-space:nowrap}.attachment-details.needs-refresh .attachment-info .edit-attachment{display:none}.attachment-info .edit-attachment{display:block}.media-modal .delete-attachment,.media-modal .trash-attachment,.media-modal .untrash-attachment{display:inline;padding:0;color:#d63638}.media-modal .delete-attachment:focus,.media-modal .delete-attachment:hover,.media-modal .trash-attachment:focus,.media-modal .trash-attachment:hover,.media-modal .untrash-attachment:focus,.media-modal .untrash-attachment:hover{color:#d63638}.attachment-display-settings{width:100%;float:left;overflow:hidden}.collection-settings{overflow:hidden}.collection-settings .setting input[type=checkbox]{float:left;margin-right:8px}.collection-settings .setting .name,.collection-settings .setting span{min-width:inherit}.media-modal .imgedit-wrap{position:static}.media-modal .imgedit-wrap .imgedit-panel-content{padding:16px 16px 0;position:absolute;top:0;right:282px;bottom:0;left:0;overflow:auto}.media-modal .imgedit-wrap .imgedit-submit{margin-bottom:16px}.media-modal .imgedit-wrap .imgedit-settings{background:#f6f7f7;border-left:1px solid #dcdcde;padding:20px 16px 0;position:absolute;top:0;right:0;bottom:0;width:250px;overflow:auto}.media-modal .imgedit-wrap .imgedit-save-target{margin:8px 0 24px}.media-modal .imgedit-group{background:0 0;border:none;border-bottom:1px solid #dcdcde;box-shadow:none;margin:0;margin-bottom:16px;padding:0;padding-bottom:16px;position:relative}.media-modal .imgedit-group:last-of-type{border:none;margin:0;padding:0}.media-modal .imgedit-group-top{margin:0}.media-modal .imgedit-group-top h2,.media-modal .imgedit-group-top h2 .button-link{display:inline-block;text-transform:uppercase;font-size:12px;color:#646970;margin:0;margin-top:3px}.media-modal .imgedit-group-top h2 .button-link,.media-modal .imgedit-group-top h2 a{text-decoration:none;color:#646970}.wp-core-ui.media-modal .image-editor .imgedit-help-toggle,.wp-core-ui.media-modal .image-editor .imgedit-help-toggle:active,.wp-core-ui.media-modal .image-editor .imgedit-help-toggle:hover{border:1px solid transparent;margin:0;padding:0;background:0 0;color:#2271b1;font-size:20px;line-height:1;cursor:pointer;box-sizing:content-box;box-shadow:none}.wp-core-ui.media-modal .image-editor .imgedit-help-toggle:focus{color:#2271b1;border-color:#4f94d4;box-shadow:0 0 3px rgba(34,113,177,.8);outline:2px solid transparent}.wp-core-ui.media-modal .imgedit-group-top .dashicons-arrow-down.imgedit-help-toggle{margin-top:-3px}.wp-core-ui.media-modal .image-editor h3 .imgedit-help-toggle{margin-top:-2px}.media-modal .imgedit-help-toggled span.dashicons:before{content:"\f142"}.media-modal .imgedit-thumbnail-preview{margin:10px 8px 0 0}.imgedit-thumbnail-preview-caption{display:block}.media-modal .imgedit-wrap .notice,.media-modal .imgedit-wrap div.updated{margin:0;margin-bottom:16px}.embed-url{display:block;position:relative;padding:16px;margin:0;z-index:250;background:#fff;font-size:18px}.media-frame .embed-url input{font-size:18px;line-height:1.22222222;padding:12px 40px 12px 14px;width:100%;min-width:200px;box-shadow:inset 2px 2px 4px -2px rgba(0,0,0,.1)}.media-frame .embed-url input::-ms-clear{display:none}.media-frame .embed-url .spinner{position:absolute;top:32px;right:26px}.media-frame .embed-loading .embed-url .spinner{visibility:visible}.embed-link-settings,.embed-media-settings{position:absolute;top:82px;left:0;right:0;bottom:0;padding:0 16px;overflow:auto}.media-embed .embed-link-settings .link-text{margin-top:0}.embed-link-settings::after,.embed-media-settings::after{content:"";display:flex;clear:both;height:24px}.media-embed .embed-link-settings{overflow:visible}.embed-preview embed,.embed-preview iframe,.embed-preview img,.mejs-container video{max-width:100%;vertical-align:middle}.embed-preview a{display:inline-block}.embed-preview img{display:block;height:auto}.mejs-container:focus{outline:1px solid #4f94d4;box-shadow:0 0 2px 1px rgba(79,148,212,.8)}.image-details .media-modal{left:140px;right:140px}.image-details .media-frame-content,.image-details .media-frame-router,.image-details .media-frame-title{left:0}.image-details .embed-media-settings{top:0;overflow:visible;padding:0}.image-details .embed-media-settings::after{content:none}.image-details .embed-media-settings,.image-details .embed-media-settings div{box-sizing:border-box}.image-details .column-settings{background:#f6f7f7;border-right:1px solid #dcdcde;min-height:100%;width:55%;position:absolute;top:0;left:0}.image-details .column-settings h2{margin:20px;padding-top:20px;border-top:1px solid #dcdcde;color:#1d2327}.image-details .column-image{width:45%;position:absolute;left:55%;top:0}.image-details .image{margin:20px}.image-details .image img{max-width:100%;max-height:500px}.image-details .advanced-toggle{padding:0;color:#646970;text-transform:uppercase;text-decoration:none}.image-details .advanced-toggle:active,.image-details .advanced-toggle:hover{color:#646970}.image-details .advanced-toggle:after{font:normal 20px/1 dashicons;speak:never;vertical-align:top;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\f140";display:inline-block;margin-top:-2px}.image-details .advanced-visible .advanced-toggle:after{content:"\f142"}.image-details .custom-size .custom-size-setting,.image-details .custom-size label{display:block;float:left}.image-details .custom-size .custom-size-setting label{float:none}.image-details .custom-size input{width:5em}.image-details .custom-size .sep{float:left;margin:26px 6px 0}.image-details .custom-size .description{margin-left:0}.media-embed .thumbnail{max-width:100%;max-height:200px;position:relative;float:left}.media-embed .thumbnail img{max-height:200px;display:block}.media-embed .thumbnail:after{content:"";display:block;position:absolute;top:0;left:0;right:0;bottom:0;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);overflow:hidden}.media-embed .setting,.media-embed .setting-group{width:100%;margin:10px 0;float:left;display:block;clear:both}.media-embed .setting-group .setting:not(.checkbox-setting){margin:0}.media-embed .setting.has-description{margin-bottom:5px}.media-embed .description{clear:both;font-style:normal}.media-embed .content-track+.description{line-height:1.4;max-width:none!important}.media-embed .remove-track{margin-bottom:10px}.image-details .embed-media-settings .setting,.image-details .embed-media-settings .setting-group{float:none;width:auto}.image-details .actions{margin:10px 0}.image-details .hidden{display:none}.media-embed .setting input[type=text],.media-embed .setting textarea,.media-embed fieldset{display:block;width:100%;max-width:400px}.image-details .embed-media-settings .setting input[type=text],.image-details .embed-media-settings .setting textarea{max-width:inherit;width:70%}.image-details .description,.image-details .embed-media-settings .custom-size,.image-details .embed-media-settings .link-target,.image-details .embed-media-settings .setting input.link-to-custom,.image-details .embed-media-settings .setting-group{margin-left:27%;width:70%}.image-details .description{font-style:normal;margin-top:0}.image-details .embed-media-settings .link-target{margin-top:16px}.audio-details .checkbox-label,.image-details .checkbox-label,.video-details .checkbox-label{vertical-align:baseline}.media-embed .setting input.hidden,.media-embed .setting textarea.hidden{display:none}.media-embed .setting .name,.media-embed .setting span,.media-embed .setting-group .name{display:inline-block;font-size:13px;line-height:1.84615384;color:#646970}.media-embed .setting span{display:block;width:200px}.image-details .embed-media-settings .setting .name,.image-details .embed-media-settings .setting span{float:left;width:25%;text-align:right;margin:8px 1% 0;line-height:1.1}.image-details .embed-media-settings .setting .button-group,.media-frame .setting-group .button-group{width:auto}.media-embed-sidebar{position:absolute;top:0;left:440px}.advanced-section,.link-settings{margin-top:10px}.media-frame .setting .button-group{display:flex;margin:0!important;max-width:none!important}.rtl .media-frame,.rtl .media-frame .search,.rtl .media-frame input[type=email],.rtl .media-frame input[type=number],.rtl .media-frame input[type=password],.rtl .media-frame input[type=search],.rtl .media-frame input[type=tel],.rtl .media-frame input[type=text],.rtl .media-frame input[type=url],.rtl .media-frame select,.rtl .media-frame textarea,.rtl .media-modal{font-family:Tahoma,sans-serif}:lang(he-il) .rtl .media-frame,:lang(he-il) .rtl .media-frame .search,:lang(he-il) .rtl .media-frame input[type=email],:lang(he-il) .rtl .media-frame input[type=number],:lang(he-il) .rtl .media-frame input[type=password],:lang(he-il) .rtl .media-frame input[type=search],:lang(he-il) .rtl .media-frame input[type=text],:lang(he-il) .rtl .media-frame input[type=url],:lang(he-il) .rtl .media-frame select,:lang(he-il) .rtl .media-frame textarea,:lang(he-il) .rtl .media-modal{font-family:Arial,sans-serif}@media only screen and (max-width:900px){.media-modal .media-frame-title{height:40px}.media-modal .media-frame-title h1{line-height:2.22222222;font-size:18px}.media-modal-close{width:42px;height:42px}.media-frame .media-frame-title{position:static;padding:0 44px;text-align:center}.media-frame:not(.hide-menu) .media-frame-content,.media-frame:not(.hide-menu) .media-frame-router,.media-frame:not(.hide-menu) .media-frame-toolbar{left:0}.media-frame:not(.hide-menu) .media-frame-router{top:80px}.media-frame:not(.hide-menu) .media-frame-content{top:114px}.media-frame.hide-router .media-frame-content{top:80px}.media-frame:not(.hide-menu) .media-frame-menu{position:static;width:0}.media-frame:not(.hide-menu) .media-menu{display:none;width:auto;max-width:80%;overflow:auto;z-index:2000;top:75px;left:50%;transform:translateX(-50%);right:auto;bottom:auto;padding:5px 0;border:1px solid #c3c4c7}.media-frame:not(.hide-menu) .media-menu.visible{display:block}.media-frame:not(.hide-menu) .media-menu>a{padding:12px 16px;font-size:16px}.media-frame:not(.hide-menu) .media-menu .separator{margin:5px 10px}.media-frame-menu-heading{clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;padding:0;width:1px;word-wrap:normal!important}.wp-core-ui .media-frame:not(.hide-menu) .button.media-frame-menu-toggle{display:inline-flex;align-items:center;position:absolute;left:50%;transform:translateX(-50%);margin:-6px 0 0;padding:0 2px 0 12px;font-size:.875rem;font-weight:600;text-decoration:none;background:0 0;height:.1%;min-height:40px}.wp-core-ui .button.media-frame-menu-toggle:active,.wp-core-ui .button.media-frame-menu-toggle:hover{background:0 0;transform:none}.wp-core-ui .button.media-frame-menu-toggle:focus{outline:1px solid transparent}.media-sidebar{width:230px}.attachments-browser .attachments,.attachments-browser .attachments-wrapper,.attachments-browser .media-toolbar,.attachments-browser .uploader-inline,.attachments-browser.has-load-more .attachments-wrapper{right:262px}.attachment-details .setting,.media-sidebar .setting{margin:6px 0}.attachment-details .setting .name,.attachment-details .setting input,.attachment-details .setting textarea,.compat-item label span,.media-sidebar .setting .name,.media-sidebar .setting input,.media-sidebar .setting textarea{float:none;display:inline-block}.attachment-details .setting span,.media-sidebar .checkbox-label-inline,.media-sidebar .setting span{float:none}.media-sidebar .setting .select-label-inline{display:inline}.attachment-details .setting .name,.compat-item label span,.media-sidebar .checkbox-label-inline,.media-sidebar .setting .name{text-align:inherit;min-height:16px;margin:0;padding:8px 2px 2px}.attachment-details .attachment-info .copy-to-clipboard-container,.media-sidebar .setting .copy-to-clipboard-container{margin-left:0;padding-top:0}.attachment-details .attachment-info .copy-attachment-url,.media-sidebar .setting .copy-attachment-url{margin:0 1px}.attachment-details .setting .value,.media-sidebar .setting .value{float:none;width:auto}.attachment-details .setting input[type=email],.attachment-details .setting input[type=number],.attachment-details .setting input[type=password],.attachment-details .setting input[type=search],.attachment-details .setting input[type=tel],.attachment-details .setting input[type=text],.attachment-details .setting input[type=url],.attachment-details .setting select,.attachment-details .setting textarea,.attachment-details .setting+.description,.media-sidebar .setting input[type=email],.media-sidebar .setting input[type=number],.media-sidebar .setting input[type=password],.media-sidebar .setting input[type=search],.media-sidebar .setting input[type=tel],.media-sidebar .setting input[type=text],.media-sidebar .setting input[type=url],.media-sidebar .setting select,.media-sidebar .setting textarea{float:none;width:98%;max-width:none;height:auto}.media-frame .media-toolbar input[type=search]{line-height:2.25}.attachment-details .setting select.columns,.media-sidebar .setting select.columns{width:auto}.media-frame .search,.media-frame input,.media-frame textarea{padding:3px 6px}.wp-admin .media-frame select{min-height:40px;font-size:16px;line-height:1.625;padding:5px 24px 5px 8px}.image-details .column-image{width:30%;left:70%}.image-details .column-settings{width:70%}.image-details .media-modal{left:30px;right:30px}.image-details .embed-media-settings .setting,.image-details .embed-media-settings .setting-group{margin:20px}.image-details .embed-media-settings .setting .name,.image-details .embed-media-settings .setting span{float:none;text-align:left;width:100%;margin-bottom:4px;margin-left:0}.media-modal .legend-inline{position:static;transform:none;margin-left:0;margin-bottom:6px}.image-details .embed-media-settings .setting-group .setting{margin-bottom:0}.image-details .embed-media-settings .setting input.link-to-custom,.image-details .embed-media-settings .setting input[type=text],.image-details .embed-media-settings .setting textarea{width:100%;margin-left:0}.image-details .embed-media-settings .setting.has-description{margin-bottom:5px}.image-details .description{width:auto;margin:0 20px}.image-details .embed-media-settings .custom-size{margin-left:20px}.collection-settings .setting input[type=checkbox]{float:none;margin-top:0}.media-selection{min-width:120px}.media-selection:after{background:0 0}.media-selection .attachments{display:none}.media-modal .attachments-browser .media-toolbar .search{max-width:100%;height:auto;float:right}.media-modal .attachments-browser .media-toolbar .attachment-filters{height:auto}.media-frame input[type=email],.media-frame input[type=number],.media-frame input[type=password],.media-frame input[type=search],.media-frame input[type=text],.media-frame input[type=url],.media-frame select,.media-frame textarea{font-size:16px}.media-frame .media-toolbar input[type=search]{line-height:2.3755}.media-modal .media-toolbar .spinner{margin-bottom:10px}}@media screen and (max-width:782px){.attachments-browser .media-toolbar{height:82px}.attachments-browser .attachments,.attachments-browser .uploader-inline{top:82px}.media-frame-toolbar .media-toolbar{bottom:-54px}.mode-grid .attachments-browser .media-toolbar-primary{display:block}.attachment-details .copy-to-clipboard-container .success,.media-sidebar .copy-to-clipboard-container .success{font-size:14px;line-height:2.71428571}}@media only screen and (max-width:640px),screen and (max-height:400px){.image-details .media-modal,.media-modal{position:fixed;top:0;left:0;right:0;bottom:0}.media-modal-backdrop{position:fixed}.media-sidebar{z-index:1900;max-width:70%;bottom:120%;box-sizing:border-box;padding-bottom:0}.media-sidebar.visible{bottom:0}.attachments-browser .attachments,.attachments-browser .media-toolbar,.attachments-browser .uploader-inline,.media-frame-content .attachments-browser .attachments-wrapper{right:0}.attachments-browser .attachments-wrapper{padding-top:12px}.image-details .media-frame-title{display:block;top:0;font-size:14px}.image-details .column-image,.image-details .column-settings{width:100%;position:relative;left:0}.image-details .column-settings{padding:4px 0}.media-frame-content .media-toolbar .instructions{display:none}.load-more-wrapper .load-more-jump{margin:12px 0 0}}@media only screen and (min-width:901px) and (max-height:400px){.media-frame:not(.hide-menu) .media-menu,.media-menu{top:0;padding-top:44px}.load-more-wrapper .load-more-jump{margin:12px 0 0}}@media only screen and (max-width:480px){.wp-core-ui.wp-customizer .media-button{margin-top:13px}}@media print,(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){.wp-core-ui .media-modal-icon{background-image:url(../images/uploader-icons-2x.png);background-size:134px 15px}.media-frame .spinner{background-image:url(../images/spinner-2x.gif)}}.media-frame-content[data-columns="1"] .attachment{width:100%}.media-frame-content[data-columns="2"] .attachment{width:50%}.media-frame-content[data-columns="3"] .attachment{width:33.33%}.media-frame-content[data-columns="4"] .attachment{width:25%}.media-frame-content[data-columns="5"] .attachment{width:20%}.media-frame-content[data-columns="6"] .attachment{width:16.66%}.media-frame-content[data-columns="7"] .attachment{width:14.28%}.media-frame-content[data-columns="8"] .attachment{width:12.5%}.media-frame-content[data-columns="9"] .attachment{width:11.11%}.media-frame-content[data-columns="10"] .attachment{width:10%}.media-frame-content[data-columns="11"] .attachment{width:9.09%}.media-frame-content[data-columns="12"] .attachment{width:8.33%}PKj l\} css/wp-pointer-rtl.min.cssnu[/*! This file is auto-generated */ .wp-pointer-content{padding:0 0 10px;position:relative;font-size:13px;background:#fff;border:1px solid #c3c4c7;box-shadow:0 3px 6px rgba(0,0,0,.08)}.wp-pointer-content h3{position:relative;margin:-1px -1px 5px;padding:15px 60px 14px 18px;border:1px solid #2271b1;border-bottom:none;line-height:1.4;font-size:14px;color:#fff;background:#2271b1}.wp-pointer-content h3:before{background:#fff;border-radius:50%;color:#2271b1;content:"\f227";font:normal 20px/1.6 dashicons;position:absolute;top:8px;right:15px;speak:never;text-align:center;width:32px;height:32px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.wp-pointer-content h4{margin:1.33em 20px 1em;font-size:1.15em}.wp-pointer-content p{padding:0 20px}.wp-pointer-buttons{margin:0;padding:5px 15px;overflow:auto}.wp-pointer-buttons a{float:left;display:inline-block;text-decoration:none}.wp-pointer-buttons a.close{padding-right:3px;position:relative}.wp-pointer-buttons a.close:before{background:0 0;color:#787c82;content:"\f153";display:block!important;font:normal 16px/1 dashicons;speak:never;margin:1px 0;text-align:center;-webkit-font-smoothing:antialiased!important;width:10px;height:100%;position:absolute;right:-15px;top:1px}.wp-pointer-buttons a.close:hover:before{color:#d63638}.wp-pointer-arrow,.wp-pointer-arrow-inner{position:absolute;width:0;height:0}.wp-pointer-arrow{z-index:10;width:0;height:0;border:0 solid transparent}.wp-pointer-arrow-inner{z-index:20}.wp-pointer-top,.wp-pointer-undefined{padding-top:13px}.wp-pointer-bottom{margin-top:-13px;padding-bottom:13px}.wp-pointer-left{padding-left:13px}.wp-pointer-right{margin-left:-13px;padding-right:13px}.wp-pointer-bottom .wp-pointer-arrow,.wp-pointer-top .wp-pointer-arrow,.wp-pointer-undefined .wp-pointer-arrow{right:50px}.wp-pointer-left .wp-pointer-arrow,.wp-pointer-right .wp-pointer-arrow{top:50%;margin-top:-15px}.wp-pointer-top .wp-pointer-arrow,.wp-pointer-undefined .wp-pointer-arrow{top:0;border-width:0 13px 13px;border-bottom-color:#2271b1}.wp-pointer-top .wp-pointer-arrow-inner,.wp-pointer-undefined .wp-pointer-arrow-inner{top:1px;margin-right:-13px;margin-top:-13px;border:13px solid transparent;border-bottom-color:#2271b1;display:block;content:" "}.wp-pointer-bottom .wp-pointer-arrow{bottom:0;border-width:13px 13px 0;border-top-color:#c3c4c7}.wp-pointer-bottom .wp-pointer-arrow-inner{bottom:1px;margin-right:-13px;margin-bottom:-13px;border:13px solid transparent;border-top-color:#fff;display:block;content:" "}.wp-pointer-left .wp-pointer-arrow{left:0;border-width:13px 13px 13px 0;border-right-color:#c3c4c7}.wp-pointer-left .wp-pointer-arrow-inner{left:1px;margin-left:-13px;margin-top:-13px;border:13px solid transparent;border-right-color:#fff;display:block;content:" "}.wp-pointer-right .wp-pointer-arrow{right:0;border-width:13px 0 13px 13px;border-left-color:#c3c4c7}.wp-pointer-right .wp-pointer-arrow-inner{right:1px;margin-right:-13px;margin-top:-13px;border:13px solid transparent;border-left-color:#fff;display:block;content:" "}.wp-pointer.arrow-bottom .wp-pointer-content{margin-bottom:-45px}.wp-pointer.arrow-bottom .wp-pointer-arrow{top:100%;margin-top:-30px}@media screen and (max-width:782px){.wp-pointer{display:none}}PKj l\css/wp-pointer-rtl.cssnu[/*! This file is auto-generated */ .wp-pointer-content { padding: 0 0 10px; position: relative; font-size: 13px; background: #fff; border: 1px solid #c3c4c7; box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08); } .wp-pointer-content h3 { position: relative; margin: -1px -1px 5px; padding: 15px 60px 14px 18px; border: 1px solid #2271b1; border-bottom: none; line-height: 1.4; font-size: 14px; color: #fff; background: #2271b1; } .wp-pointer-content h3:before { background: #fff; border-radius: 50%; color: #2271b1; content: "\f227"; font: normal 20px/1.6 dashicons; position: absolute; top: 8px; right: 15px; speak: never; text-align: center; width: 32px; height: 32px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .wp-pointer-content h4 { margin: 1.33em 20px 1em; font-size: 1.15em; } .wp-pointer-content p { padding: 0 20px; } .wp-pointer-buttons { margin: 0; padding: 5px 15px; overflow: auto; } .wp-pointer-buttons a { float: left; display: inline-block; text-decoration: none; } .wp-pointer-buttons a.close { padding-right: 3px; position: relative; } .wp-pointer-buttons a.close:before { background: none; color: #787c82; content: "\f153"; display: block !important; font: normal 16px/1 dashicons; speak: never; margin: 1px 0; text-align: center; -webkit-font-smoothing: antialiased !important; width: 10px; height: 100%; position: absolute; right: -15px; top: 1px; } .wp-pointer-buttons a.close:hover:before { color: #d63638; } /* The arrow base class must take up no space, even with transparent borders. */ .wp-pointer-arrow, .wp-pointer-arrow-inner { position: absolute; width: 0; height: 0; } .wp-pointer-arrow { z-index: 10; width: 0; height: 0; border: 0 solid transparent; } .wp-pointer-arrow-inner { z-index: 20; } /* Make Room for the Arrow! */ .wp-pointer-top, .wp-pointer-undefined { padding-top: 13px; } .wp-pointer-bottom { margin-top: -13px; padding-bottom: 13px; } /* rtl:ignore */ .wp-pointer-left { padding-left: 13px; } /* rtl:ignore */ .wp-pointer-right { margin-left: -13px; padding-right: 13px; } /* Base Size & Positioning */ .wp-pointer-top .wp-pointer-arrow, .wp-pointer-bottom .wp-pointer-arrow, .wp-pointer-undefined .wp-pointer-arrow { right: 50px; } .wp-pointer-left .wp-pointer-arrow, .wp-pointer-right .wp-pointer-arrow { top: 50%; margin-top: -15px; } /* Arrow Sprite */ .wp-pointer-top .wp-pointer-arrow, .wp-pointer-undefined .wp-pointer-arrow { top: 0; border-width: 0 13px 13px; border-bottom-color: #2271b1; } .wp-pointer-top .wp-pointer-arrow-inner, .wp-pointer-undefined .wp-pointer-arrow-inner { top: 1px; margin-right: -13px; margin-top: -13px; border: 13px solid transparent; border-bottom-color: #2271b1; display: block; content: " "; } .wp-pointer-bottom .wp-pointer-arrow { bottom: 0; border-width: 13px 13px 0; border-top-color: #c3c4c7; } .wp-pointer-bottom .wp-pointer-arrow-inner { bottom: 1px; margin-right: -13px; margin-bottom: -13px; border: 13px solid transparent; border-top-color: #fff; display: block; content: " "; } /* rtl:ignore */ .wp-pointer-left .wp-pointer-arrow { left: 0; border-width: 13px 13px 13px 0; border-right-color: #c3c4c7; } /* rtl:ignore */ .wp-pointer-left .wp-pointer-arrow-inner { left: 1px; margin-left: -13px; margin-top: -13px; border: 13px solid transparent; border-right-color: #fff; display: block; content: " "; } /* rtl:ignore */ .wp-pointer-right .wp-pointer-arrow { right: 0; border-width: 13px 0 13px 13px; border-left-color: #c3c4c7; } /* rtl:ignore */ .wp-pointer-right .wp-pointer-arrow-inner { right: 1px; margin-right: -13px; margin-top: -13px; border: 13px solid transparent; border-left-color: #fff; display: block; content: " "; } .wp-pointer.arrow-bottom .wp-pointer-content { margin-bottom: -45px; } .wp-pointer.arrow-bottom .wp-pointer-arrow { top: 100%; margin-top: -30px; } /* Disable pointers at responsive sizes */ @media screen and (max-width: 782px) { .wp-pointer { display: none; } } PKj l\e)F̀̀css/editor.cssnu[/*------------------------------------------------------------------------------ TinyMCE and Quicklinks toolbars ------------------------------------------------------------------------------*/ /* TinyMCE widgets/containers */ .mce-tinymce { box-shadow: none; } .mce-container, .mce-container *, .mce-widget, .mce-widget * { color: inherit; font-family: inherit; } .mce-container .mce-monospace, .mce-widget .mce-monospace { font-family: Consolas, Monaco, monospace; font-size: 13px; line-height: 150%; } /* TinyMCE windows */ #mce-modal-block, #mce-modal-block.mce-fade { opacity: 0.7; filter: alpha(opacity=70); transition: none; background: #000; } .mce-window { border-radius: 0; box-shadow: 0 3px 6px rgba(0, 0, 0, 0.3); -webkit-font-smoothing: subpixel-antialiased; transition: none; } .mce-window .mce-container-body.mce-abs-layout { overflow: visible; } .mce-window .mce-window-head { background: #fff; border-bottom: 1px solid #dcdcde; padding: 0; min-height: 36px; } .mce-window .mce-window-head .mce-title { color: #3c434a; font-size: 18px; font-weight: 600; line-height: 36px; margin: 0; padding: 0 36px 0 16px; } .mce-window .mce-window-head .mce-close, .mce-window-head .mce-close .mce-i-remove { color: transparent; top: 0; right: 0; width: 36px; height: 36px; padding: 0; line-height: 36px; text-align: center; } .mce-window-head .mce-close .mce-i-remove:before { font: normal 20px/36px dashicons; text-align: center; color: #646970; width: 36px; height: 36px; display: block; } .mce-window-head .mce-close:hover .mce-i-remove:before, .mce-window-head .mce-close:focus .mce-i-remove:before { color: #135e96; } .mce-window-head .mce-close:focus .mce-i-remove, div.mce-tab:focus { box-shadow: 0 0 0 1px #4f94d4, 0 0 2px 1px rgba(79, 148, 212, 0.8); } .mce-window .mce-window-head .mce-dragh { width: calc( 100% - 36px ); } .mce-window .mce-foot { border-top: 1px solid #dcdcde; } .mce-textbox, .mce-checkbox i.mce-i-checkbox, #wp-link .query-results { border: 1px solid #dcdcde; border-radius: 0; box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.07); transition: .05s all ease-in-out; } .mce-textbox:focus, .mce-textbox.mce-focus, .mce-checkbox:focus i.mce-i-checkbox, #wp-link .query-results:focus { border-color: #4f94d4; box-shadow: 0 0 2px rgba(79, 148, 212, 0.8); } .mce-window .mce-wp-help { height: 360px; width: 460px; overflow: auto; } .mce-window .mce-wp-help * { box-sizing: border-box; } .mce-window .mce-wp-help > .mce-container-body { width: auto !important; } .mce-window .wp-editor-help { padding: 10px 10px 0 20px; } .mce-window .wp-editor-help h2, .mce-window .wp-editor-help p { margin: 8px 0; white-space: normal; font-size: 14px; font-weight: 400; } .mce-window .wp-editor-help table { width: 100%; margin-bottom: 20px; } .mce-window .wp-editor-help table.wp-help-single { margin: 0 8px 20px; } .mce-window .wp-editor-help table.fixed { table-layout: fixed; } .mce-window .wp-editor-help table.fixed th:nth-child(odd), .mce-window .wp-editor-help table.fixed td:nth-child(odd) { width: 12%; } .mce-window .wp-editor-help table.fixed th:nth-child(even), .mce-window .wp-editor-help table.fixed td:nth-child(even) { width: 38%; } .mce-window .wp-editor-help table.fixed th:nth-child(odd) { padding: 5px 0 0; } .mce-window .wp-editor-help td, .mce-window .wp-editor-help th { font-size: 13px; padding: 5px; vertical-align: middle; word-wrap: break-word; white-space: normal; } .mce-window .wp-editor-help th { font-weight: 600; padding-bottom: 0; } .mce-window .wp-editor-help kbd { font-family: monospace; padding: 2px 7px 3px; font-weight: 600; margin: 0; background: #f0f0f1; background: rgba(0, 0, 0, 0.08); } .mce-window .wp-help-th-center td:nth-child(odd), .mce-window .wp-help-th-center th:nth-child(odd) { text-align: center; } /* TinyMCE menus */ .mce-menu, .mce-floatpanel.mce-popover { border-color: rgba(0, 0, 0, 0.15); border-radius: 0; box-shadow: 0 3px 5px rgba(0, 0, 0, 0.2); } .mce-menu, .mce-floatpanel.mce-popover.mce-bottom { margin-top: 2px; } .mce-floatpanel .mce-arrow { display: none; } .mce-menu .mce-container-body { min-width: 160px; } .mce-menu-item { border: none; margin-bottom: 2px; padding: 6px 15px 6px 12px; } .mce-menu-has-icons i.mce-ico { line-height: 20px; } /* TinyMCE panel */ div.mce-panel { border: 0; background: #fff; } .mce-panel.mce-menu { border: 1px solid #dcdcde; } div.mce-tab { line-height: 13px; } /* TinyMCE toolbars */ div.mce-toolbar-grp { border-bottom: 1px solid #dcdcde; background: #f6f7f7; padding: 0; position: relative; } div.mce-inline-toolbar-grp { border: 1px solid #a7aaad; border-radius: 2px; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15); box-sizing: border-box; margin-bottom: 8px; position: absolute; -webkit-user-select: none; user-select: none; max-width: 98%; z-index: 100100; /* Same as the other TinyMCE "panels" */ } div.mce-inline-toolbar-grp > div.mce-stack-layout { padding: 1px; } div.mce-inline-toolbar-grp.mce-arrow-up { margin-bottom: 0; margin-top: 8px; } div.mce-inline-toolbar-grp:before, div.mce-inline-toolbar-grp:after { position: absolute; left: 50%; display: block; width: 0; height: 0; border-style: solid; border-color: transparent; content: ""; } div.mce-inline-toolbar-grp.mce-arrow-up:before { top: -9px; border-bottom-color: #a7aaad; border-width: 0 9px 9px; margin-left: -9px; } div.mce-inline-toolbar-grp.mce-arrow-down:before { bottom: -9px; border-top-color: #a7aaad; border-width: 9px 9px 0; margin-left: -9px; } div.mce-inline-toolbar-grp.mce-arrow-up:after { top: -8px; border-bottom-color: #f6f7f7; border-width: 0 8px 8px; margin-left: -8px; } div.mce-inline-toolbar-grp.mce-arrow-down:after { bottom: -8px; border-top-color: #f6f7f7; border-width: 8px 8px 0; margin-left: -8px; } div.mce-inline-toolbar-grp.mce-arrow-left:before, div.mce-inline-toolbar-grp.mce-arrow-left:after { margin: 0; } div.mce-inline-toolbar-grp.mce-arrow-left:before { left: 20px; } div.mce-inline-toolbar-grp.mce-arrow-left:after { left: 21px; } div.mce-inline-toolbar-grp.mce-arrow-right:before, div.mce-inline-toolbar-grp.mce-arrow-right:after { left: auto; margin: 0; } div.mce-inline-toolbar-grp.mce-arrow-right:before { right: 20px; } div.mce-inline-toolbar-grp.mce-arrow-right:after { right: 21px; } div.mce-inline-toolbar-grp.mce-arrow-full { right: 0; } div.mce-inline-toolbar-grp.mce-arrow-full > div { width: 100%; overflow-x: auto; } div.mce-toolbar-grp > div { padding: 3px; } .has-dfw div.mce-toolbar-grp .mce-toolbar.mce-first { padding-right: 32px; } .mce-toolbar .mce-btn-group { margin: 0; } /* Classic block hide/show toolbars */ .block-library-classic__toolbar .mce-toolbar-grp .mce-toolbar:not(:first-child) { display: none; } .block-library-classic__toolbar.has-advanced-toolbar .mce-toolbar-grp .mce-toolbar { display: block; } div.mce-statusbar { border-top: 1px solid #dcdcde; } div.mce-path { padding: 2px 10px; margin: 0; } .mce-path, .mce-path-item, .mce-path .mce-divider { font-size: 12px; } .mce-toolbar .mce-btn, .qt-dfw { border-color: transparent; background: transparent; box-shadow: none; text-shadow: none; cursor: pointer; } .mce-btn .mce-txt { direction: inherit; text-align: inherit; } .mce-toolbar .mce-btn-group .mce-btn, .qt-dfw { border: 1px solid transparent; margin: 2px; border-radius: 2px; } .mce-toolbar .mce-btn-group .mce-btn:hover, .mce-toolbar .mce-btn-group .mce-btn:focus, .qt-dfw:hover, .qt-dfw:focus { background: #f6f7f7; border-color: #50575e; color: #1d2327; box-shadow: inset 0 1px 0 #fff, 0 1px 0 rgba(0, 0, 0, 0.08); outline: none; } .mce-toolbar .mce-btn-group .mce-btn.mce-active, .mce-toolbar .mce-btn-group .mce-btn:active, .qt-dfw.active { background: #f0f0f1; border-color: #50575e; box-shadow: inset 0 2px 5px -3px rgba(0, 0, 0, 0.3); } .mce-btn.mce-active, .mce-btn.mce-active button, .mce-btn.mce-active:hover button, .mce-btn.mce-active i, .mce-btn.mce-active:hover i { color: inherit; } .mce-toolbar .mce-btn-group .mce-btn.mce-active:hover, .mce-toolbar .mce-btn-group .mce-btn.mce-active:focus { border-color: #1d2327; } .mce-toolbar .mce-btn-group .mce-btn.mce-disabled:hover, .mce-toolbar .mce-btn-group .mce-btn.mce-disabled:focus { color: #a7aaad; background: none; border-color: #dcdcde; text-shadow: 0 1px 0 #fff; box-shadow: none; } .mce-toolbar .mce-btn-group .mce-btn.mce-disabled:focus { border-color: #50575e; } .mce-toolbar .mce-btn-group .mce-first, .mce-toolbar .mce-btn-group .mce-last { border-color: transparent; } .mce-toolbar .mce-btn button, .qt-dfw { padding: 2px 3px; line-height: normal; } .mce-toolbar .mce-listbox button { font-size: 13px; line-height: 1.53846153; padding-left: 6px; padding-right: 20px; } .mce-toolbar .mce-btn i { text-shadow: none; } .mce-toolbar .mce-btn-group > div { white-space: normal; } .mce-toolbar .mce-colorbutton .mce-open { border-right: 0; } .mce-toolbar .mce-colorbutton .mce-preview { margin: 0; padding: 0; top: auto; bottom: 2px; left: 3px; height: 3px; width: 20px; background: #50575e; } .mce-toolbar .mce-btn-group .mce-btn.mce-primary { min-width: 0; background: #3582c4; border-color: #2271b1 #135e96 #135e96; box-shadow: 0 1px 0 #135e96; color: #fff; text-decoration: none; text-shadow: none; } /* Compensate for the extra box shadow at the bottom of .mce-btn.mce-primary */ .mce-toolbar .mce-btn-group .mce-btn.mce-primary button { padding: 2px 3px 1px; } .mce-toolbar .mce-btn-group .mce-btn.mce-primary .mce-ico { color: #fff; } .mce-toolbar .mce-btn-group .mce-btn.mce-primary:hover, .mce-toolbar .mce-btn-group .mce-btn.mce-primary:focus { background: #4f94d4; border-color: #135e96; color: #fff; } .mce-toolbar .mce-btn-group .mce-btn.mce-primary:focus { box-shadow: 0 0 1px 1px #72aee6; } .mce-toolbar .mce-btn-group .mce-btn.mce-primary:active { background: #2271b1; border-color: #135e96; box-shadow: inset 0 2px 0 #135e96; } /* mce listbox */ .mce-toolbar .mce-btn-group .mce-btn.mce-listbox { border-radius: 0; direction: ltr; background: #fff; border: 1px solid #dcdcde; box-shadow: inset 0 1px 1px -1px rgba(0, 0, 0, 0.2); } .mce-toolbar .mce-btn-group .mce-btn.mce-listbox:hover, .mce-toolbar .mce-btn-group .mce-btn.mce-listbox:focus { border-color: #c3c4c7; } .mce-panel .mce-btn i.mce-caret { border-top: 6px solid #50575e; margin-left: 2px; margin-right: 2px; } .mce-listbox i.mce-caret { right: 4px; } .mce-panel .mce-btn:hover i.mce-caret, .mce-panel .mce-btn:focus i.mce-caret { border-top-color: #1d2327; } .mce-panel .mce-active i.mce-caret { border-top: 0; border-bottom: 6px solid #1d2327; margin-top: 7px; } .mce-listbox.mce-active i.mce-caret { margin-top: -3px; } .mce-toolbar .mce-splitbtn:hover .mce-open { border-right-color: transparent; } .mce-toolbar .mce-splitbtn .mce-open.mce-active { background: transparent; outline: none; } .mce-menu .mce-menu-item:hover, .mce-menu .mce-menu-item.mce-selected, .mce-menu .mce-menu-item:focus, .mce-menu .mce-menu-item.mce-active.mce-menu-item-normal, .mce-menu .mce-menu-item.mce-active.mce-menu-item-preview { background: #2271b1; /* See color scheme. */ color: #fff; } .mce-menu .mce-menu-item:hover .mce-caret, .mce-menu .mce-menu-item:focus .mce-caret, .mce-menu .mce-menu-item.mce-selected .mce-caret { border-left-color: #fff; } /* rtl:ignore */ .rtl .mce-menu .mce-menu-item:hover .mce-caret, .rtl .mce-menu .mce-menu-item:focus .mce-caret, .rtl .mce-menu .mce-menu-item.mce-selected .mce-caret { border-left-color: inherit; border-right-color: #fff; } .mce-menu .mce-menu-item:hover .mce-text, .mce-menu .mce-menu-item:focus .mce-text, .mce-menu .mce-menu-item:hover .mce-ico, .mce-menu .mce-menu-item:focus .mce-ico, .mce-menu .mce-menu-item.mce-selected .mce-text, .mce-menu .mce-menu-item.mce-selected .mce-ico, .mce-menu .mce-menu-item:hover .mce-menu-shortcut, .mce-menu .mce-menu-item:focus .mce-menu-shortcut, .mce-menu .mce-menu-item.mce-active .mce-menu-shortcut, .mce-menu .mce-menu-item.mce-disabled:hover .mce-text, .mce-menu .mce-menu-item.mce-disabled:hover .mce-ico { color: inherit; } .mce-menu .mce-menu-item.mce-disabled { cursor: default; } .mce-menu .mce-menu-item.mce-disabled:hover { background: #c3c4c7; } /* Menubar */ div.mce-menubar { border-color: #dcdcde; background: #fff; border-width: 0 0 1px; } .mce-menubar .mce-menubtn:hover, .mce-menubar .mce-menubtn.mce-active, .mce-menubar .mce-menubtn:focus { border-color: transparent; background: transparent; } .mce-menubar .mce-menubtn:focus { color: #043959; box-shadow: 0 0 0 1px #4f94d4, 0 0 2px 1px rgba(79, 148, 212, 0.8); } div.mce-menu .mce-menu-item-sep, .mce-menu-item-sep:hover { border-bottom: 1px solid #dcdcde; height: 0; margin: 5px 0; } .mce-menubtn span { margin-right: 0; padding-left: 3px; } .mce-menu-has-icons i.mce-ico:before { margin-left: -2px; } /* Keyboard shortcuts position */ .mce-menu.mce-menu-align .mce-menu-item-normal { position: relative; } .mce-menu.mce-menu-align .mce-menu-shortcut { bottom: 0.6em; font-size: 0.9em; } /* Buttons in modals */ .mce-primary button, .mce-primary button i { text-align: center; color: #fff; text-shadow: none; padding: 0; line-height: 1.85714285; } .mce-window .mce-btn { color: #50575e; background: #f6f7f7; text-decoration: none; font-size: 13px; line-height: 26px; height: 28px; margin: 0; padding: 0; cursor: pointer; border: 1px solid #c3c4c7; -webkit-appearance: none; border-radius: 3px; white-space: nowrap; box-shadow: 0 1px 0 #c3c4c7; } /* Remove the dotted border on :focus and the extra padding in Firefox */ .mce-window .mce-btn::-moz-focus-inner { border-width: 0; border-style: none; padding: 0; } .mce-window .mce-btn:hover, .mce-window .mce-btn:focus { background: #f6f7f7; border-color: #8c8f94; color: #1d2327; } .mce-window .mce-btn:focus { border-color: #4f94d4; box-shadow: 0 0 3px rgba(34, 113, 177, 0.8); } .mce-window .mce-btn:active { background: #f0f0f1; border-color: #8c8f94; box-shadow: inset 0 2px 5px -3px rgba(0, 0, 0, 0.5); transform: translateY(1px); } .mce-window .mce-btn.mce-disabled { color: #a7aaad !important; border-color: #dcdcde !important; background: #f6f7f7 !important; box-shadow: none !important; text-shadow: 0 1px 0 #fff !important; cursor: default; transform: none !important; } .mce-window .mce-btn.mce-primary { background: #3582c4; border-color: #2271b1 #135e96 #135e96; box-shadow: 0 1px 0 #135e96; color: #fff; text-decoration: none; text-shadow: 0 -1px 1px #135e96, 1px 0 1px #135e96, 0 1px 1px #135e96, -1px 0 1px #135e96; } .mce-window .mce-btn.mce-primary:hover, .mce-window .mce-btn.mce-primary:focus { background: #4f94d4; border-color: #135e96; color: #fff; } .mce-window .mce-btn.mce-primary:focus { box-shadow: 0 1px 0 #2271b1, 0 0 2px 1px #72aee6; } .mce-window .mce-btn.mce-primary:active { background: #2271b1; border-color: #135e96; box-shadow: inset 0 2px 0 #135e96; vertical-align: top; } .mce-window .mce-btn.mce-primary.mce-disabled { color: #9ec2e6 !important; background: #4f94d4 !important; border-color: #3582c4 !important; box-shadow: none !important; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.1) !important; cursor: default; } .mce-menubtn.mce-fixed-width span { overflow-x: hidden; text-overflow: ellipsis; width: 82px; } /* Charmap modal */ .mce-charmap { margin: 3px; } .mce-charmap td { padding: 0; border-color: #dcdcde; cursor: pointer; } .mce-charmap td:hover { background: #f6f7f7; } .mce-charmap td div { width: 18px; height: 22px; line-height: 1.57142857; } /* TinyMCE tooltips */ .mce-tooltip { margin-top: 2px; } .mce-tooltip-inner { border-radius: 3px; box-shadow: 0 3px 5px rgba(0, 0, 0, 0.2); color: #fff; font-size: 12px; } /* TinyMCE icons */ .mce-ico { font-family: tinymce, Arial; } .mce-btn-small .mce-ico { font-family: tinymce-small, Arial; } .mce-toolbar .mce-ico { color: #50575e; line-height: 1; width: 20px; height: 20px; text-align: center; text-shadow: none; margin: 0; padding: 0; } .qt-dfw { color: #50575e; line-height: 1; width: 28px; height: 26px; text-align: center; text-shadow: none; } .mce-toolbar .mce-btn .mce-open { line-height: 20px; } .mce-toolbar .mce-btn:hover .mce-open, .mce-toolbar .mce-btn:focus .mce-open, .mce-toolbar .mce-btn.mce-active .mce-open { border-left-color: #1d2327; } div.mce-notification { left: 10% !important; right: 10%; } .mce-notification button.mce-close { right: 6px; top: 3px; font-weight: 400; color: #50575e; } .mce-notification button.mce-close:hover, .mce-notification button.mce-close:focus { color: #000; } i.mce-i-bold, i.mce-i-italic, i.mce-i-bullist, i.mce-i-numlist, i.mce-i-blockquote, i.mce-i-alignleft, i.mce-i-aligncenter, i.mce-i-alignright, i.mce-i-link, i.mce-i-unlink, i.mce-i-wp_more, i.mce-i-strikethrough, i.mce-i-spellchecker, i.mce-i-fullscreen, i.mce-i-wp_fullscreen, i.mce-i-dfw, i.mce-i-wp_adv, i.mce-i-underline, i.mce-i-alignjustify, i.mce-i-forecolor, i.mce-i-backcolor, i.mce-i-pastetext, i.mce-i-pasteword, i.mce-i-removeformat, i.mce-i-charmap, i.mce-i-outdent, i.mce-i-indent, i.mce-i-undo, i.mce-i-redo, i.mce-i-help, i.mce-i-wp_help, i.mce-i-wp-media-library, i.mce-i-ltr, i.mce-i-wp_page, i.mce-i-hr, i.mce-i-wp_code, i.mce-i-dashicon, i.mce-i-remove { font: normal 20px/1 dashicons; padding: 0; vertical-align: top; speak: never; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; margin-left: -2px; padding-right: 2px; } .qt-dfw { font: normal 20px/1 dashicons; vertical-align: top; speak: never; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } i.mce-i-bold:before { content: "\f200"; } i.mce-i-italic:before { content: "\f201"; } i.mce-i-bullist:before { content: "\f203"; } i.mce-i-numlist:before { content: "\f204"; } i.mce-i-blockquote:before { content: "\f205"; } i.mce-i-alignleft:before { content: "\f206"; } i.mce-i-aligncenter:before { content: "\f207"; } i.mce-i-alignright:before { content: "\f208"; } i.mce-i-link:before { content: "\f103"; } i.mce-i-unlink:before { content: "\f225"; } i.mce-i-wp_more:before { content: "\f209"; } i.mce-i-strikethrough:before { content: "\f224"; } i.mce-i-spellchecker:before { content: "\f210"; } i.mce-i-fullscreen:before, i.mce-i-wp_fullscreen:before, i.mce-i-dfw:before, .qt-dfw:before { content: "\f211"; } i.mce-i-wp_adv:before { content: "\f212"; } i.mce-i-underline:before { content: "\f213"; } i.mce-i-alignjustify:before { content: "\f214"; } i.mce-i-forecolor:before, i.mce-i-backcolor:before { content: "\f215"; } i.mce-i-pastetext:before { content: "\f217"; } i.mce-i-removeformat:before { content: "\f218"; } i.mce-i-charmap:before { content: "\f220"; } i.mce-i-outdent:before { content: "\f221"; } i.mce-i-indent:before { content: "\f222"; } i.mce-i-undo:before { content: "\f171"; } i.mce-i-redo:before { content: "\f172"; } i.mce-i-help:before, i.mce-i-wp_help:before { content: "\f223"; } i.mce-i-wp-media-library:before { content: "\f104"; } i.mce-i-ltr:before { content: "\f320"; } i.mce-i-wp_page:before { content: "\f105"; } i.mce-i-hr:before { content: "\f460"; } i.mce-i-remove:before { content: "\f158"; } i.mce-i-wp_code:before { content: "\f475"; } /* RTL button icons */ .rtl i.mce-i-outdent:before { content: "\f222"; } .rtl i.mce-i-indent:before { content: "\f221"; } /* Editors */ .wp-editor-wrap { position: relative; } .wp-editor-tools { position: relative; z-index: 1; } .wp-editor-tools:after { clear: both; content: ""; display: table; } .wp-editor-container { clear: both; border: 1px solid #dcdcde; } .wp-editor-area { font-family: Consolas, Monaco, monospace; font-size: 13px; padding: 10px; margin: 1px 0 0; line-height: 150%; border: 0; outline: none; display: block; resize: vertical; box-sizing: border-box; } .rtl .wp-editor-area { font-family: Tahoma, Monaco, monospace; } .locale-he-il .wp-editor-area { font-family: Arial, Monaco, monospace; } .wp-editor-container textarea.wp-editor-area { width: 100%; margin: 0; box-shadow: none; } .wp-editor-tabs { float: right; } .wp-switch-editor { float: left; box-sizing: content-box; position: relative; top: 1px; background: #f0f0f1; color: #646970; cursor: pointer; font-size: 13px; line-height: 1.46153846; height: 20px; margin: 5px 0 0 5px; padding: 3px 8px 4px; border: 1px solid #dcdcde; } .wp-switch-editor:focus { box-shadow: 0 0 0 1px #4f94d4, 0 0 2px 1px rgba(79, 148, 212, 0.8); outline: none; color: #1d2327; } .wp-switch-editor:active, .html-active .switch-html:focus, .tmce-active .switch-tmce:focus { box-shadow: none; } .wp-switch-editor:active { background-color: #f6f7f7; box-shadow: none; } .js .tmce-active .wp-editor-area { color: #fff; } .tmce-active .quicktags-toolbar { display: none; } .tmce-active .switch-tmce, .html-active .switch-html { background: #f6f7f7; color: #50575e; border-bottom-color: #f6f7f7; } .wp-media-buttons { float: left; } .wp-media-buttons .button { margin-right: 5px; margin-bottom: 4px; padding-left: 7px; padding-right: 7px; } .wp-media-buttons .button:active { position: relative; top: 1px; margin-top: -1px; margin-bottom: 1px; } .wp-media-buttons .insert-media { padding-left: 5px; } .wp-media-buttons a { text-decoration: none; color: #3c434a; font-size: 12px; } .wp-media-buttons img { padding: 0 4px; vertical-align: middle; } .wp-media-buttons span.wp-media-buttons-icon { display: inline-block; width: 20px; height: 20px; line-height: 1; vertical-align: middle; margin: 0 2px; } .wp-media-buttons .add_media span.wp-media-buttons-icon { background: none; } .wp-media-buttons .add_media span.wp-media-buttons-icon:before { font: normal 18px/1 dashicons; speak: never; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .wp-media-buttons .add_media span.wp-media-buttons-icon:before { content: "\f104"; } .mce-content-body dl.wp-caption { max-width: 100%; } /* Quicktags */ .quicktags-toolbar { padding: 3px; position: relative; border-bottom: 1px solid #dcdcde; background: #f6f7f7; min-height: 30px; } .has-dfw .quicktags-toolbar { padding-right: 35px; } .wp-core-ui .quicktags-toolbar input.button.button-small { margin: 2px; } .quicktags-toolbar input[value="link"] { text-decoration: underline; } .quicktags-toolbar input[value="del"] { text-decoration: line-through; } .quicktags-toolbar input[value="i"] { font-style: italic; } .quicktags-toolbar input[value="b"] { font-weight: 600; } .mce-toolbar .mce-btn-group .mce-btn.mce-wp-dfw, .qt-dfw { position: absolute; top: 0; right: 0; } .mce-toolbar .mce-btn-group .mce-btn.mce-wp-dfw { margin: 7px 7px 0 0; } .qt-dfw { margin: 5px 5px 0 0; } .qt-fullscreen { position: static; margin: 2px; } @media screen and (max-width: 782px) { .mce-toolbar .mce-btn button, .qt-dfw { padding: 6px 7px; } /* Compensate for the extra box shadow at the bottom of .mce-btn.mce-primary */ .mce-toolbar .mce-btn-group .mce-btn.mce-primary button { padding: 6px 7px 5px; } .mce-toolbar .mce-btn-group .mce-btn { margin: 1px; } .qt-dfw { width: 36px; height: 34px; } .mce-toolbar .mce-btn-group .mce-btn.mce-wp-dfw { margin: 4px 4px 0 0; } .mce-toolbar .mce-colorbutton .mce-preview { left: 8px; bottom: 6px; } .mce-window .mce-btn { padding: 2px 0; } .has-dfw div.mce-toolbar-grp .mce-toolbar.mce-first, .has-dfw .quicktags-toolbar { padding-right: 40px; } } @media screen and (min-width: 782px) { .wp-core-ui .quicktags-toolbar input.button.button-small { /* .button-small is normally 11px, but a bit too small for these buttons. */ font-size: 12px; min-height: 26px; line-height: 2; } } #wp_editbtns, #wp_gallerybtns { padding: 2px; position: absolute; display: none; z-index: 100020; } #wp_editimgbtn, #wp_delimgbtn, #wp_editgallery, #wp_delgallery { background-color: #f0f0f1; margin: 2px; padding: 2px; border: 1px solid #8c8f94; border-radius: 3px; } #wp_editimgbtn:hover, #wp_delimgbtn:hover, #wp_editgallery:hover, #wp_delgallery:hover { border-color: #50575e; background-color: #c3c4c7; } /*------------------------------------------------------------------------------ wp-link ------------------------------------------------------------------------------*/ #wp-link-wrap { display: none; background-color: #fff; box-shadow: 0 3px 6px rgba(0, 0, 0, 0.3); width: 500px; overflow: hidden; margin-left: -250px; margin-top: -125px; position: fixed; top: 50%; left: 50%; z-index: 100105; transition: height 0.2s, margin-top 0.2s; } #wp-link-backdrop { display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; min-height: 360px; background: #000; opacity: 0.7; filter: alpha(opacity=70); z-index: 100100; } #wp-link { position: relative; height: 100%; } #wp-link-wrap { height: 500px; margin-top: -250px; } #wp-link-wrap .wp-link-text-field { display: none; } #wp-link-wrap.has-text-field .wp-link-text-field { display: block; } #link-modal-title { background: #fff; border-bottom: 1px solid #dcdcde; height: 36px; font-size: 18px; font-weight: 600; line-height: 2; margin: 0; padding: 0 36px 0 16px; } #wp-link-close { color: #646970; padding: 0; position: absolute; top: 0; right: 0; width: 36px; height: 36px; text-align: center; background: none; border: none; cursor: pointer; } #wp-link-close:before { font: normal 20px/36px dashicons; vertical-align: top; speak: never; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; width: 36px; height: 36px; content: "\f158"; } #wp-link-close:hover, #wp-link-close:focus { color: #135e96; } #wp-link-close:focus { outline: none; box-shadow: 0 0 0 1px #4f94d4, 0 0 2px 1px rgba(79, 148, 212, 0.8); /* Only visible in Windows High Contrast mode */ outline: 2px solid transparent; outline-offset: -2px; } #wp-link-wrap #link-selector { -webkit-overflow-scrolling: touch; padding: 0 16px; position: absolute; top: 37px; left: 0; right: 0; bottom: 44px; } #wp-link ol, #wp-link ul { list-style: none; margin: 0; padding: 0; } #wp-link input[type="text"] { box-sizing: border-box; } #wp-link #link-options { padding: 8px 0 12px; } #wp-link p.howto { margin: 3px 0; } #wp-link p.howto a { text-decoration: none; color: inherit; } #wp-link label input[type="text"] { margin-top: 5px; width: 70%; } #wp-link #link-options label span, #wp-link #search-panel label span.search-label { display: inline-block; width: 80px; text-align: right; padding-right: 5px; max-width: 24%; vertical-align: middle; word-wrap: break-word; } #wp-link .link-search-field { width: 250px; max-width: 70%; } #wp-link .link-search-wrapper { margin: 5px 0 9px; display: block; overflow: hidden; } #wp-link .link-search-wrapper .spinner { float: none; margin: -3px 0 0 4px; } #wp-link .link-target { padding: 3px 0 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } #wp-link .link-target label { max-width: 70%; } #wp-link .query-results { border: 1px #dcdcde solid; margin: 0 0 12px; background: #fff; overflow: auto; position: absolute; left: 16px; right: 16px; bottom: 0; top: 166px; } .has-text-field #wp-link .query-results { top: 210px; } #wp-link li { clear: both; margin-bottom: 0; border-bottom: 1px solid #f0f0f1; color: #2c3338; padding: 4px 6px 4px 10px; cursor: pointer; position: relative; } #wp-link .query-notice { padding: 0; border-bottom: 1px solid #dcdcde; background-color: #fff; color: #000; } #wp-link .query-notice .query-notice-default, #wp-link .query-notice .query-notice-hint { display: block; padding: 6px; border-left: 4px solid #72aee6; } #wp-link .unselectable.no-matches-found { padding: 0; border-bottom: 1px solid #dcdcde; background-color: #f6f7f7; } #wp-link .no-matches-found .item-title { display: block; padding: 6px; border-left: 4px solid #d63638; } #wp-link .query-results em { font-style: normal; } #wp-link li:hover { background: #f0f6fc; color: #101517; } #wp-link li.unselectable { border-bottom: 1px solid #dcdcde; } #wp-link li.unselectable:hover { background: #fff; cursor: auto; color: #2c3338; } #wp-link li.selected { background: #dcdcde; color: #2c3338; } #wp-link li.selected .item-title { font-weight: 600; } #wp-link li:last-child { border: none; } #wp-link .item-title { display: inline-block; width: 80%; width: calc(100% - 68px); word-wrap: break-word; } #wp-link .item-info { text-transform: uppercase; color: #646970; font-size: 11px; position: absolute; right: 5px; top: 5px; } #wp-link .river-waiting { display: none; padding: 10px 0; } #wp-link .submitbox { padding: 8px 16px; background: #fff; border-top: 1px solid #dcdcde; position: absolute; bottom: 0; left: 0; right: 0; } #wp-link-cancel { line-height: 1.92307692; float: left; } #wp-link-update { line-height: 1.76923076; float: right; } #wp-link-submit { float: right; } @media screen and (max-width: 782px) { #wp-link-wrap { margin-top: -140px; } #wp-link-wrap .query-results { top: 195px; } #wp-link-wrap.has-text-field .query-results { top: 235px; } #link-selector { padding: 0 16px 60px; } #wp-link-wrap #link-selector { bottom: 52px; } #wp-link-cancel { line-height: 2.46153846; } #wp-link .link-target { padding-top: 10px; } #wp-link .submitbox .button { margin-bottom: 0; } } @media screen and (max-width: 520px) { #wp-link-wrap { width: auto; margin-left: 0; left: 10px; right: 10px; max-width: 500px; } } @media screen and (max-height: 520px) { #wp-link-wrap { transition: none; height: auto; margin-top: 0; top: 10px; bottom: 10px; } #link-selector { overflow: auto; } #search-panel .query-results { position: static; } } @media screen and (max-height: 290px) { #wp-link-wrap { height: auto; margin-top: 0; top: 10px; bottom: 10px; } #link-selector { overflow: auto; height: calc(100% - 92px); padding-bottom: 2px; } #search-panel .query-results { position: static; } } div.wp-link-preview { float: left; margin: 5px; max-width: 694px; overflow: hidden; text-overflow: ellipsis; } div.wp-link-preview a { color: #2271b1; text-decoration: underline; transition-property: border, background, color; transition-duration: .05s; transition-timing-function: ease-in-out; cursor: pointer; } div.wp-link-preview a.wplink-url-error { color: #d63638; } div.wp-link-input { float: left; margin: 2px; max-width: 694px; } div.wp-link-input input { width: 300px; padding: 3px; box-sizing: border-box; line-height: 1.28571429; /* 18px */ /* Override value inherited from default input fields. */ min-height: 26px; } .mce-toolbar div.wp-link-preview ~ .mce-btn, .mce-toolbar div.wp-link-input ~ .mce-btn { margin: 2px 1px; } .mce-inline-toolbar-grp .mce-btn-group .mce-btn:last-child { margin-right: 2px; } .ui-autocomplete.wplink-autocomplete { z-index: 100110; max-height: 200px; overflow-y: auto; padding: 0; margin: 0; list-style: none; position: absolute; border: 1px solid #4f94d4; box-shadow: 0 1px 2px rgba(79, 148, 212, 0.8); background-color: #fff; } .ui-autocomplete.wplink-autocomplete li { margin-bottom: 0; padding: 4px 10px; clear: both; white-space: normal; text-align: left; } .ui-autocomplete.wplink-autocomplete li .wp-editor-float-right { float: right; } .ui-autocomplete.wplink-autocomplete li.ui-state-focus { background-color: #dcdcde; cursor: pointer; } @media screen and (max-width: 782px) { div.wp-link-preview, div.wp-link-input { max-width: 70%; max-width: calc(100% - 86px); } div.wp-link-preview { margin: 8px 0 8px 5px; } div.wp-link-input { width: 300px; } div.wp-link-input input { width: 100%; font-size: 16px; padding: 5px; } } /* =Overlay Body -------------------------------------------------------------- */ .mce-fullscreen { z-index: 100010; } /* =Localization -------------------------------------------------------------- */ .rtl .wp-switch-editor, .rtl .quicktags-toolbar input { font-family: Tahoma, sans-serif; } /* rtl:ignore */ .mce-rtl .mce-flow-layout .mce-flow-layout-item > div { direction: rtl; } /* rtl:ignore */ .mce-rtl .mce-listbox i.mce-caret { left: 6px; } html:lang(he-il) .rtl .wp-switch-editor, html:lang(he-il) .rtl .quicktags-toolbar input { font-family: Arial, sans-serif; } /* HiDPI */ @media print, (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) { .wp-media-buttons .add_media span.wp-media-buttons-icon { background: none; } } PKj l\͞css/wp-embed-template-ie.cssnu[.dashicons-no { background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAQAAAAngNWGAAAAcElEQVR4AdXRVxmEMBAGwJMQCUhAIhKQECmRsFJwMFfp7HfP/E8pk0173CuKpt/0R+WaBaaZqogLagBMuh+DdoKbyRCwqZ/SnM0R5oQuZ2UHS8Z6k23qPxZCTrV5UlHMi8bsfHVXP7K/GXZHaTO7S54CWLdHlN2YIwAAAABJRU5ErkJggg==); } .dashicons-admin-comments { background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAATUlEQVR4AWMYWqCpvUcAiA8A8X9iMFStAD4DG0AKScQNVDZw1MBRAwvIMLCA5jmFlCD4AMQGlOTtBgoNwzQQ3TCKDaTcMMxYN2AYVgAAYPKsEBxN0PIAAAAASUVORK5CYII=); } .wp-embed-comments a:hover .dashicons-admin-comments { background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAATElEQVR4AWMYYqB4lQAQHwDi/8RgqFoBfAY2gBSSiBuobOCogaMGFpBhYAEdcwrhIPgAxAaU5O0GCg3DNBDdMIoNpNwwzFg3YBhWAABG71qAFYcFqgAAAABJRU5ErkJggg==); } .dashicons-share { background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAc0lEQVR4AWMYfqCpvccAiBcA8X8gfgDEBZQaeAFkGBoOoMR1/7HgDeQa2ECZgQiDHID4AMwAor0MCmBoQP+HBnwAskFQdgBRkQJViGk7wiAHUr21AYdhDTA1dDOQHl6mPFLokmwoT9j0z3qUFw70L77oDwAiuzCIub1XpQAAAABJRU5ErkJggg==); } .wp-embed-share-dialog-open:hover .dashicons-share { background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAc0lEQVR4AWMYhqB4lQEQLwDi/0D8AIgLKDXwAsgwNBxAiev+Y8EbyDWwgTIDEQY5APEBmAFEexkUwNCA/g8N+ABkg6DsAKIiBaoQ03aEQQ6kemsDDsMaYEroZiA9vEx5pNAl2VCesOmf9SgvHOhffNEfAAAMqPR5IEZH5wAAAABJRU5ErkJggg==); } PKj l\SxT55css/wp-embed-template.min.cssnu[/*! This file is auto-generated */ body,html{padding:0;margin:0}body{font-family:sans-serif}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.dashicons{display:inline-block;width:20px;height:20px;background-color:transparent;background-repeat:no-repeat;background-size:20px;background-position:center;transition:background .1s ease-in;position:relative;top:5px}.dashicons-no{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2020%2020%27%3E%3Cpath%20d%3D%27M15.55%2013.7l-2.19%202.06-3.42-3.65-3.64%203.43-2.06-2.18%203.64-3.43-3.42-3.64%202.18-2.06%203.43%203.64%203.64-3.42%202.05%202.18-3.64%203.43z%27%20fill%3D%27%23fff%27%2F%3E%3C%2Fsvg%3E")}.dashicons-admin-comments{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2020%2020%27%3E%3Cpath%20d%3D%27M5%202h9q.82%200%201.41.59T16%204v7q0%20.82-.59%201.41T14%2013h-2l-5%205v-5H5q-.82%200-1.41-.59T3%2011V4q0-.82.59-1.41T5%202z%27%20fill%3D%27%2382878c%27%2F%3E%3C%2Fsvg%3E")}.wp-embed-comments a:hover .dashicons-admin-comments{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2020%2020%27%3E%3Cpath%20d%3D%27M5%202h9q.82%200%201.41.59T16%204v7q0%20.82-.59%201.41T14%2013h-2l-5%205v-5H5q-.82%200-1.41-.59T3%2011V4q0-.82.59-1.41T5%202z%27%20fill%3D%27%230073aa%27%2F%3E%3C%2Fsvg%3E")}.dashicons-share{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2020%2020%27%3E%3Cpath%20d%3D%27M14.5%2012q1.24%200%202.12.88T17.5%2015t-.88%202.12-2.12.88-2.12-.88T11.5%2015q0-.34.09-.69l-4.38-2.3Q6.32%2013%205%2013q-1.24%200-2.12-.88T2%2010t.88-2.12T5%207q1.3%200%202.21.99l4.38-2.3q-.09-.35-.09-.69%200-1.24.88-2.12T14.5%202t2.12.88T17.5%205t-.88%202.12T14.5%208q-1.3%200-2.21-.99l-4.38%202.3Q8%209.66%208%2010t-.09.69l4.38%202.3q.89-.99%202.21-.99z%27%20fill%3D%27%2382878c%27%2F%3E%3C%2Fsvg%3E");display:none}.js .dashicons-share{display:inline-block}.wp-embed-share-dialog-open:hover .dashicons-share{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2020%2020%27%3E%3Cpath%20d%3D%27M14.5%2012q1.24%200%202.12.88T17.5%2015t-.88%202.12-2.12.88-2.12-.88T11.5%2015q0-.34.09-.69l-4.38-2.3Q6.32%2013%205%2013q-1.24%200-2.12-.88T2%2010t.88-2.12T5%207q1.3%200%202.21.99l4.38-2.3q-.09-.35-.09-.69%200-1.24.88-2.12T14.5%202t2.12.88T17.5%205t-.88%202.12T14.5%208q-1.3%200-2.21-.99l-4.38%202.3Q8%209.66%208%2010t-.09.69l4.38%202.3q.89-.99%202.21-.99z%27%20fill%3D%27%230073aa%27%2F%3E%3C%2Fsvg%3E")}.wp-embed{padding:25px;font-size:14px;font-weight:400;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;line-height:1.5;color:#8c8f94;background:#fff;border:1px solid #dcdcde;box-shadow:0 1px 1px rgba(0,0,0,.05);overflow:auto;zoom:1}.wp-embed a{color:#8c8f94;text-decoration:none}.wp-embed a:hover{text-decoration:underline}.wp-embed-featured-image{margin-bottom:20px}.wp-embed-featured-image img{width:100%;height:auto;border:none}.wp-embed-featured-image.square{float:left;max-width:160px;margin-right:20px}.wp-embed p{margin:0}p.wp-embed-heading{margin:0 0 15px;font-weight:600;font-size:22px;line-height:1.3}.wp-embed-heading a{color:#2c3338}.wp-embed .wp-embed-more{color:#c3c4c7}.wp-embed-footer{display:table;width:100%;margin-top:30px}.wp-embed-site-icon{position:absolute;top:50%;left:0;transform:translateY(-50%);height:25px;width:25px;border:0}.wp-embed-site-title{font-weight:600;line-height:1.78571428}.wp-embed-site-title a{position:relative;display:inline-block;padding-left:35px}.wp-embed-meta,.wp-embed-site-title{display:table-cell}.wp-embed-meta{text-align:right;white-space:nowrap;vertical-align:middle}.wp-embed-comments,.wp-embed-share{display:inline}.wp-embed-meta a:hover{text-decoration:none;color:#2271b1}.wp-embed-comments a{line-height:1.78571428;display:inline-block}.wp-embed-comments+.wp-embed-share{margin-left:10px}.wp-embed-share-dialog{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#1d2327;background-color:rgba(0,0,0,.9);color:#fff;opacity:1;transition:opacity .25s ease-in-out}.wp-embed-share-dialog.hidden{opacity:0;visibility:hidden}.wp-embed-share-dialog-close,.wp-embed-share-dialog-open{margin:-8px 0 0;padding:0;background:0 0;border:none;cursor:pointer;outline:0}.wp-embed-share-dialog-close .dashicons,.wp-embed-share-dialog-open .dashicons{padding:4px}.wp-embed-share-dialog-open .dashicons{top:8px}.wp-embed-share-dialog-close:focus .dashicons,.wp-embed-share-dialog-open:focus .dashicons{box-shadow:0 0 0 1px #4f94d4,0 0 2px 1px rgba(79,148,212,.8);border-radius:100%}.wp-embed-share-dialog-close{position:absolute;top:20px;right:20px;font-size:22px}.wp-embed-share-dialog-close:hover{text-decoration:none}.wp-embed-share-dialog-close .dashicons{height:24px;width:24px;background-size:24px}.wp-embed-share-dialog-content{height:100%;transform-style:preserve-3d;overflow:hidden}.wp-embed-share-dialog-text{margin-top:25px;padding:20px}.wp-embed-share-tabs{margin:0 0 20px;padding:0;list-style:none}.wp-embed-share-tab-button{display:inline-block}.wp-embed-share-tab-button button{margin:0;padding:0;border:none;background:0 0;font-size:16px;line-height:1.3;color:#a7aaad;cursor:pointer;transition:color .1s ease-in}.wp-embed-share-tab-button [aria-selected=true]{color:#fff}.wp-embed-share-tab-button button:hover{color:#fff}.wp-embed-share-tab-button+.wp-embed-share-tab-button{margin:0 0 0 10px;padding:0 0 0 11px;border-left:1px solid #a7aaad}.wp-embed-share-tab[aria-hidden=true]{display:none}p.wp-embed-share-description{margin:0;font-size:14px;line-height:1;font-style:italic;color:#a7aaad}.wp-embed-share-input{box-sizing:border-box;width:100%;border:none;height:28px;margin:0 0 10px;padding:0 5px;font-size:14px;font-weight:400;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;line-height:1.5;resize:none;cursor:text}textarea.wp-embed-share-input{height:72px}html[dir=rtl] .wp-embed-featured-image.square{float:right;margin-right:0;margin-left:20px}html[dir=rtl] .wp-embed-site-title a{padding-left:0;padding-right:35px}html[dir=rtl] .wp-embed-site-icon{margin-right:0;margin-left:10px;left:auto;right:0}html[dir=rtl] .wp-embed-meta{text-align:left}html[dir=rtl] .wp-embed-share{margin-left:0;margin-right:10px}html[dir=rtl] .wp-embed-share-dialog-close{right:auto;left:20px}html[dir=rtl] .wp-embed-share-tab-button+.wp-embed-share-tab-button{margin:0 10px 0 0;padding:0 11px 0 0;border-left:none;border-right:1px solid #a7aaad}PKj l\%Zs((css/jquery-ui-dialog.cssnu[/*! * jQuery UI CSS Framework 1.11.4 * http://jqueryui.com * * Copyright jQuery Foundation and other contributors * Released under the MIT license. * http://jquery.org/license * * http://api.jqueryui.com/category/theming/ */ /* Layout helpers ----------------------------------*/ .ui-helper-hidden { display: none; } .ui-helper-hidden-accessible { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; } .ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; } .ui-helper-clearfix:before, .ui-helper-clearfix:after { content: ""; display: table; border-collapse: collapse; } .ui-helper-clearfix:after { clear: both; } .ui-helper-clearfix { min-height: 0; /* support: IE7 */ } .ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); /* support: IE8 */ } .ui-front { z-index: 100; } /* Interaction Cues ----------------------------------*/ .ui-state-disabled { cursor: default !important; } /* Icons ----------------------------------*/ /* states and images */ .ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; } /* Misc visuals ----------------------------------*/ /* Overlays */ .ui-widget-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; } /*! * jQuery UI Resizable 1.11.4 * http://jqueryui.com * * Copyright jQuery Foundation and other contributors * Released under the MIT license. * http://jquery.org/license */ .ui-resizable { position: relative; } .ui-resizable-handle { position: absolute; font-size: 0.1px; display: block; touch-action: none; } .ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; } .ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0; } .ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0; } /* rtl:ignore */ .ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0; height: 100%; } /* rtl:ignore */ .ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0; height: 100%; } /* rtl:ignore */ .ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; } /* rtl:ignore */ .ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; } /* rtl:ignore */ .ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; } /* rtl:ignore */ .ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px; } /* WP buttons: see buttons.css. */ .ui-button { display: inline-block; text-decoration: none; font-size: 13px; line-height: 2; height: 28px; margin: 0; padding: 0 10px 1px; cursor: pointer; border-width: 1px; border-style: solid; -webkit-appearance: none; border-radius: 3px; white-space: nowrap; box-sizing: border-box; color: #50575e; border-color: #c3c4c7; background: #f6f7f7; box-shadow: 0 1px 0 #c3c4c7; vertical-align: top; } .ui-button:active, .ui-button:focus { outline: none; } /* Remove the dotted border on :focus and the extra padding in Firefox */ .ui-button::-moz-focus-inner { border-width: 0; border-style: none; padding: 0; } .ui-button:hover, .ui-button:focus { background: #f6f7f7; border-color: #8c8f94; color: #1d2327; } .ui-button:focus { border-color: #4f94d4; box-shadow: 0 0 3px rgba(34, 113, 177, 0.8); } .ui-button:active { background: #f0f0f1; border-color: #8c8f94; box-shadow: inset 0 2px 5px -3px rgba(0, 0, 0, 0.5); } .ui-button[disabled], .ui-button:disabled { color: #a7aaad !important; border-color: #dcdcde !important; background: #f6f7f7 !important; box-shadow: none !important; text-shadow: 0 1px 0 #fff !important; cursor: default; transform: none !important; } @media screen and (max-width: 782px) { .ui-button { padding: 6px 14px; line-height: normal; font-size: 14px; vertical-align: middle; height: auto; margin-bottom: 4px; } } /* WP Theme */ .ui-dialog { position: absolute; top: 0; left: 0; z-index: 100102; background-color: #fff; box-shadow: 0 3px 6px rgba(0, 0, 0, 0.3); overflow: hidden; } .ui-dialog-titlebar { background: #fff; border-bottom: 1px solid #dcdcde; height: 36px; font-size: 18px; font-weight: 600; line-height: 2; padding: 0 36px 0 16px; } .ui-button.ui-dialog-titlebar-close { background: none; border: none; box-shadow: none; color: #646970; cursor: pointer; display: block; padding: 0; position: absolute; top: 0; right: 0; width: 36px; height: 36px; text-align: center; border-radius: 0; overflow: hidden; } .ui-dialog-titlebar-close:before { font: normal 20px/1 dashicons; vertical-align: top; speak: never; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; line-height: 1.8; width: 36px; height: 36px; content: "\f158"; } .ui-button.ui-dialog-titlebar-close:hover, .ui-button.ui-dialog-titlebar-close:focus { color: #135e96; } .ui-button.ui-dialog-titlebar-close:focus { box-shadow: 0 0 0 1px #4f94d4, 0 0 2px 1px rgba(79, 148, 212, 0.8); /* Only visible in Windows High Contrast mode */ outline: 2px solid transparent; outline-offset: -2px; } .ui-dialog-content { padding: 16px; overflow: auto; } .ui-dialog-buttonpane { background: #fff; border-top: 1px solid #dcdcde; padding: 16px; } .ui-dialog-buttonpane .ui-button { margin-left: 16px; } .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; } .ui-draggable .ui-dialog-titlebar { cursor: move; } .ui-widget-overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; min-height: 360px; background: #000; opacity: 0.7; filter: alpha(opacity=70); z-index: 100101; } PKj l\^jcss/dashicons.cssnu[/** * DO NOT EDIT THIS FILE DIRECTLY * This file is automatically built using a build process * If you need to fix errors, see https://github.com/WordPress/dashicons */ /* stylelint-disable function-url-quotes, declaration-colon-newline-after */ @font-face { font-family: dashicons; src: url("../fonts/dashicons.eot?99ac726223c749443b642ce33df8b800"); src: url("../fonts/dashicons.eot?99ac726223c749443b642ce33df8b800#iefix") format("embedded-opentype"), url("data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAHvwAAsAAAAA3EgAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADMAAABCsP6z7U9TLzIAAAE8AAAAQAAAAFZAuk8lY21hcAAAAXwAAAk/AAAU9l+BPsxnbHlmAAAKvAAAYwIAAKlAcWTMRWhlYWQAAG3AAAAALwAAADYXkmaRaGhlYQAAbfAAAAAfAAAAJAQ3A0hobXR4AABuEAAAACUAAAVQpgT/9mxvY2EAAG44AAACqgAAAqps5EEYbWF4cAAAcOQAAAAfAAAAIAJvAKBuYW1lAABxBAAAATAAAAIiwytf8nBvc3QAAHI0AAAJvAAAEhojMlz2eJxjYGRgYOBikGPQYWB0cfMJYeBgYGGAAJAMY05meiJQDMoDyrGAaQ4gZoOIAgCKIwNPAHicY2Bk/Mc4gYGVgYOBhzGNgYHBHUp/ZZBkaGFgYGJgZWbACgLSXFMYHD4yfHVnAnH1mBgZGIE0CDMAAI/zCGl4nN3Y93/eVRnG8c/9JE2bstLdQIF0N8x0t8w0pSMt0BZKS5ml7F32lrL3hlKmCxEQtzjAhQMRRcEJijhQQWV4vgNBGV4nl3+B/mbTd8+reeVJvuc859znvgL0A5pkO2nW3xcJ8qee02ej7/NNDOz7fHPTw/r/LnTo60ale4ooWov2orOYXXQXPWVr2V52lrPL3qq3WlmtqlZXx1bnVFdVd9TNdWvdXnfWk+tZ9dx6wfvvQ6KgaCraio6iq+/VUbaVHWVX2V0trJb2vXpNtbZaV91YU7fUbXVH3VVPrbvrefnV//WfYJc4M86OS2N9PBCP9n08FS/E6w0agxtDG2P6ProaPY3ljaMaJzVOb1ze2NC4s3Ff46G+VzfRQn8GsBEbM4RN2YQtGMVlMY2v8COGai0Hxm6MjEWxOBZGb+zJArbidjajjUGxJHbgUzwYG/EJPsNDfJLFsYzpXM6Pmcd8Ps1BvB8LGEE7W7KSzdmGA9ifgzmau7ibcUxkB7bnHhZxb+xDgw/yYb7GU/yQp2NgDI9xMZ61sWVsFZtHkxb5+ZgQE2NSdMYmDOM5HmZrfs6H+Cbf4bt8m28xhb2YyjQWciDHxk7RGg2W8DFWxbyYE20cx/GcwImcxKmxWYyIGXr3l7MPp/MAn+PzfIFH+Co/4296Q2v+wdvRHP1iQIyKMTE2ZsZesW8QSzmHi7mFK7iWsziTs7mIG/gAl3Irl3Az13A117GeC7iSdVzIjdzGMXycP/ITfskv+B5PRk/MjT1iCPuyLAbF4Jgds2Jj7uOj7MmX+DI78hfejBa6+Kxmekp0s5TBXM/kiNg29uaNmM5p0c6fmMmMGMbLMZS/8w2+zh78lPFMYFvt9Ul0Moax/IA/s5P2+hy6mcXO7EoPu7F7bM1feSR25wzuZAN3xBasiJGxDSfH9pzLeVzF7NgxtmM0+/FK7MLrvBNTeZSXYlP+wO/5J//SV/2O3/Iiv+EFfs2veDf68xHOj53p5Yt8n72ZG6MZzhoO5wgO4VCO5CgOY3VM4S1epYxdYzKP8QSPx3xu4v7o4Fmdydbo4j1eo+IZbdaW/+Gc/L/82Tj/0zbS/4kVue5YrmzpP3L1Sw3T+SY1mU46qdl05kn9TKef1GL5J6T+popAGmCqDaRWU5UgDTTVC9JGpspB2ti4TOMmpmpC2tRUV0ibmSoMqc1Ua0iDLFfwNNhypU5DTJWINNTQGqRhFos0DrdYrHGExUKNIy16Nbabqhhpc1M9I21hqmykUaYaR9rSyM+7lZGfd2sjP2+HxRKNo01VkTTGVB9JY40HNY6zyGs23lQ9SRNMdZQ00VRRSZNMtZXUaeQ5bmOqt6RtTZWXtJ2pBpO2N1Vj0g6mukza0VShSV2mWk2abKrapClGvtumWuS1mmbkNZ5u5HWdYeQ1m2mq+KRZRl7v2UZ+9p1M9wFpZ9PNQNrFdEeQdjXdFqTdTPcGaXfTDULqNvK6zjHy+vUYed5zjbwee5juHNI8I++f+ca9GheYbiTSQiOfp17TLUVaZLqvSItNNxdpT9MdRtrLdJuR9jae1rjEIu/tpRZ5/y6zyHPZxyLvkX2NtRqXW+R13s8i780VFnmdV1rkc7+/5SKRVhnPazzAIu+7Ay3yuh1kkffdwRZ53x1ikc/0oUY+f6tNNxTpMNOtTFpj5LNyuOmmJh1hurNJR5pub9JRpnucdLTpRicdY7rbSceabnnScUbep8cbeb1PMPKePdHIe/YkI7+fJxt53muN/L1Psch781SLXPNOs8h74HQjv4dnmLoL0plGXuOzLPL+Otsi781zLHINOdfI8zjPyPM438jzuMDI8/iAkedxoZGfcZ1FrlEXWeSzebFFPpeXGLlWXWrkfXSZkffa5Uae3xWmjoh0pak3Il1l6pJIV5v6JdI1ps6JdK2phyJdZ+qmSNeb+irSDaYOi3Sjqdci3WTqukg3G29rvMUi3123WuQ74jaLfEett8j1+3aLXIM3WOQafIdFrk93WuQ9c5dFPmd3W75G0z2mbi8/ah/1fRRh6gDV85t6QYpmU1dI0c/UH1K0mDpFiv6mnpFigKl7pGg19ZEUbaaOkmKQqbekGGzqMimGmPpNiqGmzpNimKkHpRhu6kYpRpj6UoqRpg6Vot3Uq1J0mLpWitGm/pVijKmTpRhr6mkpxpm6W4rxpj6XYoKp46WYaOp9KSaZumCKTlM/TNFl6owpJpt6ZIoppm6ZYqrxpMZpFqrvxXQL1fdihoXqezHTIq/TLFOnTTHbUJ0tui3yGvdYaH3LsNDXlQ0Lvb5sMnXplM2mfp2yn6lzp2wx9fCU/U3dPOUAU19P2Wrq8CnbTL0+5SDjTY2DLXe95RBTEqAcasoElMMs195yuKH6VY4wJQbKkabsQNlu5O/dYcoTlKMNrXs5xiKvwVgL9RblOFPuoBxvvKFxgimLUE40VCvLSRb5Z3aakgpllymzUE429J6VUyzynKYaL2ucZpHnPd2UcihnmPIO5UxT8qGcZcpAlLNNaYiy28jPPsfIz95j5DnOtfybg3IPI89jnpHnMd/I67TAyOu00JSzKHtNiYtqoSl7UfWaUhjVUlMeo1pmSmZU+5gyGtW+prRGtdyU26j2MyU4qhWmLEe10lBvVK0y5Tuq1aakR7XGcq2uDrfIX3+EKQdSHWlKhFRHmbIh1dGGamh1jCkvUh1r5GdZa6E9V51iSpNUpxq6d6vTTAmT6nRT1qQ6w5Qnqc405U+qswy9l9XZFjo71TmmdEq1zpRTqS4y8jpdbLyi8RKLvP6XmvIs1WXGOxovN2VcqitMaZfqSuMljVeZEjDVjaYsTHWTKRVT3WzKx1S3mJIy1a3WN8fbTOmZar0pR1PdbkrUVBtM2ZrqDlPKztdlH+Vt6jAlb+qG8a7GJlMap2425XLqFkN9Rt3flNWpB5hSO3WrKb9Tt5mSPPUgU6anHmzozNRDTDmfeqgp8VMPM2V/6uGG9lw9wtCeq0ca6i/rdkP9Zd1haC/Wow3txXqMoV6zHmtof9fjLFRH6vHGWxonGK9qnGiUGidZ6EzVnRaqR3WX8ZjGycYTGqcaj2ucZqFaUE839N7XM4z7Nc60yPOYZTyrsdvybyfrOUZe7x6L/PPnGu9pnGe8pnG+UWlcYDzzb8iLsxoAeJysvQmcJMdZJ5qRlZmR91F5VWXdZ/bd0511zEzP9PSMPKOrS5JHEpJGI0uyRbUk27KMMMuitVU25lgW+cAyuGt3f17A2Muaw6bHwMIzC5g15jFlMNcaA7vAmp41ZtnfW1h48PbVvC8is46eGZnj97qrIiMjj7i/+H9HfMWwDPyh/wddZTRmnWEaYbfj+cl/F4dYcErIc7BgIAHDv9ftdDtnEASbkL7ZRS98qimf8DXL84pOsbr/qTWMc6Io59OWVFC0WiVfkDTFUbEr5kQX/8mnmgpniLqtmTzGQ7gb0rGH4Q5NKuTLdU0pSJZZUDHOY0yKFpfvV9CvMCpjQGyziBwdVddQaxvZbYyY7uVO5/Jzlzvdy898EP0KjXYuv/mxzvi3Pvt68ih9fohGTJph7GjTKyBHWEa4Xas2T6NWZ3DoFYteNIjcYhGNiu4VtzgY0MMk7y+iX2fKTASxTrsTNsMmruIN2hg4aZJtRFql20GdbvLv+cW4vdBvI4RYLKqYU+or9XVPVZRUyg/8SMnUcjl//ICnYlHgJT29YkoCVvOrC+iHUqwoSIKEkODnc7WMlgm8IMOynpI51lipj39AdxQ/LemylrKkak3J8VxS1hHUM2SOQT/WBOzjUMBurd0McdhthrV21OmGXb/TbUeu53d97PkR3uy0mlXB8dDoONYXOgte0At8OOq42xWMhU7o5XuBB0ddOP6l8urqzurqKOeH8Q30CT/YTZ44flzQQ5LwArltZ5UUKUXL9Qvo5xmJ0UkfICgWlMdvR9h3K22/XXPRMMx99KO5X+i3hsPx1VEfNZPzaGF/f/+lwWD6nq+i/8x4TJU5DnFoYQPpCAYs1MBATRiW28hLkVMyWh2vg7sevWWNpdd8GMzeJvqsaxhu6J7IP2uW18xnsU5OTvz2PxctX/xO0fTVZ0VI8o6fWIb7FtzjhWetyir693AP3KjjZ821svlsnpwYxvhL/1z0TYRpGNFUT9eXZ7dWSLE5WvZr6BpjM3lmielA/7RbzWUU1nCtKsCI9KLKZifc9Byh2mx1/MiKI9EmNA+G7pqcop6hLFf71WXZMGTEKMYw12i0m83RgISBgHv9KI4dXpGNKDJkOBifbLbJXeH4L+nd7LvelXuExqBYUjzJ0G8yPKPADHOZHIz2BrPIQPch2lMGCtswWqCjfHJeilMbPgwtGpArFdKNb37zm+3BINj7+n5/t4XpyX+n4XjQv4r6/auDFmq10H1PPGE///zWQw/bly61lpf3Hn88/fzzaRpGj1y69Ah8dyL4S8b076P/RtuN9jiGDjfYGoznDkw7bzZ8fyJrWdnCPfVjvWYv+6tprZA5dy7UHSfvOOjnsufOZgua+aD4ePQfG68twK3fQi7knckcJ/QhRdqia1UsPnIrVjREzPhwdJ2JBqg3Pggi1EvG4GfRLzMYWqkGcWiITpHF0Dow14GqkG46g9qtbscnFwyE7rv/2P1CxuF+079W0kqFzFNlpewpZSx9FpJtHt+P3gd3YN7xW4VrriaJZcWDW96QLVQvQbKdEe5PaNgfoD9mYDghyKxJhzWZSJTINGOiHHY9Os6Rsv6D6+6G5Vi8trZ9B3ayaU/W5LSB79hedzbSdppHB2s/sK5xEN1wyS1GWtYkP51x8e3bSfp0zo3QFRgXy8ztMGqtVrNWqQquFY/YRkSG7DKi4/M0qpFBugXV72x6rj9/VkDzd7bRyFDGB3QM9xTjOpNVDEPJirI4jQwCcjXACg5IEon0UYukja9C+F2GazQFDFWHyMsk8shNKZN5N2IRrB0R8wBzGVaAqo6cItrcRq015OsIr6Gw021WsQALXgER6t6EZux2Qph7ReRvdrpeClK7HZg/zRDuhgMl8ckS6cGITAG9F3Cne7j97Pb2s28nwTt535RWSrwh2YLEsaInNyqcqAeSXpDa60GR5QwO/x92iuU5JImKUMAqdLaPc4WgYpXltMln3DvfbZQk00McyyRvheCjVh6XI81SBFGxJA1xWgbZnosUxcgG9omKKWrjrzielrUlQ8EplktxUr6TFnguldILS0iqr4Tn0JsESTM4RWFg1s/aaAFWjlPMG29oJRtinS40BtS0RhpICGmjkVUvJO2jo2YXmsrzyaXmOnLXYCKQxvPIdCUDFK7FLUf+BZc0IcS2WeiAuTZTeUlkeV3lUq7Ga6JTNNQ0JxliKFsPWTlWQk7uQmpTcQRsBxBWNZ9nWVZjOY7n0rwoaBiX/BrmIDGFrbKSYhGbUrx7X3/M9eebcPxLWEKiyIoFQ0urCPE4lTJVhDmfFwsZS87ZXAlaS4BLLMe77xQMSYYsDF7UeFbiBMnzcx5b9FRXF6DAdU8xpAa09tqWZTptaE5rrk3TTIYpAK1YYNZgDJ5gdpjzzC5zkXmYeYx5A/PMDW3NR55fa3bbMLIAXvm1dujWyFgjIYZvJPiRW2v6pAlDWELJ9D+N4ABXyHUYpPCGELoJQpKSglO4kzyJ55p6/Ndnkdg1vti0RV6V2Mdqtwui3XyMlZpnOaMrBo9dlB4l1565wEP6ZQTpKfO4yCLpuJFqrqn+sfL/8tXVcnlV9TdKf+lrq+Vj8038f9eqlR+7z2hoeq1aO/8N9xla4w3na9Xz9Ur1wvnqbffqDc249x5I1b8hSa7Wq9VKfa9e8JbPFurL4/9aK3or54q1JW9Kh2h7nmTuuGl84s5kbIUwKEndaSQeeHS0wsgssnS+kqGKJ3fPtUjwNGAuXUqrvMilMvbpNdYo2Xb/LCBRjktrupgXZFHXontdG/NVuRMoJtAkTeXE1JGx9fndlapnq1jGHAFfkrxoq2pu+96Uk81nChYrcDbisF7K6apsqvfV1pqXli1d0hVBlmd49zfQFxgHxg1DAE6yqjRhvmAfIA3vJase+nj2Qvm77E7T/pimbZ4t3XXHXbI+/jD2DMMDBJTV9Y/Zzbb9L8rnN3XlrjvvKu18GhsE/Uzz+RlY9xxY6xlUJQ2yDjO5s+l7CdjHXUDbBTqDq+RiGzB3hBjH0CSBSwmW07MtPgUTQjWcC4VOOVerHrv/WLWaK7ZLyNYVW7e0Zr5czjc1S7cV/dx6tZPfwRIviryEdwrtygSffwHquwXHJmE0CKILm8YU2QHJIFgWlxCBr9toHU0uzI4Avj+j+2njkW2T41Kav6Zxosw5mllWXjl5SbtvLS3sfFAVRN5NYSWluT6HZdYIntR5AX1GEwT99QHQwxQGTKqlZIFzBcxrr2wL6bX7tEsnX1GrmuZwsshpGz45GKcfUhyfFF2gnYbRb1F0WwT0vcXcyzDtShv4AjZcY3G74ls1i9cJAWwDCoXx522jNehZD+gfjM5tBHO9SwhqkRDOW6QhZvtU67zjpHffsHmdObyKHta6gSqaq25g38/JmIUVBF30o4zAszLPLVRsJSVLbErncmdLgsBKAt9ZDdI0zY6w6dkPvKm1cVtGw8F4iPq/EdiaID1hibLW5VNIkgUkKk8akoBkmUdQXM3iWUHm/K6t80iCvJBQtHI8yytceYoTrgBOSAEygkXFrrQrqF1xMRx7qA95RACkaGQAseGwH83G+uQ5QBcVyydPHoyHMMyuMwckgFv5G95vAB6kediAOhsRBPDlJ3kdHqJsD/7G1+Yy3IuG0X70NcpaQNOyQqZHizp5Zjh5pgsd2k3yPdwfAZOyD+hkfPUK5DKXx/T+Btwfwt0ufNHBfmv6wLWoFTGvXj9aL8imFlGIHZevB+HhoNdLyrgfDYd/R91c0qoDWq8oadoj/RDjpF9DP8eYwFvdxzwKJRZqMOXJKh7BEg/TrNuMuX/AcQnPGwJMAoq6eQYR8ttuwVivEaLhRICaYKDDNexWAQH4ruN1XU9nARG2W+jDd97/lsspjl16+vjqgw0eL6dDI4VYw0hjWQC8YhhfcRd0Q4ZJVeU4nWP5XC3dyJR4vAJPuYEmppaW/Ry7cInlJEvWjG8tdRCXaoRBFgkpX+RUJMC6X5M5xGqNFrLSrsyyJU7Scj3ADRmF1dM1zPOsZrCaZfKmGGaUbO2fyWo2rVjmMsOIU16atKMJPFEWaHEFuCI6RslIwW6U8GptwLpd4K3dyZe0+WjcR3vjq6h1rUdY4ZNucbhH/0hahIZwuRf0epSfjqKimw32WnvBXjDpw2uzsYMIk1yxKg3CYR2OW1n6dDBEw1arB3MkCBIaegXKKxIZhwUcAhDKw1Y/OjiI+lCYUT84OAj6zFQecgXtkVFnEylAOBgM4EbUHwyyBwezewaoRWYo8DhosNdH0f7+7BrhCURaNpoVnuWBgiTb6b17cC9P3kNuTXJBcZ7Te3pQHpZKn1APhvPe1x/Np9uuhLRSEYribCaVO5oH4YF8PKRZJDlMrtP3A8CGyYr60/cnbdaoWbQa4bT004xuarMG5X6TCgxvarMeyecM8g/2+gfD4Q3pCEco2BtBHae079MwroDTtr2YlfO9WIBEVgmSoBOWhEJt36OAu0kQ9e9hFokqm0qrvl4IZN8vFng+W1jffMtl11akU43mDm4sSorI1xcUBf1ECnNKWjYV0ZSCjKDywtnOyehksZRqbyxF6/c73idMFKQ9RxcKlj2hR59Evw6UKAPlC2kJfbIA+6SJ12FMYJ+MfsLUhZMItJ/fjRp+F4e1b9D1Vmlrq9TS9ai8tVV+dOnUqQdObS3HEqRzlfbZ+s74z8qdnfoO+mfxfeT+cgT3/+KpB7fg5mwsRMqfUL/3xHee0D54ImmzX4dylZglIg9gdZagO8p9bLNrrE4Hmb/N4ma7u0EkFd0memzzJI4uv3mjvqktSQvFxgMXQn717gcu2Mdekteyl9+8LaJstvcC4tBPwtkbTuIgfbKeK22aNr0Nbm5m7v1gZvOk8EdY4V988WIHsTOaPQLqKQIuNQFHQf/CZOVxFEbJl5AKBOtYfzzid8SI38HwFccjSrtHe9ksjCHyd53IF2MsgT6PPg84YoFpM+cASbyRoKIEruKQoB0ikY3FskB6IblBZbFwreUTmEi6gkoHZidCtZtgSALunG6z1gFcAo8ChiQUXgBSHTkEVaInK2mP01Sd812loe1oWtrQ9ee0hvIRT+fG/zMSTE67y+QcQXiO1yX+OUFbmkQ5/RMQkYXnBD3FvVkWRbG44KQkvZ7VBEtkFcWtB/UsSnNekE2pluundX0HOADHAG7gLZr2MU7XT7R4XrvPFPQXBI17q6Bq3HMCWhLIgcYvvJVX9NRbgHgbb5btpbyIFUkLmpqAjaLipoNcY4Yr/jX0jUAkJg1YjmqwBLVblC1YQ1XBdQBmFaCVSIetIcS4xX7xxaUqAt4x7Zt8dZnNuyjyC0Cb3eJvbNW6MiuximXBlBK7jeN+KO/siM052jAkXB8iazX5EqFeBfKroUGvD6uOjvq6gvot+NOV0UjRp/Laa/Ac4Pxuxa3A6mi1OhHQeiLR6loE4xNJy2aHiqBg6pTJUTGMbWA94NOLVkuoVVodDwHVP4ICgqvHhzwVnKPp+2FCo8hK3r6FrBp5e1RBwyh+5+EhkbCgAGDX3tz7pu1I3nECxiJjAxyB8rnwOSr3EWoTAVByrIaThDYVAfkTMd0oWi/6+cAtFt0A8tA0CKJJJFgtR0PZIBwKOjyIiuue1ysuFUmSfJyjwp9WHHLHyWEvW149OKAMjZHMHbJmS4zP1OnseRuUmXR1t9PuNP1OE2oOk8GLNrudIxxkqhpLdoC9idUL3dm923AVGKFOd9PBG0QgC8QYLpK51N10McFDRC5C2CcBw6vpC18omTkO4ccE3TVyHBYs3TO01e7j3e7jz5Ggu3B7lrO4Uuvhpx9utR5eFXTHDDiZswyn+GjzfMbyMR8UzaKt8Szp6nwG81kvqBRE4XgtYxpcfmV1c/2e9fV70JNL3Ubt7Z4gCx/JlV1rJe2kTbSc5APB+IVCjnf5Ns0IgrfTu2yPrSOpnGM5JH9T2t/2bKyzqRTiX0wvV8sriqyXuML6Pa+7Z500a6KIgeGgAhJqAq06xewyj9+gjfHnmxQfvYKLMFbwNnCQTUzGARkPRP9A5RxRi1A3gw3pCghgdcLOI+bC286ff9t3k+DCuefPnn3+3SQ4t/XU1tZT30SCZ1y7FOpBZeVyaWVle2XlHs0xVMyzbNk1sqrU6XQaviXyLMpxItZVU9FYJnkhBFryQgiyyQshWFHxRjnwhIVcaSUgL91eGRiCqaU1Q+3kHXiZ224j18w5vl0PfJrfhHZfgbki0hm9GNNuuxVCq0B9u5MIbpOpUIgT5+I+UKcbphE8MFHFbVJYsA3tOtE2uXHznkZTdd1hVjZNx9gL6BzaiydGcuhvLPhlL/DK/sKG7S6JtqfaVaJFEpcWDkxHXZIqtmYcu/j6i8d0wy5Ljqc66CCTkwuuacjJ8b2PKIYpHw3M/Lp+xvR9c3eXhGf09eOer6WwxAkCJ+GUtvoWIWWxAD78Xn49l1vP93zFklhRSgkz3oOsoz5TY9aJlHkiR25S4gHw2sGU3vAVEtYqFHbPxxNqBDdCSHiMLn0DunTF9DxzkfXMwPTYRTgZ/+85IXKdKFAM5ToJtymVySe35uEE9aCxME8qxWPSdnFD9uLDruEZk4sQnfAMA6iHDr2/ypxmzjLnmTuZHh0DzXUK59xkJMyfpqgmKB4FUFs6JubPw66LzyDXQPER/6Eqaqqii6q/6g1VUVdUTVS9Vf8VQ45IdSLZGNKQnh9GwBomH/QmM5t2LctNZ82sbWePnI3/dkQeGZFXTGMfCSL6DzglaMF3uq78FNRznWpkiEIG10IhFov7BE/4AvbbaywlpmSF7dJlF2gw+u6qFBiR95rcbV7HCKSaZbP8Yg4bUbCqOCvbq7a8FrRNKb/IszZ6In1XzQvYwSCV82p3WxIyjcoZ05OffJ+49ZqtWg0C8QOvF7PmTsUwETO3Xo0YjeqLAOz4wK/FiNoOuyGGDyBXDGwPYo7dv1Qe991cUC81R48/rpwU/lCNxMcfln/gY2i0Uy6PD1HgZJy86Yy/4+7b5cpz2jdmxNvvVJ5+dkoT0RfRLzH3MA8xTzDPMS8y38F8ANAGUeKtI4d0sJEIvdsT+NUlgxNaCNqDDtFooh1JjvFAjm8g497zw8nS2Z3QTaLFJAMDhhGMEz8eLXESzJPO5Nyfi6Nf8FbP+KIqpSVbIpyApIr+mVXPdNI1lq8EelPiyJoMa00LviTKSaEWVDm2mguuSSYZ9A/FS/N5HtYm+Ka4gHuNxO3CJBd2BfzILtG5kKBEcQgJ/sbfWfW1Zt41RYUXVNF0cw3NX93xZU1eP6nq1ZMuLDuwxGvkWS0O4ZQ1BPdkVVdPrpvWU/F8i+LDBzgVgA+f2hGwCAhzCyuiqOAohkMJLTlEf0TXKTIHATtTxEygMqxDs5NOi5g1kI6aImPPwfz81IQGRYpSVt5PFHLvV9BptaS+T/VJ3HwjSXvjGlHlvZ8E4y8roqpIiiA5hlhFv6Mo71dLPrl2WonvgOD736iUfRWeou/wS+p70jnbteyMHeh+fiq/eRl9gXHpCsKQqUREr2GXcDmeTway3zQQgTCwWgKxCCn2wB7KfmN6uflAczn9gn6ieSbKamo6WN/4pgyAtoWglmnuOIG90/R8M0QXf6Pu2bZX/0Imh+6ub7iKId6lvmOFy6653x14q17AF1zgZyhdZpk5mZTP5IDzqgE/uAyzP2K6zBZzhmEIYvVr7Wjyxf+AOJGYUElWP4r2WsB8R6NXj/SJwAr+WKZHDtGA4OnWII7T8HCfxOZli7/KNJg1qm+Pp2IN+y4O292wGuumCBtAFk8CCrsA9SiAaaIDzcooQdpeNIMgveza2YyMJZF385X1zQvbJfOgHqqNVkMN790pe0Vd5FIrlV4+36uspDhDlUwtY+1g4BV0jNGLJ+85duy+4zP53K8yAZUUE9kKnqAeKMMWonpcWlLCS4fT4lw8HgTH12F9S/mF4nJYDJeLBT8lOO47F+FvUhbE9Or1nuo7DX+bZI7gK2z7DccX0ouL/+ekGNNyjKActzN3Q+uQpqkRAUsVC3F7dD1SlHYLmKcuEUEkIIOQNShTZ9KcIVGdxv8wZXwoNBqaWb2EspcvZ08WskG5ura4uFYtB+O/MhqczYsqLyqGnQHWTeMaJUfLcBxiBfNZU2ARx2U0Z29ra+tQF1KpzusuHw+8E3eIooAR9JUo3tE5rwoZK6jwgoB5nLJM1RRULKT0QFP8ghmGZsFXtEBPCXgleOWV6Ti4hgYwgksQq8zsLU4jAKExiCCWQJDkuUT2TMgf6kPI6+p4qOq6ivqqjgZFl16C4IAkDhRdVxiqtKH2A7GsZImi4/PMa5lLzOvi/CbacuC/mqmbpCYz8cnXuBTjQapXnyZ2iWxhcJ2hBSThoWbZvp3Wjhx6WhoIDJxNDukgnX7O9h04rUCib1vZ67Cqo9F8ZcffBhfgcxluBJj7UHw4uCExk7Gz/vdoaUe5RILjSfpDpEm0ZC3+EtCN0hF6cRsdc/cy98d8qXV0DXRrFBWRvqkK/lzcJis5kIstRMThkYtviE8oC3Dc437PL/l9+B7GK8NBfKBkBpjwPSApyWFICQsajgdokCVwLkvDHbKE7ZD1aBobfwuRm1+jJCdLiU1Aw2iCBW6u6z+sfu2K241VCvQb1wMwaB/A5y3qMWwNSbn30d7fUe5XDg+zV+gfMzcfRolNDWBnGJ90EsTygW6UmhrVDO5WDVMZP6uYhnp3rx9RId4pmOHq+DeUdFpBa6oZjQ9OPXgKPvP2IsSWhtjbkXpYNVxzuxPbpmEPDa5Fg2ul1dUzq6sIyDaMvqB1OEpMxhKbDfRtgKhX6FxiGk6i8OzW1lhCtWsTdEwbNIrDuB0rVMHmT5lMtAMtCA14eRGv7VTD4zhtFx1NbGzWL9Y3G6LmFMb/QzpXcyv4E9B+Jd//KHAJ8MRT1cgTcadZtCu6k200suTr6EW3VKvLQtknAww+Ezz8x+h/EK1fN5HeAl1M7EO2UaxXpclNCgmbVIabcHaYGlRgYi9IFYRHokKUvufC3T1b05S8bsmOKWmeKuCMVlJ9N49QvaaJMse5Ws4GUq+noctLxYqb9pfrHOIlrr6SNhdKHMvLXDFsWOkFs1qK2mWvUijIImfpHAZ4Y2IuhQQ97aTLnKcVlBNphfV0gDKqKRlmRpJUtbyaSUkim8qs5ooLHitjlnXDO7bOMsxMXzECxFWFsc90owln1rYSRo6M/gqu4ckYiKaD4XDCgFF+pacYaLd/qMVd8Fcm6TiPCngUxNBDdLDnQdrkMyfnGhLrLbtC5psPE4hIzPoHrSsB6sH46rUOZ7wmKWuBacIsPU70OVQoUaWrF4YjDjuzczQpKD81zZtE0EglUNXUntXKgdBJERSr7qJ9hYLk8X9SiA7e+P4YM0doS8joZPEwssIPy2k9lCRidqr5+DvRIIa2B0f4y+lcGs3rEOk/mVOjvagf7cWKpGB8OBrN8T5lZgNijoCtCmE3OpSB9qnoipySo1tEKQt7iZghJLo+jEaaMn7Hm3hoVtSAZRVfNjwT0IuibTwoQEcsKjD0LqKPKg43/sSPSjIhNxxvquxH1LTpp1Ip3h7/S1T4PrgCTDebxuy75nEY0c9QCSkwhW7oRlPhEGI2Lh4bXdm4+OT9x47dj5iDYxc3hleOkZMnL27EfDXLoDFgz1Wmw5xktplzzAXmLoKOPaoogVkkEDRPBN3rKBFzA49HzeLaa6gGM6wm+EnHbRoIkBU++kUbNaOUV50sQimOrWP8VdEVfxnjP8Oup7/DAGjCskjVJE9Vc/eLtIt+KP2D6V+efn/A/lz6B230V3WWwJmMq+bKel104QX4l+FVXxXP6S8Zdk5VPUnTUIpNWSLtZwueege84aW571zfEz6mfoOczY4lbLG0DZgC7APLsoEdxBx/Xbf7uudJcHzpwtLShQdIkEml0Au9LNRslFyEYLyfXIXgO1MIdS6++CKvzPPQQ8CGZYbYPLeILBSTgErN3RjMAB8adgkf/SJ/aqmwoRpK0EzVVtp1BFh7/Zcu1teerKPAkJdOl7N8Iyezwma13ulcaH3gtfW119fn5m3lVXLZQu1al8xlSsdvzOZS74UXdh+BrG7OBK70IKN52pCDY+vVq4Lenjq1VNzQZW2uEqsoSFn80mngZ2flvz2a0pFfR78FfXMnc5H5ZrLSUeUCwWik3JR+ABV0CblI6lJt8gQwd6iomTAePiH1XWroFQe+12k3G1N8Rwu8jNzYaN2jGgtPoAnkCpEeVJv/SpRVCTCwkTZYRVUV1kjDoiAi2VnLK36KXauH95cKWSwWyk+t5DVdFRSFNWXTcPzU+K+XycJ9SknBQ1gWJUmRiLxZSxsp8i6k5SWJZWWlgHlN0bEti4Yo29iQDf4Zt1jAjeWF16TTWi57d2OhWDf8vJk2RU1CuiCzrO8ET8bI4EXexrqi8bgAr+NkKS/y8Ir4dbM1hPQTBh4TRl03AcyNmA2HlZ2qRKKQtK4LLdkvekRnMx4V3QM4/H7YbofLGVtR7MyAkNknHRKOogc2Lzu5x4LpuP499HuA0pcSucBUnRZLBKhdEZ/YLPqxgeMZFKLPOW17HeYrdjEeiI6YFkVjzR5/ryMJMi9aaddVV1Tbeddl9DnbXktjnIZ7B6KYxq5ordvta44NN7hu2hJ5WZDgxjm6OIhtX7qRVbPh29sn5iSxrQbDHFnfBBhlDbdrAfFEzHAI38ceG1997LEb7kF8G1t+G42uT25CLbiJTeSTwyQ/K7JIfkQ91aOmKOQ7zY/cR/TlGoqLMiSq7CltuEJl3Izt4nal7eO23+66FTfsuoMIZff2gmh8bW8P9XrNj0a93WiYHGfl3Kd2DaQmoVuzIrdLjAuAyx+h05fHo8uXX3wRRS++OF8vYnNDauW3ocxtPBoOye2foVV78cXxVXL35P4gtgWwI8igFu0NBlAUgpjn8SkP6//5yT0NOvWcmIslmpxONyIrB2FxiRiTMr01eiWWvU8vRERwQHM4L+sZ03XNjC6zKSnFcjyyrbKlOarKcXII8A1WEJIuiaqoKBBIHCfxyNLzcel+l5PTQe11tSAtcwDmZFZK1zohAAaJk2XuPQs5XUQSL6UEUbWWLFUUUpLMs6KeY+b3FxApzXGCme3KBNcLFNcjAEaNVoxOyXaCmOndjBUwcTI98XHFrRxHL2tOWh0/r9g2+nZiEQUcuqSnc7pK2M20qSmiwPNQFNWsmyoU5o/pCDq0lfHvahabVtGiYo9HZOjsyTKVoV4h3PKeqXmmY8LH00wRK6L024SeitN+0RgPOChih0w0jncTvSjBZ3S1A1pgT9DXzVASd+NNEtNNFJXplZiZ2ew8gXbcDF3+Mp+K4dmjMTz7TzFoe+nrAMTtxXG0HV96m0GNKfu5czW6uh6vnUPZOK0VI7X48563EdnAcnc+rRe/ipnTTYqMA/U7BjzwvWRVn4h2gYUltmEA7dq41enW4tr6sN633VildpqqJWEMzieRIRmtEXNBmob6MTm3KFvaymcCQFYPXYaA6nWOXfTXgslJZUW+HDhZ7uyjxy4iJibTsQgtCoptR89oduFPdV/vaRkdTnoQfZOgZ/QenEBSFATaos8WbXJhrn4yrLRrgNFuI/jM/sdXJZo2jU+b5fDvXZnvi9tgiUgIUf8fWpW4IQ56u7ukSvP1Kty6XjdXA99Y1VvXi3Q5Dif1+sjRysxquXFDvaBve7uzer3jSEX6R2s5uLFeQOppxebHoworLtmRdPv8eHSPjsOv3Vc39e1kHP6T/datqzep08asnnNjMLh15eZ6aXC0nrfspzv//+mnkFrI/YO7yVy+K3359D+2n966Ak9vz+tGVVqvM6SP5sD/TS0f/p0JlNuaFPrviqK+nsmRYkJweLTM/Vl94KDvkavwTQ5zmG5ELSfrsxVpAmgr7QQq0/WJJ9KvCPdQn0gEBhHZFQTs/gDO0MPjq8HhIdkzdJ2RgezKQUAPRH177cqVYX+ebyFtlbmRYwrn9X4zLumne71o8jnCHR3OXWDm94hhRidWjxE1zfXJDI7aaC8aX23t9waDHuCk0WjY2h8O52wlfx19nuzIRMTGhAzGyVZaujuhGAvbO/EOrm0YeGRnG6zFnSb6abVQvuvsome7fNrAAPEVwRZ5XledQOSB3xZct1sweMPJp5csQUYve7aTquzUC13XJdt9eDlnqzrPi46gmIIi6K7g2h5b2jElKTOzF/499AcUE9qw2vrddRb7tu8JBkv3sX6k8smqUflk/csPKEj+fz9Z/3NTrXxf5ROQ9ok6Wn5AKcrj+if/pyKlZjj+t9FvA75KA11h7JpVadfIrDIQAL12t9M00Bnk9wHBjtBTFTEjQc/uYXa44791EQ3GBxG6rSKyOBiPhn0p8z3+zlsXJ+/9CXQA8zvZQ0oKCJjdI8w80eqip85LCI/eWxzh3On35t+z9978e9EPn5ey4ucL7/m8iO57X/59PwVp0zk1s7WmVltk/PHJEfWvoiygnmx8AJJElFM0ZL7W8/7k+egwsUPv3/T4qz3vJ/mTIzo4PCRm+TS84fGkLd4JmNiAFi5BG1sxO0j2FhAGF7djARyONqk9xPAb26eDohds3Vaq5YNMEC4eD/KQDG29WmlilgsLK4vvvssK08eXfG8OcxP73ijG9RExFjscDK6h4bXeXr/HzMsJeGppTq17bbJBAx/2+9nhsEdD1O+TXb3XGXqY42euUJ4c4He35nb9ShcazweEj6M2DiuY8DgfOHmy3C8/Me4/AYc4joYQR/c/MYbjXvnECQieQP1JfGqL99FYZkLkXgImwnSK5qlQD2YbEa/HWnmAxcxGlNaX9l/XsOwHP/CAbTYe23dVU7Qi9E3d9kYtl4P1qBquv+be+25bDytwpiuGWdlod0lW/LQuRN4d750FnsKtQaZhF/OkLn7Kx1C5CqlleDAcDvZKx59Ezl7pyeOl6taTpfEIolvE2rhfevLE7f3SiSfR7ZXHT5T6EH183qZfjTWZM/IPND0kBnbAqBLBBg4JGoY+BwbWxYkQoYoOEmIOwfcvqJahGJpXMCuNUsNwdbGJ9ayuZ+eXBUXRXeD2bdmo2MWs5RuKIt0rBCqQ+ilWv5aMXzIbParNrBIZCLByRBsTEaaw1iDR5Bslx95h0O9H8LnOHB7AMA/6ox4Z4kE224suPULgZ6/V2o0ich7N2viGvREomW0TXUk8a8jWiMM+0G6YNjD69qiqprXfn7Ph/hcxL4lgduBaN+rCF31L546O8aMmDWHSRdFhazpPR/Pz1AbWaP4/Fr/Ofw8I7qYqoUR/fm0qv/0a+nNi4U/XP3d+G0H89V/lGtF4VZI42RUAte/3okE0aME36s8njAbZEcpCFAHbPOj3e63p3+DatdHBwX6U/O3GqXM6Irpyo1o83rYQVVeR5Zou5TROkZIPLHzv58vtYrFd1kzbjD+BZJrmAI1K7TPt0r5smjKKSDge0XgPbtm72mdmtnNXoG3uZy4zTzBPMU8TqSCwpDCHHYOsuLVuwpOvI+KBoSoQDwcdv0kn9wakwwwgUu4OoXs4hhk+NTskeLUauqS4rdRml7wL+3w0Gz9okDJYIcUv3rFSYgWWZ/mUgkUeiYhs+dwQZRXWUlW3dZno1JEp8KoIHDyHeJlXeMzLoRdxnJOuyOO/uEb/UImFl/Apll9Mp4speI6XOY4kpFhR5j8mcgKv6ByWDZ7VeJ5Np1iOg7U9xad53VRQTby3n9XCYAj/8+0j0l26K8xF5uuodg37Z4iBFSE5wDtSC8GYPGB/mxJAWCbjy5RC+ARguBMMBotEtQntMls/yObSIVRDFdGdh4flFc1ICRw2LFnFqqCoQiplZGFZqtimo8tY5g1Fw1hXFQXrWEs7nqbJWgXWvV4/0CQsn4+CD6WRCvVUDRWzgqDzgiBAPY3A2AzuVjXF4FOqKFiCiVOcLViGrCHE6lYwoTNXbk1nanStxDAN/HbUoAQg/taS40EfZnJACA2aIzTDbJbqbG9FaGZ+Qip/nxGPBv+h3C6V2mUFWHzTIQZSAYxqMth32qUPUYvqiNhIjqlFHSJqnSlNGQFV02FmrRAkAxO8O7WP7t6kjiUG6sTBAqGh6PRt15nXnIplF98XkhePhyQMddRqXd1toVEvCHqJCimAq6NJQaxTp34Q5vvgpjJs3FQG2yJSZ5pWmxkvECM/+ER+Fz5HCvJFkv/4qk7LQ/A7NGgQtDeAqLeywZEijUdxWU6bSdm+eGUwgA+UK6Y5vwj02SaWMd3YCAawMNGDJtvQbpH2F6bipA1htVbbqi2K/Gajsvz5I0nCRrO8/GN5R4fpV7qQ3sy3tm5b74aVm1LmcP5PMQ6lez6RuydapdMo1isR/yLraCY4Rs/lTfPfGavGCcMgh3d9RBS72MM/hHFXdNF35Q0fUOq/M83jptfx4RZj/NUfwi7cgz8ieriLGeYfTm9LqP2Po7ejPpHxTuwVfo0iyHVYh04z54m0jQoEu82YZwZWpK3Htrg4CmHFhPXSfRWsSYhzaeLjgerUQvS9kiTIkrNateoVPy06kp/Jfil3Incyp291ukHBsDSjUHY8y9DN51Z0PiU+lbUsy8gBzgxGffTv2RTnynY901zEXorLHy9++3C4/Jah75oWh9i05tg7y7KnBAuWEtTVjPbBwSgY9qaY4RfQPcxZ5nbmXqCWl+gukK5LhbhhLbYUBsRZIx5YyO49GNWAUagI1IUujwgl3fTxGtQfMCSQRbjQwNE6EqANKN7CG7Uo1sW00AdlS0n7lbSRyvCFbLeeyRknjVwmU83k/LXVtCJhA7MVVpDKa46EbcnVJPbuu1lJHf8FnxMF7vmirJvWG1euoI3AND/LpVzsWAVRdTI7O8vLO8HOzk4KnnbgMVNN27KbEgzFChzZeFB3PNNcQqIvv2ZZzc5kO1eO4I7ZvsUb7O9mOxXjmRh/kn2wxDqmNYzxTDxG3011NDK8L0rVUtBqYa2L7j/2TKt/LP9G5WJzQLTRvfDtszVrSNcsl1oHNMnO/Yl2iyxKr3rycqz7P3Z4uHOLGDXNhngU7N8UmckC9tCArhpMbE8fxob11JS+7RIlej+qd9JOlCn+01LmEA2+pxHabu0D37taDsPS6k9CreM16Kvoq0wGkFsRZmebOQ6YbZtJvA8JOCSKI6AGbBi7H+J9IJEh9qncKPE85MdGp10+hPEGc8NPXBApVmc5JD6InNOWqBInRON3jYatfjQcjT5t2rXEBVH9lBValVUT8ZOL8DzxMKSK1lJIvBHZZ7qmQtwRnYWLo71+9H7rVB1Ol08c92q2uWCuViw3uUSqZE3Xuq+FS2M7LdJ6sKpaBMFHKEGdeA6B3ur4atfQsAcYfdi7zgSICbLDLDlcnQY3JaBREIwH2SzqZ8nfYBCQv2gaBJBCLkQ0IAlTe5QW1VHBcLATtb/XmNgE1SaRQXGpCB9EfH9B7HPxgSgWybEYX40/UxpN+O7V2H9Tbc6WMCSepoghQpVujiTD7QyRe3Q7RL2CDj1zvE/sItCe6VWEFPf0U5hPSannO93nUxLLC089zbGACP/Nv9FfPiSWFST4G0HhnngaCyn28Y2Nx9mUgJ9+glMEWX3nO9Up//1nUJ4i0foR7TAAiAZVQhPvCWTbaIklXpIcYE6uUqvGFoTC8ONEc8Rx3/+ulKygL78orvn/xXPFbyFH3737z19QMM8idPLjHIul2Xy6RnmnLJXkQVZQe8iIbIci0h1i0+T5bwBacGz8o8e+9CM8p1ji+78Hp+UUj4ZrX1yDzx+8hzMNln/DG3jWMDlmprcibUp8pBCL5xvsM3HNnbnCinzsu8R1WDds+0csNT9HNooVXV3t95vN3d2g2QS0V/SuEiMbCHp7RDlTFJ97GQAEDEDC/vfm91onvPuNuUOX3jq/198ql4/Nv1yYe7cNrVaClX31VvU7WquwDaOnOzXAO1LHg4Np5a6tFVumQsSt+nwJRvsvzJUhu9N01rZjqeyRtl6lnmhuUdupT6nmvD+pkHqcetW2/zNZTAluvoJNB+sKruRd2RexxApuz1X8b71VSw1EMSO5haqgati2hGreEVhJlDKKc5fLp47Nt+N8uX06Sm5uw5Aywt1XHx3RAHjiW3ZZfWOwVt07Miom+CHWp2aYPPWGdpPvq6ltWIUg9PkTdGjI4z71bjWUjfEg0Sg+NL7WmkUjRHcc0fvQd8XweH9/NInM2U0RDwRE5mwBE2ABKxAbLSFA2f3+Z56rf/zj9efQQexfY9R6rv4jP1J/jpm3uxJjz4cuGVrdmk109Ras/+7hKHpv/V8+HUXja6NWHx2MgnvfW/9X15ledICy0Wxv/ltgnXCJhQKgpBpxbbaF2k1qggkF+t27t+U7BMltZspL0Zkz0c/euZYW5bOpaLVz51TWNzoq/4/fc+Q1bqIGuAu9SQYm8um2eFpLl61iY7nd/iUJBvlIk8evyNqHt0PDOM4uh6vbH9ZkcjMzlR9cozbYs9VsTgcevxxROQpdyNp8cjzaDeNhtheMxlchoC7KhhOWZrx/7doIWEVgbAOqEpjKGr9EfXW0EwV6CbnYBbK/jtq9bKWy9sBapZId2F7FVNHLEcY8/URXDlK8qesvMUd9oLiJZ5H2xLmYK8Q29oOol615axvBci1YzrY3/GaEBuPBcCQiRGzjpZHKIowRO6Fpv0/bnOiZAXGRJk42GtamGw4npsfxcuFDF8T8RVXwYYwLc9fDVvOAF7NYga+KfUPP6IaPVwOgKuXVK7kG6zgQdRzURC9L3M6OgCfhA1aWpabyB2zWeoCTtOE+NTAfrODNmr+gf5ycfVxf8Gubc3Nusp+e+kCxcMUmIrCEC/a7tQBd3R+PdmOTleFwNBigw/FoHwE22AOIEAT9wax/rqFDsjrajQ4dCZOFBLsJY0NOWp0DRBRKd7XbDds+5KNqo9Vq2I6OPhmxpjL+xUa7fVdL+v7oT8orcJP0W3TQsdPy2gTXIjqSp15FY5vXqbdRN0zSUeC6tR7BG+6+V9wnR+haIEaoX7fXe72iS82X+nD0iru7RW9A/JDO2iZLLVepZcS85TZ1vRdvHid7GMh+nInRg9+ZGH3U2nPmHhEdrFYtFgah4SYVJnxKMWkE3a2YY6AC42sDArnLfgToQ1Q0M30trco8x6KUIGt2ThfZg6yp/AkamuRheHLTJA+Td30eZRPE/obEBGQ0VGVL1VXNkLWspsH7/0Qxs8yN9it5gq9vmrvAv9jTOk0MWax5Q5aNJJHET6Lv1tNpffyNEKLvGA8PYhTXS+xYYpvjcqAJsRFLuhyoGB0mD+jk4fEe5YFI3ywXi29U1UKmamfoXlHlIAqyUA9LVgNtNhYIP019aR2VU2DhFsKLJPH3bC3j2EJ7cWm51ky72tZyuPl/pbWMm8btxcWVatN2tJOQ9jOVjMnzfOOie9KpNlc333R2Nbw5aUoHr1GOq0g9wZ6IuXqHQlLil3KCLaKbIvgm6xrEvP3EsWMn/pYEcmyV/a0mtb3+1rhrfyVOPD3ZtX9scbh4jAZX5+2048/LyViKzWemcghSXonRAK3HfnbKk96HFbfjE7EDkT0kX7oLBBLpytoy3toKoh7wAoP4m+2Nh4P9/XgBRmhfNqgnKOIM6pDu3tijugB9ui6lKDerQ97OdN1oQh+ukN2tRJND1gu+WwPs6TZCtwuMHZSBOGMCxMHDlIJruBuWUNtAUXRwcO1g/PPN3mgA4SAMd0Kylg6Je48BAmwRhOGl5g4gkBHx+bHTHAwGcEsvbGrhdQZSgMEJw72wCbfuNBlmTlYnQPs4VLtE9EhUywYMZjuFY4UZ0ZeF3YPB2vnwjs+t3RGeX3shPL88WPub82uDtTvQaEDT4CokXmdCmkqun791HvFbqRTHjXiaU60SZ/xQ/Q54+PAOchh/jh5QH95Wh1zopTpNe4WGNH1ajy8AhiO7Y1p0X+YaIltTqf/kif57M1n1yJ4JHFtD0UXan3Bw3UkEfZ+y4A/9BSVv6IJjFKywqGfyvl5sWkXTEXTjMMgG8PkuzdHgs6Hbmmbr6AXbcezl4+2HdMWUSxnJMKRMSbIU/aH28TVyf9CUyY36kkwe02bryK9Su3rCC0fUPRu1BNz0u2sTWR1x/NAOm+gzP/88PruweZ5FpRPVldpWcEez+7rjx1/XPXlpg2VRc3dhg0XnN6tbdVQ8HuSpi4bo0ZO6fSPunOCYmyihn3jbnXjdnUcwPzdE/f2IBEcx6FXicIy6KUtoxK+gnwZezqO+h7aoTRPphk3Cy1UpcUqi/iya6naASpQQ2f0XwhG6Yh016XaCTY+wDtUw3vjyeU5R9WqgiIVq4bmU5BU8GWcL2T/kZIhKOFPIpsv6xrObRpkvheUP5ay8Vs1xOXVpVZY/v7qkQryqF6x8ipPRe6wl3Swu1TKZRb2ezdYLjmNMIuOrz60fP77+nJZOf6HZeVLU1ccW1hFaX3hM1cUnuk2OQ9P++1P0acK5Evam2wwnGwW6jWSfTgmh/1h/pO7p2W/6DuyKJYBS2a2ve+ZMLjACAb2u/lDdrQQ//M0Yl7CHxw1UzihZo4pn42OQ6BVnohIL7Qx24IOG3/7t44Nv+zbUm9z7m+iniFSqETt0IO7EBRxvUiDGIIg5vbESZHmvcTK7Ydsb2ZMNj49WNu4Klhc31h/Mr7GuabrsWv7rHl9cno6ZrwB+JLLcJnOK2WFi6+ZmTUcYcJxHBFFF1EWdFo+hwl0dxTYmJaBJmJiVLyPcKRHXA9Q7jgEx9LOiL28vLd35YpU3iivLIrIyEjovjr9S3Siu35nl3iyzsKrLP+hlsmWv8swpJ1A948xb65zGcdo39JdOoR/BeNtAd52RHbRQWBYzFpLQHVLmv1Tya+cyubuPSzkZ462ymc2UoxMBi9BWJDg8l5b6p2bt+jGYd4T3qlHLeWgwuljVKvGGd0IuCAlJPNpQvczLGmvYx9Yck9WIxen4kIRH01AAYb9TDguFsNKO+eOjZ3M8xRXoV5vKJtaZNvFEVqPMZsw9UP0rifsRkVq2a7hG3PzRG1LUIiKm1f2IiKei+uOVKKilmkHA5s08e3U3G/2vrS3zkUfWaNine5kHgGL3Bg89NLhvZ+e+QR85J7dKlx55Zetk6ZFLTOKvO1m74vWK9PhrmDuYXWgnQH54G51JdShhYl0yX1Ob3UQrhsNqst2ZjLRN4PFZYltb86catEpswEKEwsPrPE5xKUBMlibqIo8QD7yGrH4BVq2HambOEARRti090DXNteH8Cl1nqR050KT3pDAvi5LiG4KsYl6y4Iy7LYA1OrvumTm9TFwtAZCEA8eX9ZyVy2ZbQbBLQ2amoxgm9Tye1JPWkZ+rI3ZcH+rI/z3rF9dtfI0XWS7FskJaEzWoHM8Cw6IibvBdNSOvAypU0lA1Q42rdo2oqMbDPmp9IytysiTCYCfV4mSoFlSu3/d8K9DLQOFT8FIWsTypk9mmcsoomPn1A6iYBpyTgXokBr/JIgejBLgE14/a6LDfG/X7vYNe0OvvEcVln353s70DGBxTO/b/hr4wkXGiCTLmyUwn9NqfuBhFfbJl84FT4//e8JZfe5e3dPHXGq9d9u66uOShZ5eoseJ97sW73KWLd3qfdV2SfufFGSaH8hIZMSkzQ9iFCX1LAZ8KIxwwETq82rp6taUFO/0+YvqxGQbqUysMgqC1S/B3JX4fC2+E9+nJ+1y6grWJNV0jCv2KW8E1n2V68RvGf3Hl0gF5ySNXLqGA5HH1atT/KOTDTMpHfRIpVL5WINgI8G3UBva15jegrGTrrU81pyG8+mAzbYenzq/dhj4MXXk4gjwGdOPzoGY7ndtPPPRpwI6IOYyg3Ye3fD8MpG4NqI8LQKVRARIPhbdJa7SJkhZ9aPPibasXtkLbGr8L3gNvi3q7WZLBQw+duL3j2LcdEhwYXWd6B4dztlCERy1TlF4ku/aoUr4bIwoyeKvE+W3b3wZOf6e9eeLEZnvn1NPlc97ZxuLtS0u3LzbOumv7xypvQIfl4jMvPVMsd9fDQm3p9tfevlQtNltXFpeJK/fpfCIyf6IVyUOei8TrHBAHq0IaCapjQ9tFrSaBFt2IjCkSa0z4A79dpdCn5hL3iK1oPAImda/4K9lRH3irQTARnN+xVHV2nMryoIeYXg+qi6gXNeDUe3DDjw0GWcJSLRf7kQrQVR0cobVE4lakPgcJ919z426MqA3MdDt8mwCfLl+JI4BAI+LXNEK98egwLgM/Pgx61Ifs+BrxbHatFaEgGl27thdzgsPg6uHh/iA7OpzDXfP6EIZwGpXEFw/5lQMojEX3mcM3QFfHwAn/E806JH4ziRM/9OPjd6M9V01bX0e3NDPEX0WrNcfbphLvWUSSVpt6cwmPOiKj9qqx7ephq0VMChzTlM88e/r0s+8gwZmZndZg2I/1vv3kGgTjvZm117wNbqyBu8Ff14RoUGXYnFnsxWR/w7xJbLIt4vfpuJ3ZJSvQW1Q6SqSDber6DvD6vI2yPZ9lqtKuHLaojVQwZ3Fc26pWty6Q4H2EZIyoMdLw2MU3kKsQoFZ16/aT1erJ27eq40E0zf/aLH9Ec3ZpKV69SVNkngZfqwC/g/ooujH/8dVZ/sRajWSfmvYr6dUGxF8917myIeaWfem3dnfhgw5v3ZUoS662ZjxCbLtvUf8dj8/R/+5NrFJYrVVrsEoKxLGHAyslcTOyOfmdmtOIuO2lflH82GqKTHEiqSJiXmo/hc4vnFyAT/30w6fhk48R0rfxSsOu5l2OaIpYyc3X7EaxYdf0nJqk6HrNafyHSrXzb6OGkU4bS2s0gpgCedtCYYW87fQ5GFe+bm6wqqfpVbtRpm+VyCt4NWfU7Dp5K+SDWfTDD0SNSiW9mv232dU0jczJjq7QmevNpAczjokH6h/GprkxTOwRFxeJuwv0CIEsPeKRs2Wq6BXVRAe6MvGqoejR6KB/kCW/SzHf9vN+munOPbdGdvCliB6bWAYOBsPBYH9vbx8iRCUOqOMQBYAhYIkcZPeYmdyX+KWlnmuJ/qJHXENf37t6de/rmek974cxVmY249nr0p9ioro+6uuMCG/XETVmhelFfylmOblEZJGICc+FmgxcsmQofcWQgDeW9PBccygqWFcjVcOKiA6b50K35GUcMafEv8Ch5EQn45VcuHP8rOdppqppqjkb95+lbaASayxS7yk18yk8aAEj4cceL+gPPuz0ek07lwuD4IO7u5axZJg9362UTkUo/45cMwefH14ef/l7CmkTmVbpe35soxAIQmaCdY/qYTaZDtVNM93Eo8pEJ2O/qj7m1U/meefTt1TT3DoaxGx1/CTaT1xURf1JZO+mlCkt/gVKi4Gvb3TnPA9M3WP4XUCxuN0FjrRXNOxmu5E2i7GQ7dQDb//Xg8FzK5/4kFhMB81mkC6Kr4sla99SvdZqRYetxs/M7VUgFhdMvHFusr948ttdbeqhcSrkW7qw5JgFPg8sLa4aeb5gOpBUb7XuaMEiQKLVYpbznZVsdsXxuWyxWofEc9Gdrdads30EQ+rDr0G1nFN9w43aTuAvE5cEAqZaICKvHgQAUANqpMRA+HxLkTW/6CtqnQALFOwunzq1vGvKB+QWCK6c4GzZ8H1DTade3CWqvKP7P25c6Y7smD+yTX5G+I/s/zhIEiEgr535+OGovFCj2gmP0n1ikU2czPlRiKkKMpwL8WZn4lDMm3YxivbGV0e9Xn+ttLbWmwahlWFZJRIExGZMIpRWFDTaGwMHtNfTokALslor0LKBFmUh7GctqZzPFVUjd1qxFPgc6QdSznBWMpsaa0FXJP7gNgnl77rEHwmV/06KFAjcmyVeTOmOUxLNnmoLsmsZzrQc4799Nyc4rPIQ6xQcrOsPmlspXpALjnskb5lqLEnedOcNMMdk8w3NBFZPokXr9bIA1+LXjg+jVra3u9vLEl/47JE6TGswKeG0KDf2i3iTLUvyLNmoQ/oGDu1KgY3oL46F8SnlCumrgyEU62DYv870gXL3h0Qem+RFbNN7wMP1qIQQeNxsNjtlUxPsOilveqJ7nLU8LP0YuLtoHU0NnBIUOalTdBVeF5BsYgrzTb3ecNbk1/b3iVH2bgLKWq0ezdg8UvfY/3SGovo6tRA+xrQSnjkpS8IDT8ye8T8gTgt6hVjutIbQd7cKp+XtxYY5weRADXeyyaFFTXQSu6pb9dut+izZm3PLzor3ydOd7jd1VkRzh0+CESZ9RNH9pH9u9L5JdIOTfsmaco+6pZHN3WiuQ3bJEkkCYxDbm8Vj/0voT6Hl6a9/IM8lkAuo3zLy49W4G1InmWvUp8A2S382rDbdZY4SQXgsjqT7VgSq+YVFAn1BRGbJ4QSW437sBBZ6AkZBCUmu5Boidr6S4kTRWWmWTiJD9bBWMSpGSVMLpXIFi5Ysp0RdMLHBC5hV0dPFUn6zIrDoZXiIexkhUbJP5DPSd7MpjhX0WvRTnB60/FxUNlROWlp4rlD8NJvCtptRZAfuwHrG9SWNme1Lmf0mBvm9CvhaEMT2g/R72LrSQkyrNWunQeLzIHmmTdS709+nSL4D4vRv2Jo8wzIzPzhobkSwzJiZfNGAWJb19nu9adlumc9c2QiLPslnQncIT0E8m8576XXILqLYtjX5TbPpKkY3FRCNRBTzlXt3diMiY6ToIOrcBVMW1jbyczzBfqL1LbknHpTbMTBoyw+eIHeSBU425n1uD+O9hnZEERWgS7qnpj/dX4j6rcmuw6ntOrV+I7tUYocOwbT96Lp4grlAfa6R4daKf2SAuAQC6A/zihhUT2BCvGOCyoY9wrbEG4zCr8GqIsNSeJ7jMId5T/dFQ7WKjmmnTCWPNVUUZcOVVTFQjGw671mSIknp5pw37GOvPXbstU+QAAWcwkqSxPIoxaZLoizW65zlO4Gh6CleFDOqLEtq3lCMapiy5HyQwemfnXN2/a7kPRBMeCUYO4Q3aMLMJL5aGJj3tZkfGFzp6ogKSbdTAI1ifY5PpYaJNDHWeJxh6fJNnUOF2wgnu6uaLGNvVLMLiizbBWH8v38HGBcO8RiqiPkUYWJMDav4eSOjlyt6RlczYtEtitbXFxYXTzgStE3tm4NGAB90MB5VN3Ie51pfxqpgpiSR5wVJ4kSZ/MzY9xe0rEH8S2iFlIBSKcSxiycXbcPSA2z7j6RzuUa8Hk1kSteI1S+iFJxsUq3RbXyJQx0iYuzv0k9yRMzcCTlO5UUx9o5R9x3MffHMOOKfeIJr7NhbzYQvmf9hS/ITJlMWdRLBAEMAoTVRZMixW3fZiJItBUW3l02/Jp3tTawWg/FwP3F6Hx8+1HxHkzt5z0mY9onrMOPhZJPBwQiaOJ3NpqGtIVr88eEwwe5yfHAdxyatha5fT2jLg8SieWKtMTHhIG3390qbbGSeWX5Mtti4aEQZKrqrORjM4tlBMIsX3SNX3OJBvL6QIIpeJe4V58+KM19oL6GXKJ3E8Q+tEh0EeunRR+uPXmo8+mjj0qPoUXICMXKePPN+9H76zOwRH3Ue7V56tPMo/SDmUvfR5KQ7R6M4uks0rMH9qYqNtOhj6dCJUC8C8vSXP59NnNjE938efYZ6xmTs2Mx+YqvRrBIv+kVWmFjbC24tNvAgW5boXeQH3cjJnNDq91XRV2Tdz3sFP68s7VUMO7+ZZg0j1a6kzSXPGZTy6yvrGf/ia/RaaSGzoivloFbIWLvvi80Q0Gc4uRDU7bSbzmxkPC5dWm7Ki2fl7IWdS7ed7iw2TG6znc+kjdA2pEztKzETlrTXf0Z/NLMC1xFg/DUU/8YsoZ9Ev0jdkNFfJ9OpR0JiSknEfcLcD0iiK+RHS69kzuxkORJ7h3XM00TPe4cIK/s7sO7hd5DfRLI075h1xV8pplKSIAJUkDhhA/1s9ty5zKcyluFxmXPnsi9ZoiKI/hn/JWy4+CX6hvQxT00Lsmh9yttZQYjYinnEGT7LTuTB8Z52smO+CphxkzkJa2XicYvs3bYwHcg1ss3D9WPbPfpzR4m7kgiWVeLHInnkFQdWSjwYod4fO6YTrJnOM3mnXrcLj0fArvbGh1f671UURTeGARBFFBHndZ8x3GzfMdN2oZ93fEDB/eCwf9DSfWNeB6TQX8Ob+FaF9bwzdQrTnZDiKU2mJk8b9Ffrmq1pavemyBNoZ5Xyewcxth7Eh2/U72k2GqFurpbfnphjxheGiVuX43fEKv07/igmJ4uEaOn6rrbgWLv3aGZ5NRunKEcOE/nRj9P1qAR88gnqxW4zBoFk6BNOvTZ/LhRRl6ZT/8Tk1xNasfcywrV1af0hsglnpD3Qhm/qkpL2TaB096UV2TD9tCKxWvbXMpaZNn0I/rzqmemaZ1oXsyeaTbMVbBrLzRNoMZ8NPNMuZHKuadummw/yacu1wiDIZ/J2LpfN2fn7cu28HbRzmdWz+YrjVPJnV2e6qK8CN7ZKf5c5bMZChhLC5PfBsDBxtEx6hPiy9r1EDNHthHzYjB0flBBqCxKSexoPy9/eWz3V1mEJ9PDJJ+RA1OzierH0fEkgysazpiYI4vjTvMKyWk9RZR71BVmT79EQq/IvvbVYXCs5mhjI5x4RfQANSlp137oIC7LmnU1rqiF8mVdEXu3JrMTP6ZmJVQpxCk3kMV7shjkhUXQPqQDknSxe1NOxD3BJ2IjlKVNVDeI7C82wkBFSKS7lS8VK1C1kvUzN8K1UpqyoYglLiCtqLMZSOR1uV5fvRCPPOb9QaJssp6T5VP6+fLFSXFkuVVnHlI9V7TTWraxjvhhusmilLgYZzVi6cP9tzdk+n2sJxiW/17wxQ8eEV2pQ59aT7Q7dNjD8SZzKYhKGEIDHgBiTjkbou4e8IJpuobCQZweKnCkUlgrSXw/39sjG5thBd1RAgvC2VGGxkEm/lH+Eh0jB/QQW9ycOCvAN5crRPZvNoyXr3rCGElOjG4qztxc7ByXBww8+COdzpWjNfqPgSivqTX0rXP9bsqij65AzkX516CrY7ayxbeJklRrgEacblPoSQweINRtUMo5jt/BklhGXb5fvXbtX4GxX+aenT2Zydo4XO7nC+XvWz36b7Av02vhXVQmXFL+olp7M5opa8b+it5MLvs29DT9xbFM3RJUXtkvwVHThqzIn3Lt+kfNrWjmfeT0846slLGrOl5O18XfR7yZ+S4pIZ9fYbdZLzRQqLnplMZ9/7Zve9FoaXtjb24XWeGVhkgDh+CdJ2u7MB8KVxB5lakYV/+5gC7iCfRKZYcVYj3PDvQPqzqRHQvrz60k5D9BvQo9ukV9Bi61nyc+UEY0zZZfohshOy16DOnhxnCyMUJnkPuIDF118RobZyeoax4qOya2dW/OfwWmzVn3k4ddkMlUSF5/JWNaxc2czJZwVBMMRKsqHn5EDJ5XK6LLJif9fZVce3MZ13vft9fbGsVgssABxElyKBEGRi0MSKZKSTOowoYOU4viWFQW04qN2bcty3ThIrXQSJemRNrXJmcTNjNI2mTRNQ9e5HWfGaTIxWTfH1E3SNskfISepp+00bqedNlDf9xYAQcpuEhDcA8Du2337ju/4fb8vFMyMlg6Rw/QI4rK2feiWm7MXpGCIHHfwwO5QKJa5rYAjmiCV3w6X7ev/LVInJrn6GkVF5wHLRBE4E4gmUhCxnfedHpyYJ0IrGaHIx76wCzZ3PyFQgYahT1DAaWNBUtFg3BFZQ74cEQKnJZV9uIElXMPKU1oE/YFisMNIwQsKvoto22z4QVFhizza/wBPtHG8T8M8i5qacu38haQiTYZknNd1vfVtU1X+XlYKvIJ5vh+LX7R/KEoC0JxvPYcl8sx8zz/opmAuGOvopLjDlowaw1lH17PDRAFtm6hRI1+TPhw0ZfxNqZYnSmfIl7d79M5NonWCN8sPD3cxEOpOoTZqlA58oCn6/SSKfiM3NpaT5URr4zWulItls7uz4oIcMAVWilt4UUMbu2fH2ETrZ6hZcN+XG83liA60KNsJHoUMaVHs9Uv740UnCo0pgCeR/AOgpkbDxzo6Bxju/TGMy9NO4kcyes2ms7JSr9dpMAT4bzxE1zevkVfZcTbidaceX1taMtSmZjSblMK9tbnaqC/He3yaOvUiwUzWZgH2XMgf5ULxHqllF1t+go4K3qYFQMC97Qv9jGYoopTFAVaXjegsGw6usudOnDjH1g11BcwDEjtYHWQl1UAK2VFZ0HJV4/6Q7rp66Ey9fvpKOn3ldH2dkuaphgvmftdQmS285ia1NfYD43KHZRyC+4EBIUVqCFJ11cZyogCW3zEy2Lr06sto1Wk1nNxEPhGLJfITuda652RGEDOScepOmYhkmyjukc8VhfzG84byI4teZiQ/5N1r5zwv18uhCFbeuK9jYhpBWxE8oj/kBfIBmeSJlrm+1GjWyWNprdf7kgkPrSw1+/qcBmrMe+tgeNlT8p6dh6W3dV/PUZbfObCiFWiyKKKm1+xu4B45f87COUxT10W9LrXVFBK64p/o5lw/jzHwcUd9wnwiqaP1hCmFxMnJyCEzEY4YcoA/LLLOwao+4OiSQD2tmtFaD8fDZjy0OlgYyvM8i1E6m0sJAU0PR2Jh1vx5xGGJHHNXUA+RsyhSWLjfNRIFQ9Jy4CLOaWI0Arz6kfDhBG/zEstaPG8JUtGMmWY83KujQ+5lsPCAZcdHtFl536yy3lxebg7t3z/UbFImX6LlLjXqk2cmvV2HFw/vYnb6n/v+P/8zGLvfwO/81NobuZzXy+UeW0KFPA1S+fmyWxvvAMZhMBjIV3q8WFY7brxa8yi8nfQatBJ3pXu1v+KDXKJQqAyIz1p5O1k8UEzadnJyqK+kXZIGY+kSO7KatOPWF7iBSqGQUAKfC98rufFMsZghx18yRp3hyaRtpUYyqeJWG/wa6asxmuHPTyFGkTlE4vTAfGMRlRJ3A+meOLGndtvZX7ulfmNx5L0njr79qDtb63tPNJMZyWS8++64rVKrF4tH528+8vjherI6W0gXM5liuvusPoEe83OYUrLod3/ySP+930KXyOqebzLXj2FbGBLgiWmz4gCEXKDpYdvoQWCMoTTe15jGNWZpjYzpS8sNSHBCptzmChG7INLodfiizB0I4I1l1CBTOqB+nS2gb3dM/wJ6kWJ9aLYm38QHiTMByQOeY2qUJlM0blfVOKrllYQsa6GgpIdVFIo7CU1WHVEcvDWbMM3qkaOyUzlWLh9DH+x/yy4JS5om6URNCLKqqcmBgiRYejZx9EjVNJ93biyXb+yx/W6ir9I4yAWwkUNu0xJHZDKDx5ZIx5ApDhi9uS5lJx6APMIAWqhN8bVKlQaKGxzpfyUOPSOLTloWiZ6i2rZqhUMa6a4Xb+AUJ5MLu244l3HODJQHyPsHnV+aejSmm+Gg3v1l1nRdM5tx0L1GOiwaOKzJrCCw5PbDCpKUeTHgWAFOkriA5TzuwMkGFjq/lDhB4CQtGJE7vzTArG5YTi9XrkKxbrgCSFWYNbisH4JH7pj08339uwvCrYubyPFazX+fGz6OvMY80sPF2ePC8damt+v3kKO5nXb4FdLGcsBlQEc6MsS7PszDbjO9g4kSR4HuHT1EU61yD9gHR0YOxB7gIL/CAftBjnswSnMtZGR5wiEbzoQs05+SjTD5aJtcCFwo7exynk+Q20n70k5sBUgSxGAciiT7+vOlbNWJSIoSMIimaYQ0Q5RmZjImWud5BcwTT9x2aDgq84KkaEEzGk9lC7tKXrwnhsYvc88vUyqRCqgKWaGfUYIGCuT+RRfT5AXyx+fdvkG1KUdDTjgS/IUXuC6Sx2wn85Ks6Opqvr8vGQnrPXMhpihBpkblkZBne2be9tN9h1bK5aWlZPWO6gLZWFkrt9YgnL28Vka0X3T0uKXtfA01wETCyEHGCpgW3LZ61ERMa9UjR5NRYoW81tbiK/S11Cay6fhY1tt4GDK/dOIufTSMSXOX45U10K5g8fyK02jsCHek1L0bzW6//TZ6nNosimC9A32Y2ifG/HwC2/c5PytVbsDFKbRqpbAWDMZNnPoLsqkHgk4Y99UOP2LnzHOXzpk5+xH0OMRtc6yg0QQJ3c3WRxZvUPfMze1Rb1hktuLt6j5eBmVtL+si5xrTnEdME9UhC/MWD6hG7t0hsuQQ1Yl7GdMKNmlNRFrAFGTZJZ0AUwUuIdut1mxjO1X+qwNx9awxhtSzanwgPfaUDzD8vL/3T+0ve0AF/+h/c9L/Ztn3C0X8vWn/O6Y37kZjksxuyK+6bQY3aZwJzrngqoGomFzeDz2hjkH4KIV8hbaEqDGRqliI2XKrDLIav+uOosYLwvjSqBhFiOV1sfS2iqCznL7vsbLAs7uPHPIkncfSxNHFKlE3VHLnW96U73I8a6u6IsgooDnqqMjxCS3IYsGQw4E0r1eSokB2gwYXEsUsFxSDvXGRMmVqI0o2rtmQMzqNIHqq5pLxor58oW9lpe/Ccn3y0VPRS5eipx5FG8vmox+bn//Yo+bZS4FbL09OXr41sM2fIZP1652j50hme/mB68u/ruzryu2WuYQ2YPyDgGmfW8Emcw8djsA5RpPb+sGzzY1YOh27CZHZABuYTAlvJvvo6gF0UHDjenxAOHhQTqSseNxKJeSDB4UB8qHbnZ8pxjgDyHaTUpO0GUq2rfYjN0vUPNuPOvDHwAimnWzHBnYCpYCzY1FvER2n2WjqWoDHmO8bTfWsEjpiVNXMZMydS8h/nvnvZnOVlRVRDhCVxrK6a8Uga5PtznPALAXcqFkM+b/JI5qGCof8VPX19Y8Ui1L/mG2P9RNBdn39PGxJwyUp2+ufBD4q0GhrgocLOD8NilbErnkBMhdMsW7FRcm/bG14q8h55tjMC+dXB35wZOq5wfHKYhEJiFknL6f0/mK9fvzAxdJv9wfM+tLeOuePCazexrF3cQaFHuuKANw4vkmb/kP8LLr7jjuKd97ZepHVWk8/SV/oSOu7yP3M7aXbyfu30EutCvr4uSz5Q3e3nn6jcswt6GeFI+Vw5NxmT1lXaTF/y2ovwsmvXqYv9IxfSOuP/FJaT6O7aUlMx6epd/Py5WmkYq3i2jXLBVBDIV+hhAi4za1vV/wF1/XsYPtqNns1k3nx56+hVy+LzpMJ8cknw4EnY9LlPzx52l08OXhywV04iVAGZ7OZuey/wFUcdHCiVEpgB909GQ5MTMSk4dbayUV38ZR7cmFw4WR3Lnuduu5UNOC423Vda/8DjyI6d6z/GHm3PuxX9lXyvnyZ3PhL/3PsWO7YsavtuoZXevONyzE7FU1Kg7ouANEfYG5BCidlfdwv5uOklM/RUuh5XyL1fSstp/VZeqOkFCRups91sAedcvJg9doiEoY7cfOu75vP+rYKTARy9NcnT5HacxdOu6dPts6yWkbLjpQyRqvyTObLz2c/hF76PlTvqQH4waknoMir8GzbD3grN19n/n69SGgPN3oS2aL+awyR/HdSFvgggGYvNo6HvGzIs5DbRfUjZ/Uas4rm/UBntA57DR+gD4cp7fH0Web1eCwpd+UWw0+W4pp6GX86fJUwU6O11eYyIOfja2hto0FEmaVVb7WBVsHj3IToIZrdse60Xz0cnB32P1obvuW4G2sP8F4/dsTyGpThxnKaQP6BRgF061B87+YmWqW5QppNuvIcL16OM1v8optML6YXemqe8lRQ+1LFz1JJlHJvjb4o5eZa69m4nx+XeUPeLdQmL+itE6DWo2FINLPG0vIKWllvEJHLN29Tsl/for2lQ1Dew1rOHSsh6kZspzkeo7ZICwL9DES6mfd5Dqsyx9m2VlcNjxcl/NOqdFzkDaRC3kw+oipzVtBQg1dlLG9ID6uSsrzRLueb6G8oVzdEooylECWtAm92hPJVg+uPaC9EciKPE831lhN3egpq/QcA+7olWW863VvSFiZjkwmSeyozpyh+HVcofxAu1KJTRCusQQZ2opzSFOxpSHdadW24JAOBQdknyjajnp2tULtQxcO2P0f72WLsqECd8nYbjcAyTmQgELac1hOO6RrhiIO4vKBpX9FiQp5Xta+IghL69AsS5vJcAL8giWyeVURuVQ+hFhDIWAl8VNFNfV03LaG1oeHoN1RpHWvo9qMIEwUSH3nPESk86OKjrR+fJeecI+c+q8f4OVZdn+MMfBfGHFlLZwXc+rpSnycC4fFIgguqDd009REpFGlI6pExSVUZzccksAy1rk0SufAYqaMLzGPMO5h3Me+HDMOICNrbasuuQqhXClXdqJ0nX9ljUbBY1+xodZQdENMsBnbHUVJrmIi3JXB7TIP67Vo2iDKAcNlWlX5iajKliBGPTOJubXwggPJVXIaDa9TBDZioaSC8qgG1/vX1+5+Bwol6H/n3ckEkqkTU5Fk9wiocy8WiPMdLyKU7feHSWayjsPZgVRM4PlQYQsGArpypCImtur8vMXlm8k8LLKcYkZzKIz4mChGpGEveU+REpRS3kryOLib6AgENXTyCw4MD+OiVw7CWjv5wsJ7sP0n+P6KlWVEPBlUcSl7gkISwjESWHxq/wGEkG3g6bDRN7+whIyDbpczxBVbkpZvNkDV/IxkJj1tunwsgrRkdiWhw8jw5Hkn7zPAldWQ6KAUi2T3OkHZKE/jbT53osdP7/D1EDiUaf0XEFbGQtYjqWq2R0eSOM7ehQGsF8u989p7n7Oqx6k+ei9fqnsUI0AbomGuTUW+IuZHaS3zrJ6aRpltYEwvna/ZOd1pHtEkh0i3y5CkRnYw844FpEBRJLybKj0caCHJcLYrto/uHzSOUd2Q1mnqo7Dy0SrfJ4uWFvlMZLqQH8xKRsYKjlrU7RDbkfEgPsdMRsYpNhOqKNLvqNfwjrMaN4+0tGGyTtVoylA9gmY/JIU0LKXHSrwL9wbFwOh1GW3YhP38qxcWjnuwAYFLHHo1Jz3L+/bnIq2tGazWg1PlCqXCuztux6D3IsYPKZ+UAi1YMzXHUAFyAahhvbv1cNnSlq289T8qR20wTjIlDEHjp1SqkdQN/Lp1CwN8wG14olW78/fzM0p4TqDTT37/U34/WD7W+tWvXu1793oTnvXbo/PnzbT3hQ+ScSZBycvtRO+d2Bzxo0yzclRJC569IH7CyWesD2ZFUKrXvSjTDZp9R6umRdNVOp+1/rmaybNay0+1z/hh9nuYMaDt3wBMDCIASaq/2k+5fQjSVeFsHt6s1EVfRj81kOrNvZuH4QV054KV2y7Kk6dmhSNS09fxb93E1N9KvZxJqKoF+py+izUzOFIaG0CDqTyJOLOeQivRd49FimVUVtxY0cDAX5np4nCLQDinrrg+HtDqub+8XGax77dUWZCjazmO+lawHxqZ2PqYA3aCggTEfPADADtB+0MbUhScuTNHFhs9IslxMjxeL4+liysr1KZqAsVIwg+FIwMJKSFZTOSuFmOn2MVMX/tcnjHwMCzQImRcCMsZCbcrdw/E35PL9g/E8x7+tUibn6eHA+xh6npEoPvRXvWDml7/KL/0ql7aFl++jviDfGJ9vp5z1x4VuhmPb7c12STGrHoRedLJwBtQVRdHIdWqKghwaWUFDLwLqKuW9UQPP1gRTBSJD1RRqW/UCY1WIcm7BzBztEGPgPPBTe5RsCcxB0Fpq3gekqcFkKThszw0W58dx5eZbXrhlQpnc9hlyBrxY1EumB+eGl5a8JXc8Fh3ry5C9bpmvoj/3ywQ3hw0oRz9altyjmSM9BbCOPvUOWHSEkflxsXrLLZPy1GBid3A4PtdXrO/4BH1i8PBwo+GOx63xvkzrz3r3tu51hXKlGDRyFuCUHTP8OjjLl8uoXF4BgG4ZoLq9MWMgEQL7yYHrueRciGmnkm1HNezh++jYwl3KZk7NvtXadlnfoWjmryFN0kBw1qTWa5Kmfd/PJrMUMcJkCgsb7eQqncPimpSZL89nwH4PR6742X0fTYnxIAyfwbjIbOnnKzTGIANZddpBJBQuXwu5eAcglFxZE1STphpYXlqKb0E1UNP3Nj8C7g4PMqWqyzSurjdHt+lza/aesGaHoK12ZxWi6qx2MnGnzjyEmIe2tUOIVr+uhgsVG22krBY9B6pbqdYmZNmDvWuwHF3rxtX/hFwHsCdVGGCpoeZnPzcjRQvUgIii3fntHJBSiF0nZHnABToN9J1d75w9vG84JwR3zUxd2bcrwuu8JP2dnDDNhIknLmRHj8ad0b27+wL60dHsBaTv24vxULaqRvb1JbTBTEqwBFWbkU044At7xw/GUm5yLOmM9nFmvxE7OL53e2xv8PrY3lo+jboOnR7j5Bl5Xt4jh/tNM99r5Py3j370TXI6HE6He2UXwIWADuOLE6EsUYRq21AiXn0DxR0H8mHHEcRdtJqbNC+208MZDOcJv4HuZvco1O3H4dEo8X+dAdZj/43WKY4XNDey+l7n4/jMDNMbH4D99olcM2+6BaFL9wqmXeo6pvBScFd8WfM0MiKD/uW3SPV3k6KujJ2KxU6NKbqYRMx8axP1B5aWHKxKkopX9g6U2N2uu5stDfTmhghQK/Pw6/TocWgJVNraomKjzj/gXO7tu+vDJzKZE2+CxR2+rdgDAoS1FcRAv6GX+Mpgf2FwsNA/OE95TFOfcRzQXfV2m+/lPfRjf/Yy+8k4c4w5/jq8lURV7rAgUibEzkwGiiTIlu62D3b+ghILNenFN4HcEtVbq04dkBWt74oYaqvYaCw3my90d1Z7v2mgOh2DVsFsMbVU92Otm34tO06zLikSeTvA0y8B0Fvq+tL+Af2EtHXIIUw1EIuMmbXqOK65RJD9VL8k3U8eWagkWVeu9F8Jox/1Y0u6/79QsyT96D2FK9Wtdv0yepm0xxnauylOiegwIFURVYrmeWx7mSjR5XgUlKMIpgRHbXoqGAVonAT6ZOqu++4c51JCZF4qVybHR8e4xWCc19Rw3/SQxUckrAtExTBY4O7lOTYQicdkng3zAr8LeHHvJwfsu+u+UVyPCMk0OdkH4xxiOTU1FXfTFiY6dpYXWSwqLOaJKqsIWAjziLUENgA6wrVrRE9EpE4OMHVmkbl5h0wluHBLeSI8uv6kPOADTMm1+4ghdxwUaaLagXg5NiBGvTS7uwKoTJo4AgGgqJam37LM7MUrF2dnH3nvxdnW125KibwoWnEjkH7rRPFkOqAbAi8LRliWj8tYEHlBjMYC0QFR4EU7+3Vwkyb2l1/ZN2d+52Aunybda5ac6+J7HyGLG37KIkNHLBrdk0myimapmhTEMdeuJexXWJZog0QE4lAwyN6kISuUdscnpt+WkpIPHBofeueqJm/ZHeHxAhaiztzE3M68ZUdt7EwINl6FqhlGb1w1/i9yo2QmgpqhiFWX9ISCCRXTrZdH3kduAxbXeqRL7XhCILVgRnWj75aKeyShq7rIyZwWlKRZDD4CnnzpRE2R54Ro3wOHeIE0klit9am7vOmXJ1IZJ4GYufaJZx9BxS1xt/XMt1hdQ2hoPBlHsmIqmhTgonlrLBZ5gWUNA0RGsjz+pU/roXA8Xrz/zp+2fuacnyyd+GNV6vSBT1P8WIGMyRTeFvEA0AqT7TRbpWg4sPnYkIIA7AZf4owJ0n53zXCcwO1ThZlvcBwrwsYBdJqV+QkB8wvoQUUSZu/nRUF5YIXDnPLrD/ErAmkMT22LzTV3IlXyfrRBzxx1JLeYO3g5t80J98WHM1NPx5iOb+bD6Ema69bGcDj6zdwH4Rj0ZOyVhzP7u+X9CUWfQsQTOMpyFIIcafficT+djEDkgq9KyUpipP/USS1CpunOTlKSrjHvQpeSkgBJW/iItv/i/vaOlNw7PfFuyDXwfwVB8YUAAHicY2BkYGAA4lWM4ubx/DZfGbiZGEDgtpnQKRj9/9f//0y8TCCVHAxgaQAQawqVAHicY2BkYGBiAAI9Job/v/5/ZuJlYGRAAYwhAF9SBIQAeJxjYGBgYBrFo3gUD0H8/z8Zen4NvLtpHR7khAt1wh4A/0IMmAAAAAAAAAAAUABwAI4A5AEwAVQBsgIAAk4CgAKWAtIDDgNuBAAEqgVSBcgF/AZABqAHIgc+B1IHeAeSB6oHwgfmCAIIigjICOII+AkKCRgJLglACUwJYAlwCXwJkgmkCbAJvAoKClYKnArGC2oLoAu8C+wMDgxkDRINpA5ADqQPGA9mD5wQZhDGEQwRbBG2EfoScBKgEywTohP4FCYUSBSgFSAVYBV2FcwV5BYwFlAWyhcIFzwXbheaGEIYdBi8GNAY4hj0GQgZFhk2GU4ZZhl2GeIaQhqyGyIbjhv6HGIczh0sHWQdkh2uHf4eJh5SHngemB64HtgfCB8cHzgfZh+eH9AgGCBQIHQgjCCsIQohQiHSIkwihCK2IvgjRCOGI8Ij+iRqJOglFCUsJWoljiX6JmgmlCbcJxInPid+J6wn9ChQKIoozCjsKQ4pLiliKZwpwCnoKkQqbCqcKtIrQiuiK+YsPix6LM4tAC0yLZAtxi34LnAuoC62LuAvTC+ML9gwTDC0MNoxDDE0MVwxjDG+MfQyQjKCMrAy7jMaM1oznDPYNGA0ljS8NM41GDVONbQ16DYiNmQ2kjbmNyQ3SDdeN6A33Dg6OHI4ojkcOTY5UDlqOYQ5yDniOfA6bjroOww7fjvmPAA8GjwyPJg8/D1OPbY+ID6APtw/KD9mP8A/6D/+QBRAckDYQQRBQEGEQdhCGEJEQrpC3EMOQ1pDkEOiQ9BD7kQ0RKxE1EUKRURFnkXARehGEEZURmZGvEcoR1BHaEeKR75IIEhASHBIpEjYSSZJWkmOSchJ8koQSk5KgEqkSs5LAks4S8hMrEzKTUBNdE2eTchOEk40TpRO4E8gT1pPlk+wUBBQQlBkUIZQ3FEKUS5RYFGaUd5SUlJ2UtxTYlP4VDJUWFRqVKAAAHicY2BkYGAMYZjCIMgAAkxAzAWEDAz/wXwGACE9AhEAeJxtkE1OwzAQhV/6h2glVIGExM5iwQaR/iy66AHafRfZp6nTpEriyHEr9QKcgDNwBk7AkjNwFF7CKAuoR7K/efPGIxvAGJ/wUC8P181erw6umP1ylzQW7pEfhPsY4VF4QP1FeIhnLIRHuEPIG7xefdstnHAHN3gV7lJ/E+6R34X7uMeH8ID6l/AQAb6FR3jyFruwStLIFNVG749ZaNu8hUDbKjWFmvnTVlvrQtvQ6Z3anlV12s+di1VsTa5WpnA6y4wqrTnoyPmJc+VyMolF9yOTY8d3VUiQIoJBQd5AY48jMlbshfp/JWCH5Zk2ucIMPqYXfGv6isYb8gc1HQpbnLlXOHHmnKpDzDymxyAnrZre2p0xDJWyqR2oRNR9Tqi7SiwxYcR//H4zPf8B3ldh6nicbVcFdOO4Fu1Vw1Camd2dZeYsdJaZmeEzKbaSaCtbXktum/3MzMzMzMzMzMzMzP9JtpN0zu85je99kp+fpEeaY3P5X3Xu//7hJjDMo4IqaqijgSZaaKODLhawiCUsYwXbsB07sAf2xF7Yib2xD/bFftgfB+BAHISDcQgOxWE4HEfgSByFo3EMjkUPx+F4nIATsYpdOAkn4xScitNwOs7AmTgLZ+McnIvzcD4uwIW4CBfjElyKy3A5rsCVuApX4xpci+twPW7AjWTlzbgdbo874I64E+6Mu+CuuBvujnuAo48AIQQGGGIEiVuwBoUIMTQS3IoUBhYZ1rGBTYxxG+6Je+HeuA/ui/vh/ngAHogH4cF4CB6Kh+HheAQeiUfh0XgMHovH4fF4Ap6IJ+HJeAqeiqfh6XgGnoln4dl4Dp6L5+H5eAFeiBfhxXgJXoqX4eV4BV6JV+HVeA1ei9fh9XgD3og34c14C96Kt+HteAfeiXfh3XgP3ov34f34AD6ID+HD+Ag+io/h4/gEPolP4dP4DD6Lz+Hz+AK+iC/hy/gKvoqv4ev4Br6Jb+Hb+A6+i+/h+/gBfogf4cf4CX6Kn+Hn+AV+iV/h1/gNfovf4ff4A/6IP+HP+Av+ir/h7/gH/ol/4d/4D/7L5hgYY/OswqqsxuqswZqsxdqsw7psgS2yJbbMVtg2tp3tYHuwPdlebCfbm+3D9mX7sf3ZAexAdhA7mB3CDmWHscPZEexIdhQ7mh3DjmU9dhw7np3ATmSrbBc7iZ3MTmGnstPY6ewMdiY7i53NzmHnsvPY+ewCdiG7iF3MLmGXssvY5ewKdiW7il3NrmHXsuvY9ewGdiO7id08t8TDSMY9niSCpzwOxEIuCLRSPDFTGkUitqaYHmTG6kjeJtJuLhiKWKQyaOVspCPRzqGS8ZopcCRCyRcLnCkrjbSiUBALu6HTtUJBwoflQKKyoYxNOaCNLUwywloZD01JSVePK7u4la7uxne1prwwy2qtShMzI1LT4DJNFI9Flat+FnW4kkNaM61fpEs5GWRK9TZkaEetXKDEwBYw1rFYzGHiprmhpRmeyuHItnOBx8V7pE7UeMRv03GTx1yNrQxMnafBSK7TOaSp3uiFeiPOV7mFrramvJjpvjozs6TlTMeLIW+DG1vaja+2ZwSdHGeJG+nOktWVCQuzRMmAW9EoRfM8tTW+wdPQ1Po8WMuSSp/Ha5W+ECn9KNXtKx2s9UIx4OQSjb7Wa05pxYGVfhaGMtCx6fHAynVpx3tMRf1+kgpjekoP9c4ZMaHxdGTbdMQ5cRaTkqWpbKDTLDLLM4JUijg0M1OGqc4S05kKkmhmfipoyWJ2vtUJHdyM7TalhZOrNvqZVCGBdj8zMiYLIx4vlDghz9Nxt6QbmgZr/cxaHbcCroJMcavTDkGyj6dukxoloQmRSLmT1XI4H/CUIJ2CrdDDTbViqNNxKxgR7fFU8GYO++59jyhYRSFMJCElk76mo6sG7oza9JuFPcPXRdjJMR235n44CxcCHYqesdwZRKcd6MFAiA4lEp2SumBNpHUiWRSbLm2LTSnqes4lliaMDsN5ysJEkHAKyOlsCsrx4oTRzgtulyfcrJG5pG/7Fkmhc2UiXHc2CDJueXdR3A70ukh7MqL00wy5GfnVd0JueZ8byh9huDghYjPRqZ1yGW3lqYhIW3fC16XYaJSsHgqzRo5SD6WJpDENF7luL5uh80eK/LUWZUs6Ep6SLR66pFhxaMX9aOcBlDaKtDQrcrG9PCvIM04h6WsVdkpMXrC2oyD+/CYRvDiRxs5/Jwrz1O+cpFtIaCPozEv1I6GSckTGIVm3PGGUXG2kUzEZt2ResFCwW0izHIzL1a1JG4xETNGQbwWJlJ18VFMetao5YaUSnVn3zXI/Eipqw5Qno+WJwFAhsGLTbpVQ8Znsyq2ZtmLPguTHSF4UcV9vSlvo66UGCl2lyFZyvVJiU7km7Igyx3BUqqWTV6I0zFngQ6NcQqbKoYx2LXWh2J0IXBUt1axTmdAN+qJMjDRNEXGpXOC3Jmi16mFbRH0R9ngWSt3NcVGmi5FkpK1uFZgKayH2H+iIzUCkifVuWxGb0jbIYpFSXeoMeCDKPN0oSYOCPXThVxtIRRMrA8WHlYHWYSffvB43pHhCnFXtgpA32YUCD7lSIh2X83wslsQfTLcglGlsZsohb3TVEbPgirMJUiF8bdw2Q906nKw6pCRpakOth0o0h6kM/TpreaqvjTh1O2l9JLjL1lV6UhEbyZA8qznSWTpU3JjKyEaqRm+SPibDlre0F6Q66eQw34cdBaHjor4olVTdyeu3zUgp5VC8c7WcyyhjU/j5Ar2yRZKX4VlR/k3jLGhP4WrLxd1mL3C5S8YD7YLC+VPFkU4ehj0+IOO6Bek7Bxe1nDXpYV3URDVqASlJ0WNMKprOJG9EU7nffqb6DeeZ5JgxiUzuLB2qFdxK7Te/UZKFvMqX2aUW8ZQKQte3hL2ix2kXzLlGK8cuJxWTig5hoWA6yFxHupxT6ZKg7xFEITHUAvDQjISwhS4XcsUnvLc0IzGkzEDdWoM0Zc7cZglWJ2hXxaFWJN3Jusn1SNLeWFGlfjEzzYhEY+9THlVctqjH5F60ha2iqyUnqsXaO0qs2zohTxxQFhZpI+EqsuSazYRT/XcFdz4JB23C3q8pu1cSYU3Vf7mZ+GUKaoFdJfQ77jdrSv3CFoueuedzkggbxL1nNEuwWnGommh6uenKFplD4eiSQBFXTd9B2ZE09ST1n3XPdR6MG0mqwyywpkn3hdDfAmqpoF7HVuiha3nCbDgz6Voh51Njqr5naBiyJ8yU6ObRqBPnGKZmhDv/pqGS4lv01gStVj0kgRTKB1othzSZjHbOUTOKlmxa1Eql1u9SjQqqooMwNGPeaFM3iXZ1pUULo2IVJXbc9pDiUwlS5fCIq0HNl91xleoblSiT0SGMROqPrTlhiz6Lu+tRHkFLU54H0YwgFEpQIc0Frh2efcPxLW/4/t2/UfMCO08e1KB/3121Le2nJBeTXDWdJ+ftgPdpO8qivvHNf7PAWdJ2iyHXcebXC1yxtFdtKuexUT4qq4TNqGY3XK1tuwcZmL+R4woVI72dmmZKUobTmoPANdbusrC7sEZlimK8lSUhz+9atRzWii5x3YVv03uoP+YJWp3CXQSN7EtFXXqd+raYQmdpQyhq3X375Vc9EZS30pVSoMiV6G5Jm7pcilxK8re9HaWE7llDtzEurqevbqTuhkiXkWFjg8qRoRtx1zUF+U3C+cCEVTbJqvo4z7bz9Ky79Jj1xdzc/wARDj0u") format("woff"), url("../fonts/dashicons.ttf?99ac726223c749443b642ce33df8b800") format("truetype"); font-weight: 400; font-style: normal; } /* stylelint-enable */ .dashicons, .dashicons-before:before { font-family: dashicons; display: inline-block; line-height: 1; font-weight: 400; font-style: normal; speak: never; text-decoration: inherit; text-transform: none; text-rendering: auto; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; width: 20px; height: 20px; font-size: 20px; vertical-align: top; text-align: center; transition: color 0.1s ease-in; } /* Icons */ .dashicons-admin-appearance:before { content: "\f100"; } .dashicons-admin-collapse:before { content: "\f148"; } .dashicons-admin-comments:before { content: "\f101"; } .dashicons-admin-customizer:before { content: "\f540"; } .dashicons-admin-generic:before { content: "\f111"; } .dashicons-admin-home:before { content: "\f102"; } .dashicons-admin-links:before { content: "\f103"; } .dashicons-admin-media:before { content: "\f104"; } .dashicons-admin-multisite:before { content: "\f541"; } .dashicons-admin-network:before { content: "\f112"; } .dashicons-admin-page:before { content: "\f105"; } .dashicons-admin-plugins:before { content: "\f106"; } .dashicons-admin-post:before { content: "\f109"; } .dashicons-admin-settings:before { content: "\f108"; } .dashicons-admin-site-alt:before { content: "\f11d"; } .dashicons-admin-site-alt2:before { content: "\f11e"; } .dashicons-admin-site-alt3:before { content: "\f11f"; } .dashicons-admin-site:before { content: "\f319"; } .dashicons-admin-tools:before { content: "\f107"; } .dashicons-admin-users:before { content: "\f110"; } .dashicons-airplane:before { content: "\f15f"; } .dashicons-album:before { content: "\f514"; } .dashicons-align-center:before { content: "\f134"; } .dashicons-align-full-width:before { content: "\f114"; } .dashicons-align-left:before { content: "\f135"; } .dashicons-align-none:before { content: "\f138"; } .dashicons-align-pull-left:before { content: "\f10a"; } .dashicons-align-pull-right:before { content: "\f10b"; } .dashicons-align-right:before { content: "\f136"; } .dashicons-align-wide:before { content: "\f11b"; } .dashicons-amazon:before { content: "\f162"; } .dashicons-analytics:before { content: "\f183"; } .dashicons-archive:before { content: "\f480"; } .dashicons-arrow-down-alt:before { content: "\f346"; } .dashicons-arrow-down-alt2:before { content: "\f347"; } .dashicons-arrow-down:before { content: "\f140"; } .dashicons-arrow-left-alt:before { content: "\f340"; } .dashicons-arrow-left-alt2:before { content: "\f341"; } .dashicons-arrow-left:before { content: "\f141"; } .dashicons-arrow-right-alt:before { content: "\f344"; } .dashicons-arrow-right-alt2:before { content: "\f345"; } .dashicons-arrow-right:before { content: "\f139"; } .dashicons-arrow-up-alt:before { content: "\f342"; } .dashicons-arrow-up-alt2:before { content: "\f343"; } .dashicons-arrow-up-duplicate:before { content: "\f143"; } .dashicons-arrow-up:before { content: "\f142"; } .dashicons-art:before { content: "\f309"; } .dashicons-awards:before { content: "\f313"; } .dashicons-backup:before { content: "\f321"; } .dashicons-bank:before { content: "\f16a"; } .dashicons-beer:before { content: "\f16c"; } .dashicons-bell:before { content: "\f16d"; } .dashicons-block-default:before { content: "\f12b"; } .dashicons-book-alt:before { content: "\f331"; } .dashicons-book:before { content: "\f330"; } .dashicons-buddicons-activity:before { content: "\f452"; } .dashicons-buddicons-bbpress-logo:before { content: "\f477"; } .dashicons-buddicons-buddypress-logo:before { content: "\f448"; } .dashicons-buddicons-community:before { content: "\f453"; } .dashicons-buddicons-forums:before { content: "\f449"; } .dashicons-buddicons-friends:before { content: "\f454"; } .dashicons-buddicons-groups:before { content: "\f456"; } .dashicons-buddicons-pm:before { content: "\f457"; } .dashicons-buddicons-replies:before { content: "\f451"; } .dashicons-buddicons-topics:before { content: "\f450"; } .dashicons-buddicons-tracking:before { content: "\f455"; } .dashicons-building:before { content: "\f512"; } .dashicons-businessman:before { content: "\f338"; } .dashicons-businessperson:before { content: "\f12e"; } .dashicons-businesswoman:before { content: "\f12f"; } .dashicons-button:before { content: "\f11a"; } .dashicons-calculator:before { content: "\f16e"; } .dashicons-calendar-alt:before { content: "\f508"; } .dashicons-calendar:before { content: "\f145"; } .dashicons-camera-alt:before { content: "\f129"; } .dashicons-camera:before { content: "\f306"; } .dashicons-car:before { content: "\f16b"; } .dashicons-carrot:before { content: "\f511"; } .dashicons-cart:before { content: "\f174"; } .dashicons-category:before { content: "\f318"; } .dashicons-chart-area:before { content: "\f239"; } .dashicons-chart-bar:before { content: "\f185"; } .dashicons-chart-line:before { content: "\f238"; } .dashicons-chart-pie:before { content: "\f184"; } .dashicons-clipboard:before { content: "\f481"; } .dashicons-clock:before { content: "\f469"; } .dashicons-cloud-saved:before { content: "\f137"; } .dashicons-cloud-upload:before { content: "\f13b"; } .dashicons-cloud:before { content: "\f176"; } .dashicons-code-standards:before { content: "\f13a"; } .dashicons-coffee:before { content: "\f16f"; } .dashicons-color-picker:before { content: "\f131"; } .dashicons-columns:before { content: "\f13c"; } .dashicons-controls-back:before { content: "\f518"; } .dashicons-controls-forward:before { content: "\f519"; } .dashicons-controls-pause:before { content: "\f523"; } .dashicons-controls-play:before { content: "\f522"; } .dashicons-controls-repeat:before { content: "\f515"; } .dashicons-controls-skipback:before { content: "\f516"; } .dashicons-controls-skipforward:before { content: "\f517"; } .dashicons-controls-volumeoff:before { content: "\f520"; } .dashicons-controls-volumeon:before { content: "\f521"; } .dashicons-cover-image:before { content: "\f13d"; } .dashicons-dashboard:before { content: "\f226"; } .dashicons-database-add:before { content: "\f170"; } .dashicons-database-export:before { content: "\f17a"; } .dashicons-database-import:before { content: "\f17b"; } .dashicons-database-remove:before { content: "\f17c"; } .dashicons-database-view:before { content: "\f17d"; } .dashicons-database:before { content: "\f17e"; } .dashicons-desktop:before { content: "\f472"; } .dashicons-dismiss:before { content: "\f153"; } .dashicons-download:before { content: "\f316"; } .dashicons-drumstick:before { content: "\f17f"; } .dashicons-edit-large:before { content: "\f327"; } .dashicons-edit-page:before { content: "\f186"; } .dashicons-edit:before { content: "\f464"; } .dashicons-editor-aligncenter:before { content: "\f207"; } .dashicons-editor-alignleft:before { content: "\f206"; } .dashicons-editor-alignright:before { content: "\f208"; } .dashicons-editor-bold:before { content: "\f200"; } .dashicons-editor-break:before { content: "\f474"; } .dashicons-editor-code-duplicate:before { content: "\f494"; } .dashicons-editor-code:before { content: "\f475"; } .dashicons-editor-contract:before { content: "\f506"; } .dashicons-editor-customchar:before { content: "\f220"; } .dashicons-editor-expand:before { content: "\f211"; } .dashicons-editor-help:before { content: "\f223"; } .dashicons-editor-indent:before { content: "\f222"; } .dashicons-editor-insertmore:before { content: "\f209"; } .dashicons-editor-italic:before { content: "\f201"; } .dashicons-editor-justify:before { content: "\f214"; } .dashicons-editor-kitchensink:before { content: "\f212"; } .dashicons-editor-ltr:before { content: "\f10c"; } .dashicons-editor-ol-rtl:before { content: "\f12c"; } .dashicons-editor-ol:before { content: "\f204"; } .dashicons-editor-outdent:before { content: "\f221"; } .dashicons-editor-paragraph:before { content: "\f476"; } .dashicons-editor-paste-text:before { content: "\f217"; } .dashicons-editor-paste-word:before { content: "\f216"; } .dashicons-editor-quote:before { content: "\f205"; } .dashicons-editor-removeformatting:before { content: "\f218"; } .dashicons-editor-rtl:before { content: "\f320"; } .dashicons-editor-spellcheck:before { content: "\f210"; } .dashicons-editor-strikethrough:before { content: "\f224"; } .dashicons-editor-table:before { content: "\f535"; } .dashicons-editor-textcolor:before { content: "\f215"; } .dashicons-editor-ul:before { content: "\f203"; } .dashicons-editor-underline:before { content: "\f213"; } .dashicons-editor-unlink:before { content: "\f225"; } .dashicons-editor-video:before { content: "\f219"; } .dashicons-ellipsis:before { content: "\f11c"; } .dashicons-email-alt:before { content: "\f466"; } .dashicons-email-alt2:before { content: "\f467"; } .dashicons-email:before { content: "\f465"; } .dashicons-embed-audio:before { content: "\f13e"; } .dashicons-embed-generic:before { content: "\f13f"; } .dashicons-embed-photo:before { content: "\f144"; } .dashicons-embed-post:before { content: "\f146"; } .dashicons-embed-video:before { content: "\f149"; } .dashicons-excerpt-view:before { content: "\f164"; } .dashicons-exit:before { content: "\f14a"; } .dashicons-external:before { content: "\f504"; } .dashicons-facebook-alt:before { content: "\f305"; } .dashicons-facebook:before { content: "\f304"; } .dashicons-feedback:before { content: "\f175"; } .dashicons-filter:before { content: "\f536"; } .dashicons-flag:before { content: "\f227"; } .dashicons-food:before { content: "\f187"; } .dashicons-format-aside:before { content: "\f123"; } .dashicons-format-audio:before { content: "\f127"; } .dashicons-format-chat:before { content: "\f125"; } .dashicons-format-gallery:before { content: "\f161"; } .dashicons-format-image:before { content: "\f128"; } .dashicons-format-quote:before { content: "\f122"; } .dashicons-format-status:before { content: "\f130"; } .dashicons-format-video:before { content: "\f126"; } .dashicons-forms:before { content: "\f314"; } .dashicons-fullscreen-alt:before { content: "\f188"; } .dashicons-fullscreen-exit-alt:before { content: "\f189"; } .dashicons-games:before { content: "\f18a"; } .dashicons-google:before { content: "\f18b"; } .dashicons-googleplus:before { content: "\f462"; } .dashicons-grid-view:before { content: "\f509"; } .dashicons-groups:before { content: "\f307"; } .dashicons-hammer:before { content: "\f308"; } .dashicons-heading:before { content: "\f10e"; } .dashicons-heart:before { content: "\f487"; } .dashicons-hidden:before { content: "\f530"; } .dashicons-hourglass:before { content: "\f18c"; } .dashicons-html:before { content: "\f14b"; } .dashicons-id-alt:before { content: "\f337"; } .dashicons-id:before { content: "\f336"; } .dashicons-image-crop:before { content: "\f165"; } .dashicons-image-filter:before { content: "\f533"; } .dashicons-image-flip-horizontal:before { content: "\f169"; } .dashicons-image-flip-vertical:before { content: "\f168"; } .dashicons-image-rotate-left:before { content: "\f166"; } .dashicons-image-rotate-right:before { content: "\f167"; } .dashicons-image-rotate:before { content: "\f531"; } .dashicons-images-alt:before { content: "\f232"; } .dashicons-images-alt2:before { content: "\f233"; } .dashicons-index-card:before { content: "\f510"; } .dashicons-info-outline:before { content: "\f14c"; } .dashicons-info:before { content: "\f348"; } .dashicons-insert-after:before { content: "\f14d"; } .dashicons-insert-before:before { content: "\f14e"; } .dashicons-insert:before { content: "\f10f"; } .dashicons-instagram:before { content: "\f12d"; } .dashicons-laptop:before { content: "\f547"; } .dashicons-layout:before { content: "\f538"; } .dashicons-leftright:before { content: "\f229"; } .dashicons-lightbulb:before { content: "\f339"; } .dashicons-linkedin:before { content: "\f18d"; } .dashicons-list-view:before { content: "\f163"; } .dashicons-location-alt:before { content: "\f231"; } .dashicons-location:before { content: "\f230"; } .dashicons-lock-duplicate:before { content: "\f315"; } .dashicons-lock:before { content: "\f160"; } .dashicons-marker:before { content: "\f159"; } .dashicons-media-archive:before { content: "\f501"; } .dashicons-media-audio:before { content: "\f500"; } .dashicons-media-code:before { content: "\f499"; } .dashicons-media-default:before { content: "\f498"; } .dashicons-media-document:before { content: "\f497"; } .dashicons-media-interactive:before { content: "\f496"; } .dashicons-media-spreadsheet:before { content: "\f495"; } .dashicons-media-text:before { content: "\f491"; } .dashicons-media-video:before { content: "\f490"; } .dashicons-megaphone:before { content: "\f488"; } .dashicons-menu-alt:before { content: "\f228"; } .dashicons-menu-alt2:before { content: "\f329"; } .dashicons-menu-alt3:before { content: "\f349"; } .dashicons-menu:before { content: "\f333"; } .dashicons-microphone:before { content: "\f482"; } .dashicons-migrate:before { content: "\f310"; } .dashicons-minus:before { content: "\f460"; } .dashicons-money-alt:before { content: "\f18e"; } .dashicons-money:before { content: "\f526"; } .dashicons-move:before { content: "\f545"; } .dashicons-nametag:before { content: "\f484"; } .dashicons-networking:before { content: "\f325"; } .dashicons-no-alt:before { content: "\f335"; } .dashicons-no:before { content: "\f158"; } .dashicons-open-folder:before { content: "\f18f"; } .dashicons-palmtree:before { content: "\f527"; } .dashicons-paperclip:before { content: "\f546"; } .dashicons-pdf:before { content: "\f190"; } .dashicons-performance:before { content: "\f311"; } .dashicons-pets:before { content: "\f191"; } .dashicons-phone:before { content: "\f525"; } .dashicons-pinterest:before { content: "\f192"; } .dashicons-playlist-audio:before { content: "\f492"; } .dashicons-playlist-video:before { content: "\f493"; } .dashicons-plugins-checked:before { content: "\f485"; } .dashicons-plus-alt:before { content: "\f502"; } .dashicons-plus-alt2:before { content: "\f543"; } .dashicons-plus:before { content: "\f132"; } .dashicons-podio:before { content: "\f19c"; } .dashicons-portfolio:before { content: "\f322"; } .dashicons-post-status:before { content: "\f173"; } .dashicons-pressthis:before { content: "\f157"; } .dashicons-printer:before { content: "\f193"; } .dashicons-privacy:before { content: "\f194"; } .dashicons-products:before { content: "\f312"; } .dashicons-randomize:before { content: "\f503"; } .dashicons-reddit:before { content: "\f195"; } .dashicons-redo:before { content: "\f172"; } .dashicons-remove:before { content: "\f14f"; } .dashicons-rest-api:before { content: "\f124"; } .dashicons-rss:before { content: "\f303"; } .dashicons-saved:before { content: "\f15e"; } .dashicons-schedule:before { content: "\f489"; } .dashicons-screenoptions:before { content: "\f180"; } .dashicons-search:before { content: "\f179"; } .dashicons-share-alt:before { content: "\f240"; } .dashicons-share-alt2:before { content: "\f242"; } .dashicons-share:before { content: "\f237"; } .dashicons-shield-alt:before { content: "\f334"; } .dashicons-shield:before { content: "\f332"; } .dashicons-shortcode:before { content: "\f150"; } .dashicons-slides:before { content: "\f181"; } .dashicons-smartphone:before { content: "\f470"; } .dashicons-smiley:before { content: "\f328"; } .dashicons-sort:before { content: "\f156"; } .dashicons-sos:before { content: "\f468"; } .dashicons-spotify:before { content: "\f196"; } .dashicons-star-empty:before { content: "\f154"; } .dashicons-star-filled:before { content: "\f155"; } .dashicons-star-half:before { content: "\f459"; } .dashicons-sticky:before { content: "\f537"; } .dashicons-store:before { content: "\f513"; } .dashicons-superhero-alt:before { content: "\f197"; } .dashicons-superhero:before { content: "\f198"; } .dashicons-table-col-after:before { content: "\f151"; } .dashicons-table-col-before:before { content: "\f152"; } .dashicons-table-col-delete:before { content: "\f15a"; } .dashicons-table-row-after:before { content: "\f15b"; } .dashicons-table-row-before:before { content: "\f15c"; } .dashicons-table-row-delete:before { content: "\f15d"; } .dashicons-tablet:before { content: "\f471"; } .dashicons-tag:before { content: "\f323"; } .dashicons-tagcloud:before { content: "\f479"; } .dashicons-testimonial:before { content: "\f473"; } .dashicons-text-page:before { content: "\f121"; } .dashicons-text:before { content: "\f478"; } .dashicons-thumbs-down:before { content: "\f542"; } .dashicons-thumbs-up:before { content: "\f529"; } .dashicons-tickets-alt:before { content: "\f524"; } .dashicons-tickets:before { content: "\f486"; } .dashicons-tide:before { content: "\f10d"; } .dashicons-translation:before { content: "\f326"; } .dashicons-trash:before { content: "\f182"; } .dashicons-twitch:before { content: "\f199"; } .dashicons-twitter-alt:before { content: "\f302"; } .dashicons-twitter:before { content: "\f301"; } .dashicons-undo:before { content: "\f171"; } .dashicons-universal-access-alt:before { content: "\f507"; } .dashicons-universal-access:before { content: "\f483"; } .dashicons-unlock:before { content: "\f528"; } .dashicons-update-alt:before { content: "\f113"; } .dashicons-update:before { content: "\f463"; } .dashicons-upload:before { content: "\f317"; } .dashicons-vault:before { content: "\f178"; } .dashicons-video-alt:before { content: "\f234"; } .dashicons-video-alt2:before { content: "\f235"; } .dashicons-video-alt3:before { content: "\f236"; } .dashicons-visibility:before { content: "\f177"; } .dashicons-warning:before { content: "\f534"; } .dashicons-welcome-add-page:before { content: "\f133"; } .dashicons-welcome-comments:before { content: "\f117"; } .dashicons-welcome-learn-more:before { content: "\f118"; } .dashicons-welcome-view-site:before { content: "\f115"; } .dashicons-welcome-widgets-menus:before { content: "\f116"; } .dashicons-welcome-write-blog:before { content: "\f119"; } .dashicons-whatsapp:before { content: "\f19a"; } .dashicons-wordpress-alt:before { content: "\f324"; } .dashicons-wordpress:before { content: "\f120"; } .dashicons-xing:before { content: "\f19d"; } .dashicons-yes-alt:before { content: "\f12a"; } .dashicons-yes:before { content: "\f147"; } .dashicons-youtube:before { content: "\f19b"; } /* Additional CSS classes, manually added to the CSS template file */ .dashicons-editor-distractionfree:before { content: "\f211"; } /* This is a typo, but was previously released. It should remain for backward compatibility. See https://core.trac.wordpress.org/ticket/30832. */ .dashicons-exerpt-view:before { content: "\f164"; } .dashicons-format-links:before { content: "\f103"; } .dashicons-format-standard:before { content: "\f109"; } .dashicons-post-trash:before { content: "\f182"; } .dashicons-share1:before { content: "\f237"; } .dashicons-welcome-edit-page:before { content: "\f119"; } PKj l\Ȥw_w_css/admin-bar.cssnu[html { --wp-admin--admin-bar--height: 32px; scroll-padding-top: var(--wp-admin--admin-bar--height); } #wpadminbar * { height: auto; width: auto; margin: 0; padding: 0; position: static; text-shadow: none; text-transform: none; letter-spacing: normal; font-size: 13px; font-weight: 400; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; line-height: 2.46153846; border-radius: 0; box-sizing: content-box; transition: none; -webkit-font-smoothing: subpixel-antialiased; /* Prevent Safari from switching to standard antialiasing on hover */ -moz-osx-font-smoothing: auto; /* Prevent Firefox from inheriting from themes that use other values */ } .rtl #wpadminbar * { font-family: Tahoma, sans-serif; } html:lang(he-il) .rtl #wpadminbar * { font-family: Arial, sans-serif; } #wpadminbar .ab-empty-item { cursor: default; } #wpadminbar .ab-empty-item, #wpadminbar a.ab-item, #wpadminbar > #wp-toolbar span.ab-label, #wpadminbar > #wp-toolbar span.noticon { color: #f0f0f1; } #wpadminbar #wp-admin-bar-site-name a.ab-item, #wpadminbar #wp-admin-bar-my-sites a.ab-item { white-space: nowrap; } #wpadminbar ul li:before, #wpadminbar ul li:after { content: normal; } #wpadminbar a, #wpadminbar a:hover, #wpadminbar a img, #wpadminbar a img:hover { border: none; text-decoration: none; background: none; box-shadow: none; } #wpadminbar a:focus, #wpadminbar a:active, #wpadminbar input[type="text"], #wpadminbar input[type="password"], #wpadminbar input[type="number"], #wpadminbar input[type="search"], #wpadminbar input[type="email"], #wpadminbar input[type="url"], #wpadminbar select, #wpadminbar textarea, #wpadminbar div { box-shadow: none; } #wpadminbar a:focus { /* Inherits transparent outline only visible in Windows High Contrast mode */ outline-offset: -1px; } #wpadminbar { direction: ltr; color: #c3c4c7; font-size: 13px; font-weight: 400; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; line-height: 2.46153846; height: 32px; position: fixed; top: 0; left: 0; width: 100%; min-width: 600px; /* match the min-width of the body in wp-admin/css/common.css */ z-index: 99999; background: #1d2327; } #wpadminbar .ab-sub-wrapper, #wpadminbar ul, #wpadminbar ul li { background: none; clear: none; list-style: none; margin: 0; padding: 0; position: relative; text-indent: 0; z-index: 99999; } #wpadminbar ul#wp-admin-bar-root-default>li { margin-right: 0; } #wpadminbar .quicklinks ul { text-align: left; } #wpadminbar li { float: left; } #wpadminbar .ab-empty-item { outline: none; } #wpadminbar .quicklinks .ab-top-secondary > li { float: right; } #wpadminbar .quicklinks a, #wpadminbar .quicklinks .ab-empty-item, #wpadminbar .shortlink-input { height: 32px; display: block; padding: 0 10px; margin: 0; } #wpadminbar .quicklinks > ul > li > a { padding: 0 8px 0 7px; } #wpadminbar .menupop .ab-sub-wrapper, #wpadminbar .shortlink-input { margin: 0; padding: 0; box-shadow: 0 3px 5px rgba(0, 0, 0, 0.2); background: #2c3338; display: none; position: absolute; float: none; } #wpadminbar .ab-top-menu > .menupop > .ab-sub-wrapper { min-width: 100%; } #wpadminbar .ab-top-secondary .menupop .ab-sub-wrapper { right: 0; left: auto; } #wpadminbar .ab-submenu { padding: 6px 0; } #wpadminbar .selected .shortlink-input { display: block; } #wpadminbar .quicklinks .menupop ul li { float: none; } #wpadminbar .quicklinks .menupop ul li a strong { font-weight: 600; } #wpadminbar .quicklinks .menupop ul li .ab-item, #wpadminbar .quicklinks .menupop ul li a strong, #wpadminbar .quicklinks .menupop.hover ul li .ab-item, #wpadminbar.nojs .quicklinks .menupop:hover ul li .ab-item, #wpadminbar .shortlink-input { line-height: 2; height: 26px; white-space: nowrap; min-width: 140px; } #wpadminbar .shortlink-input { width: 200px; } #wpadminbar.nojs li:hover > .ab-sub-wrapper, #wpadminbar li.hover > .ab-sub-wrapper { display: block; } #wpadminbar .menupop li:hover > .ab-sub-wrapper, #wpadminbar .menupop li.hover > .ab-sub-wrapper { margin-left: 100%; margin-top: -32px; } #wpadminbar .ab-top-secondary .menupop li:hover > .ab-sub-wrapper, #wpadminbar .ab-top-secondary .menupop li.hover > .ab-sub-wrapper { margin-left: 0; left: inherit; right: 100%; } #wpadminbar:not(.mobile) .ab-top-menu > li > .ab-item:focus, #wpadminbar.nojq .quicklinks .ab-top-menu > li > .ab-item:focus, #wpadminbar:not(.mobile) .ab-top-menu > li:hover > .ab-item, #wpadminbar .ab-top-menu > li.hover > .ab-item { background: #2c3338; color: #72aee6; } #wpadminbar:not(.mobile) > #wp-toolbar li:hover span.ab-label, #wpadminbar > #wp-toolbar li.hover span.ab-label, #wpadminbar:not(.mobile) > #wp-toolbar a:focus span.ab-label { color: #72aee6; } #wpadminbar > #wp-toolbar > #wp-admin-bar-root-default .ab-icon, #wpadminbar .ab-icon, #wpadminbar .ab-item:before, .wp-admin-bar-arrow { position: relative; float: left; font: normal 20px/1 dashicons; speak: never; padding: 4px 0; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; background-image: none !important; margin-right: 6px; } #wpadminbar .ab-icon:before, #wpadminbar .ab-item:before, #wpadminbar #adminbarsearch:before { color: #a7aaad; color: rgba(240, 246, 252, 0.6); } #wpadminbar .ab-icon:before, #wpadminbar .ab-item:before, #wpadminbar #adminbarsearch:before { position: relative; transition: color .1s ease-in-out; } #wpadminbar .ab-label { display: inline-block; height: 32px; } #wpadminbar .ab-submenu .ab-item { color: #c3c4c7; color: rgba(240, 246, 252, 0.7); } #wpadminbar .quicklinks .menupop ul li a, #wpadminbar .quicklinks .menupop ul li a strong, #wpadminbar .quicklinks .menupop.hover ul li a, #wpadminbar.nojs .quicklinks .menupop:hover ul li a { color: #c3c4c7; color: rgba(240, 246, 252, 0.7); } #wpadminbar .quicklinks .menupop ul li a:hover, #wpadminbar .quicklinks .menupop ul li a:focus, #wpadminbar .quicklinks .menupop ul li a:hover strong, #wpadminbar .quicklinks .menupop ul li a:focus strong, #wpadminbar .quicklinks .ab-sub-wrapper .menupop.hover > a, #wpadminbar .quicklinks .menupop.hover ul li a:hover, #wpadminbar .quicklinks .menupop.hover ul li a:focus, #wpadminbar .quicklinks .menupop.hover ul li div[tabindex]:hover, #wpadminbar .quicklinks .menupop.hover ul li div[tabindex]:focus, #wpadminbar.nojs .quicklinks .menupop:hover ul li a:hover, #wpadminbar.nojs .quicklinks .menupop:hover ul li a:focus, #wpadminbar li:hover .ab-icon:before, #wpadminbar li:hover .ab-item:before, #wpadminbar li a:focus .ab-icon:before, #wpadminbar li .ab-item:focus:before, #wpadminbar li .ab-item:focus .ab-icon:before, #wpadminbar li.hover .ab-icon:before, #wpadminbar li.hover .ab-item:before, #wpadminbar li:hover #adminbarsearch:before, #wpadminbar li #adminbarsearch.adminbar-focused:before { color: #72aee6; } #wpadminbar.mobile .quicklinks .ab-icon:before, #wpadminbar.mobile .quicklinks .ab-item:before { color: #c3c4c7; } #wpadminbar.mobile .quicklinks .hover .ab-icon:before, #wpadminbar.mobile .quicklinks .hover .ab-item:before { color: #72aee6; } #wpadminbar .menupop .menupop > .ab-item .wp-admin-bar-arrow:before, #wpadminbar .ab-top-secondary .menupop .menupop > .ab-item:before { position: absolute; font: normal 17px/1 dashicons; speak: never; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } #wpadminbar .menupop .menupop > .ab-item { display: block; padding-right: 2em; } #wpadminbar .menupop .menupop > .ab-item .wp-admin-bar-arrow:before { top: 1px; right: 10px; padding: 4px 0; content: "\f139"; color: inherit; } #wpadminbar .ab-top-secondary .menupop .menupop > .ab-item { padding-left: 2em; padding-right: 1em; } #wpadminbar .ab-top-secondary .menupop .menupop > .ab-item .wp-admin-bar-arrow:before { top: 1px; left: 6px; content: "\f141"; } #wpadminbar .quicklinks .menupop ul.ab-sub-secondary { display: block; position: relative; right: auto; margin: 0; box-shadow: none; } #wpadminbar .quicklinks .menupop ul.ab-sub-secondary, #wpadminbar .quicklinks .menupop ul.ab-sub-secondary .ab-submenu { background: #3c434a; } #wpadminbar .quicklinks .menupop .ab-sub-secondary > li > a:hover, #wpadminbar .quicklinks .menupop .ab-sub-secondary > li .ab-item:focus a { color: #72aee6; } #wpadminbar .quicklinks a span#ab-updates { background: #f0f0f1; color: #2c3338; display: inline; padding: 2px 5px; font-size: 10px; font-weight: 600; border-radius: 10px; } #wpadminbar .quicklinks a:hover span#ab-updates { background: #fff; color: #000; } #wpadminbar .ab-top-secondary { float: right; } #wpadminbar ul li:last-child, #wpadminbar ul li:last-child .ab-item { box-shadow: none; } /** * Recovery Mode */ #wpadminbar #wp-admin-bar-recovery-mode { color: #fff; background-color: #d63638; } #wpadminbar .ab-top-menu > #wp-admin-bar-recovery-mode.hover >.ab-item, #wpadminbar.nojq .quicklinks .ab-top-menu > #wp-admin-bar-recovery-mode > .ab-item:focus, #wpadminbar:not(.mobile) .ab-top-menu > #wp-admin-bar-recovery-mode:hover > .ab-item, #wpadminbar:not(.mobile) .ab-top-menu > #wp-admin-bar-recovery-mode > .ab-item:focus { color: #fff; background-color: #d63638; } /** * My Account */ #wp-admin-bar-my-account > ul { min-width: 198px; } #wp-admin-bar-my-account:not(.with-avatar) > .ab-item { display: inline-block; } #wp-admin-bar-my-account > .ab-item:before { content: "\f110"; top: 2px; float: right; margin-left: 6px; margin-right: 0; } #wp-admin-bar-my-account.with-avatar > .ab-item:before { display: none; content: none; } #wp-admin-bar-my-account.with-avatar > ul { min-width: 270px; } #wpadminbar #wp-admin-bar-user-actions > li { margin-left: 16px; margin-right: 16px; } #wpadminbar #wp-admin-bar-user-actions.ab-submenu { padding: 6px 0 12px; } #wpadminbar #wp-admin-bar-my-account.with-avatar #wp-admin-bar-user-actions > li { margin-left: 88px; } #wpadminbar #wp-admin-bar-user-info { margin-top: 6px; margin-bottom: 15px; height: auto; background: none; } #wp-admin-bar-user-info .avatar { position: absolute; left: -72px; top: 4px; width: 64px; height: 64px; } #wpadminbar #wp-admin-bar-user-info a { background: none; height: auto; } #wpadminbar #wp-admin-bar-user-info span { background: none; padding: 0; height: 18px; } #wpadminbar #wp-admin-bar-user-info .display-name, #wpadminbar #wp-admin-bar-user-info .username { display: block; } #wpadminbar #wp-admin-bar-user-info .username { color: #a7aaad; font-size: 11px; } #wpadminbar #wp-admin-bar-my-account.with-avatar > .ab-empty-item img, #wpadminbar #wp-admin-bar-my-account.with-avatar > a img { width: auto; height: 16px; padding: 0; border: 1px solid #8c8f94; background: #f0f0f1; line-height: 1.84615384; vertical-align: middle; margin: -4px 0 0 6px; float: none; display: inline; } /** * WP Logo */ #wpadminbar #wp-admin-bar-wp-logo > .ab-item .ab-icon { width: 15px; height: 20px; margin-right: 0; padding: 6px 0 5px; } #wpadminbar #wp-admin-bar-wp-logo > .ab-item { padding: 0 7px; } #wpadminbar #wp-admin-bar-wp-logo > .ab-item .ab-icon:before { content: "\f120"; top: 2px; } /* * My Sites & Site Title */ #wpadminbar .quicklinks li .blavatar { display: inline-block; vertical-align: middle; font: normal 16px/1 dashicons !important; speak: never; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; color: #f0f0f1; } #wpadminbar .quicklinks li a:hover .blavatar, #wpadminbar .quicklinks li a:focus .blavatar, #wpadminbar .quicklinks .ab-sub-wrapper .menupop.hover > a .blavatar { color: #72aee6; } #wpadminbar .quicklinks li img.blavatar, #wpadminbar .quicklinks li div.blavatar:before { height: 16px; width: 16px; margin: 0 8px 2px -2px; } #wpadminbar .quicklinks li div.blavatar:before { content: "\f120"; display: inline-block; } #wpadminbar #wp-admin-bar-appearance { margin-top: -12px; } #wpadminbar #wp-admin-bar-my-sites > .ab-item:before, #wpadminbar #wp-admin-bar-site-name > .ab-item:before { content: "\f541"; top: 2px; } #wpadminbar #wp-admin-bar-site-editor > .ab-item:before { content: "\f100"; top: 2px; } #wpadminbar #wp-admin-bar-customize > .ab-item:before { content: "\f540"; top: 2px; } #wpadminbar #wp-admin-bar-edit > .ab-item:before { content: "\f464"; top: 2px; } #wpadminbar #wp-admin-bar-site-name > .ab-item:before { content: "\f226"; } .wp-admin #wpadminbar #wp-admin-bar-site-name > .ab-item:before { content: "\f102"; } /** * Comments */ #wpadminbar #wp-admin-bar-comments .ab-icon { margin-right: 6px; } #wpadminbar #wp-admin-bar-comments .ab-icon:before { content: "\f101"; top: 3px; } #wpadminbar #wp-admin-bar-comments .count-0 { opacity: .5; } /** * New Content */ #wpadminbar #wp-admin-bar-new-content .ab-icon:before { content: "\f132"; top: 4px; } /** * Updates */ #wpadminbar #wp-admin-bar-updates .ab-icon:before { content: "\f463"; top: 2px; } #wpadminbar #wp-admin-bar-updates.spin .ab-icon:before { display: inline-block; animation: rotation 2s infinite linear; } @media (prefers-reduced-motion: reduce) { #wpadminbar #wp-admin-bar-updates.spin .ab-icon:before { animation: none; } } /** * Search */ #wpadminbar #wp-admin-bar-search .ab-item { padding: 0; background: transparent; } #wpadminbar #adminbarsearch { position: relative; height: 32px; padding: 0 2px; z-index: 1; } #wpadminbar #adminbarsearch:before { position: absolute; top: 6px; left: 5px; z-index: 20; font: normal 20px/1 dashicons !important; content: "\f179"; speak: never; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } /* The admin bar search field needs to reset many styles that might be inherited from the active Theme CSS. See ticket #40313. */ #wpadminbar > #wp-toolbar > #wp-admin-bar-top-secondary > #wp-admin-bar-search #adminbarsearch input.adminbar-input { display: inline-block; float: none; position: relative; z-index: 30; font-size: 13px; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; line-height: 1.84615384; text-indent: 0; height: 24px; width: 24px; max-width: none; padding: 0 3px 0 24px; margin: 0; color: #c3c4c7; background-color: rgba(255, 255, 255, 0); border: none; outline: none; cursor: pointer; box-shadow: none; box-sizing: border-box; transition-duration: 400ms; transition-property: width, background; transition-timing-function: ease; } #wpadminbar > #wp-toolbar > #wp-admin-bar-top-secondary > #wp-admin-bar-search #adminbarsearch input.adminbar-input:focus { z-index: 10; color: #000; width: 200px; background-color: rgba(255, 255, 255, 0.9); cursor: text; border: 0; } #wpadminbar #adminbarsearch .adminbar-button { display: none; } /** * Customize support classes */ .no-customize-support .hide-if-no-customize, .customize-support .hide-if-customize, .no-customize-support #wpadminbar .hide-if-no-customize, .no-customize-support.wp-core-ui .hide-if-no-customize, .no-customize-support .wp-core-ui .hide-if-no-customize, .customize-support #wpadminbar .hide-if-customize, .customize-support.wp-core-ui .hide-if-customize, .customize-support .wp-core-ui .hide-if-customize { display: none; } /* Skip link */ #wpadminbar .screen-reader-text, #wpadminbar .screen-reader-text span { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important; } #wpadminbar .screen-reader-shortcut { position: absolute; top: -1000em; } #wpadminbar .screen-reader-shortcut:focus { left: 6px; top: 7px; height: auto; width: auto; display: block; font-size: 14px; font-weight: 600; padding: 15px 23px 14px; background: #f0f0f1; color: #2271b1; z-index: 100000; line-height: normal; text-decoration: none; box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); } @media screen and (max-width: 782px) { html { --wp-admin--admin-bar--height: 46px; } /* Toolbar Touchification*/ html #wpadminbar { height: 46px; min-width: 240px; /* match the min-width of the body in wp-admin/css/common.css */ } #wpadminbar * { font-size: 14px; font-weight: 400; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; line-height: 2.28571428; } #wpadminbar .quicklinks > ul > li > a, #wpadminbar .quicklinks .ab-empty-item { padding: 0; height: 46px; line-height: 3.28571428; width: auto; } #wpadminbar .ab-icon { font: 40px/1 dashicons !important; margin: 0; padding: 0; width: 52px; height: 46px; text-align: center; } #wpadminbar .ab-icon:before { text-align: center; } #wpadminbar .ab-submenu { padding: 0; } #wpadminbar #wp-admin-bar-site-name a.ab-item, #wpadminbar #wp-admin-bar-my-sites a.ab-item, #wpadminbar #wp-admin-bar-my-account a.ab-item { text-overflow: clip; } #wpadminbar .quicklinks .menupop ul li .ab-item, #wpadminbar .quicklinks .menupop ul li a strong, #wpadminbar .quicklinks .menupop.hover ul li .ab-item, #wpadminbar.nojs .quicklinks .menupop:hover ul li .ab-item, #wpadminbar .shortlink-input { line-height: 1.6; } #wpadminbar .ab-label { display: none; } #wpadminbar .menupop li:hover > .ab-sub-wrapper, #wpadminbar .menupop li.hover > .ab-sub-wrapper { margin-top: -46px; } #wpadminbar .ab-top-menu .menupop .ab-sub-wrapper .menupop > .ab-item { padding-right: 30px; } #wpadminbar .menupop .menupop > .ab-item:before { top: 10px; right: 6px; } #wpadminbar .ab-top-menu > .menupop > .ab-sub-wrapper .ab-item { font-size: 16px; padding: 8px 16px; } #wpadminbar .ab-top-menu > .menupop > .ab-sub-wrapper a:empty { display: none; } /* WP logo */ #wpadminbar #wp-admin-bar-wp-logo > .ab-item { padding: 0; } #wpadminbar #wp-admin-bar-wp-logo > .ab-item .ab-icon { padding: 0; width: 52px; height: 46px; text-align: center; vertical-align: top; } #wpadminbar #wp-admin-bar-wp-logo > .ab-item .ab-icon:before { font: 28px/1 dashicons !important; top: -3px; } #wpadminbar .ab-icon, #wpadminbar .ab-item:before { padding: 0; } /* My Sites and "Site Title" menu */ #wpadminbar #wp-admin-bar-my-sites > .ab-item, #wpadminbar #wp-admin-bar-site-name > .ab-item, #wpadminbar #wp-admin-bar-site-editor > .ab-item, #wpadminbar #wp-admin-bar-customize > .ab-item, #wpadminbar #wp-admin-bar-edit > .ab-item, #wpadminbar #wp-admin-bar-my-account > .ab-item { text-indent: 100%; white-space: nowrap; overflow: hidden; width: 52px; padding: 0; color: #a7aaad; /* @todo not needed? this text is hidden */ position: relative; } #wpadminbar > #wp-toolbar > #wp-admin-bar-root-default .ab-icon, #wpadminbar .ab-icon, #wpadminbar .ab-item:before { padding: 0; margin-right: 0; } #wpadminbar #wp-admin-bar-edit > .ab-item:before, #wpadminbar #wp-admin-bar-my-sites > .ab-item:before, #wpadminbar #wp-admin-bar-site-name > .ab-item:before, #wpadminbar #wp-admin-bar-site-editor > .ab-item:before, #wpadminbar #wp-admin-bar-customize > .ab-item:before, #wpadminbar #wp-admin-bar-my-account > .ab-item:before { display: block; text-indent: 0; font: normal 32px/1 dashicons; speak: never; top: 7px; width: 52px; text-align: center; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } #wpadminbar #wp-admin-bar-appearance { margin-top: 0; } #wpadminbar .quicklinks li .blavatar:before { display: none; } /* Search */ #wpadminbar #wp-admin-bar-search { display: none; } /* New Content */ #wpadminbar #wp-admin-bar-new-content .ab-icon:before { top: 0; line-height: 1.33333333; height: 46px !important; text-align: center; width: 52px; display: block; } /* Updates */ #wpadminbar #wp-admin-bar-updates { text-align: center; } #wpadminbar #wp-admin-bar-updates .ab-icon:before { top: 3px; } /* Comments */ #wpadminbar #wp-admin-bar-comments .ab-icon { margin: 0; } #wpadminbar #wp-admin-bar-comments .ab-icon:before { display: block; font-size: 34px; height: 46px; line-height: 1.38235294; top: 0; } /* My Account */ #wpadminbar #wp-admin-bar-my-account > a { position: relative; white-space: nowrap; text-indent: 150%; /* More than 100% indention is needed since this element has padding */ width: 28px; padding: 0 10px; overflow: hidden; /* Prevent link text from forcing horizontal scrolling on mobile */ } #wpadminbar .quicklinks li#wp-admin-bar-my-account.with-avatar > a img { position: absolute; top: 13px; right: 10px; width: 26px; height: 26px; } #wpadminbar #wp-admin-bar-user-actions.ab-submenu { padding: 0; } #wpadminbar #wp-admin-bar-user-actions.ab-submenu img.avatar { display: none; } #wpadminbar #wp-admin-bar-my-account.with-avatar #wp-admin-bar-user-actions > li { margin: 0; } #wpadminbar #wp-admin-bar-user-info .display-name { height: auto; font-size: 16px; line-height: 1.5; color: #f0f0f1; } #wpadminbar #wp-admin-bar-user-info a { padding-top: 4px; } #wpadminbar #wp-admin-bar-user-info .username { line-height: 0.8 !important; margin-bottom: -2px; } /* Show only default top level items */ #wp-toolbar > ul > li { display: none; } #wpadminbar li#wp-admin-bar-menu-toggle, #wpadminbar li#wp-admin-bar-wp-logo, #wpadminbar li#wp-admin-bar-my-sites, #wpadminbar li#wp-admin-bar-updates, #wpadminbar li#wp-admin-bar-site-name, #wpadminbar li#wp-admin-bar-site-editor, #wpadminbar li#wp-admin-bar-customize, #wpadminbar li#wp-admin-bar-new-content, #wpadminbar li#wp-admin-bar-edit, #wpadminbar li#wp-admin-bar-comments, #wpadminbar li#wp-admin-bar-my-account { display: block; } /* Allow dropdown list items to appear normally */ #wpadminbar li:hover ul li, #wpadminbar li.hover ul li, #wpadminbar li:hover ul li:hover ul li { display: list-item; } /* Override default min-width so dropdown lists aren't stretched to 100% viewport width at responsive sizes. */ #wpadminbar .ab-top-menu > .menupop > .ab-sub-wrapper { min-width: -moz-fit-content; min-width: fit-content; } #wpadminbar ul#wp-admin-bar-root-default > li { margin-right: 0; } /* Experimental fix for touch toolbar dropdown positioning */ #wpadminbar .ab-top-menu, #wpadminbar .ab-top-secondary, #wpadminbar #wp-admin-bar-wp-logo, #wpadminbar #wp-admin-bar-my-sites, #wpadminbar #wp-admin-bar-site-name, #wpadminbar #wp-admin-bar-updates, #wpadminbar #wp-admin-bar-comments, #wpadminbar #wp-admin-bar-new-content, #wpadminbar #wp-admin-bar-edit, #wpadminbar #wp-admin-bar-my-account { position: static; } #wpadminbar #wp-admin-bar-my-account { float: right; } .network-admin #wpadminbar ul#wp-admin-bar-top-secondary > li#wp-admin-bar-my-account { margin-right: 0; } /* Realign arrows on taller responsive submenus */ #wpadminbar .ab-top-secondary .menupop .menupop > .ab-item:before { top: 10px; left: 0; } } /* Smartphone */ @media screen and (max-width: 600px) { #wpadminbar { position: absolute; } #wp-responsive-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 400; } #wpadminbar .ab-top-menu > .menupop > .ab-sub-wrapper { width: 100%; left: 0; } #wpadminbar .menupop .menupop > .ab-item:before { display: none; } #wpadminbar #wp-admin-bar-wp-logo.menupop .ab-sub-wrapper { margin-left: 0; } #wpadminbar .ab-top-menu > .menupop li > .ab-sub-wrapper { margin: 0; width: 100%; top: auto; left: auto; position: relative; } #wpadminbar .ab-top-menu > .menupop li > .ab-sub-wrapper .ab-item { font-size: 16px; padding: 6px 15px 19px 30px; } #wpadminbar li:hover ul li ul li { display: list-item; } #wpadminbar li#wp-admin-bar-wp-logo, #wpadminbar li#wp-admin-bar-updates { display: none; } /* Make submenus full-width at this size */ #wpadminbar .ab-top-menu > .menupop li > .ab-sub-wrapper { position: static; box-shadow: none; } } /* Very narrow screens */ @media screen and (max-width: 400px) { #wpadminbar li#wp-admin-bar-comments { display: none; } } PKj l\;H˺css/wp-pointer.cssnu[.wp-pointer-content { padding: 0 0 10px; position: relative; font-size: 13px; background: #fff; border: 1px solid #c3c4c7; box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08); } .wp-pointer-content h3 { position: relative; margin: -1px -1px 5px; padding: 15px 18px 14px 60px; border: 1px solid #2271b1; border-bottom: none; line-height: 1.4; font-size: 14px; color: #fff; background: #2271b1; } .wp-pointer-content h3:before { background: #fff; border-radius: 50%; color: #2271b1; content: "\f227"; font: normal 20px/1.6 dashicons; position: absolute; top: 8px; left: 15px; speak: never; text-align: center; width: 32px; height: 32px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .wp-pointer-content h4 { margin: 1.33em 20px 1em; font-size: 1.15em; } .wp-pointer-content p { padding: 0 20px; } .wp-pointer-buttons { margin: 0; padding: 5px 15px; overflow: auto; } .wp-pointer-buttons a { float: right; display: inline-block; text-decoration: none; } .wp-pointer-buttons a.close { padding-left: 3px; position: relative; } .wp-pointer-buttons a.close:before { background: none; color: #787c82; content: "\f153"; display: block !important; font: normal 16px/1 dashicons; speak: never; margin: 1px 0; text-align: center; -webkit-font-smoothing: antialiased !important; width: 10px; height: 100%; position: absolute; left: -15px; top: 1px; } .wp-pointer-buttons a.close:hover:before { color: #d63638; } /* The arrow base class must take up no space, even with transparent borders. */ .wp-pointer-arrow, .wp-pointer-arrow-inner { position: absolute; width: 0; height: 0; } .wp-pointer-arrow { z-index: 10; width: 0; height: 0; border: 0 solid transparent; } .wp-pointer-arrow-inner { z-index: 20; } /* Make Room for the Arrow! */ .wp-pointer-top, .wp-pointer-undefined { padding-top: 13px; } .wp-pointer-bottom { margin-top: -13px; padding-bottom: 13px; } /* rtl:ignore */ .wp-pointer-left { padding-left: 13px; } /* rtl:ignore */ .wp-pointer-right { margin-left: -13px; padding-right: 13px; } /* Base Size & Positioning */ .wp-pointer-top .wp-pointer-arrow, .wp-pointer-bottom .wp-pointer-arrow, .wp-pointer-undefined .wp-pointer-arrow { left: 50px; } .wp-pointer-left .wp-pointer-arrow, .wp-pointer-right .wp-pointer-arrow { top: 50%; margin-top: -15px; } /* Arrow Sprite */ .wp-pointer-top .wp-pointer-arrow, .wp-pointer-undefined .wp-pointer-arrow { top: 0; border-width: 0 13px 13px; border-bottom-color: #2271b1; } .wp-pointer-top .wp-pointer-arrow-inner, .wp-pointer-undefined .wp-pointer-arrow-inner { top: 1px; margin-left: -13px; margin-top: -13px; border: 13px solid transparent; border-bottom-color: #2271b1; display: block; content: " "; } .wp-pointer-bottom .wp-pointer-arrow { bottom: 0; border-width: 13px 13px 0; border-top-color: #c3c4c7; } .wp-pointer-bottom .wp-pointer-arrow-inner { bottom: 1px; margin-left: -13px; margin-bottom: -13px; border: 13px solid transparent; border-top-color: #fff; display: block; content: " "; } /* rtl:ignore */ .wp-pointer-left .wp-pointer-arrow { left: 0; border-width: 13px 13px 13px 0; border-right-color: #c3c4c7; } /* rtl:ignore */ .wp-pointer-left .wp-pointer-arrow-inner { left: 1px; margin-left: -13px; margin-top: -13px; border: 13px solid transparent; border-right-color: #fff; display: block; content: " "; } /* rtl:ignore */ .wp-pointer-right .wp-pointer-arrow { right: 0; border-width: 13px 0 13px 13px; border-left-color: #c3c4c7; } /* rtl:ignore */ .wp-pointer-right .wp-pointer-arrow-inner { right: 1px; margin-right: -13px; margin-top: -13px; border: 13px solid transparent; border-left-color: #fff; display: block; content: " "; } .wp-pointer.arrow-bottom .wp-pointer-content { margin-bottom: -45px; } .wp-pointer.arrow-bottom .wp-pointer-arrow { top: 100%; margin-top: -30px; } /* Disable pointers at responsive sizes */ @media screen and (max-width: 782px) { .wp-pointer { display: none; } } PKj l\]qյյcss/media-views-rtl.min.cssnu[/*! This file is auto-generated */ .media-modal *{box-sizing:content-box}.media-modal input,.media-modal select,.media-modal textarea{box-sizing:border-box}.media-frame,.media-modal{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size:12px;-webkit-overflow-scrolling:touch}.media-modal legend{padding:0;font-size:13px}.media-modal label{font-size:13px}.media-modal .legend-inline{position:absolute;transform:translate(100%,50%);margin-right:-1%;line-height:1.2}.media-frame a{border-bottom:none;color:#2271b1}.media-frame a:active,.media-frame a:hover{color:#135e96}.media-frame a:focus{box-shadow:0 0 0 1px #4f94d4,0 0 2px 1px rgba(79,148,212,.8);color:#043959;outline:1px solid transparent}.media-frame a.button{color:#2c3338}.media-frame a.button:hover{color:#1d2327}.media-frame a.button-primary,.media-frame a.button-primary:hover{color:#fff}.media-frame input,.media-frame textarea{padding:6px 8px}.media-frame select,.wp-admin .media-frame select{min-height:30px;vertical-align:middle}.media-frame input[type=color],.media-frame input[type=date],.media-frame input[type=datetime-local],.media-frame input[type=datetime],.media-frame input[type=email],.media-frame input[type=month],.media-frame input[type=number],.media-frame input[type=password],.media-frame input[type=search],.media-frame input[type=tel],.media-frame input[type=text],.media-frame input[type=time],.media-frame input[type=url],.media-frame input[type=week],.media-frame select,.media-frame textarea{box-shadow:0 0 0 transparent;border-radius:4px;border:1px solid #8c8f94;background-color:#fff;color:#2c3338;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size:13px}.media-frame input[type=date],.media-frame input[type=datetime-local],.media-frame input[type=datetime],.media-frame input[type=email],.media-frame input[type=month],.media-frame input[type=number],.media-frame input[type=password],.media-frame input[type=search],.media-frame input[type=tel],.media-frame input[type=text],.media-frame input[type=time],.media-frame input[type=url],.media-frame input[type=week]{padding:0 8px;line-height:2.15384615}.media-frame.mode-grid .wp-filter input[type=search]{font-size:14px;line-height:2}.media-frame input[type=email]:focus,.media-frame input[type=number]:focus,.media-frame input[type=password]:focus,.media-frame input[type=search]:focus,.media-frame input[type=text]:focus,.media-frame input[type=url]:focus,.media-frame select:focus,.media-frame textarea:focus{border-color:#3582c4;box-shadow:0 0 0 1px #3582c4;outline:2px solid transparent}.media-frame input:disabled,.media-frame input[readonly],.media-frame textarea:disabled,.media-frame textarea[readonly]{background-color:#f0f0f1}.media-frame input[type=search]{-webkit-appearance:textfield}.media-frame ::-webkit-input-placeholder{color:#646970}.media-frame ::-moz-placeholder{color:#646970;opacity:1}.media-frame :-ms-input-placeholder{color:#646970}.media-frame .hidden,.media-frame .setting.hidden{display:none}/*! * jQuery UI Draggable/Sortable 1.11.4 * http://jqueryui.com * * Copyright jQuery Foundation and other contributors * Released under the MIT license. * http://jquery.org/license */.ui-draggable-handle,.ui-sortable-handle{touch-action:none}.media-modal{position:fixed;top:30px;right:30px;left:30px;bottom:30px;z-index:160000}.wp-customizer .media-modal{z-index:560000}.media-modal-backdrop{position:fixed;top:0;right:0;left:0;bottom:0;min-height:360px;background:#000;opacity:.7;z-index:159900}.wp-customizer .media-modal-backdrop{z-index:559900}.media-modal-close{position:absolute;top:0;left:0;width:50px;height:50px;margin:0;padding:0;border:1px solid transparent;background:0 0;color:#646970;z-index:1000;cursor:pointer;outline:0;transition:color .1s ease-in-out,background .1s ease-in-out}.media-modal-close:active,.media-modal-close:hover{color:#135e96}.media-modal-close:focus{color:#135e96;border-color:#4f94d4;box-shadow:0 0 3px rgba(34,113,177,.8);outline:2px solid transparent}.media-modal-close span.media-modal-icon{background-image:none}.media-modal-close .media-modal-icon:before{content:"\f158";font:normal 20px/1 dashicons;speak:never;vertical-align:middle;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.media-modal-content{position:absolute;top:0;right:0;left:0;bottom:0;overflow:auto;min-height:300px;box-shadow:0 5px 15px rgba(0,0,0,.7);background:#fff;-webkit-font-smoothing:subpixel-antialiased}.media-modal-content .media-frame select.attachment-filters{margin-top:32px;margin-left:2%;width:42%;width:calc(48% - 12px)}.media-modal-content .attachments-browser .search{width:100%}.wp-core-ui .media-modal-icon{background-image:url(../images/uploader-icons.png);background-repeat:no-repeat}.media-toolbar{position:absolute;top:0;right:0;left:0;z-index:100;height:60px;padding:0 16px;border:0 solid #dcdcde;overflow:hidden}.media-frame-toolbar .media-toolbar{top:auto;bottom:-47px;height:auto;overflow:visible;border-top:1px solid #dcdcde}.media-toolbar-primary{float:left;height:100%;position:relative}.media-toolbar-secondary{float:right;height:100%}.media-toolbar-primary>.media-button,.media-toolbar-primary>.media-button-group{margin-right:10px;float:right;margin-top:15px}.media-toolbar-secondary>.media-button,.media-toolbar-secondary>.media-button-group{margin-left:10px;margin-top:15px}.media-sidebar{position:absolute;top:0;left:0;bottom:0;width:267px;padding:0 16px;z-index:75;background:#f6f7f7;border-right:1px solid #dcdcde;overflow:auto;-webkit-overflow-scrolling:touch}.media-sidebar::after{content:"";display:flex;clear:both;height:24px}.hide-toolbar .media-sidebar{bottom:0}.image-details h2:not(.media-attachments-filter-heading),.media-sidebar h2{position:relative;font-weight:600;text-transform:uppercase;font-size:12px;color:#646970;margin:24px 0 8px}.attachment-details .setting,.media-sidebar .setting{display:block;float:right;width:100%;margin:0 0 10px}.media-sidebar .collection-settings .setting{margin:1px 0}.attachment-details .setting.has-description,.media-sidebar .setting.has-description{margin-bottom:5px}.media-sidebar .setting .link-to-custom{margin:3px 2px 0}.attachment-details .setting .name,.attachment-details .setting span,.media-sidebar .setting .name,.media-sidebar .setting .value,.media-sidebar .setting span{min-width:30%;margin-left:4%;font-size:12px;text-align:left;word-wrap:break-word}.media-sidebar .setting .name{max-width:80px}.media-sidebar .setting .value{text-align:right}.media-sidebar .setting select{max-width:65%}.attachment-details .field input[type=checkbox],.attachment-details .field input[type=radio],.attachment-details .setting input[type=checkbox],.attachment-details .setting input[type=radio],.media-sidebar .field input[type=checkbox],.media-sidebar .field input[type=radio],.media-sidebar .setting input[type=checkbox],.media-sidebar .setting input[type=radio]{float:none;margin:8px 3px 0;padding:0}.attachment-details .setting .name,.attachment-details .setting .value,.attachment-details .setting span,.compat-item label span,.media-sidebar .checkbox-label-inline,.media-sidebar .setting .name,.media-sidebar .setting .value,.media-sidebar .setting span{float:right;min-height:22px;padding-top:8px;line-height:1.33333333;font-weight:400;color:#646970}.media-sidebar .checkbox-label-inline{font-size:12px}.attachment-details .copy-to-clipboard-container,.media-sidebar .copy-to-clipboard-container{flex-wrap:wrap;margin-top:10px;margin-right:calc(35% - 1px);padding-top:10px}.attachment-details .attachment-info .copy-to-clipboard-container{float:none}.attachment-details .copy-to-clipboard-container .success,.media-sidebar .copy-to-clipboard-container .success{padding:0;min-height:0;line-height:2.18181818;text-align:right;color:#008a20}.compat-item label span{text-align:left}.attachment-details .setting .value,.attachment-details .setting input[type=email],.attachment-details .setting input[type=number],.attachment-details .setting input[type=password],.attachment-details .setting input[type=search],.attachment-details .setting input[type=tel],.attachment-details .setting input[type=text],.attachment-details .setting input[type=url],.attachment-details .setting textarea,.attachment-details .setting+.description,.media-sidebar .setting .value,.media-sidebar .setting input[type=email],.media-sidebar .setting input[type=number],.media-sidebar .setting input[type=password],.media-sidebar .setting input[type=search],.media-sidebar .setting input[type=tel],.media-sidebar .setting input[type=text],.media-sidebar .setting input[type=url],.media-sidebar .setting textarea{box-sizing:border-box;margin:1px;width:65%;float:left}.attachment-details .setting .value,.attachment-details .setting+.description,.media-sidebar .setting .value{margin:0 1px;text-align:right}.attachment-details .setting+.description{clear:both;font-size:12px;font-style:normal;margin-bottom:10px}.attachment-details .setting textarea,.compat-item .field textarea,.media-sidebar .setting textarea{height:62px;resize:vertical}.compat-item{float:right;width:100%;overflow:hidden}.compat-item table{width:100%;table-layout:fixed;border-spacing:0;border:0}.compat-item tr{padding:2px 0;display:block;overflow:hidden}.compat-item .field,.compat-item .label{display:block;margin:0;padding:0}.compat-item .label{min-width:30%;margin-left:4%;float:right;text-align:left}.compat-item .label span{display:block;width:100%}.compat-item .field{float:left;width:65%;margin:1px}.compat-item .field input[type=email],.compat-item .field input[type=number],.compat-item .field input[type=password],.compat-item .field input[type=search],.compat-item .field input[type=tel],.compat-item .field input[type=text],.compat-item .field input[type=url],.compat-item .field textarea{width:100%;margin:0;box-sizing:border-box}.sidebar-for-errors .attachment-details,.sidebar-for-errors .compat-item,.sidebar-for-errors .media-sidebar .media-progress-bar,.sidebar-for-errors .upload-details{display:none!important}.media-menu{position:absolute;top:0;right:0;left:0;bottom:0;margin:0;padding:50px 0 10px;background:#f6f7f7;border-left-width:1px;border-left-style:solid;border-left-color:#c3c4c7;-webkit-user-select:none;user-select:none}.media-menu .media-menu-item{display:block;box-sizing:border-box;width:100%;position:relative;border:0;margin:0;padding:8px 20px;font-size:14px;line-height:1.28571428;background:0 0;color:#2271b1;text-align:right;text-decoration:none;cursor:pointer}.media-menu .media-menu-item:hover{background:rgba(0,0,0,.04)}.media-menu .media-menu-item:active{color:#2271b1;outline:0}.media-menu .active,.media-menu .active:hover{color:#1d2327;font-weight:600}.media-menu .media-menu-item:focus{box-shadow:0 0 0 1px #4f94d4,0 0 2px 1px rgba(79,148,212,.8);color:#043959;outline:1px solid transparent}.media-menu .separator{height:0;margin:12px 20px;padding:0;border-top:1px solid #dcdcde}.media-router{position:relative;padding:0 6px;margin:0;clear:both}.media-router .media-menu-item{position:relative;float:right;border:0;margin:0;padding:8px 10px 9px;height:18px;line-height:1.28571428;font-size:14px;text-decoration:none;background:0 0;cursor:pointer;transition:none}.media-router .media-menu-item:last-child{border-left:0}.media-router .media-menu-item:active,.media-router .media-menu-item:hover{color:#2271b1}.media-router .active,.media-router .active:hover{color:#1d2327}.media-router .media-menu-item:focus{box-shadow:0 0 0 1px #4f94d4,0 0 2px 1px rgba(79,148,212,.8);color:#043959;outline:1px solid transparent}.media-router .active,.media-router .media-menu-item.active:last-child{margin:-1px -1px 0;background:#fff;border:1px solid #dcdcde;border-bottom:none}.media-router .active:after{display:none}.media-frame{overflow:hidden;position:absolute;top:0;right:0;left:0;bottom:0}.media-frame-menu{position:absolute;top:0;right:0;bottom:0;width:200px;z-index:150}.media-frame-title{position:absolute;top:0;right:200px;left:0;height:50px;z-index:200}.media-frame-router{position:absolute;top:50px;right:200px;left:0;height:36px;z-index:200}.media-frame-content{position:absolute;top:84px;right:200px;left:0;bottom:61px;height:auto;width:auto;margin:0;overflow:auto;background:#fff;border-top:1px solid #dcdcde}.media-frame-toolbar{position:absolute;right:200px;left:0;z-index:100;bottom:60px;height:auto}.media-frame.hide-menu .media-frame-content,.media-frame.hide-menu .media-frame-router,.media-frame.hide-menu .media-frame-title,.media-frame.hide-menu .media-frame-toolbar{right:0}.media-frame.hide-toolbar .media-frame-content{bottom:0}.media-frame.hide-router .media-frame-content{top:50px}.media-frame.hide-menu .media-frame-menu,.media-frame.hide-menu .media-frame-menu-heading,.media-frame.hide-router .media-frame-router,.media-frame.hide-toolbar .media-frame-toolbar{display:none}.media-frame-title h1{padding:0 16px;font-size:22px;line-height:2.27272727;margin:0}.media-attachments-filter-heading,.media-frame-menu-heading{position:absolute;right:20px;top:22px;margin:0;font-size:13px;line-height:1;z-index:151}.media-attachments-filter-heading{top:10px;right:16px}.mode-grid .media-attachments-filter-heading{top:0;right:-9999px}.mode-grid .media-frame-actions-heading{display:none}.wp-core-ui .button.media-frame-menu-toggle{display:none}.media-frame-title .suggested-dimensions{font-size:14px;float:left;margin-left:20px}.media-frame-content .crop-content{height:100%}.wp-customizer:not(.mobile) .media-frame-content .crop-content.site-icon{margin-left:300px}.media-frame-content .crop-content .crop-image{display:block;margin:auto;max-width:100%;max-height:100%}.media-frame-content .crop-content .upload-errors{position:absolute;width:300px;top:50%;right:50%;margin-right:-150px;margin-left:-150px;z-index:600000}.media-frame .media-iframe{overflow:hidden}.media-frame .media-iframe,.media-frame .media-iframe iframe{height:100%;width:100%;border:0}.media-frame select.attachment-filters{margin-top:11px;margin-left:2%;max-width:42%;max-width:calc(48% - 12px)}.media-frame select.attachment-filters:last-of-type{margin-left:0;width:auto;max-width:100%}.media-frame .search{margin:32px 0 0;padding:4px;font-size:13px;color:#3c434a;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;-webkit-appearance:none}.media-toolbar-primary .search{max-width:100%}.media-frame .media-search-input-label{position:absolute;right:0;top:10px;margin:0;line-height:1}.wp-core-ui .attachments{margin:0;-webkit-overflow-scrolling:touch}.wp-core-ui .attachment{position:relative;float:right;padding:8px;margin:0;color:#3c434a;cursor:pointer;list-style:none;text-align:center;-webkit-user-select:none;user-select:none;width:25%;box-sizing:border-box}.wp-core-ui .attachment.details:focus,.wp-core-ui .attachment:focus,.wp-core-ui .selected.attachment:focus{box-shadow:inset 0 0 2px 3px #fff,inset 0 0 0 7px #4f94d4;outline:2px solid transparent;outline-offset:-6px}.wp-core-ui .selected.attachment{box-shadow:inset 0 0 0 5px #fff,inset 0 0 0 7px #c3c4c7}.wp-core-ui .attachment.details{box-shadow:inset 0 0 0 3px #fff,inset 0 0 0 7px #2271b1}.wp-core-ui .attachment-preview{position:relative;box-shadow:inset 0 0 15px rgba(0,0,0,.1),inset 0 0 0 1px rgba(0,0,0,.05);background:#f0f0f1;cursor:pointer}.wp-core-ui .attachment-preview:before{content:"";display:block;padding-top:100%}.wp-core-ui .attachment .icon{margin:0 auto;overflow:hidden}.wp-core-ui .attachment .thumbnail{overflow:hidden;position:absolute;top:0;left:0;bottom:0;right:0;opacity:1;transition:opacity .1s}.wp-core-ui .attachment .portrait img{max-width:100%}.wp-core-ui .attachment .landscape img{max-height:100%}.wp-core-ui .attachment .thumbnail:after{content:"";display:block;position:absolute;top:0;right:0;left:0;bottom:0;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);overflow:hidden}.wp-core-ui .attachment .thumbnail img{top:0;right:0}.wp-core-ui .attachment .thumbnail .centered{position:absolute;top:0;right:0;width:100%;height:100%;transform:translate(-50%,50%)}.wp-core-ui .attachment .thumbnail .centered img{transform:translate(50%,-50%)}.wp-core-ui .attachments-browser .attachment .thumbnail .centered img.icon{transform:translate(50%,-70%)}.wp-core-ui .attachment .filename{position:absolute;right:0;left:0;bottom:0;overflow:hidden;max-height:100%;word-wrap:break-word;text-align:center;font-weight:600;background:rgba(255,255,255,.8);box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}.wp-core-ui .attachment .filename div{padding:5px 10px}.wp-core-ui .attachment .thumbnail img{position:absolute}.wp-core-ui .attachment-close{display:block;position:absolute;top:5px;left:5px;height:22px;width:22px;padding:0;background-color:#fff;background-position:-96px 4px;border-radius:3px;box-shadow:0 0 0 1px rgba(0,0,0,.3);transition:none}.wp-core-ui .attachment-close:focus,.wp-core-ui .attachment-close:hover{background-position:-36px 4px}.wp-core-ui .attachment .check{display:none;height:24px;width:24px;padding:0;border:0;position:absolute;z-index:10;top:0;left:0;outline:0;background:#f0f0f1;cursor:pointer;box-shadow:0 0 0 1px #fff,0 0 0 2px rgba(0,0,0,.15)}.wp-core-ui .attachment .check .media-modal-icon{display:block;background-position:-1px 0;height:15px;width:15px;margin:5px}.wp-core-ui .attachment .check:hover .media-modal-icon{background-position:-40px 0}.wp-core-ui .attachment.selected .check{display:block}.wp-core-ui .attachment.details .check,.wp-core-ui .attachment.selected .check:focus,.wp-core-ui .media-frame.mode-grid .attachment.selected .check{background-color:#2271b1;box-shadow:0 0 0 1px #fff,0 0 0 2px #2271b1}.wp-core-ui .attachment.selected .check:focus{outline:2px solid transparent}.wp-core-ui .attachment.details .check .media-modal-icon,.wp-core-ui .media-frame.mode-grid .attachment.selected .check .media-modal-icon{background-position:-21px 0}.wp-core-ui .attachment.details .check:hover .media-modal-icon,.wp-core-ui .attachment.selected .check:focus .media-modal-icon,.wp-core-ui .media-frame.mode-grid .attachment.selected .check:hover .media-modal-icon{background-position:-60px 0}.wp-core-ui .media-frame .attachment .describe{position:relative;display:block;width:100%;margin:0;padding:0 8px;font-size:12px;border-radius:0}.media-frame .attachments-browser{position:relative;width:100%;height:100%;overflow:hidden}.attachments-browser .media-toolbar{left:300px;height:72px;background:#fff}.attachments-browser.hide-sidebar .media-toolbar{left:0}.attachments-browser .media-toolbar-primary>.media-button,.attachments-browser .media-toolbar-primary>.media-button-group,.attachments-browser .media-toolbar-secondary>.media-button,.attachments-browser .media-toolbar-secondary>.media-button-group{margin:10px 0}.attachments-browser .attachments{padding:2px 8px 8px}.attachments-browser .uploader-inline,.attachments-browser.has-load-more .attachments-wrapper,.attachments-browser:not(.has-load-more) .attachments{position:absolute;top:72px;right:0;left:300px;bottom:0;overflow:auto;outline:0}.attachments-browser .uploader-inline.hidden{display:none}.attachments-browser .media-toolbar-primary{max-width:33%}.mode-grid .attachments-browser .media-toolbar-primary{display:flex;align-items:center}.mode-grid .attachments-browser .media-toolbar-mode-select .media-toolbar-primary{display:none}.attachments-browser .media-toolbar-secondary{max-width:66%}.uploader-inline .close{background-color:transparent;border:0;cursor:pointer;height:48px;outline:0;padding:0;position:absolute;left:2px;text-align:center;top:2px;width:48px;z-index:1}.uploader-inline .close:before{font:normal 30px/1 dashicons!important;color:#50575e;display:inline-block;content:"\f335";font-weight:300;margin-top:1px}.uploader-inline .close:focus{outline:1px solid #4f94d4;box-shadow:0 0 3px rgba(34,113,177,.8)}.attachments-browser.hide-sidebar .attachments,.attachments-browser.hide-sidebar .uploader-inline{left:0;margin-left:0}.attachments-browser .instructions{display:inline-block;margin-top:16px;line-height:1.38461538;font-size:13px;color:#646970}.attachments-browser .no-media{padding:2em 2em 0 0}.more-loaded .attachment:not(.found-media){background:#dcdcde}.load-more-wrapper{clear:both;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;padding:1em 0}.load-more-wrapper .load-more-count{min-width:100%;margin:0 0 1em;text-align:center}.load-more-wrapper .load-more{margin:0}.media-frame .load-more-wrapper .load-more+.spinner{float:none;margin:0 10px 0 -30px}.media-frame .load-more-wrapper .load-more.hidden+.spinner{margin:0}.load-more-wrapper::after{content:"";min-width:100%;order:1}.load-more-wrapper .load-more-jump{margin:0 12px 0 0}.attachment.new-media{outline:2px dotted #c3c4c7}.load-more-wrapper{clear:both;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;padding:1em 0}.load-more-wrapper .load-more-count{min-width:100%;margin:0 0 1em;text-align:center}.load-more-wrapper .load-more{margin:0}.media-frame .load-more-wrapper .load-more+.spinner{float:none;margin:0 10px 0 -30px}.media-frame .load-more-wrapper .load-more.hidden+.spinner{margin:0}.load-more-wrapper::after{content:"";min-width:100%;order:1}.load-more-wrapper .load-more-jump{margin:0 12px 0 0}.media-progress-bar{position:relative;height:10px;width:70%;margin:10px auto;border-radius:10px;background:#dcdcde;background:rgba(0,0,0,.1)}.media-progress-bar div{height:10px;min-width:20px;width:0;background:#2271b1;border-radius:10px;transition:width .3s}.media-uploader-status .media-progress-bar{display:none;width:100%}.uploading.media-uploader-status .media-progress-bar{display:block}.attachment-preview .media-progress-bar{position:absolute;top:50%;right:15%;width:70%;margin:-5px 0 0}.media-uploader-status{position:relative;margin:0 auto;padding-bottom:10px;max-width:400px}.uploader-inline .media-uploader-status h2{display:none}.media-uploader-status .upload-details{display:none;font-size:12px;color:#646970}.uploading.media-uploader-status .upload-details{display:block}.media-uploader-status .upload-detail-separator{padding:0 4px}.media-uploader-status .upload-count{color:#3c434a}.media-uploader-status .upload-dismiss-errors,.media-uploader-status .upload-errors{display:none}.errors.media-uploader-status .upload-dismiss-errors,.errors.media-uploader-status .upload-errors{display:block}.media-uploader-status .upload-dismiss-errors{transition:none;text-decoration:none}.upload-errors .upload-error{padding:12px;margin-bottom:12px;background:#fff;border-right:4px solid #d63638;box-shadow:0 1px 1px 0 rgba(0,0,0,.1)}.uploader-inline .upload-errors .upload-error{padding:12px 30px;background-color:#fcf0f1;box-shadow:none}.upload-errors .upload-error-filename{font-weight:600}.upload-errors .upload-error-message{display:block;padding-top:8px;word-wrap:break-word}.uploader-window,.wp-editor-wrap .uploader-editor{top:0;right:0;left:0;bottom:0;text-align:center;display:none}.uploader-window{position:fixed;z-index:250000;opacity:0;transition:opacity 250ms}.wp-editor-wrap .uploader-editor{position:absolute;z-index:99998;background:rgba(140,143,148,.9)}.uploader-window,.wp-editor-wrap .uploader-editor.droppable{background:rgba(10,75,120,.9)}.uploader-window-content,.wp-editor-wrap .uploader-editor-content{position:absolute;top:10px;right:10px;left:10px;bottom:10px;border:1px dashed #fff}.uploader-window .uploader-editor-title,.uploader-window h1,.wp-editor-wrap .uploader-editor .uploader-editor-title{position:absolute;top:50%;right:0;left:0;transform:translateY(-50%);font-size:3em;line-height:1.3;font-weight:600;color:#fff;margin:0;padding:0 10px}.wp-editor-wrap .uploader-editor .uploader-editor-title{display:none}.wp-editor-wrap .uploader-editor.droppable .uploader-editor-title{display:block}.uploader-window .media-progress-bar{margin-top:20px;max-width:300px;background:0 0;border-color:#fff;display:none}.uploader-window .media-progress-bar div{background:#fff}.uploading .uploader-window .media-progress-bar{display:block}.media-frame .uploader-inline{margin-bottom:20px;padding:0;text-align:center}.uploader-inline-content{position:absolute;top:30%;right:0;left:0}.uploader-inline-content .upload-ui{margin:2em 0}.uploader-inline-content .post-upload-ui{margin-bottom:2em}.uploader-inline .has-upload-message .upload-ui{margin:0 0 4em}.uploader-inline h2{font-size:20px;line-height:1.4;font-weight:400;margin:0}.uploader-inline .has-upload-message .upload-instructions{font-size:14px;color:#3c434a;font-weight:400}.uploader-inline .drop-instructions{display:none}.supports-drag-drop .uploader-inline .drop-instructions{display:block}.uploader-inline p{margin:.5em 0}.uploader-inline .media-progress-bar{display:none}.uploading.uploader-inline .media-progress-bar{display:block}.uploader-inline .browser{display:inline-block!important}.media-selection{position:absolute;top:0;right:0;left:350px;height:60px;padding:0 16px 0 0;overflow:hidden;white-space:nowrap}.media-selection .selection-info{display:inline-block;font-size:12px;height:60px;margin-left:10px;vertical-align:top}.media-selection.editing,.media-selection.empty{display:none}.media-selection.one .edit-selection{display:none}.media-selection .count{display:block;padding-top:12px;font-size:14px;line-height:1.42857142;font-weight:600}.media-selection .button-link{float:right;padding:1px 8px;margin:1px -8px 1px 8px;line-height:1.4;border-left:1px solid #dcdcde;color:#2271b1;text-decoration:none}.media-selection .button-link:focus,.media-selection .button-link:hover{color:#135e96}.media-selection .button-link:last-child{border-left:0;margin-left:0}.selection-info .clear-selection{color:#d63638}.selection-info .clear-selection:focus,.selection-info .clear-selection:hover{color:#d63638}.media-selection .selection-view{display:inline-block;vertical-align:top}.media-selection .attachments{display:inline-block;height:48px;margin:6px;padding:0;overflow:hidden;vertical-align:top}.media-selection .attachment{width:40px;padding:0;margin:4px}.media-selection .attachment .thumbnail{top:0;left:0;bottom:0;right:0}.media-selection .attachment .icon{width:50%}.media-selection .attachment-preview{box-shadow:none;background:0 0}.wp-core-ui .media-selection .attachment.details:focus,.wp-core-ui .media-selection .attachment:focus,.wp-core-ui .media-selection .selected.attachment:focus{box-shadow:0 0 0 1px #fff,0 0 2px 3px #4f94d4;outline:2px solid transparent}.wp-core-ui .media-selection .selected.attachment{box-shadow:none}.wp-core-ui .media-selection .attachment.details{box-shadow:0 0 0 1px #fff,0 0 0 3px #2271b1}.media-selection:after{content:"";display:block;position:absolute;top:0;left:0;bottom:0;width:25px;background-image:linear-gradient(to right,#fff,rgba(255,255,255,0))}.media-selection .attachment .filename{display:none}.media-frame .spinner{background:url(../images/spinner.gif) no-repeat;background-size:20px 20px;float:left;display:inline-block;visibility:hidden;opacity:.7;width:20px;height:20px;margin:0;vertical-align:middle}.media-frame.mode-grid .spinner{margin:0;float:none;vertical-align:middle}.media-modal .media-toolbar .spinner{float:none;vertical-align:bottom;margin:0 5px 5px 0}.media-frame .instructions+.spinner.is-active{vertical-align:middle}.media-frame .spinner.is-active{visibility:visible}.attachment-details{position:relative;overflow:auto}.attachment-details .settings-save-status{float:left;text-transform:none;font-weight:400}.attachment-details .settings-save-status .spinner{float:none;margin-right:5px}.attachment-details .settings-save-status .saved{display:none}.attachment-details.save-waiting .settings-save-status .spinner{visibility:visible}.attachment-details.save-complete .settings-save-status .saved{display:inline-block}.attachment-info{overflow:hidden;min-height:60px;margin-bottom:16px;line-height:1.5;color:#646970;border-bottom:1px solid #dcdcde;padding-bottom:11px}.attachment-info .wp-media-wrapper{margin-bottom:8px}.attachment-info .wp-media-wrapper.wp-audio{margin-top:13px}.attachment-info .filename{font-weight:600;color:#3c434a;word-wrap:break-word}.attachment-info .thumbnail{position:relative;float:right;max-width:120px;max-height:120px;margin-top:5px;margin-left:10px;margin-bottom:5px}.uploading .attachment-info .thumbnail{width:120px;height:80px;box-shadow:inset 0 0 15px rgba(0,0,0,.1)}.uploading .attachment-info .media-progress-bar{margin-top:35px}.attachment-info .thumbnail-image:after{content:"";display:block;position:absolute;top:0;right:0;left:0;bottom:0;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15);overflow:hidden}.attachment-info .thumbnail img{display:block;max-width:120px;max-height:120px;margin:0 auto}.attachment-info .details{float:right;font-size:12px;max-width:100%}.attachment-info .delete-attachment,.attachment-info .edit-attachment,.attachment-info .trash-attachment,.attachment-info .untrash-attachment{display:block;text-decoration:none;white-space:nowrap}.attachment-details.needs-refresh .attachment-info .edit-attachment{display:none}.attachment-info .edit-attachment{display:block}.media-modal .delete-attachment,.media-modal .trash-attachment,.media-modal .untrash-attachment{display:inline;padding:0;color:#d63638}.media-modal .delete-attachment:focus,.media-modal .delete-attachment:hover,.media-modal .trash-attachment:focus,.media-modal .trash-attachment:hover,.media-modal .untrash-attachment:focus,.media-modal .untrash-attachment:hover{color:#d63638}.attachment-display-settings{width:100%;float:right;overflow:hidden}.collection-settings{overflow:hidden}.collection-settings .setting input[type=checkbox]{float:right;margin-left:8px}.collection-settings .setting .name,.collection-settings .setting span{min-width:inherit}.media-modal .imgedit-wrap{position:static}.media-modal .imgedit-wrap .imgedit-panel-content{padding:16px 16px 0;position:absolute;top:0;left:282px;bottom:0;right:0;overflow:auto}.media-modal .imgedit-wrap .imgedit-submit{margin-bottom:16px}.media-modal .imgedit-wrap .imgedit-settings{background:#f6f7f7;border-right:1px solid #dcdcde;padding:20px 16px 0;position:absolute;top:0;left:0;bottom:0;width:250px;overflow:auto}.media-modal .imgedit-wrap .imgedit-save-target{margin:8px 0 24px}.media-modal .imgedit-group{background:0 0;border:none;border-bottom:1px solid #dcdcde;box-shadow:none;margin:0;margin-bottom:16px;padding:0;padding-bottom:16px;position:relative}.media-modal .imgedit-group:last-of-type{border:none;margin:0;padding:0}.media-modal .imgedit-group-top{margin:0}.media-modal .imgedit-group-top h2,.media-modal .imgedit-group-top h2 .button-link{display:inline-block;text-transform:uppercase;font-size:12px;color:#646970;margin:0;margin-top:3px}.media-modal .imgedit-group-top h2 .button-link,.media-modal .imgedit-group-top h2 a{text-decoration:none;color:#646970}.wp-core-ui.media-modal .image-editor .imgedit-help-toggle,.wp-core-ui.media-modal .image-editor .imgedit-help-toggle:active,.wp-core-ui.media-modal .image-editor .imgedit-help-toggle:hover{border:1px solid transparent;margin:0;padding:0;background:0 0;color:#2271b1;font-size:20px;line-height:1;cursor:pointer;box-sizing:content-box;box-shadow:none}.wp-core-ui.media-modal .image-editor .imgedit-help-toggle:focus{color:#2271b1;border-color:#4f94d4;box-shadow:0 0 3px rgba(34,113,177,.8);outline:2px solid transparent}.wp-core-ui.media-modal .imgedit-group-top .dashicons-arrow-down.imgedit-help-toggle{margin-top:-3px}.wp-core-ui.media-modal .image-editor h3 .imgedit-help-toggle{margin-top:-2px}.media-modal .imgedit-help-toggled span.dashicons:before{content:"\f142"}.media-modal .imgedit-thumbnail-preview{margin:10px 0 0 8px}.imgedit-thumbnail-preview-caption{display:block}.media-modal .imgedit-wrap .notice,.media-modal .imgedit-wrap div.updated{margin:0;margin-bottom:16px}.embed-url{display:block;position:relative;padding:16px;margin:0;z-index:250;background:#fff;font-size:18px}.media-frame .embed-url input{font-size:18px;line-height:1.22222222;padding:12px 14px 12px 40px;width:100%;min-width:200px;box-shadow:inset -2px 2px 4px -2px rgba(0,0,0,.1)}.media-frame .embed-url input::-ms-clear{display:none}.media-frame .embed-url .spinner{position:absolute;top:32px;left:26px}.media-frame .embed-loading .embed-url .spinner{visibility:visible}.embed-link-settings,.embed-media-settings{position:absolute;top:82px;right:0;left:0;bottom:0;padding:0 16px;overflow:auto}.media-embed .embed-link-settings .link-text{margin-top:0}.embed-link-settings::after,.embed-media-settings::after{content:"";display:flex;clear:both;height:24px}.media-embed .embed-link-settings{overflow:visible}.embed-preview embed,.embed-preview iframe,.embed-preview img,.mejs-container video{max-width:100%;vertical-align:middle}.embed-preview a{display:inline-block}.embed-preview img{display:block;height:auto}.mejs-container:focus{outline:1px solid #4f94d4;box-shadow:0 0 2px 1px rgba(79,148,212,.8)}.image-details .media-modal{right:140px;left:140px}.image-details .media-frame-content,.image-details .media-frame-router,.image-details .media-frame-title{right:0}.image-details .embed-media-settings{top:0;overflow:visible;padding:0}.image-details .embed-media-settings::after{content:none}.image-details .embed-media-settings,.image-details .embed-media-settings div{box-sizing:border-box}.image-details .column-settings{background:#f6f7f7;border-left:1px solid #dcdcde;min-height:100%;width:55%;position:absolute;top:0;right:0}.image-details .column-settings h2{margin:20px;padding-top:20px;border-top:1px solid #dcdcde;color:#1d2327}.image-details .column-image{width:45%;position:absolute;right:55%;top:0}.image-details .image{margin:20px}.image-details .image img{max-width:100%;max-height:500px}.image-details .advanced-toggle{padding:0;color:#646970;text-transform:uppercase;text-decoration:none}.image-details .advanced-toggle:active,.image-details .advanced-toggle:hover{color:#646970}.image-details .advanced-toggle:after{font:normal 20px/1 dashicons;speak:never;vertical-align:top;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\f140";display:inline-block;margin-top:-2px}.image-details .advanced-visible .advanced-toggle:after{content:"\f142"}.image-details .custom-size .custom-size-setting,.image-details .custom-size label{display:block;float:right}.image-details .custom-size .custom-size-setting label{float:none}.image-details .custom-size input{width:5em}.image-details .custom-size .sep{float:right;margin:26px 6px 0}.image-details .custom-size .description{margin-right:0}.media-embed .thumbnail{max-width:100%;max-height:200px;position:relative;float:right}.media-embed .thumbnail img{max-height:200px;display:block}.media-embed .thumbnail:after{content:"";display:block;position:absolute;top:0;right:0;left:0;bottom:0;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);overflow:hidden}.media-embed .setting,.media-embed .setting-group{width:100%;margin:10px 0;float:right;display:block;clear:both}.media-embed .setting-group .setting:not(.checkbox-setting){margin:0}.media-embed .setting.has-description{margin-bottom:5px}.media-embed .description{clear:both;font-style:normal}.media-embed .content-track+.description{line-height:1.4;max-width:none!important}.media-embed .remove-track{margin-bottom:10px}.image-details .embed-media-settings .setting,.image-details .embed-media-settings .setting-group{float:none;width:auto}.image-details .actions{margin:10px 0}.image-details .hidden{display:none}.media-embed .setting input[type=text],.media-embed .setting textarea,.media-embed fieldset{display:block;width:100%;max-width:400px}.image-details .embed-media-settings .setting input[type=text],.image-details .embed-media-settings .setting textarea{max-width:inherit;width:70%}.image-details .description,.image-details .embed-media-settings .custom-size,.image-details .embed-media-settings .link-target,.image-details .embed-media-settings .setting input.link-to-custom,.image-details .embed-media-settings .setting-group{margin-right:27%;width:70%}.image-details .description{font-style:normal;margin-top:0}.image-details .embed-media-settings .link-target{margin-top:16px}.audio-details .checkbox-label,.image-details .checkbox-label,.video-details .checkbox-label{vertical-align:baseline}.media-embed .setting input.hidden,.media-embed .setting textarea.hidden{display:none}.media-embed .setting .name,.media-embed .setting span,.media-embed .setting-group .name{display:inline-block;font-size:13px;line-height:1.84615384;color:#646970}.media-embed .setting span{display:block;width:200px}.image-details .embed-media-settings .setting .name,.image-details .embed-media-settings .setting span{float:right;width:25%;text-align:left;margin:8px 1% 0;line-height:1.1}.image-details .embed-media-settings .setting .button-group,.media-frame .setting-group .button-group{width:auto}.media-embed-sidebar{position:absolute;top:0;right:440px}.advanced-section,.link-settings{margin-top:10px}.media-frame .setting .button-group{display:flex;margin:0!important;max-width:none!important}.rtl .media-frame,.rtl .media-frame .search,.rtl .media-frame input[type=email],.rtl .media-frame input[type=number],.rtl .media-frame input[type=password],.rtl .media-frame input[type=search],.rtl .media-frame input[type=tel],.rtl .media-frame input[type=text],.rtl .media-frame input[type=url],.rtl .media-frame select,.rtl .media-frame textarea,.rtl .media-modal{font-family:Tahoma,sans-serif}:lang(he-il) .rtl .media-frame,:lang(he-il) .rtl .media-frame .search,:lang(he-il) .rtl .media-frame input[type=email],:lang(he-il) .rtl .media-frame input[type=number],:lang(he-il) .rtl .media-frame input[type=password],:lang(he-il) .rtl .media-frame input[type=search],:lang(he-il) .rtl .media-frame input[type=text],:lang(he-il) .rtl .media-frame input[type=url],:lang(he-il) .rtl .media-frame select,:lang(he-il) .rtl .media-frame textarea,:lang(he-il) .rtl .media-modal{font-family:Arial,sans-serif}@media only screen and (max-width:900px){.media-modal .media-frame-title{height:40px}.media-modal .media-frame-title h1{line-height:2.22222222;font-size:18px}.media-modal-close{width:42px;height:42px}.media-frame .media-frame-title{position:static;padding:0 44px;text-align:center}.media-frame:not(.hide-menu) .media-frame-content,.media-frame:not(.hide-menu) .media-frame-router,.media-frame:not(.hide-menu) .media-frame-toolbar{right:0}.media-frame:not(.hide-menu) .media-frame-router{top:80px}.media-frame:not(.hide-menu) .media-frame-content{top:114px}.media-frame.hide-router .media-frame-content{top:80px}.media-frame:not(.hide-menu) .media-frame-menu{position:static;width:0}.media-frame:not(.hide-menu) .media-menu{display:none;width:auto;max-width:80%;overflow:auto;z-index:2000;top:75px;right:50%;transform:translateX(50%);left:auto;bottom:auto;padding:5px 0;border:1px solid #c3c4c7}.media-frame:not(.hide-menu) .media-menu.visible{display:block}.media-frame:not(.hide-menu) .media-menu>a{padding:12px 16px;font-size:16px}.media-frame:not(.hide-menu) .media-menu .separator{margin:5px 10px}.media-frame-menu-heading{clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;padding:0;width:1px;word-wrap:normal!important}.wp-core-ui .media-frame:not(.hide-menu) .button.media-frame-menu-toggle{display:inline-flex;align-items:center;position:absolute;right:50%;transform:translateX(50%);margin:-6px 0 0;padding:0 12px 0 2px;font-size:.875rem;font-weight:600;text-decoration:none;background:0 0;height:.1%;min-height:40px}.wp-core-ui .button.media-frame-menu-toggle:active,.wp-core-ui .button.media-frame-menu-toggle:hover{background:0 0;transform:none}.wp-core-ui .button.media-frame-menu-toggle:focus{outline:1px solid transparent}.media-sidebar{width:230px}.attachments-browser .attachments,.attachments-browser .attachments-wrapper,.attachments-browser .media-toolbar,.attachments-browser .uploader-inline,.attachments-browser.has-load-more .attachments-wrapper{left:262px}.attachment-details .setting,.media-sidebar .setting{margin:6px 0}.attachment-details .setting .name,.attachment-details .setting input,.attachment-details .setting textarea,.compat-item label span,.media-sidebar .setting .name,.media-sidebar .setting input,.media-sidebar .setting textarea{float:none;display:inline-block}.attachment-details .setting span,.media-sidebar .checkbox-label-inline,.media-sidebar .setting span{float:none}.media-sidebar .setting .select-label-inline{display:inline}.attachment-details .setting .name,.compat-item label span,.media-sidebar .checkbox-label-inline,.media-sidebar .setting .name{text-align:inherit;min-height:16px;margin:0;padding:8px 2px 2px}.attachment-details .attachment-info .copy-to-clipboard-container,.media-sidebar .setting .copy-to-clipboard-container{margin-right:0;padding-top:0}.attachment-details .attachment-info .copy-attachment-url,.media-sidebar .setting .copy-attachment-url{margin:0 1px}.attachment-details .setting .value,.media-sidebar .setting .value{float:none;width:auto}.attachment-details .setting input[type=email],.attachment-details .setting input[type=number],.attachment-details .setting input[type=password],.attachment-details .setting input[type=search],.attachment-details .setting input[type=tel],.attachment-details .setting input[type=text],.attachment-details .setting input[type=url],.attachment-details .setting select,.attachment-details .setting textarea,.attachment-details .setting+.description,.media-sidebar .setting input[type=email],.media-sidebar .setting input[type=number],.media-sidebar .setting input[type=password],.media-sidebar .setting input[type=search],.media-sidebar .setting input[type=tel],.media-sidebar .setting input[type=text],.media-sidebar .setting input[type=url],.media-sidebar .setting select,.media-sidebar .setting textarea{float:none;width:98%;max-width:none;height:auto}.media-frame .media-toolbar input[type=search]{line-height:2.25}.attachment-details .setting select.columns,.media-sidebar .setting select.columns{width:auto}.media-frame .search,.media-frame input,.media-frame textarea{padding:3px 6px}.wp-admin .media-frame select{min-height:40px;font-size:16px;line-height:1.625;padding:5px 8px 5px 24px}.image-details .column-image{width:30%;right:70%}.image-details .column-settings{width:70%}.image-details .media-modal{right:30px;left:30px}.image-details .embed-media-settings .setting,.image-details .embed-media-settings .setting-group{margin:20px}.image-details .embed-media-settings .setting .name,.image-details .embed-media-settings .setting span{float:none;text-align:right;width:100%;margin-bottom:4px;margin-right:0}.media-modal .legend-inline{position:static;transform:none;margin-right:0;margin-bottom:6px}.image-details .embed-media-settings .setting-group .setting{margin-bottom:0}.image-details .embed-media-settings .setting input.link-to-custom,.image-details .embed-media-settings .setting input[type=text],.image-details .embed-media-settings .setting textarea{width:100%;margin-right:0}.image-details .embed-media-settings .setting.has-description{margin-bottom:5px}.image-details .description{width:auto;margin:0 20px}.image-details .embed-media-settings .custom-size{margin-right:20px}.collection-settings .setting input[type=checkbox]{float:none;margin-top:0}.media-selection{min-width:120px}.media-selection:after{background:0 0}.media-selection .attachments{display:none}.media-modal .attachments-browser .media-toolbar .search{max-width:100%;height:auto;float:left}.media-modal .attachments-browser .media-toolbar .attachment-filters{height:auto}.media-frame input[type=email],.media-frame input[type=number],.media-frame input[type=password],.media-frame input[type=search],.media-frame input[type=text],.media-frame input[type=url],.media-frame select,.media-frame textarea{font-size:16px}.media-frame .media-toolbar input[type=search]{line-height:2.3755}.media-modal .media-toolbar .spinner{margin-bottom:10px}}@media screen and (max-width:782px){.attachments-browser .media-toolbar{height:82px}.attachments-browser .attachments,.attachments-browser .uploader-inline{top:82px}.media-frame-toolbar .media-toolbar{bottom:-54px}.mode-grid .attachments-browser .media-toolbar-primary{display:block}.attachment-details .copy-to-clipboard-container .success,.media-sidebar .copy-to-clipboard-container .success{font-size:14px;line-height:2.71428571}}@media only screen and (max-width:640px),screen and (max-height:400px){.image-details .media-modal,.media-modal{position:fixed;top:0;right:0;left:0;bottom:0}.media-modal-backdrop{position:fixed}.media-sidebar{z-index:1900;max-width:70%;bottom:120%;box-sizing:border-box;padding-bottom:0}.media-sidebar.visible{bottom:0}.attachments-browser .attachments,.attachments-browser .media-toolbar,.attachments-browser .uploader-inline,.media-frame-content .attachments-browser .attachments-wrapper{left:0}.attachments-browser .attachments-wrapper{padding-top:12px}.image-details .media-frame-title{display:block;top:0;font-size:14px}.image-details .column-image,.image-details .column-settings{width:100%;position:relative;right:0}.image-details .column-settings{padding:4px 0}.media-frame-content .media-toolbar .instructions{display:none}.load-more-wrapper .load-more-jump{margin:12px 0 0}}@media only screen and (min-width:901px) and (max-height:400px){.media-frame:not(.hide-menu) .media-menu,.media-menu{top:0;padding-top:44px}.load-more-wrapper .load-more-jump{margin:12px 0 0}}@media only screen and (max-width:480px){.wp-core-ui.wp-customizer .media-button{margin-top:13px}}@media print,(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){.wp-core-ui .media-modal-icon{background-image:url(../images/uploader-icons-2x.png);background-size:134px 15px}.media-frame .spinner{background-image:url(../images/spinner-2x.gif)}}.media-frame-content[data-columns="1"] .attachment{width:100%}.media-frame-content[data-columns="2"] .attachment{width:50%}.media-frame-content[data-columns="3"] .attachment{width:33.33%}.media-frame-content[data-columns="4"] .attachment{width:25%}.media-frame-content[data-columns="5"] .attachment{width:20%}.media-frame-content[data-columns="6"] .attachment{width:16.66%}.media-frame-content[data-columns="7"] .attachment{width:14.28%}.media-frame-content[data-columns="8"] .attachment{width:12.5%}.media-frame-content[data-columns="9"] .attachment{width:11.11%}.media-frame-content[data-columns="10"] .attachment{width:10%}.media-frame-content[data-columns="11"] .attachment{width:9.09%}.media-frame-content[data-columns="12"] .attachment{width:8.33%}PKj l\Gvצ css/wp-pointer.min.cssnu[/*! This file is auto-generated */ .wp-pointer-content{padding:0 0 10px;position:relative;font-size:13px;background:#fff;border:1px solid #c3c4c7;box-shadow:0 3px 6px rgba(0,0,0,.08)}.wp-pointer-content h3{position:relative;margin:-1px -1px 5px;padding:15px 18px 14px 60px;border:1px solid #2271b1;border-bottom:none;line-height:1.4;font-size:14px;color:#fff;background:#2271b1}.wp-pointer-content h3:before{background:#fff;border-radius:50%;color:#2271b1;content:"\f227";font:normal 20px/1.6 dashicons;position:absolute;top:8px;left:15px;speak:never;text-align:center;width:32px;height:32px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.wp-pointer-content h4{margin:1.33em 20px 1em;font-size:1.15em}.wp-pointer-content p{padding:0 20px}.wp-pointer-buttons{margin:0;padding:5px 15px;overflow:auto}.wp-pointer-buttons a{float:right;display:inline-block;text-decoration:none}.wp-pointer-buttons a.close{padding-left:3px;position:relative}.wp-pointer-buttons a.close:before{background:0 0;color:#787c82;content:"\f153";display:block!important;font:normal 16px/1 dashicons;speak:never;margin:1px 0;text-align:center;-webkit-font-smoothing:antialiased!important;width:10px;height:100%;position:absolute;left:-15px;top:1px}.wp-pointer-buttons a.close:hover:before{color:#d63638}.wp-pointer-arrow,.wp-pointer-arrow-inner{position:absolute;width:0;height:0}.wp-pointer-arrow{z-index:10;width:0;height:0;border:0 solid transparent}.wp-pointer-arrow-inner{z-index:20}.wp-pointer-top,.wp-pointer-undefined{padding-top:13px}.wp-pointer-bottom{margin-top:-13px;padding-bottom:13px}.wp-pointer-left{padding-left:13px}.wp-pointer-right{margin-left:-13px;padding-right:13px}.wp-pointer-bottom .wp-pointer-arrow,.wp-pointer-top .wp-pointer-arrow,.wp-pointer-undefined .wp-pointer-arrow{left:50px}.wp-pointer-left .wp-pointer-arrow,.wp-pointer-right .wp-pointer-arrow{top:50%;margin-top:-15px}.wp-pointer-top .wp-pointer-arrow,.wp-pointer-undefined .wp-pointer-arrow{top:0;border-width:0 13px 13px;border-bottom-color:#2271b1}.wp-pointer-top .wp-pointer-arrow-inner,.wp-pointer-undefined .wp-pointer-arrow-inner{top:1px;margin-left:-13px;margin-top:-13px;border:13px solid transparent;border-bottom-color:#2271b1;display:block;content:" "}.wp-pointer-bottom .wp-pointer-arrow{bottom:0;border-width:13px 13px 0;border-top-color:#c3c4c7}.wp-pointer-bottom .wp-pointer-arrow-inner{bottom:1px;margin-left:-13px;margin-bottom:-13px;border:13px solid transparent;border-top-color:#fff;display:block;content:" "}.wp-pointer-left .wp-pointer-arrow{left:0;border-width:13px 13px 13px 0;border-right-color:#c3c4c7}.wp-pointer-left .wp-pointer-arrow-inner{left:1px;margin-left:-13px;margin-top:-13px;border:13px solid transparent;border-right-color:#fff;display:block;content:" "}.wp-pointer-right .wp-pointer-arrow{right:0;border-width:13px 0 13px 13px;border-left-color:#c3c4c7}.wp-pointer-right .wp-pointer-arrow-inner{right:1px;margin-right:-13px;margin-top:-13px;border:13px solid transparent;border-left-color:#fff;display:block;content:" "}.wp-pointer.arrow-bottom .wp-pointer-content{margin-bottom:-45px}.wp-pointer.arrow-bottom .wp-pointer-arrow{top:100%;margin-top:-30px}@media screen and (max-width:782px){.wp-pointer{display:none}}PKj l\Vm css/wp-auth-check.cssnu[/*------------------------------------------------------------------------------ Interim login dialog ------------------------------------------------------------------------------*/ #wp-auth-check-wrap.hidden { display: none; } #wp-auth-check-wrap #wp-auth-check-bg { position: fixed; top: 0; bottom: 0; left: 0; right: 0; background: #000; opacity: 0.7; filter: alpha(opacity=70); z-index: 1000010; /* needs to appear above .notification-dialog */ } #wp-auth-check-wrap #wp-auth-check { position: fixed; left: 50%; overflow: hidden; top: 40px; bottom: 20px; max-height: 415px; width: 380px; margin: 0 0 0 -190px; padding: 30px 0 0; background-color: #f0f0f1; z-index: 1000011; /* needs to appear above #wp-auth-check-bg */ box-shadow: 0 3px 6px rgba(0, 0, 0, 0.3); } @media screen and (max-width: 380px) { #wp-auth-check-wrap #wp-auth-check { left: 0; width: 100%; margin: 0; } } #wp-auth-check-wrap.fallback #wp-auth-check { max-height: 180px; overflow: auto; } #wp-auth-check-wrap #wp-auth-check-form { height: 100%; position: relative; overflow: auto; -webkit-overflow-scrolling: touch; } #wp-auth-check-form.loading:before { content: ""; display: block; width: 20px; height: 20px; position: absolute; left: 50%; top: 50%; margin: -10px 0 0 -10px; background: url(../images/spinner.gif) no-repeat center; background-size: 20px 20px; transform: translateZ(0); } @media print, (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) { #wp-auth-check-form.loading:before { background-image: url(../images/spinner-2x.gif); } } #wp-auth-check-wrap #wp-auth-check-form iframe { height: 98%; /* Scrollbar fix */ width: 100%; } #wp-auth-check-wrap .wp-auth-check-close { position: absolute; top: 5px; right: 5px; height: 22px; width: 22px; color: #787c82; text-decoration: none; text-align: center; } #wp-auth-check-wrap .wp-auth-check-close:before { content: "\f158"; font: normal 20px/22px dashicons; speak: never; -webkit-font-smoothing: antialiased !important; -moz-osx-font-smoothing: grayscale; } #wp-auth-check-wrap .wp-auth-check-close:hover, #wp-auth-check-wrap .wp-auth-check-close:focus { color: #2271b1; } #wp-auth-check-wrap .wp-auth-fallback-expired { outline: 0; } #wp-auth-check-wrap .wp-auth-fallback { font-size: 14px; line-height: 1.5; padding: 0 25px; display: none; } #wp-auth-check-wrap.fallback .wp-auth-fallback, #wp-auth-check-wrap.fallback .wp-auth-check-close { display: block; } PKj l\.J}zzcss/media-views.cssnu[/** * Base Styles */ .media-modal * { box-sizing: content-box; } .media-modal input, .media-modal select, .media-modal textarea { box-sizing: border-box; } .media-modal, .media-frame { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 12px; -webkit-overflow-scrolling: touch; } .media-modal legend { padding: 0; font-size: 13px; } .media-modal label { font-size: 13px; } .media-modal .legend-inline { position: absolute; transform: translate(-100%, 50%); margin-left: -1%; line-height: 1.2; } .media-frame a { border-bottom: none; color: #2271b1; } .media-frame a:hover, .media-frame a:active { color: #135e96; } .media-frame a:focus { box-shadow: 0 0 0 1px #4f94d4, 0 0 2px 1px rgba(79, 148, 212, 0.8); color: #043959; /* Only visible in Windows High Contrast mode */ outline: 1px solid transparent; } .media-frame a.button { color: #2c3338; } .media-frame a.button:hover { color: #1d2327; } .media-frame a.button-primary, .media-frame a.button-primary:hover { color: #fff; } .media-frame input, .media-frame textarea { padding: 6px 8px; } .media-frame select, .wp-admin .media-frame select { min-height: 30px; vertical-align: middle; } .media-frame input[type="text"], .media-frame input[type="password"], .media-frame input[type="color"], .media-frame input[type="date"], .media-frame input[type="datetime"], .media-frame input[type="datetime-local"], .media-frame input[type="email"], .media-frame input[type="month"], .media-frame input[type="number"], .media-frame input[type="search"], .media-frame input[type="tel"], .media-frame input[type="time"], .media-frame input[type="url"], .media-frame input[type="week"], .media-frame textarea, .media-frame select { box-shadow: 0 0 0 transparent; border-radius: 4px; border: 1px solid #8c8f94; background-color: #fff; color: #2c3338; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 13px; } .media-frame input[type="text"], .media-frame input[type="password"], .media-frame input[type="date"], .media-frame input[type="datetime"], .media-frame input[type="datetime-local"], .media-frame input[type="email"], .media-frame input[type="month"], .media-frame input[type="number"], .media-frame input[type="search"], .media-frame input[type="tel"], .media-frame input[type="time"], .media-frame input[type="url"], .media-frame input[type="week"] { padding: 0 8px; /* inherits font size 13px */ line-height: 2.15384615; /* 28px */ } /* Search field in the Media Library toolbar */ .media-frame.mode-grid .wp-filter input[type="search"] { font-size: 14px; line-height: 2; } .media-frame input[type="text"]:focus, .media-frame input[type="password"]:focus, .media-frame input[type="number"]:focus, .media-frame input[type="search"]:focus, .media-frame input[type="email"]:focus, .media-frame input[type="url"]:focus, .media-frame textarea:focus, .media-frame select:focus { border-color: #3582c4; box-shadow: 0 0 0 1px #3582c4; outline: 2px solid transparent; } .media-frame input:disabled, .media-frame textarea:disabled, .media-frame input[readonly], .media-frame textarea[readonly] { background-color: #f0f0f1; } .media-frame input[type="search"] { -webkit-appearance: textfield; } .media-frame ::-webkit-input-placeholder { color: #646970; } .media-frame ::-moz-placeholder { color: #646970; opacity: 1; } .media-frame :-ms-input-placeholder { color: #646970; } /* * In some cases there's the need of higher specificity, * for example higher than `.media-embed .setting`. */ .media-frame .hidden, .media-frame .setting.hidden { display: none; } /*! * jQuery UI Draggable/Sortable 1.11.4 * http://jqueryui.com * * Copyright jQuery Foundation and other contributors * Released under the MIT license. * http://jquery.org/license */ .ui-draggable-handle, .ui-sortable-handle { touch-action: none; } /** * Modal */ .media-modal { position: fixed; top: 30px; left: 30px; right: 30px; bottom: 30px; z-index: 160000; } .wp-customizer .media-modal { z-index: 560000; } .media-modal-backdrop { position: fixed; top: 0; left: 0; right: 0; bottom: 0; min-height: 360px; background: #000; opacity: 0.7; z-index: 159900; } .wp-customizer .media-modal-backdrop { z-index: 559900; } .media-modal-close { position: absolute; top: 0; right: 0; width: 50px; height: 50px; margin: 0; padding: 0; border: 1px solid transparent; background: none; color: #646970; z-index: 1000; cursor: pointer; outline: none; transition: color .1s ease-in-out, background .1s ease-in-out; } .media-modal-close:hover, .media-modal-close:active { color: #135e96; } .media-modal-close:focus { color: #135e96; border-color: #4f94d4; box-shadow: 0 0 3px rgba(34, 113, 177, 0.8); /* Only visible in Windows High Contrast mode */ outline: 2px solid transparent; } .media-modal-close span.media-modal-icon { background-image: none; } .media-modal-close .media-modal-icon:before { content: "\f158"; font: normal 20px/1 dashicons; speak: never; vertical-align: middle; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .media-modal-content { position: absolute; top: 0; left: 0; right: 0; bottom: 0; overflow: auto; min-height: 300px; box-shadow: 0 5px 15px rgba(0, 0, 0, 0.7); background: #fff; -webkit-font-smoothing: subpixel-antialiased; } .media-modal-content .media-frame select.attachment-filters { margin-top: 32px; margin-right: 2%; width: 42%; width: calc(48% - 12px); } .media-modal-content .attachments-browser .search { width: 100%; } /* higher specificity */ .wp-core-ui .media-modal-icon { background-image: url(../images/uploader-icons.png); background-repeat: no-repeat; } /** * Toolbar */ .media-toolbar { position: absolute; top: 0; left: 0; right: 0; z-index: 100; height: 60px; padding: 0 16px; border: 0 solid #dcdcde; overflow: hidden; } .media-frame-toolbar .media-toolbar { top: auto; bottom: -47px; height: auto; overflow: visible; border-top: 1px solid #dcdcde; } .media-toolbar-primary { float: right; height: 100%; position: relative; } .media-toolbar-secondary { float: left; height: 100%; } .media-toolbar-primary > .media-button, .media-toolbar-primary > .media-button-group { margin-left: 10px; float: left; margin-top: 15px; } .media-toolbar-secondary > .media-button, .media-toolbar-secondary > .media-button-group { margin-right: 10px; margin-top: 15px; } /** * Sidebar */ .media-sidebar { position: absolute; top: 0; right: 0; bottom: 0; width: 267px; padding: 0 16px; z-index: 75; background: #f6f7f7; border-left: 1px solid #dcdcde; overflow: auto; -webkit-overflow-scrolling: touch; } /* * Implementation of bottom padding in overflow content differs across browsers. * We need a different method. See https://github.com/w3c/csswg-drafts/issues/129 */ .media-sidebar::after { content: ""; display: flex; clear: both; height: 24px; } .hide-toolbar .media-sidebar { bottom: 0; } .media-sidebar h2, .image-details h2:not(.media-attachments-filter-heading) { position: relative; font-weight: 600; text-transform: uppercase; font-size: 12px; color: #646970; margin: 24px 0 8px; } .media-sidebar .setting, .attachment-details .setting { display: block; float: left; width: 100%; margin: 0 0 10px; } .media-sidebar .collection-settings .setting { margin: 1px 0; } .media-sidebar .setting.has-description, .attachment-details .setting.has-description { margin-bottom: 5px; } .media-sidebar .setting .link-to-custom { margin: 3px 2px 0; } .media-sidebar .setting span, /* Back-compat for pre-5.3 */ .attachment-details .setting span, /* Back-compat for pre-5.3 */ .media-sidebar .setting .name, .media-sidebar .setting .value, .attachment-details .setting .name { min-width: 30%; margin-right: 4%; font-size: 12px; text-align: right; word-wrap: break-word; } .media-sidebar .setting .name { max-width: 80px; } .media-sidebar .setting .value { text-align: left; } .media-sidebar .setting select { max-width: 65%; } .media-sidebar .setting input[type="checkbox"], .media-sidebar .field input[type="checkbox"], .media-sidebar .setting input[type="radio"], .media-sidebar .field input[type="radio"], .attachment-details .setting input[type="checkbox"], .attachment-details .field input[type="checkbox"], .attachment-details .setting input[type="radio"], .attachment-details .field input[type="radio"] { float: none; margin: 8px 3px 0; padding: 0; } .media-sidebar .setting span, /* Back-compat for pre-5.3 */ .attachment-details .setting span, /* Back-compat for pre-5.3 */ .media-sidebar .setting .name, .media-sidebar .setting .value, .media-sidebar .checkbox-label-inline, .attachment-details .setting .name, .attachment-details .setting .value, .compat-item label span { float: left; min-height: 22px; padding-top: 8px; line-height: 1.33333333; font-weight: 400; color: #646970; } .media-sidebar .checkbox-label-inline { font-size: 12px; } .media-sidebar .copy-to-clipboard-container, .attachment-details .copy-to-clipboard-container { flex-wrap: wrap; margin-top: 10px; margin-left: calc( 35% - 1px ); padding-top: 10px; } /* Needs high specificity. */ .attachment-details .attachment-info .copy-to-clipboard-container { float: none; } .media-sidebar .copy-to-clipboard-container .success, .attachment-details .copy-to-clipboard-container .success { padding: 0; min-height: 0; line-height: 2.18181818; text-align: left; color: #008a20; } .compat-item label span { text-align: right; } .media-sidebar .setting input[type="text"], .media-sidebar .setting input[type="password"], .media-sidebar .setting input[type="email"], .media-sidebar .setting input[type="number"], .media-sidebar .setting input[type="search"], .media-sidebar .setting input[type="tel"], .media-sidebar .setting input[type="url"], .media-sidebar .setting textarea, .media-sidebar .setting .value, .attachment-details .setting input[type="text"], .attachment-details .setting input[type="password"], .attachment-details .setting input[type="email"], .attachment-details .setting input[type="number"], .attachment-details .setting input[type="search"], .attachment-details .setting input[type="tel"], .attachment-details .setting input[type="url"], .attachment-details .setting textarea, .attachment-details .setting .value, .attachment-details .setting + .description { box-sizing: border-box; margin: 1px; width: 65%; float: right; } .media-sidebar .setting .value, .attachment-details .setting .value, .attachment-details .setting + .description { margin: 0 1px; text-align: left; } .attachment-details .setting + .description { clear: both; font-size: 12px; font-style: normal; margin-bottom: 10px; } .media-sidebar .setting textarea, .attachment-details .setting textarea, .compat-item .field textarea { height: 62px; resize: vertical; } .compat-item { float: left; width: 100%; overflow: hidden; } .compat-item table { width: 100%; table-layout: fixed; border-spacing: 0; border: 0; } .compat-item tr { padding: 2px 0; display: block; overflow: hidden; } .compat-item .label, .compat-item .field { display: block; margin: 0; padding: 0; } .compat-item .label { min-width: 30%; margin-right: 4%; float: left; text-align: right; } .compat-item .label span { display: block; width: 100%; } .compat-item .field { float: right; width: 65%; margin: 1px; } .compat-item .field input[type="text"], .compat-item .field input[type="password"], .compat-item .field input[type="email"], .compat-item .field input[type="number"], .compat-item .field input[type="search"], .compat-item .field input[type="tel"], .compat-item .field input[type="url"], .compat-item .field textarea { width: 100%; margin: 0; box-sizing: border-box; } .sidebar-for-errors .attachment-details, .sidebar-for-errors .compat-item, .sidebar-for-errors .media-sidebar .media-progress-bar, .sidebar-for-errors .upload-details { display: none !important; } /** * Menu */ .media-menu { position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: 0; padding: 50px 0 10px; background: #f6f7f7; border-right-width: 1px; border-right-style: solid; border-right-color: #c3c4c7; -webkit-user-select: none; user-select: none; } .media-menu .media-menu-item { display: block; box-sizing: border-box; width: 100%; position: relative; border: 0; margin: 0; padding: 8px 20px; font-size: 14px; line-height: 1.28571428; background: transparent; color: #2271b1; text-align: left; text-decoration: none; cursor: pointer; } .media-menu .media-menu-item:hover { background: rgba(0, 0, 0, 0.04); } .media-menu .media-menu-item:active { color: #2271b1; outline: none; } .media-menu .active, .media-menu .active:hover { color: #1d2327; font-weight: 600; } .media-menu .media-menu-item:focus { box-shadow: 0 0 0 1px #4f94d4, 0 0 2px 1px rgba(79, 148, 212, 0.8); color: #043959; /* Only visible in Windows High Contrast mode */ outline: 1px solid transparent; } .media-menu .separator { height: 0; margin: 12px 20px; padding: 0; border-top: 1px solid #dcdcde; } /** * Menu */ .media-router { position: relative; padding: 0 6px; margin: 0; clear: both; } .media-router .media-menu-item { position: relative; float: left; border: 0; margin: 0; padding: 8px 10px 9px; height: 18px; line-height: 1.28571428; font-size: 14px; text-decoration: none; background: transparent; cursor: pointer; transition: none; } .media-router .media-menu-item:last-child { border-right: 0; } .media-router .media-menu-item:hover, .media-router .media-menu-item:active { color: #2271b1; } .media-router .active, .media-router .active:hover { color: #1d2327; } .media-router .media-menu-item:focus { box-shadow: 0 0 0 1px #4f94d4, 0 0 2px 1px rgba(79, 148, 212, 0.8); color: #043959; /* Only visible in Windows High Contrast mode */ outline: 1px solid transparent; } .media-router .active, .media-router .media-menu-item.active:last-child { margin: -1px -1px 0; background: #fff; border: 1px solid #dcdcde; border-bottom: none; } .media-router .active:after { display: none; } /** * Frame */ .media-frame { overflow: hidden; position: absolute; top: 0; left: 0; right: 0; bottom: 0; } .media-frame-menu { position: absolute; top: 0; left: 0; bottom: 0; width: 200px; z-index: 150; } .media-frame-title { position: absolute; top: 0; left: 200px; right: 0; height: 50px; z-index: 200; } .media-frame-router { position: absolute; top: 50px; left: 200px; right: 0; height: 36px; z-index: 200; } .media-frame-content { position: absolute; top: 84px; left: 200px; right: 0; bottom: 61px; height: auto; width: auto; margin: 0; overflow: auto; background: #fff; border-top: 1px solid #dcdcde; } .media-frame-toolbar { position: absolute; left: 200px; right: 0; z-index: 100; bottom: 60px; height: auto; } .media-frame.hide-menu .media-frame-title, .media-frame.hide-menu .media-frame-router, .media-frame.hide-menu .media-frame-toolbar, .media-frame.hide-menu .media-frame-content { left: 0; } .media-frame.hide-toolbar .media-frame-content { bottom: 0; } .media-frame.hide-router .media-frame-content { top: 50px; } .media-frame.hide-menu .media-frame-menu, .media-frame.hide-menu .media-frame-menu-heading, .media-frame.hide-router .media-frame-router, .media-frame.hide-toolbar .media-frame-toolbar { display: none; } .media-frame-title h1 { padding: 0 16px; font-size: 22px; line-height: 2.27272727; margin: 0; } .media-frame-menu-heading, .media-attachments-filter-heading { position: absolute; left: 20px; top: 22px; margin: 0; font-size: 13px; line-height: 1; /* Above the media-frame-menu. */ z-index: 151; } .media-attachments-filter-heading { top: 10px; left: 16px; } .mode-grid .media-attachments-filter-heading { top: 0; left: -9999px; } .mode-grid .media-frame-actions-heading { display: none; } .wp-core-ui .button.media-frame-menu-toggle { display: none; } .media-frame-title .suggested-dimensions { font-size: 14px; float: right; margin-right: 20px; } .media-frame-content .crop-content { height: 100%; } .wp-customizer:not(.mobile) .media-frame-content .crop-content.site-icon { margin-right: 300px; } .media-frame-content .crop-content .crop-image { display: block; margin: auto; max-width: 100%; max-height: 100%; } .media-frame-content .crop-content .upload-errors { position: absolute; width: 300px; top: 50%; left: 50%; margin-left: -150px; margin-right: -150px; z-index: 600000; } /** * Iframes */ .media-frame .media-iframe { overflow: hidden; } .media-frame .media-iframe, .media-frame .media-iframe iframe { height: 100%; width: 100%; border: 0; } /** * Attachment Browser Filters */ .media-frame select.attachment-filters { margin-top: 11px; margin-right: 2%; max-width: 42%; max-width: calc(48% - 12px); } .media-frame select.attachment-filters:last-of-type { margin-right: 0; width: auto; max-width: 100%; } /** * Search */ .media-frame .search { margin: 32px 0 0; padding: 4px; font-size: 13px; color: #3c434a; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; -webkit-appearance: none; } .media-toolbar-primary .search { max-width: 100%; } .media-frame .media-search-input-label { position: absolute; left: 0; top: 10px; margin: 0; line-height: 1; } /** * Attachments */ .wp-core-ui .attachments { margin: 0; -webkit-overflow-scrolling: touch; } /** * Attachment */ .wp-core-ui .attachment { position: relative; float: left; padding: 8px; margin: 0; color: #3c434a; cursor: pointer; list-style: none; text-align: center; -webkit-user-select: none; user-select: none; width: 25%; box-sizing: border-box; } .wp-core-ui .attachment:focus, .wp-core-ui .selected.attachment:focus, .wp-core-ui .attachment.details:focus { box-shadow: inset 0 0 2px 3px #fff, inset 0 0 0 7px #4f94d4; /* Only visible in Windows High Contrast mode */ outline: 2px solid transparent; outline-offset: -6px; } .wp-core-ui .selected.attachment { box-shadow: inset 0 0 0 5px #fff, inset 0 0 0 7px #c3c4c7; } .wp-core-ui .attachment.details { box-shadow: inset 0 0 0 3px #fff, inset 0 0 0 7px #2271b1; } .wp-core-ui .attachment-preview { position: relative; box-shadow: inset 0 0 15px rgba(0, 0, 0, 0.1), inset 0 0 0 1px rgba(0, 0, 0, 0.05); background: #f0f0f1; cursor: pointer; } .wp-core-ui .attachment-preview:before { content: ""; display: block; padding-top: 100%; } .wp-core-ui .attachment .icon { margin: 0 auto; overflow: hidden; } .wp-core-ui .attachment .thumbnail { overflow: hidden; position: absolute; top: 0; right: 0; bottom: 0; left: 0; opacity: 1; transition: opacity .1s; } .wp-core-ui .attachment .portrait img { max-width: 100%; } .wp-core-ui .attachment .landscape img { max-height: 100%; } .wp-core-ui .attachment .thumbnail:after { content: ""; display: block; position: absolute; top: 0; left: 0; right: 0; bottom: 0; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1); overflow: hidden; } .wp-core-ui .attachment .thumbnail img { top: 0; left: 0; } .wp-core-ui .attachment .thumbnail .centered { position: absolute; top: 0; left: 0; width: 100%; height: 100%; transform: translate( 50%, 50% ); } .wp-core-ui .attachment .thumbnail .centered img { transform: translate( -50%, -50% ); } .wp-core-ui .attachments-browser .attachment .thumbnail .centered img.icon { transform: translate( -50%, -70% ); } .wp-core-ui .attachment .filename { position: absolute; left: 0; right: 0; bottom: 0; overflow: hidden; max-height: 100%; word-wrap: break-word; text-align: center; font-weight: 600; background: rgba(255, 255, 255, 0.8); box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.15); } .wp-core-ui .attachment .filename div { padding: 5px 10px; } .wp-core-ui .attachment .thumbnail img { position: absolute; } .wp-core-ui .attachment-close { display: block; position: absolute; top: 5px; right: 5px; height: 22px; width: 22px; padding: 0; background-color: #fff; background-position: -96px 4px; border-radius: 3px; box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.3); transition: none; } .wp-core-ui .attachment-close:hover, .wp-core-ui .attachment-close:focus { background-position: -36px 4px; } .wp-core-ui .attachment .check { display: none; height: 24px; width: 24px; padding: 0; border: 0; position: absolute; z-index: 10; top: 0; right: 0; outline: none; background: #f0f0f1; cursor: pointer; box-shadow: 0 0 0 1px #fff, 0 0 0 2px rgba(0, 0, 0, 0.15); } .wp-core-ui .attachment .check .media-modal-icon { display: block; background-position: -1px 0; height: 15px; width: 15px; margin: 5px; } .wp-core-ui .attachment .check:hover .media-modal-icon { background-position: -40px 0; } .wp-core-ui .attachment.selected .check { display: block; } .wp-core-ui .attachment.details .check, .wp-core-ui .attachment.selected .check:focus, .wp-core-ui .media-frame.mode-grid .attachment.selected .check { background-color: #2271b1; box-shadow: 0 0 0 1px #fff, 0 0 0 2px #2271b1; } .wp-core-ui .attachment.selected .check:focus { /* Only visible in Windows High Contrast mode */ outline: 2px solid transparent; } .wp-core-ui .attachment.details .check .media-modal-icon, .wp-core-ui .media-frame.mode-grid .attachment.selected .check .media-modal-icon { background-position: -21px 0; } .wp-core-ui .attachment.details .check:hover .media-modal-icon, .wp-core-ui .attachment.selected .check:focus .media-modal-icon, .wp-core-ui .media-frame.mode-grid .attachment.selected .check:hover .media-modal-icon { background-position: -60px 0; } .wp-core-ui .media-frame .attachment .describe { position: relative; display: block; width: 100%; margin: 0; padding: 0 8px; font-size: 12px; border-radius: 0; } /** * Attachments Browser */ .media-frame .attachments-browser { position: relative; width: 100%; height: 100%; overflow: hidden; } .attachments-browser .media-toolbar { right: 300px; height: 72px; background: #fff; } .attachments-browser.hide-sidebar .media-toolbar { right: 0; } .attachments-browser .media-toolbar-primary > .media-button, .attachments-browser .media-toolbar-primary > .media-button-group, .attachments-browser .media-toolbar-secondary > .media-button, .attachments-browser .media-toolbar-secondary > .media-button-group { margin: 10px 0; } .attachments-browser .attachments { padding: 2px 8px 8px; } .attachments-browser:not(.has-load-more) .attachments, .attachments-browser.has-load-more .attachments-wrapper, .attachments-browser .uploader-inline { position: absolute; top: 72px; left: 0; right: 300px; bottom: 0; overflow: auto; outline: none; } .attachments-browser .uploader-inline.hidden { display: none; } .attachments-browser .media-toolbar-primary { max-width: 33%; } .mode-grid .attachments-browser .media-toolbar-primary { display: flex; align-items: center; } .mode-grid .attachments-browser .media-toolbar-mode-select .media-toolbar-primary { display: none; } .attachments-browser .media-toolbar-secondary { max-width: 66%; } .uploader-inline .close { background-color: transparent; border: 0; cursor: pointer; height: 48px; outline: none; padding: 0; position: absolute; right: 2px; text-align: center; top: 2px; width: 48px; z-index: 1; } .uploader-inline .close:before { font: normal 30px/1 dashicons !important; color: #50575e; display: inline-block; content: "\f335"; font-weight: 300; margin-top: 1px; } .uploader-inline .close:focus { outline: 1px solid #4f94d4; box-shadow: 0 0 3px rgba(34, 113, 177, 0.8); } .attachments-browser.hide-sidebar .attachments, .attachments-browser.hide-sidebar .uploader-inline { right: 0; margin-right: 0; } .attachments-browser .instructions { display: inline-block; margin-top: 16px; line-height: 1.38461538; font-size: 13px; color: #646970; } .attachments-browser .no-media { padding: 2em 0 0 2em; } .more-loaded .attachment:not(.found-media) { background: #dcdcde; } .load-more-wrapper { clear: both; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; padding: 1em 0; } .load-more-wrapper .load-more-count { min-width: 100%; margin: 0 0 1em; text-align: center; } .load-more-wrapper .load-more { margin: 0; } /* Needs high specificity. */ .media-frame .load-more-wrapper .load-more + .spinner { float: none; margin: 0 -30px 0 10px; } /* Reset spinner margin when the button is hidden to avoid horizontal scrollbar. */ .media-frame .load-more-wrapper .load-more.hidden + .spinner { margin: 0; } /* Force a new row within the flex container. */ .load-more-wrapper::after { content: ""; min-width: 100%; order: 1; } .load-more-wrapper .load-more-jump { margin: 0 0 0 12px; } .attachment.new-media { outline: 2px dotted #c3c4c7; } .load-more-wrapper { clear: both; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; padding: 1em 0; } .load-more-wrapper .load-more-count { min-width: 100%; margin: 0 0 1em; text-align: center; } .load-more-wrapper .load-more { margin: 0; } /* Needs high specificity. */ .media-frame .load-more-wrapper .load-more + .spinner { float: none; margin: 0 -30px 0 10px; } /* Reset spinner margin when the button is hidden to avoid horizontal scrollbar. */ .media-frame .load-more-wrapper .load-more.hidden + .spinner { margin: 0; } /* Force a new row within the flex container. */ .load-more-wrapper::after { content: ""; min-width: 100%; order: 1; } .load-more-wrapper .load-more-jump { margin: 0 0 0 12px; } /** * Progress Bar */ .media-progress-bar { position: relative; height: 10px; width: 70%; margin: 10px auto; border-radius: 10px; background: #dcdcde; background: rgba(0, 0, 0, 0.1); } .media-progress-bar div { height: 10px; min-width: 20px; width: 0; background: #2271b1; border-radius: 10px; transition: width 300ms; } .media-uploader-status .media-progress-bar { display: none; width: 100%; } .uploading.media-uploader-status .media-progress-bar { display: block; } .attachment-preview .media-progress-bar { position: absolute; top: 50%; left: 15%; width: 70%; margin: -5px 0 0; } .media-uploader-status { position: relative; margin: 0 auto; padding-bottom: 10px; max-width: 400px; } .uploader-inline .media-uploader-status h2 { display: none; } .media-uploader-status .upload-details { display: none; font-size: 12px; color: #646970; } .uploading.media-uploader-status .upload-details { display: block; } .media-uploader-status .upload-detail-separator { padding: 0 4px; } .media-uploader-status .upload-count { color: #3c434a; } .media-uploader-status .upload-dismiss-errors, .media-uploader-status .upload-errors { display: none; } .errors.media-uploader-status .upload-dismiss-errors, .errors.media-uploader-status .upload-errors { display: block; } .media-uploader-status .upload-dismiss-errors { transition: none; text-decoration: none; } .upload-errors .upload-error { padding: 12px; margin-bottom: 12px; background: #fff; border-left: 4px solid #d63638; box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1); } .uploader-inline .upload-errors .upload-error { padding: 12px 30px; background-color: #fcf0f1; box-shadow: none; } .upload-errors .upload-error-filename { font-weight: 600; } .upload-errors .upload-error-message { display: block; padding-top: 8px; word-wrap: break-word; } /** * Window and Editor uploaders used to display "drop zones" */ .uploader-window, .wp-editor-wrap .uploader-editor { top: 0; left: 0; right: 0; bottom: 0; text-align: center; display: none; } .uploader-window { position: fixed; z-index: 250000; opacity: 0; /* Only the inline uploader is animated with JS, the editor one isn't */ transition: opacity 250ms; } .wp-editor-wrap .uploader-editor { position: absolute; z-index: 99998; /* under the toolbar */ background: rgba(140, 143, 148, 0.9); } .uploader-window, .wp-editor-wrap .uploader-editor.droppable { background: rgba(10, 75, 120, 0.9); } .uploader-window-content, .wp-editor-wrap .uploader-editor-content { position: absolute; top: 10px; left: 10px; right: 10px; bottom: 10px; border: 1px dashed #fff; } /* uploader drop-zone title */ .uploader-window h1, /* Back-compat for pre-5.3 */ .uploader-window .uploader-editor-title, .wp-editor-wrap .uploader-editor .uploader-editor-title { position: absolute; top: 50%; left: 0; right: 0; transform: translateY(-50%); font-size: 3em; line-height: 1.3; font-weight: 600; color: #fff; margin: 0; padding: 0 10px; } .wp-editor-wrap .uploader-editor .uploader-editor-title { display: none; } .wp-editor-wrap .uploader-editor.droppable .uploader-editor-title { display: block; } .uploader-window .media-progress-bar { margin-top: 20px; max-width: 300px; background: transparent; border-color: #fff; display: none; } .uploader-window .media-progress-bar div { background: #fff; } .uploading .uploader-window .media-progress-bar { display: block; } .media-frame .uploader-inline { margin-bottom: 20px; padding: 0; text-align: center; } .uploader-inline-content { position: absolute; top: 30%; left: 0; right: 0; } .uploader-inline-content .upload-ui { margin: 2em 0; } .uploader-inline-content .post-upload-ui { margin-bottom: 2em; } .uploader-inline .has-upload-message .upload-ui { margin: 0 0 4em; } .uploader-inline h2 { font-size: 20px; line-height: 1.4; font-weight: 400; margin: 0; } .uploader-inline .has-upload-message .upload-instructions { font-size: 14px; color: #3c434a; font-weight: 400; } .uploader-inline .drop-instructions { display: none; } .supports-drag-drop .uploader-inline .drop-instructions { display: block; } .uploader-inline p { margin: 0.5em 0; } .uploader-inline .media-progress-bar { display: none; } .uploading.uploader-inline .media-progress-bar { display: block; } .uploader-inline .browser { display: inline-block !important; } /** * Selection */ .media-selection { position: absolute; top: 0; left: 0; right: 350px; height: 60px; padding: 0 0 0 16px; overflow: hidden; white-space: nowrap; } .media-selection .selection-info { display: inline-block; font-size: 12px; height: 60px; margin-right: 10px; vertical-align: top; } .media-selection.empty, .media-selection.editing { display: none; } .media-selection.one .edit-selection { display: none; } .media-selection .count { display: block; padding-top: 12px; font-size: 14px; line-height: 1.42857142; font-weight: 600; } .media-selection .button-link { float: left; padding: 1px 8px; margin: 1px 8px 1px -8px; line-height: 1.4; border-right: 1px solid #dcdcde; color: #2271b1; text-decoration: none; } .media-selection .button-link:hover, .media-selection .button-link:focus { color: #135e96; } .media-selection .button-link:last-child { border-right: 0; margin-right: 0; } .selection-info .clear-selection { color: #d63638; } .selection-info .clear-selection:hover, .selection-info .clear-selection:focus { color: #d63638; } .media-selection .selection-view { display: inline-block; vertical-align: top; } .media-selection .attachments { display: inline-block; height: 48px; margin: 6px; padding: 0; overflow: hidden; vertical-align: top; } .media-selection .attachment { width: 40px; padding: 0; margin: 4px; } .media-selection .attachment .thumbnail { top: 0; right: 0; bottom: 0; left: 0; } .media-selection .attachment .icon { width: 50%; } .media-selection .attachment-preview { box-shadow: none; background: none; } .wp-core-ui .media-selection .attachment:focus, .wp-core-ui .media-selection .selected.attachment:focus, .wp-core-ui .media-selection .attachment.details:focus { box-shadow: 0 0 0 1px #fff, 0 0 2px 3px #4f94d4; /* Only visible in Windows High Contrast mode */ outline: 2px solid transparent; } .wp-core-ui .media-selection .selected.attachment { box-shadow: none; } .wp-core-ui .media-selection .attachment.details { box-shadow: 0 0 0 1px #fff, 0 0 0 3px #2271b1; } .media-selection:after { content: ""; display: block; position: absolute; top: 0; right: 0; bottom: 0; width: 25px; background-image: linear-gradient(to left,#fff,rgba(255, 255, 255, 0)); } .media-selection .attachment .filename { display: none; } /** * Spinner */ .media-frame .spinner { background: url(../images/spinner.gif) no-repeat; background-size: 20px 20px; float: right; display: inline-block; visibility: hidden; opacity: 0.7; filter: alpha(opacity=70); width: 20px; height: 20px; margin: 0; vertical-align: middle; } .media-frame.mode-grid .spinner { margin: 0; float: none; vertical-align: middle; } .media-modal .media-toolbar .spinner { float: none; vertical-align: bottom; margin: 0 0 5px 5px; } .media-frame .instructions + .spinner.is-active { vertical-align: middle; } .media-frame .spinner.is-active { visibility: visible; } /** * Attachment Details */ .attachment-details { position: relative; overflow: auto; } .attachment-details .settings-save-status { float: right; text-transform: none; font-weight: 400; } .attachment-details .settings-save-status .spinner { float: none; margin-left: 5px; } .attachment-details .settings-save-status .saved { display: none; } .attachment-details.save-waiting .settings-save-status .spinner { visibility: visible; } .attachment-details.save-complete .settings-save-status .saved { display: inline-block; } .attachment-info { overflow: hidden; min-height: 60px; margin-bottom: 16px; line-height: 1.5; color: #646970; border-bottom: 1px solid #dcdcde; padding-bottom: 11px; } .attachment-info .wp-media-wrapper { margin-bottom: 8px; } .attachment-info .wp-media-wrapper.wp-audio { margin-top: 13px; } .attachment-info .filename { font-weight: 600; color: #3c434a; word-wrap: break-word; } .attachment-info .thumbnail { position: relative; float: left; max-width: 120px; max-height: 120px; margin-top: 5px; margin-right: 10px; margin-bottom: 5px; } .uploading .attachment-info .thumbnail { width: 120px; height: 80px; box-shadow: inset 0 0 15px rgba(0, 0, 0, 0.1); } .uploading .attachment-info .media-progress-bar { margin-top: 35px; } .attachment-info .thumbnail-image:after { content: ""; display: block; position: absolute; top: 0; left: 0; right: 0; bottom: 0; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.15); overflow: hidden; } .attachment-info .thumbnail img { display: block; max-width: 120px; max-height: 120px; margin: 0 auto; } .attachment-info .details { float: left; font-size: 12px; max-width: 100%; } .attachment-info .edit-attachment, .attachment-info .delete-attachment, .attachment-info .trash-attachment, .attachment-info .untrash-attachment { display: block; text-decoration: none; white-space: nowrap; } .attachment-details.needs-refresh .attachment-info .edit-attachment { display: none; } .attachment-info .edit-attachment { display: block; } .media-modal .delete-attachment, .media-modal .trash-attachment, .media-modal .untrash-attachment { display: inline; padding: 0; color: #d63638; } .media-modal .delete-attachment:hover, .media-modal .delete-attachment:focus, .media-modal .trash-attachment:hover, .media-modal .trash-attachment:focus, .media-modal .untrash-attachment:hover, .media-modal .untrash-attachment:focus { color: #d63638; } /** * Attachment Display Settings */ .attachment-display-settings { width: 100%; float: left; overflow: hidden; } .collection-settings { overflow: hidden; } .collection-settings .setting input[type="checkbox"] { float: left; margin-right: 8px; } .collection-settings .setting span, /* Back-compat for pre-5.3 */ .collection-settings .setting .name { min-width: inherit; } /** * Image Editor */ .media-modal .imgedit-wrap { position: static; } .media-modal .imgedit-wrap .imgedit-panel-content { padding: 16px 16px 0; position: absolute; top: 0; right: 282px; bottom: 0; left: 0; overflow: auto; } /* * Implementation of bottom padding in overflow content differs across browsers. * We need a different method. See https://github.com/w3c/csswg-drafts/issues/129 */ .media-modal .imgedit-wrap .imgedit-submit { margin-bottom: 16px; } .media-modal .imgedit-wrap .imgedit-settings { background: #f6f7f7; border-left: 1px solid #dcdcde; padding: 20px 16px 0; position: absolute; top: 0; right: 0; bottom: 0; width: 250px; overflow: auto; } /* * Implementation of bottom padding in overflow content differs across browsers. * We need a different method. See https://github.com/w3c/csswg-drafts/issues/129 */ .media-modal .imgedit-wrap .imgedit-save-target { margin: 8px 0 24px; } .media-modal .imgedit-group { background: none; border: none; border-bottom: 1px solid #dcdcde; box-shadow: none; margin: 0; margin-bottom: 16px; padding: 0; padding-bottom: 16px; position: relative; /* RTL fix, #WP29352 */ } .media-modal .imgedit-group:last-of-type { border: none; margin: 0; padding: 0; } .media-modal .imgedit-group-top { margin: 0; } .media-modal .imgedit-group-top h2, .media-modal .imgedit-group-top h2 .button-link { display: inline-block; text-transform: uppercase; font-size: 12px; color: #646970; margin: 0; margin-top: 3px; } .media-modal .imgedit-group-top h2 a, .media-modal .imgedit-group-top h2 .button-link { text-decoration: none; color: #646970; } /* higher specificity than media.css */ .wp-core-ui.media-modal .image-editor .imgedit-help-toggle, .wp-core-ui.media-modal .image-editor .imgedit-help-toggle:hover, .wp-core-ui.media-modal .image-editor .imgedit-help-toggle:active { border: 1px solid transparent; margin: 0; padding: 0; background: transparent; color: #2271b1; font-size: 20px; line-height: 1; cursor: pointer; box-sizing: content-box; box-shadow: none; } .wp-core-ui.media-modal .image-editor .imgedit-help-toggle:focus { color: #2271b1; border-color: #4f94d4; box-shadow: 0 0 3px rgba(34, 113, 177, 0.8); /* Only visible in Windows High Contrast mode */ outline: 2px solid transparent; } .wp-core-ui.media-modal .imgedit-group-top .dashicons-arrow-down.imgedit-help-toggle { margin-top: -3px; } .wp-core-ui.media-modal .image-editor h3 .imgedit-help-toggle { margin-top: -2px; } .media-modal .imgedit-help-toggled span.dashicons:before { content: "\f142"; } .media-modal .imgedit-thumbnail-preview { margin: 10px 8px 0 0; } .imgedit-thumbnail-preview-caption { display: block; } .media-modal .imgedit-wrap div.updated, /* Back-compat for pre-5.5 */ .media-modal .imgedit-wrap .notice { margin: 0; margin-bottom: 16px; } /** * Embed from URL and Image Details */ .embed-url { display: block; position: relative; padding: 16px; margin: 0; z-index: 250; background: #fff; font-size: 18px; } .media-frame .embed-url input { font-size: 18px; line-height: 1.22222222; /* 22px */ padding: 12px 40px 12px 14px; /* right padding to leave room for the spinner */ width: 100%; min-width: 200px; box-shadow: inset 2px 2px 4px -2px rgba(0, 0, 0, 0.1); } .media-frame .embed-url input::-ms-clear { display: none; /* the "x" in IE 11 conflicts with the spinner */ } .media-frame .embed-url .spinner { position: absolute; top: 32px; right: 26px; } .media-frame .embed-loading .embed-url .spinner { visibility: visible; } .embed-link-settings, .embed-media-settings { position: absolute; top: 82px; left: 0; right: 0; bottom: 0; padding: 0 16px; overflow: auto; } .media-embed .embed-link-settings .link-text { margin-top: 0; } /* * Implementation of bottom padding in overflow content differs across browsers. * We need a different method. See https://github.com/w3c/csswg-drafts/issues/129 */ .embed-link-settings::after, .embed-media-settings::after { content: ""; display: flex; clear: both; height: 24px; } .media-embed .embed-link-settings { /* avoid Firefox to give focus to the embed preview container parent */ overflow: visible; } .embed-preview img, .embed-preview iframe, .embed-preview embed, .mejs-container video { max-width: 100%; vertical-align: middle; } .embed-preview a { display: inline-block; } .embed-preview img { display: block; height: auto; } .mejs-container:focus { outline: 1px solid #4f94d4; box-shadow: 0 0 2px 1px rgba(79, 148, 212, 0.8); } .image-details .media-modal { left: 140px; right: 140px; } .image-details .media-frame-title, .image-details .media-frame-content, .image-details .media-frame-router { left: 0; } .image-details .embed-media-settings { top: 0; overflow: visible; padding: 0; } .image-details .embed-media-settings::after { content: none; } .image-details .embed-media-settings, .image-details .embed-media-settings div { box-sizing: border-box; } .image-details .column-settings { background: #f6f7f7; border-right: 1px solid #dcdcde; min-height: 100%; width: 55%; position: absolute; top: 0; left: 0; } .image-details .column-settings h2 { margin: 20px; padding-top: 20px; border-top: 1px solid #dcdcde; color: #1d2327; } .image-details .column-image { width: 45%; position: absolute; left: 55%; top: 0; } .image-details .image { margin: 20px; } .image-details .image img { max-width: 100%; max-height: 500px; } .image-details .advanced-toggle { padding: 0; color: #646970; text-transform: uppercase; text-decoration: none; } .image-details .advanced-toggle:hover, .image-details .advanced-toggle:active { color: #646970; } .image-details .advanced-toggle:after { font: normal 20px/1 dashicons; speak: never; vertical-align: top; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; content: "\f140"; display: inline-block; margin-top: -2px; } .image-details .advanced-visible .advanced-toggle:after { content: "\f142"; } .image-details .custom-size label, /* Back-compat for pre-5.3 */ .image-details .custom-size .custom-size-setting { display: block; float: left; } .image-details .custom-size .custom-size-setting label { float: none; } .image-details .custom-size input { width: 5em; } .image-details .custom-size .sep { float: left; margin: 26px 6px 0; } .image-details .custom-size .description { margin-left: 0; } .media-embed .thumbnail { max-width: 100%; max-height: 200px; position: relative; float: left; } .media-embed .thumbnail img { max-height: 200px; display: block; } .media-embed .thumbnail:after { content: ""; display: block; position: absolute; top: 0; left: 0; right: 0; bottom: 0; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1); overflow: hidden; } .media-embed .setting, .media-embed .setting-group { width: 100%; margin: 10px 0; float: left; display: block; clear: both; } .media-embed .setting-group .setting:not(.checkbox-setting) { margin: 0; } .media-embed .setting.has-description { margin-bottom: 5px; } .media-embed .description { clear: both; font-style: normal; } .media-embed .content-track + .description { line-height: 1.4; /* The !important needs to override a high specificity selector from wp-medialement.css */ max-width: none !important; } .media-embed .remove-track { margin-bottom: 10px; } .image-details .embed-media-settings .setting, .image-details .embed-media-settings .setting-group { float: none; width: auto; } .image-details .actions { margin: 10px 0; } .image-details .hidden { display: none; } .media-embed .setting input[type="text"], .media-embed .setting textarea, .media-embed fieldset { display: block; width: 100%; max-width: 400px; } .image-details .embed-media-settings .setting input[type="text"], .image-details .embed-media-settings .setting textarea { max-width: inherit; width: 70%; } .image-details .embed-media-settings .setting input.link-to-custom, .image-details .embed-media-settings .link-target, .image-details .embed-media-settings .custom-size, .image-details .embed-media-settings .setting-group, .image-details .description { margin-left: 27%; width: 70%; } .image-details .description { font-style: normal; margin-top: 0; } .image-details .embed-media-settings .link-target { margin-top: 16px; } .image-details .checkbox-label, .audio-details .checkbox-label, .video-details .checkbox-label { vertical-align: baseline; } .media-embed .setting input.hidden, .media-embed .setting textarea.hidden { display: none; } .media-embed .setting span, /* Back-compat for pre-5.3 */ .media-embed .setting .name, .media-embed .setting-group .name { display: inline-block; font-size: 13px; line-height: 1.84615384; color: #646970; } .media-embed .setting span { display: block; /* Back-compat for pre-5.3 */ width: 200px; /* Back-compat for pre-5.3 */ } .image-details .embed-media-settings .setting span, /* Back-compat for pre-5.3 */ .image-details .embed-media-settings .setting .name { float: left; width: 25%; text-align: right; margin: 8px 1% 0; line-height: 1.1; } /* Buttons group in IE 11. */ .media-frame .setting-group .button-group, .image-details .embed-media-settings .setting .button-group { width: auto; } .media-embed-sidebar { position: absolute; top: 0; left: 440px; } .advanced-section, .link-settings { margin-top: 10px; } /** * Button groups fix: can be removed together with the Back-compat for pre-5.3 */ .media-frame .setting .button-group { display: flex; margin: 0 !important; max-width: none !important; } /** * Localization */ .rtl .media-modal, .rtl .media-frame, .rtl .media-frame .search, .rtl .media-frame input[type="text"], .rtl .media-frame input[type="password"], .rtl .media-frame input[type="number"], .rtl .media-frame input[type="search"], .rtl .media-frame input[type="email"], .rtl .media-frame input[type="url"], .rtl .media-frame input[type="tel"], .rtl .media-frame textarea, .rtl .media-frame select { font-family: Tahoma, sans-serif; } :lang(he-il) .rtl .media-modal, :lang(he-il) .rtl .media-frame, :lang(he-il) .rtl .media-frame .search, :lang(he-il) .rtl .media-frame input[type="text"], :lang(he-il) .rtl .media-frame input[type="password"], :lang(he-il) .rtl .media-frame input[type="number"], :lang(he-il) .rtl .media-frame input[type="search"], :lang(he-il) .rtl .media-frame input[type="email"], :lang(he-il) .rtl .media-frame input[type="url"], :lang(he-il) .rtl .media-frame textarea, :lang(he-il) .rtl .media-frame select { font-family: Arial, sans-serif; } /** * Responsive layout */ @media only screen and (max-width: 900px) { .media-modal .media-frame-title { height: 40px; } .media-modal .media-frame-title h1 { line-height: 2.22222222; font-size: 18px; } .media-modal-close { width: 42px; height: 42px; } /* Drop-down menu */ .media-frame .media-frame-title { position: static; padding: 0 44px; text-align: center; } .media-frame:not(.hide-menu) .media-frame-router, .media-frame:not(.hide-menu) .media-frame-content, .media-frame:not(.hide-menu) .media-frame-toolbar { left: 0; } .media-frame:not(.hide-menu) .media-frame-router { /* 40 title + (40 - 6) menu toggle button + 6 spacing */ top: 80px; } .media-frame:not(.hide-menu) .media-frame-content { /* 80 + room for the tabs */ top: 114px; } .media-frame.hide-router .media-frame-content { top: 80px; } .media-frame:not(.hide-menu) .media-frame-menu { position: static; width: 0; } .media-frame:not(.hide-menu) .media-menu { display: none; width: auto; max-width: 80%; overflow: auto; z-index: 2000; top: 75px; left: 50%; transform: translateX(-50%); right: auto; bottom: auto; padding: 5px 0; border: 1px solid #c3c4c7; } .media-frame:not(.hide-menu) .media-menu.visible { display: block; } .media-frame:not(.hide-menu) .media-menu > a { padding: 12px 16px; font-size: 16px; } .media-frame:not(.hide-menu) .media-menu .separator { margin: 5px 10px; } /* Visually hide the menu heading keeping it available to assistive technologies. */ .media-frame-menu-heading { clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; overflow: hidden; padding: 0; width: 1px; word-wrap: normal !important; } /* Reveal the menu toggle button. */ .wp-core-ui .media-frame:not(.hide-menu) .button.media-frame-menu-toggle { display: inline-flex; align-items: center; position: absolute; left: 50%; transform: translateX(-50%); margin: -6px 0 0; padding: 0 2px 0 12px; font-size: 0.875rem; font-weight: 600; text-decoration: none; background: transparent; /* Only for IE11 to vertically align text within the inline-flex button */ height: 0.1%; /* Modern browsers */ min-height: 40px; } .wp-core-ui .button.media-frame-menu-toggle:hover, .wp-core-ui .button.media-frame-menu-toggle:active { background: transparent; transform: none; } .wp-core-ui .button.media-frame-menu-toggle:focus { /* Only visible in Windows High Contrast mode */ outline: 1px solid transparent; } /* End drop-down menu */ .media-sidebar { width: 230px; } .attachments-browser .attachments, .attachments-browser .uploader-inline, .attachments-browser .media-toolbar, .attachments-browser .attachments-wrapper, .attachments-browser.has-load-more .attachments-wrapper { right: 262px; } .media-sidebar .setting, .attachment-details .setting { margin: 6px 0; } .media-sidebar .setting input, .media-sidebar .setting textarea, .media-sidebar .setting .name, .attachment-details .setting input, .attachment-details .setting textarea, .attachment-details .setting .name, .compat-item label span { float: none; display: inline-block; } .media-sidebar .setting span, /* Back-compat for pre-5.3 */ .attachment-details .setting span, /* Back-compat for pre-5.3 */ .media-sidebar .checkbox-label-inline { float: none; } .media-sidebar .setting .select-label-inline { display: inline; } .media-sidebar .setting .name, .media-sidebar .checkbox-label-inline, .attachment-details .setting .name, .compat-item label span { text-align: inherit; min-height: 16px; margin: 0; padding: 8px 2px 2px; } /* Needs high specificity. */ .media-sidebar .setting .copy-to-clipboard-container, .attachment-details .attachment-info .copy-to-clipboard-container { margin-left: 0; padding-top: 0; } .media-sidebar .setting .copy-attachment-url, .attachment-details .attachment-info .copy-attachment-url { margin: 0 1px; } .media-sidebar .setting .value, .attachment-details .setting .value { float: none; width: auto; } .media-sidebar .setting input[type="text"], .media-sidebar .setting input[type="password"], .media-sidebar .setting input[type="email"], .media-sidebar .setting input[type="number"], .media-sidebar .setting input[type="search"], .media-sidebar .setting input[type="tel"], .media-sidebar .setting input[type="url"], .media-sidebar .setting textarea, .media-sidebar .setting select, .attachment-details .setting input[type="text"], .attachment-details .setting input[type="password"], .attachment-details .setting input[type="email"], .attachment-details .setting input[type="number"], .attachment-details .setting input[type="search"], .attachment-details .setting input[type="tel"], .attachment-details .setting input[type="url"], .attachment-details .setting textarea, .attachment-details .setting select, .attachment-details .setting + .description { float: none; width: 98%; max-width: none; height: auto; } .media-frame .media-toolbar input[type="search"] { line-height: 2.25; /* 36px */ } .media-sidebar .setting select.columns, .attachment-details .setting select.columns { width: auto; } .media-frame input, .media-frame textarea, .media-frame .search { padding: 3px 6px; } .wp-admin .media-frame select { min-height: 40px; font-size: 16px; line-height: 1.625; padding: 5px 24px 5px 8px; } .image-details .column-image { width: 30%; left: 70%; } .image-details .column-settings { width: 70%; } .image-details .media-modal { left: 30px; right: 30px; } .image-details .embed-media-settings .setting, .image-details .embed-media-settings .setting-group { margin: 20px; } .image-details .embed-media-settings .setting span, /* Back-compat for pre-5.3 */ .image-details .embed-media-settings .setting .name { float: none; text-align: left; width: 100%; margin-bottom: 4px; margin-left: 0; } .media-modal .legend-inline { position: static; transform: none; margin-left: 0; margin-bottom: 6px; } .image-details .embed-media-settings .setting-group .setting { margin-bottom: 0; } .image-details .embed-media-settings .setting input.link-to-custom, .image-details .embed-media-settings .setting input[type="text"], .image-details .embed-media-settings .setting textarea { width: 100%; margin-left: 0; } .image-details .embed-media-settings .setting.has-description { margin-bottom: 5px; } .image-details .description { width: auto; margin: 0 20px; } .image-details .embed-media-settings .custom-size { margin-left: 20px; } .collection-settings .setting input[type="checkbox"] { float: none; margin-top: 0; } .media-selection { min-width: 120px; } .media-selection:after { background: none; } .media-selection .attachments { display: none; } .media-modal .attachments-browser .media-toolbar .search { max-width: 100%; height: auto; float: right; } .media-modal .attachments-browser .media-toolbar .attachment-filters { height: auto; } /* Text inputs need to be 16px, or they force zooming on iOS */ .media-frame input[type="text"], .media-frame input[type="password"], .media-frame input[type="number"], .media-frame input[type="search"], .media-frame input[type="email"], .media-frame input[type="url"], .media-frame textarea, .media-frame select { font-size: 16px; } .media-frame .media-toolbar input[type="search"] { line-height: 2.3755; /* 38px */ } .media-modal .media-toolbar .spinner { margin-bottom: 10px; } } @media screen and (max-width: 782px) { .attachments-browser .media-toolbar { height: 82px; } .attachments-browser .attachments, .attachments-browser .uploader-inline { top: 82px; } .media-frame-toolbar .media-toolbar { bottom: -54px; } .mode-grid .attachments-browser .media-toolbar-primary { display: block; } .media-sidebar .copy-to-clipboard-container .success, .attachment-details .copy-to-clipboard-container .success { font-size: 14px; line-height: 2.71428571; } } /* Responsive on portrait and landscape */ @media only screen and (max-width: 640px), screen and (max-height: 400px) { /* Full-bleed modal */ .media-modal, .image-details .media-modal { position: fixed; top: 0; left: 0; right: 0; bottom: 0; } .media-modal-backdrop { position: fixed; } .media-sidebar { z-index: 1900; max-width: 70%; bottom: 120%; box-sizing: border-box; padding-bottom: 0; } .media-sidebar.visible { bottom: 0; } .attachments-browser .attachments, .attachments-browser .uploader-inline, .attachments-browser .media-toolbar, .media-frame-content .attachments-browser .attachments-wrapper { right: 0; } .attachments-browser .attachments-wrapper { padding-top: 12px; } .image-details .media-frame-title { display: block; top: 0; font-size: 14px; } .image-details .column-image, .image-details .column-settings { width: 100%; position: relative; left: 0; } .image-details .column-settings { padding: 4px 0; } /* Media tabs on the top */ .media-frame-content .media-toolbar .instructions { display: none; } /* Change margin direction on load more button in responsive views. */ .load-more-wrapper .load-more-jump { margin: 12px 0 0; } } @media only screen and (min-width: 901px) and (max-height: 400px) { .media-menu, .media-frame:not(.hide-menu) .media-menu { top: 0; padding-top: 44px; } /* Change margin direction on load more button in responsive views. */ .load-more-wrapper .load-more-jump { margin: 12px 0 0; } } @media only screen and (max-width: 480px) { .wp-core-ui.wp-customizer .media-button { margin-top: 13px; } } /** * HiDPI Displays */ @media print, (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) { .wp-core-ui .media-modal-icon { background-image: url(../images/uploader-icons-2x.png); background-size: 134px 15px; } .media-frame .spinner { background-image: url(../images/spinner-2x.gif); } } .media-frame-content[data-columns="1"] .attachment { width: 100%; } .media-frame-content[data-columns="2"] .attachment { width: 50%; } .media-frame-content[data-columns="3"] .attachment { width: 33.33%; } .media-frame-content[data-columns="4"] .attachment { width: 25%; } .media-frame-content[data-columns="5"] .attachment { width: 20%; } .media-frame-content[data-columns="6"] .attachment { width: 16.66%; } .media-frame-content[data-columns="7"] .attachment { width: 14.28%; } .media-frame-content[data-columns="8"] .attachment { width: 12.5%; } .media-frame-content[data-columns="9"] .attachment { width: 11.11%; } .media-frame-content[data-columns="10"] .attachment { width: 10%; } .media-frame-content[data-columns="11"] .attachment { width: 9.09%; } .media-frame-content[data-columns="12"] .attachment { width: 8.33%; } PKj l\@%%css/buttons-rtl.cssnu[/*! This file is auto-generated */ /* ---------------------------------------------------------------------------- NOTE: If you edit this file, you should make sure that the CSS rules for buttons in the following files are updated. * jquery-ui-dialog.css * editor.css WordPress-style Buttons ======================= Create a button by adding the `.button` class to an element. For backward compatibility, we support several other classes (such as `.button-secondary`), but these will *not* work with the stackable classes described below. Button Styles ------------- To display a primary button style, add the `.button-primary` class to a button. Button Sizes ------------ Adjust a button's size by adding the `.button-large` or `.button-small` class. Button States ------------- Lock the state of a button by adding the name of the pseudoclass as an actual class (e.g. `.hover` for `:hover`). TABLE OF CONTENTS: ------------------ 1.0 - Button Layouts 2.0 - Default Button Style 3.0 - Primary Button Style 4.0 - Button Groups 5.0 - Responsive Button Styles ---------------------------------------------------------------------------- */ /* ---------------------------------------------------------------------------- 1.0 - Button Layouts ---------------------------------------------------------------------------- */ .wp-core-ui .button, .wp-core-ui .button-primary, .wp-core-ui .button-secondary { display: inline-block; text-decoration: none; font-size: 13px; line-height: 2.15384615; /* 28px */ min-height: 30px; margin: 0; padding: 0 10px; cursor: pointer; border-width: 1px; border-style: solid; -webkit-appearance: none; border-radius: 3px; white-space: nowrap; box-sizing: border-box; } /* Remove the dotted border on :focus and the extra padding in Firefox */ .wp-core-ui button::-moz-focus-inner, .wp-core-ui input[type="reset"]::-moz-focus-inner, .wp-core-ui input[type="button"]::-moz-focus-inner, .wp-core-ui input[type="submit"]::-moz-focus-inner { border-width: 0; border-style: none; padding: 0; } .wp-core-ui .button.button-large, .wp-core-ui .button-group.button-large .button { min-height: 32px; line-height: 2.30769231; /* 30px */ padding: 0 12px; } .wp-core-ui .button.button-small, .wp-core-ui .button-group.button-small .button { min-height: 26px; line-height: 2.18181818; /* 24px */ padding: 0 8px; font-size: 11px; } .wp-core-ui .button.button-hero, .wp-core-ui .button-group.button-hero .button { font-size: 14px; min-height: 46px; line-height: 3.14285714; padding: 0 36px; } .wp-core-ui .button.hidden { display: none; } /* Style Reset buttons as simple text links */ .wp-core-ui input[type="reset"], .wp-core-ui input[type="reset"]:hover, .wp-core-ui input[type="reset"]:active, .wp-core-ui input[type="reset"]:focus { background: none; border: none; box-shadow: none; padding: 0 2px 1px; width: auto; } /* ---------------------------------------------------------------------------- 2.0 - Default Button Style ---------------------------------------------------------------------------- */ .wp-core-ui .button, .wp-core-ui .button-secondary { color: #2271b1; border-color: #2271b1; background: #f6f7f7; vertical-align: top; } .wp-core-ui p .button { vertical-align: baseline; } .wp-core-ui .button.hover, .wp-core-ui .button:hover, .wp-core-ui .button-secondary:hover{ background: #f0f0f1; border-color: #0a4b78; color: #0a4b78; } .wp-core-ui .button.focus, .wp-core-ui .button:focus, .wp-core-ui .button-secondary:focus { background: #f6f7f7; border-color: #3582c4; color: #0a4b78; box-shadow: 0 0 0 1px #3582c4; /* Only visible in Windows High Contrast mode */ outline: 2px solid transparent; /* Reset inherited offset from Gutenberg */ outline-offset: 0; } /* :active state */ .wp-core-ui .button:active, .wp-core-ui .button-secondary:active { background: #f6f7f7; border-color: #8c8f94; box-shadow: none; } /* pressed state e.g. a selected setting */ .wp-core-ui .button.active, .wp-core-ui .button.active:hover { background-color: #dcdcde; color: #135e96; border-color: #0a4b78; box-shadow: inset 0 2px 5px -3px #0a4b78; } .wp-core-ui .button.active:focus { border-color: #3582c4; box-shadow: inset 0 2px 5px -3px #0a4b78, 0 0 0 1px #3582c4; } .wp-core-ui .button[disabled], .wp-core-ui .button:disabled, .wp-core-ui .button.disabled, .wp-core-ui .button-secondary[disabled], .wp-core-ui .button-secondary:disabled, .wp-core-ui .button-secondary.disabled, .wp-core-ui .button-disabled { color: #a7aaad !important; border-color: #dcdcde !important; background: #f6f7f7 !important; box-shadow: none !important; cursor: default; transform: none !important; } /* Buttons that look like links, for a cross of good semantics with the visual */ .wp-core-ui .button-link { margin: 0; padding: 0; box-shadow: none; border: 0; border-radius: 0; background: none; cursor: pointer; text-align: right; /* Mimics the default link style in common.css */ color: #2271b1; text-decoration: underline; transition-property: border, background, color; transition-duration: .05s; transition-timing-function: ease-in-out; } .wp-core-ui .button-link:hover, .wp-core-ui .button-link:active { color: #135e96; } .wp-core-ui .button-link:focus { color: #043959; box-shadow: 0 0 0 1px #4f94d4, 0 0 2px 1px rgba(79, 148, 212, 0.8); /* Only visible in Windows High Contrast mode */ outline: 1px solid transparent; } .wp-core-ui .button-link-delete { color: #d63638; } .wp-core-ui .button-link-delete:hover, .wp-core-ui .button-link-delete:focus { color: #d63638; background: transparent; } .wp-core-ui .button-link-delete:disabled { /* overrides the default buttons disabled background */ background: transparent !important; } /* ---------------------------------------------------------------------------- 3.0 - Primary Button Style ---------------------------------------------------------------------------- */ .wp-core-ui .button-primary { background: #2271b1; border-color: #2271b1; color: #fff; text-decoration: none; text-shadow: none; } .wp-core-ui .button-primary.hover, .wp-core-ui .button-primary:hover, .wp-core-ui .button-primary.focus, .wp-core-ui .button-primary:focus { background: #135e96; border-color: #135e96; color: #fff; } .wp-core-ui .button-primary.focus, .wp-core-ui .button-primary:focus { box-shadow: 0 0 0 1px #fff, 0 0 0 3px #2271b1; } .wp-core-ui .button-primary.active, .wp-core-ui .button-primary.active:hover, .wp-core-ui .button-primary.active:focus, .wp-core-ui .button-primary:active { background: #135e96; border-color: #135e96; box-shadow: none; color: #fff; } .wp-core-ui .button-primary[disabled], .wp-core-ui .button-primary:disabled, .wp-core-ui .button-primary-disabled, .wp-core-ui .button-primary.disabled { color: #a7aaad !important; background: #f6f7f7 !important; border-color: #dcdcde !important; box-shadow: none !important; text-shadow: none !important; cursor: default; } /* ---------------------------------------------------------------------------- 4.0 - Button Groups ---------------------------------------------------------------------------- */ .wp-core-ui .button-group { position: relative; display: inline-block; white-space: nowrap; font-size: 0; vertical-align: middle; } .wp-core-ui .button-group > .button { display: inline-block; border-radius: 0; margin-left: -1px; } .wp-core-ui .button-group > .button:first-child { border-radius: 0 3px 3px 0; } .wp-core-ui .button-group > .button:last-child { border-radius: 3px 0 0 3px; } .wp-core-ui .button-group > .button-primary + .button { border-right: 0; } .wp-core-ui .button-group > .button:focus { position: relative; z-index: 1; } /* pressed state e.g. a selected setting */ .wp-core-ui .button-group > .button.active { background-color: #dcdcde; color: #135e96; border-color: #0a4b78; box-shadow: inset 0 2px 5px -3px #0a4b78; } .wp-core-ui .button-group > .button.active:focus { border-color: #3582c4; box-shadow: inset 0 2px 5px -3px #0a4b78, 0 0 0 1px #3582c4; } /* ---------------------------------------------------------------------------- 5.0 - Responsive Button Styles ---------------------------------------------------------------------------- */ @media screen and (max-width: 782px) { .wp-core-ui .button, .wp-core-ui .button.button-large, .wp-core-ui .button.button-small, input#publish, input#save-post, a.preview { padding: 0 14px; line-height: 2.71428571; /* 38px */ font-size: 14px; vertical-align: middle; min-height: 40px; margin-bottom: 4px; } /* Copy attachment URL button in the legacy edit media page. */ .wp-core-ui .copy-to-clipboard-container .copy-attachment-url { margin-bottom: 0; } #media-upload.wp-core-ui .button { padding: 0 10px 1px; min-height: 24px; line-height: 22px; font-size: 13px; } .media-frame.mode-grid .bulk-select .button { margin-bottom: 0; } /* Publish Metabox Options */ .wp-core-ui .save-post-status.button { position: relative; margin: 0 10px 0 14px; /* 14px right margin to match all other buttons */ } /* Reset responsive styles in Press This, Customizer */ .wp-core-ui.wp-customizer .button { font-size: 13px; line-height: 2.15384615; /* 28px */ min-height: 30px; margin: 0; vertical-align: inherit; } .media-modal-content .media-toolbar-primary .media-button { margin-top: 10px; margin-right: 5px; } /* Reset responsive styles on Log in button on iframed login form */ .interim-login .button.button-large { min-height: 30px; line-height: 2; padding: 0 12px 2px; } } PKj l\?~%~%css/buttons.cssnu[/* ---------------------------------------------------------------------------- NOTE: If you edit this file, you should make sure that the CSS rules for buttons in the following files are updated. * jquery-ui-dialog.css * editor.css WordPress-style Buttons ======================= Create a button by adding the `.button` class to an element. For backward compatibility, we support several other classes (such as `.button-secondary`), but these will *not* work with the stackable classes described below. Button Styles ------------- To display a primary button style, add the `.button-primary` class to a button. Button Sizes ------------ Adjust a button's size by adding the `.button-large` or `.button-small` class. Button States ------------- Lock the state of a button by adding the name of the pseudoclass as an actual class (e.g. `.hover` for `:hover`). TABLE OF CONTENTS: ------------------ 1.0 - Button Layouts 2.0 - Default Button Style 3.0 - Primary Button Style 4.0 - Button Groups 5.0 - Responsive Button Styles ---------------------------------------------------------------------------- */ /* ---------------------------------------------------------------------------- 1.0 - Button Layouts ---------------------------------------------------------------------------- */ .wp-core-ui .button, .wp-core-ui .button-primary, .wp-core-ui .button-secondary { display: inline-block; text-decoration: none; font-size: 13px; line-height: 2.15384615; /* 28px */ min-height: 30px; margin: 0; padding: 0 10px; cursor: pointer; border-width: 1px; border-style: solid; -webkit-appearance: none; border-radius: 3px; white-space: nowrap; box-sizing: border-box; } /* Remove the dotted border on :focus and the extra padding in Firefox */ .wp-core-ui button::-moz-focus-inner, .wp-core-ui input[type="reset"]::-moz-focus-inner, .wp-core-ui input[type="button"]::-moz-focus-inner, .wp-core-ui input[type="submit"]::-moz-focus-inner { border-width: 0; border-style: none; padding: 0; } .wp-core-ui .button.button-large, .wp-core-ui .button-group.button-large .button { min-height: 32px; line-height: 2.30769231; /* 30px */ padding: 0 12px; } .wp-core-ui .button.button-small, .wp-core-ui .button-group.button-small .button { min-height: 26px; line-height: 2.18181818; /* 24px */ padding: 0 8px; font-size: 11px; } .wp-core-ui .button.button-hero, .wp-core-ui .button-group.button-hero .button { font-size: 14px; min-height: 46px; line-height: 3.14285714; padding: 0 36px; } .wp-core-ui .button.hidden { display: none; } /* Style Reset buttons as simple text links */ .wp-core-ui input[type="reset"], .wp-core-ui input[type="reset"]:hover, .wp-core-ui input[type="reset"]:active, .wp-core-ui input[type="reset"]:focus { background: none; border: none; box-shadow: none; padding: 0 2px 1px; width: auto; } /* ---------------------------------------------------------------------------- 2.0 - Default Button Style ---------------------------------------------------------------------------- */ .wp-core-ui .button, .wp-core-ui .button-secondary { color: #2271b1; border-color: #2271b1; background: #f6f7f7; vertical-align: top; } .wp-core-ui p .button { vertical-align: baseline; } .wp-core-ui .button.hover, .wp-core-ui .button:hover, .wp-core-ui .button-secondary:hover{ background: #f0f0f1; border-color: #0a4b78; color: #0a4b78; } .wp-core-ui .button.focus, .wp-core-ui .button:focus, .wp-core-ui .button-secondary:focus { background: #f6f7f7; border-color: #3582c4; color: #0a4b78; box-shadow: 0 0 0 1px #3582c4; /* Only visible in Windows High Contrast mode */ outline: 2px solid transparent; /* Reset inherited offset from Gutenberg */ outline-offset: 0; } /* :active state */ .wp-core-ui .button:active, .wp-core-ui .button-secondary:active { background: #f6f7f7; border-color: #8c8f94; box-shadow: none; } /* pressed state e.g. a selected setting */ .wp-core-ui .button.active, .wp-core-ui .button.active:hover { background-color: #dcdcde; color: #135e96; border-color: #0a4b78; box-shadow: inset 0 2px 5px -3px #0a4b78; } .wp-core-ui .button.active:focus { border-color: #3582c4; box-shadow: inset 0 2px 5px -3px #0a4b78, 0 0 0 1px #3582c4; } .wp-core-ui .button[disabled], .wp-core-ui .button:disabled, .wp-core-ui .button.disabled, .wp-core-ui .button-secondary[disabled], .wp-core-ui .button-secondary:disabled, .wp-core-ui .button-secondary.disabled, .wp-core-ui .button-disabled { color: #a7aaad !important; border-color: #dcdcde !important; background: #f6f7f7 !important; box-shadow: none !important; cursor: default; transform: none !important; } /* Buttons that look like links, for a cross of good semantics with the visual */ .wp-core-ui .button-link { margin: 0; padding: 0; box-shadow: none; border: 0; border-radius: 0; background: none; cursor: pointer; text-align: left; /* Mimics the default link style in common.css */ color: #2271b1; text-decoration: underline; transition-property: border, background, color; transition-duration: .05s; transition-timing-function: ease-in-out; } .wp-core-ui .button-link:hover, .wp-core-ui .button-link:active { color: #135e96; } .wp-core-ui .button-link:focus { color: #043959; box-shadow: 0 0 0 1px #4f94d4, 0 0 2px 1px rgba(79, 148, 212, 0.8); /* Only visible in Windows High Contrast mode */ outline: 1px solid transparent; } .wp-core-ui .button-link-delete { color: #d63638; } .wp-core-ui .button-link-delete:hover, .wp-core-ui .button-link-delete:focus { color: #d63638; background: transparent; } .wp-core-ui .button-link-delete:disabled { /* overrides the default buttons disabled background */ background: transparent !important; } /* ---------------------------------------------------------------------------- 3.0 - Primary Button Style ---------------------------------------------------------------------------- */ .wp-core-ui .button-primary { background: #2271b1; border-color: #2271b1; color: #fff; text-decoration: none; text-shadow: none; } .wp-core-ui .button-primary.hover, .wp-core-ui .button-primary:hover, .wp-core-ui .button-primary.focus, .wp-core-ui .button-primary:focus { background: #135e96; border-color: #135e96; color: #fff; } .wp-core-ui .button-primary.focus, .wp-core-ui .button-primary:focus { box-shadow: 0 0 0 1px #fff, 0 0 0 3px #2271b1; } .wp-core-ui .button-primary.active, .wp-core-ui .button-primary.active:hover, .wp-core-ui .button-primary.active:focus, .wp-core-ui .button-primary:active { background: #135e96; border-color: #135e96; box-shadow: none; color: #fff; } .wp-core-ui .button-primary[disabled], .wp-core-ui .button-primary:disabled, .wp-core-ui .button-primary-disabled, .wp-core-ui .button-primary.disabled { color: #a7aaad !important; background: #f6f7f7 !important; border-color: #dcdcde !important; box-shadow: none !important; text-shadow: none !important; cursor: default; } /* ---------------------------------------------------------------------------- 4.0 - Button Groups ---------------------------------------------------------------------------- */ .wp-core-ui .button-group { position: relative; display: inline-block; white-space: nowrap; font-size: 0; vertical-align: middle; } .wp-core-ui .button-group > .button { display: inline-block; border-radius: 0; margin-right: -1px; } .wp-core-ui .button-group > .button:first-child { border-radius: 3px 0 0 3px; } .wp-core-ui .button-group > .button:last-child { border-radius: 0 3px 3px 0; } .wp-core-ui .button-group > .button-primary + .button { border-left: 0; } .wp-core-ui .button-group > .button:focus { position: relative; z-index: 1; } /* pressed state e.g. a selected setting */ .wp-core-ui .button-group > .button.active { background-color: #dcdcde; color: #135e96; border-color: #0a4b78; box-shadow: inset 0 2px 5px -3px #0a4b78; } .wp-core-ui .button-group > .button.active:focus { border-color: #3582c4; box-shadow: inset 0 2px 5px -3px #0a4b78, 0 0 0 1px #3582c4; } /* ---------------------------------------------------------------------------- 5.0 - Responsive Button Styles ---------------------------------------------------------------------------- */ @media screen and (max-width: 782px) { .wp-core-ui .button, .wp-core-ui .button.button-large, .wp-core-ui .button.button-small, input#publish, input#save-post, a.preview { padding: 0 14px; line-height: 2.71428571; /* 38px */ font-size: 14px; vertical-align: middle; min-height: 40px; margin-bottom: 4px; } /* Copy attachment URL button in the legacy edit media page. */ .wp-core-ui .copy-to-clipboard-container .copy-attachment-url { margin-bottom: 0; } #media-upload.wp-core-ui .button { padding: 0 10px 1px; min-height: 24px; line-height: 22px; font-size: 13px; } .media-frame.mode-grid .bulk-select .button { margin-bottom: 0; } /* Publish Metabox Options */ .wp-core-ui .save-post-status.button { position: relative; margin: 0 14px 0 10px; /* 14px right margin to match all other buttons */ } /* Reset responsive styles in Press This, Customizer */ .wp-core-ui.wp-customizer .button { font-size: 13px; line-height: 2.15384615; /* 28px */ min-height: 30px; margin: 0; vertical-align: inherit; } .media-modal-content .media-toolbar-primary .media-button { margin-top: 10px; margin-left: 5px; } /* Reset responsive styles on Log in button on iframed login form */ .interim-login .button.button-large { min-height: 30px; line-height: 2; padding: 0 12px 2px; } } PKj l\gcss/editor-rtl.cssnu[/*! This file is auto-generated */ /*------------------------------------------------------------------------------ TinyMCE and Quicklinks toolbars ------------------------------------------------------------------------------*/ /* TinyMCE widgets/containers */ .mce-tinymce { box-shadow: none; } .mce-container, .mce-container *, .mce-widget, .mce-widget * { color: inherit; font-family: inherit; } .mce-container .mce-monospace, .mce-widget .mce-monospace { font-family: Consolas, Monaco, monospace; font-size: 13px; line-height: 150%; } /* TinyMCE windows */ #mce-modal-block, #mce-modal-block.mce-fade { opacity: 0.7; filter: alpha(opacity=70); transition: none; background: #000; } .mce-window { border-radius: 0; box-shadow: 0 3px 6px rgba(0, 0, 0, 0.3); -webkit-font-smoothing: subpixel-antialiased; transition: none; } .mce-window .mce-container-body.mce-abs-layout { overflow: visible; } .mce-window .mce-window-head { background: #fff; border-bottom: 1px solid #dcdcde; padding: 0; min-height: 36px; } .mce-window .mce-window-head .mce-title { color: #3c434a; font-size: 18px; font-weight: 600; line-height: 36px; margin: 0; padding: 0 16px 0 36px; } .mce-window .mce-window-head .mce-close, .mce-window-head .mce-close .mce-i-remove { color: transparent; top: 0; left: 0; width: 36px; height: 36px; padding: 0; line-height: 36px; text-align: center; } .mce-window-head .mce-close .mce-i-remove:before { font: normal 20px/36px dashicons; text-align: center; color: #646970; width: 36px; height: 36px; display: block; } .mce-window-head .mce-close:hover .mce-i-remove:before, .mce-window-head .mce-close:focus .mce-i-remove:before { color: #135e96; } .mce-window-head .mce-close:focus .mce-i-remove, div.mce-tab:focus { box-shadow: 0 0 0 1px #4f94d4, 0 0 2px 1px rgba(79, 148, 212, 0.8); } .mce-window .mce-window-head .mce-dragh { width: calc( 100% - 36px ); } .mce-window .mce-foot { border-top: 1px solid #dcdcde; } .mce-textbox, .mce-checkbox i.mce-i-checkbox, #wp-link .query-results { border: 1px solid #dcdcde; border-radius: 0; box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.07); transition: .05s all ease-in-out; } .mce-textbox:focus, .mce-textbox.mce-focus, .mce-checkbox:focus i.mce-i-checkbox, #wp-link .query-results:focus { border-color: #4f94d4; box-shadow: 0 0 2px rgba(79, 148, 212, 0.8); } .mce-window .mce-wp-help { height: 360px; width: 460px; overflow: auto; } .mce-window .mce-wp-help * { box-sizing: border-box; } .mce-window .mce-wp-help > .mce-container-body { width: auto !important; } .mce-window .wp-editor-help { padding: 10px 20px 0 10px; } .mce-window .wp-editor-help h2, .mce-window .wp-editor-help p { margin: 8px 0; white-space: normal; font-size: 14px; font-weight: 400; } .mce-window .wp-editor-help table { width: 100%; margin-bottom: 20px; } .mce-window .wp-editor-help table.wp-help-single { margin: 0 8px 20px; } .mce-window .wp-editor-help table.fixed { table-layout: fixed; } .mce-window .wp-editor-help table.fixed th:nth-child(odd), .mce-window .wp-editor-help table.fixed td:nth-child(odd) { width: 12%; } .mce-window .wp-editor-help table.fixed th:nth-child(even), .mce-window .wp-editor-help table.fixed td:nth-child(even) { width: 38%; } .mce-window .wp-editor-help table.fixed th:nth-child(odd) { padding: 5px 0 0; } .mce-window .wp-editor-help td, .mce-window .wp-editor-help th { font-size: 13px; padding: 5px; vertical-align: middle; word-wrap: break-word; white-space: normal; } .mce-window .wp-editor-help th { font-weight: 600; padding-bottom: 0; } .mce-window .wp-editor-help kbd { font-family: monospace; padding: 2px 7px 3px; font-weight: 600; margin: 0; background: #f0f0f1; background: rgba(0, 0, 0, 0.08); } .mce-window .wp-help-th-center td:nth-child(odd), .mce-window .wp-help-th-center th:nth-child(odd) { text-align: center; } /* TinyMCE menus */ .mce-menu, .mce-floatpanel.mce-popover { border-color: rgba(0, 0, 0, 0.15); border-radius: 0; box-shadow: 0 3px 5px rgba(0, 0, 0, 0.2); } .mce-menu, .mce-floatpanel.mce-popover.mce-bottom { margin-top: 2px; } .mce-floatpanel .mce-arrow { display: none; } .mce-menu .mce-container-body { min-width: 160px; } .mce-menu-item { border: none; margin-bottom: 2px; padding: 6px 12px 6px 15px; } .mce-menu-has-icons i.mce-ico { line-height: 20px; } /* TinyMCE panel */ div.mce-panel { border: 0; background: #fff; } .mce-panel.mce-menu { border: 1px solid #dcdcde; } div.mce-tab { line-height: 13px; } /* TinyMCE toolbars */ div.mce-toolbar-grp { border-bottom: 1px solid #dcdcde; background: #f6f7f7; padding: 0; position: relative; } div.mce-inline-toolbar-grp { border: 1px solid #a7aaad; border-radius: 2px; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15); box-sizing: border-box; margin-bottom: 8px; position: absolute; -webkit-user-select: none; user-select: none; max-width: 98%; z-index: 100100; /* Same as the other TinyMCE "panels" */ } div.mce-inline-toolbar-grp > div.mce-stack-layout { padding: 1px; } div.mce-inline-toolbar-grp.mce-arrow-up { margin-bottom: 0; margin-top: 8px; } div.mce-inline-toolbar-grp:before, div.mce-inline-toolbar-grp:after { position: absolute; right: 50%; display: block; width: 0; height: 0; border-style: solid; border-color: transparent; content: ""; } div.mce-inline-toolbar-grp.mce-arrow-up:before { top: -9px; border-bottom-color: #a7aaad; border-width: 0 9px 9px; margin-right: -9px; } div.mce-inline-toolbar-grp.mce-arrow-down:before { bottom: -9px; border-top-color: #a7aaad; border-width: 9px 9px 0; margin-right: -9px; } div.mce-inline-toolbar-grp.mce-arrow-up:after { top: -8px; border-bottom-color: #f6f7f7; border-width: 0 8px 8px; margin-right: -8px; } div.mce-inline-toolbar-grp.mce-arrow-down:after { bottom: -8px; border-top-color: #f6f7f7; border-width: 8px 8px 0; margin-right: -8px; } div.mce-inline-toolbar-grp.mce-arrow-left:before, div.mce-inline-toolbar-grp.mce-arrow-left:after { margin: 0; } div.mce-inline-toolbar-grp.mce-arrow-left:before { right: 20px; } div.mce-inline-toolbar-grp.mce-arrow-left:after { right: 21px; } div.mce-inline-toolbar-grp.mce-arrow-right:before, div.mce-inline-toolbar-grp.mce-arrow-right:after { right: auto; margin: 0; } div.mce-inline-toolbar-grp.mce-arrow-right:before { left: 20px; } div.mce-inline-toolbar-grp.mce-arrow-right:after { left: 21px; } div.mce-inline-toolbar-grp.mce-arrow-full { left: 0; } div.mce-inline-toolbar-grp.mce-arrow-full > div { width: 100%; overflow-x: auto; } div.mce-toolbar-grp > div { padding: 3px; } .has-dfw div.mce-toolbar-grp .mce-toolbar.mce-first { padding-left: 32px; } .mce-toolbar .mce-btn-group { margin: 0; } /* Classic block hide/show toolbars */ .block-library-classic__toolbar .mce-toolbar-grp .mce-toolbar:not(:first-child) { display: none; } .block-library-classic__toolbar.has-advanced-toolbar .mce-toolbar-grp .mce-toolbar { display: block; } div.mce-statusbar { border-top: 1px solid #dcdcde; } div.mce-path { padding: 2px 10px; margin: 0; } .mce-path, .mce-path-item, .mce-path .mce-divider { font-size: 12px; } .mce-toolbar .mce-btn, .qt-dfw { border-color: transparent; background: transparent; box-shadow: none; text-shadow: none; cursor: pointer; } .mce-btn .mce-txt { direction: inherit; text-align: inherit; } .mce-toolbar .mce-btn-group .mce-btn, .qt-dfw { border: 1px solid transparent; margin: 2px; border-radius: 2px; } .mce-toolbar .mce-btn-group .mce-btn:hover, .mce-toolbar .mce-btn-group .mce-btn:focus, .qt-dfw:hover, .qt-dfw:focus { background: #f6f7f7; border-color: #50575e; color: #1d2327; box-shadow: inset 0 1px 0 #fff, 0 1px 0 rgba(0, 0, 0, 0.08); outline: none; } .mce-toolbar .mce-btn-group .mce-btn.mce-active, .mce-toolbar .mce-btn-group .mce-btn:active, .qt-dfw.active { background: #f0f0f1; border-color: #50575e; box-shadow: inset 0 2px 5px -3px rgba(0, 0, 0, 0.3); } .mce-btn.mce-active, .mce-btn.mce-active button, .mce-btn.mce-active:hover button, .mce-btn.mce-active i, .mce-btn.mce-active:hover i { color: inherit; } .mce-toolbar .mce-btn-group .mce-btn.mce-active:hover, .mce-toolbar .mce-btn-group .mce-btn.mce-active:focus { border-color: #1d2327; } .mce-toolbar .mce-btn-group .mce-btn.mce-disabled:hover, .mce-toolbar .mce-btn-group .mce-btn.mce-disabled:focus { color: #a7aaad; background: none; border-color: #dcdcde; text-shadow: 0 1px 0 #fff; box-shadow: none; } .mce-toolbar .mce-btn-group .mce-btn.mce-disabled:focus { border-color: #50575e; } .mce-toolbar .mce-btn-group .mce-first, .mce-toolbar .mce-btn-group .mce-last { border-color: transparent; } .mce-toolbar .mce-btn button, .qt-dfw { padding: 2px 3px; line-height: normal; } .mce-toolbar .mce-listbox button { font-size: 13px; line-height: 1.53846153; padding-right: 6px; padding-left: 20px; } .mce-toolbar .mce-btn i { text-shadow: none; } .mce-toolbar .mce-btn-group > div { white-space: normal; } .mce-toolbar .mce-colorbutton .mce-open { border-left: 0; } .mce-toolbar .mce-colorbutton .mce-preview { margin: 0; padding: 0; top: auto; bottom: 2px; right: 3px; height: 3px; width: 20px; background: #50575e; } .mce-toolbar .mce-btn-group .mce-btn.mce-primary { min-width: 0; background: #3582c4; border-color: #2271b1 #135e96 #135e96; box-shadow: 0 1px 0 #135e96; color: #fff; text-decoration: none; text-shadow: none; } /* Compensate for the extra box shadow at the bottom of .mce-btn.mce-primary */ .mce-toolbar .mce-btn-group .mce-btn.mce-primary button { padding: 2px 3px 1px; } .mce-toolbar .mce-btn-group .mce-btn.mce-primary .mce-ico { color: #fff; } .mce-toolbar .mce-btn-group .mce-btn.mce-primary:hover, .mce-toolbar .mce-btn-group .mce-btn.mce-primary:focus { background: #4f94d4; border-color: #135e96; color: #fff; } .mce-toolbar .mce-btn-group .mce-btn.mce-primary:focus { box-shadow: 0 0 1px 1px #72aee6; } .mce-toolbar .mce-btn-group .mce-btn.mce-primary:active { background: #2271b1; border-color: #135e96; box-shadow: inset 0 2px 0 #135e96; } /* mce listbox */ .mce-toolbar .mce-btn-group .mce-btn.mce-listbox { border-radius: 0; direction: rtl; background: #fff; border: 1px solid #dcdcde; box-shadow: inset 0 1px 1px -1px rgba(0, 0, 0, 0.2); } .mce-toolbar .mce-btn-group .mce-btn.mce-listbox:hover, .mce-toolbar .mce-btn-group .mce-btn.mce-listbox:focus { border-color: #c3c4c7; } .mce-panel .mce-btn i.mce-caret { border-top: 6px solid #50575e; margin-right: 2px; margin-left: 2px; } .mce-listbox i.mce-caret { left: 4px; } .mce-panel .mce-btn:hover i.mce-caret, .mce-panel .mce-btn:focus i.mce-caret { border-top-color: #1d2327; } .mce-panel .mce-active i.mce-caret { border-top: 0; border-bottom: 6px solid #1d2327; margin-top: 7px; } .mce-listbox.mce-active i.mce-caret { margin-top: -3px; } .mce-toolbar .mce-splitbtn:hover .mce-open { border-left-color: transparent; } .mce-toolbar .mce-splitbtn .mce-open.mce-active { background: transparent; outline: none; } .mce-menu .mce-menu-item:hover, .mce-menu .mce-menu-item.mce-selected, .mce-menu .mce-menu-item:focus, .mce-menu .mce-menu-item.mce-active.mce-menu-item-normal, .mce-menu .mce-menu-item.mce-active.mce-menu-item-preview { background: #2271b1; /* See color scheme. */ color: #fff; } .mce-menu .mce-menu-item:hover .mce-caret, .mce-menu .mce-menu-item:focus .mce-caret, .mce-menu .mce-menu-item.mce-selected .mce-caret { border-right-color: #fff; } /* rtl:ignore */ .rtl .mce-menu .mce-menu-item:hover .mce-caret, .rtl .mce-menu .mce-menu-item:focus .mce-caret, .rtl .mce-menu .mce-menu-item.mce-selected .mce-caret { border-left-color: inherit; border-right-color: #fff; } .mce-menu .mce-menu-item:hover .mce-text, .mce-menu .mce-menu-item:focus .mce-text, .mce-menu .mce-menu-item:hover .mce-ico, .mce-menu .mce-menu-item:focus .mce-ico, .mce-menu .mce-menu-item.mce-selected .mce-text, .mce-menu .mce-menu-item.mce-selected .mce-ico, .mce-menu .mce-menu-item:hover .mce-menu-shortcut, .mce-menu .mce-menu-item:focus .mce-menu-shortcut, .mce-menu .mce-menu-item.mce-active .mce-menu-shortcut, .mce-menu .mce-menu-item.mce-disabled:hover .mce-text, .mce-menu .mce-menu-item.mce-disabled:hover .mce-ico { color: inherit; } .mce-menu .mce-menu-item.mce-disabled { cursor: default; } .mce-menu .mce-menu-item.mce-disabled:hover { background: #c3c4c7; } /* Menubar */ div.mce-menubar { border-color: #dcdcde; background: #fff; border-width: 0 0 1px; } .mce-menubar .mce-menubtn:hover, .mce-menubar .mce-menubtn.mce-active, .mce-menubar .mce-menubtn:focus { border-color: transparent; background: transparent; } .mce-menubar .mce-menubtn:focus { color: #043959; box-shadow: 0 0 0 1px #4f94d4, 0 0 2px 1px rgba(79, 148, 212, 0.8); } div.mce-menu .mce-menu-item-sep, .mce-menu-item-sep:hover { border-bottom: 1px solid #dcdcde; height: 0; margin: 5px 0; } .mce-menubtn span { margin-left: 0; padding-right: 3px; } .mce-menu-has-icons i.mce-ico:before { margin-right: -2px; } /* Keyboard shortcuts position */ .mce-menu.mce-menu-align .mce-menu-item-normal { position: relative; } .mce-menu.mce-menu-align .mce-menu-shortcut { bottom: 0.6em; font-size: 0.9em; } /* Buttons in modals */ .mce-primary button, .mce-primary button i { text-align: center; color: #fff; text-shadow: none; padding: 0; line-height: 1.85714285; } .mce-window .mce-btn { color: #50575e; background: #f6f7f7; text-decoration: none; font-size: 13px; line-height: 26px; height: 28px; margin: 0; padding: 0; cursor: pointer; border: 1px solid #c3c4c7; -webkit-appearance: none; border-radius: 3px; white-space: nowrap; box-shadow: 0 1px 0 #c3c4c7; } /* Remove the dotted border on :focus and the extra padding in Firefox */ .mce-window .mce-btn::-moz-focus-inner { border-width: 0; border-style: none; padding: 0; } .mce-window .mce-btn:hover, .mce-window .mce-btn:focus { background: #f6f7f7; border-color: #8c8f94; color: #1d2327; } .mce-window .mce-btn:focus { border-color: #4f94d4; box-shadow: 0 0 3px rgba(34, 113, 177, 0.8); } .mce-window .mce-btn:active { background: #f0f0f1; border-color: #8c8f94; box-shadow: inset 0 2px 5px -3px rgba(0, 0, 0, 0.5); transform: translateY(1px); } .mce-window .mce-btn.mce-disabled { color: #a7aaad !important; border-color: #dcdcde !important; background: #f6f7f7 !important; box-shadow: none !important; text-shadow: 0 1px 0 #fff !important; cursor: default; transform: none !important; } .mce-window .mce-btn.mce-primary { background: #3582c4; border-color: #2271b1 #135e96 #135e96; box-shadow: 0 1px 0 #135e96; color: #fff; text-decoration: none; text-shadow: 0 -1px 1px #135e96, -1px 0 1px #135e96, 0 1px 1px #135e96, 1px 0 1px #135e96; } .mce-window .mce-btn.mce-primary:hover, .mce-window .mce-btn.mce-primary:focus { background: #4f94d4; border-color: #135e96; color: #fff; } .mce-window .mce-btn.mce-primary:focus { box-shadow: 0 1px 0 #2271b1, 0 0 2px 1px #72aee6; } .mce-window .mce-btn.mce-primary:active { background: #2271b1; border-color: #135e96; box-shadow: inset 0 2px 0 #135e96; vertical-align: top; } .mce-window .mce-btn.mce-primary.mce-disabled { color: #9ec2e6 !important; background: #4f94d4 !important; border-color: #3582c4 !important; box-shadow: none !important; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.1) !important; cursor: default; } .mce-menubtn.mce-fixed-width span { overflow-x: hidden; text-overflow: ellipsis; width: 82px; } /* Charmap modal */ .mce-charmap { margin: 3px; } .mce-charmap td { padding: 0; border-color: #dcdcde; cursor: pointer; } .mce-charmap td:hover { background: #f6f7f7; } .mce-charmap td div { width: 18px; height: 22px; line-height: 1.57142857; } /* TinyMCE tooltips */ .mce-tooltip { margin-top: 2px; } .mce-tooltip-inner { border-radius: 3px; box-shadow: 0 3px 5px rgba(0, 0, 0, 0.2); color: #fff; font-size: 12px; } /* TinyMCE icons */ .mce-ico { font-family: tinymce, Arial; } .mce-btn-small .mce-ico { font-family: tinymce-small, Arial; } .mce-toolbar .mce-ico { color: #50575e; line-height: 1; width: 20px; height: 20px; text-align: center; text-shadow: none; margin: 0; padding: 0; } .qt-dfw { color: #50575e; line-height: 1; width: 28px; height: 26px; text-align: center; text-shadow: none; } .mce-toolbar .mce-btn .mce-open { line-height: 20px; } .mce-toolbar .mce-btn:hover .mce-open, .mce-toolbar .mce-btn:focus .mce-open, .mce-toolbar .mce-btn.mce-active .mce-open { border-right-color: #1d2327; } div.mce-notification { right: 10% !important; left: 10%; } .mce-notification button.mce-close { left: 6px; top: 3px; font-weight: 400; color: #50575e; } .mce-notification button.mce-close:hover, .mce-notification button.mce-close:focus { color: #000; } i.mce-i-bold, i.mce-i-italic, i.mce-i-bullist, i.mce-i-numlist, i.mce-i-blockquote, i.mce-i-alignleft, i.mce-i-aligncenter, i.mce-i-alignright, i.mce-i-link, i.mce-i-unlink, i.mce-i-wp_more, i.mce-i-strikethrough, i.mce-i-spellchecker, i.mce-i-fullscreen, i.mce-i-wp_fullscreen, i.mce-i-dfw, i.mce-i-wp_adv, i.mce-i-underline, i.mce-i-alignjustify, i.mce-i-forecolor, i.mce-i-backcolor, i.mce-i-pastetext, i.mce-i-pasteword, i.mce-i-removeformat, i.mce-i-charmap, i.mce-i-outdent, i.mce-i-indent, i.mce-i-undo, i.mce-i-redo, i.mce-i-help, i.mce-i-wp_help, i.mce-i-wp-media-library, i.mce-i-ltr, i.mce-i-wp_page, i.mce-i-hr, i.mce-i-wp_code, i.mce-i-dashicon, i.mce-i-remove { font: normal 20px/1 dashicons; padding: 0; vertical-align: top; speak: never; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; margin-right: -2px; padding-left: 2px; } .qt-dfw { font: normal 20px/1 dashicons; vertical-align: top; speak: never; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } i.mce-i-bold:before { content: "\f200"; } i.mce-i-italic:before { content: "\f201"; } i.mce-i-bullist:before { content: "\f203"; } i.mce-i-numlist:before { content: "\f204"; } i.mce-i-blockquote:before { content: "\f205"; } i.mce-i-alignleft:before { content: "\f206"; } i.mce-i-aligncenter:before { content: "\f207"; } i.mce-i-alignright:before { content: "\f208"; } i.mce-i-link:before { content: "\f103"; } i.mce-i-unlink:before { content: "\f225"; } i.mce-i-wp_more:before { content: "\f209"; } i.mce-i-strikethrough:before { content: "\f224"; } i.mce-i-spellchecker:before { content: "\f210"; } i.mce-i-fullscreen:before, i.mce-i-wp_fullscreen:before, i.mce-i-dfw:before, .qt-dfw:before { content: "\f211"; } i.mce-i-wp_adv:before { content: "\f212"; } i.mce-i-underline:before { content: "\f213"; } i.mce-i-alignjustify:before { content: "\f214"; } i.mce-i-forecolor:before, i.mce-i-backcolor:before { content: "\f215"; } i.mce-i-pastetext:before { content: "\f217"; } i.mce-i-removeformat:before { content: "\f218"; } i.mce-i-charmap:before { content: "\f220"; } i.mce-i-outdent:before { content: "\f221"; } i.mce-i-indent:before { content: "\f222"; } i.mce-i-undo:before { content: "\f171"; } i.mce-i-redo:before { content: "\f172"; } i.mce-i-help:before, i.mce-i-wp_help:before { content: "\f223"; } i.mce-i-wp-media-library:before { content: "\f104"; } i.mce-i-ltr:before { content: "\f320"; } i.mce-i-wp_page:before { content: "\f105"; } i.mce-i-hr:before { content: "\f460"; } i.mce-i-remove:before { content: "\f158"; } i.mce-i-wp_code:before { content: "\f475"; } /* RTL button icons */ .rtl i.mce-i-outdent:before { content: "\f222"; } .rtl i.mce-i-indent:before { content: "\f221"; } /* Editors */ .wp-editor-wrap { position: relative; } .wp-editor-tools { position: relative; z-index: 1; } .wp-editor-tools:after { clear: both; content: ""; display: table; } .wp-editor-container { clear: both; border: 1px solid #dcdcde; } .wp-editor-area { font-family: Consolas, Monaco, monospace; font-size: 13px; padding: 10px; margin: 1px 0 0; line-height: 150%; border: 0; outline: none; display: block; resize: vertical; box-sizing: border-box; } .rtl .wp-editor-area { font-family: Tahoma, Monaco, monospace; } .locale-he-il .wp-editor-area { font-family: Arial, Monaco, monospace; } .wp-editor-container textarea.wp-editor-area { width: 100%; margin: 0; box-shadow: none; } .wp-editor-tabs { float: left; } .wp-switch-editor { float: right; box-sizing: content-box; position: relative; top: 1px; background: #f0f0f1; color: #646970; cursor: pointer; font-size: 13px; line-height: 1.46153846; height: 20px; margin: 5px 5px 0 0; padding: 3px 8px 4px; border: 1px solid #dcdcde; } .wp-switch-editor:focus { box-shadow: 0 0 0 1px #4f94d4, 0 0 2px 1px rgba(79, 148, 212, 0.8); outline: none; color: #1d2327; } .wp-switch-editor:active, .html-active .switch-html:focus, .tmce-active .switch-tmce:focus { box-shadow: none; } .wp-switch-editor:active { background-color: #f6f7f7; box-shadow: none; } .js .tmce-active .wp-editor-area { color: #fff; } .tmce-active .quicktags-toolbar { display: none; } .tmce-active .switch-tmce, .html-active .switch-html { background: #f6f7f7; color: #50575e; border-bottom-color: #f6f7f7; } .wp-media-buttons { float: right; } .wp-media-buttons .button { margin-left: 5px; margin-bottom: 4px; padding-right: 7px; padding-left: 7px; } .wp-media-buttons .button:active { position: relative; top: 1px; margin-top: -1px; margin-bottom: 1px; } .wp-media-buttons .insert-media { padding-right: 5px; } .wp-media-buttons a { text-decoration: none; color: #3c434a; font-size: 12px; } .wp-media-buttons img { padding: 0 4px; vertical-align: middle; } .wp-media-buttons span.wp-media-buttons-icon { display: inline-block; width: 20px; height: 20px; line-height: 1; vertical-align: middle; margin: 0 2px; } .wp-media-buttons .add_media span.wp-media-buttons-icon { background: none; } .wp-media-buttons .add_media span.wp-media-buttons-icon:before { font: normal 18px/1 dashicons; speak: never; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .wp-media-buttons .add_media span.wp-media-buttons-icon:before { content: "\f104"; } .mce-content-body dl.wp-caption { max-width: 100%; } /* Quicktags */ .quicktags-toolbar { padding: 3px; position: relative; border-bottom: 1px solid #dcdcde; background: #f6f7f7; min-height: 30px; } .has-dfw .quicktags-toolbar { padding-left: 35px; } .wp-core-ui .quicktags-toolbar input.button.button-small { margin: 2px; } .quicktags-toolbar input[value="link"] { text-decoration: underline; } .quicktags-toolbar input[value="del"] { text-decoration: line-through; } .quicktags-toolbar input[value="i"] { font-style: italic; } .quicktags-toolbar input[value="b"] { font-weight: 600; } .mce-toolbar .mce-btn-group .mce-btn.mce-wp-dfw, .qt-dfw { position: absolute; top: 0; left: 0; } .mce-toolbar .mce-btn-group .mce-btn.mce-wp-dfw { margin: 7px 0 0 7px; } .qt-dfw { margin: 5px 0 0 5px; } .qt-fullscreen { position: static; margin: 2px; } @media screen and (max-width: 782px) { .mce-toolbar .mce-btn button, .qt-dfw { padding: 6px 7px; } /* Compensate for the extra box shadow at the bottom of .mce-btn.mce-primary */ .mce-toolbar .mce-btn-group .mce-btn.mce-primary button { padding: 6px 7px 5px; } .mce-toolbar .mce-btn-group .mce-btn { margin: 1px; } .qt-dfw { width: 36px; height: 34px; } .mce-toolbar .mce-btn-group .mce-btn.mce-wp-dfw { margin: 4px 0 0 4px; } .mce-toolbar .mce-colorbutton .mce-preview { right: 8px; bottom: 6px; } .mce-window .mce-btn { padding: 2px 0; } .has-dfw div.mce-toolbar-grp .mce-toolbar.mce-first, .has-dfw .quicktags-toolbar { padding-left: 40px; } } @media screen and (min-width: 782px) { .wp-core-ui .quicktags-toolbar input.button.button-small { /* .button-small is normally 11px, but a bit too small for these buttons. */ font-size: 12px; min-height: 26px; line-height: 2; } } #wp_editbtns, #wp_gallerybtns { padding: 2px; position: absolute; display: none; z-index: 100020; } #wp_editimgbtn, #wp_delimgbtn, #wp_editgallery, #wp_delgallery { background-color: #f0f0f1; margin: 2px; padding: 2px; border: 1px solid #8c8f94; border-radius: 3px; } #wp_editimgbtn:hover, #wp_delimgbtn:hover, #wp_editgallery:hover, #wp_delgallery:hover { border-color: #50575e; background-color: #c3c4c7; } /*------------------------------------------------------------------------------ wp-link ------------------------------------------------------------------------------*/ #wp-link-wrap { display: none; background-color: #fff; box-shadow: 0 3px 6px rgba(0, 0, 0, 0.3); width: 500px; overflow: hidden; margin-right: -250px; margin-top: -125px; position: fixed; top: 50%; right: 50%; z-index: 100105; transition: height 0.2s, margin-top 0.2s; } #wp-link-backdrop { display: none; position: fixed; top: 0; right: 0; left: 0; bottom: 0; min-height: 360px; background: #000; opacity: 0.7; filter: alpha(opacity=70); z-index: 100100; } #wp-link { position: relative; height: 100%; } #wp-link-wrap { height: 500px; margin-top: -250px; } #wp-link-wrap .wp-link-text-field { display: none; } #wp-link-wrap.has-text-field .wp-link-text-field { display: block; } #link-modal-title { background: #fff; border-bottom: 1px solid #dcdcde; height: 36px; font-size: 18px; font-weight: 600; line-height: 2; margin: 0; padding: 0 16px 0 36px; } #wp-link-close { color: #646970; padding: 0; position: absolute; top: 0; left: 0; width: 36px; height: 36px; text-align: center; background: none; border: none; cursor: pointer; } #wp-link-close:before { font: normal 20px/36px dashicons; vertical-align: top; speak: never; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; width: 36px; height: 36px; content: "\f158"; } #wp-link-close:hover, #wp-link-close:focus { color: #135e96; } #wp-link-close:focus { outline: none; box-shadow: 0 0 0 1px #4f94d4, 0 0 2px 1px rgba(79, 148, 212, 0.8); /* Only visible in Windows High Contrast mode */ outline: 2px solid transparent; outline-offset: -2px; } #wp-link-wrap #link-selector { -webkit-overflow-scrolling: touch; padding: 0 16px; position: absolute; top: 37px; right: 0; left: 0; bottom: 44px; } #wp-link ol, #wp-link ul { list-style: none; margin: 0; padding: 0; } #wp-link input[type="text"] { box-sizing: border-box; } #wp-link #link-options { padding: 8px 0 12px; } #wp-link p.howto { margin: 3px 0; } #wp-link p.howto a { text-decoration: none; color: inherit; } #wp-link label input[type="text"] { margin-top: 5px; width: 70%; } #wp-link #link-options label span, #wp-link #search-panel label span.search-label { display: inline-block; width: 80px; text-align: left; padding-left: 5px; max-width: 24%; vertical-align: middle; word-wrap: break-word; } #wp-link .link-search-field { width: 250px; max-width: 70%; } #wp-link .link-search-wrapper { margin: 5px 0 9px; display: block; overflow: hidden; } #wp-link .link-search-wrapper .spinner { float: none; margin: -3px 4px 0 0; } #wp-link .link-target { padding: 3px 0 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } #wp-link .link-target label { max-width: 70%; } #wp-link .query-results { border: 1px #dcdcde solid; margin: 0 0 12px; background: #fff; overflow: auto; position: absolute; right: 16px; left: 16px; bottom: 0; top: 166px; } .has-text-field #wp-link .query-results { top: 210px; } #wp-link li { clear: both; margin-bottom: 0; border-bottom: 1px solid #f0f0f1; color: #2c3338; padding: 4px 10px 4px 6px; cursor: pointer; position: relative; } #wp-link .query-notice { padding: 0; border-bottom: 1px solid #dcdcde; background-color: #fff; color: #000; } #wp-link .query-notice .query-notice-default, #wp-link .query-notice .query-notice-hint { display: block; padding: 6px; border-right: 4px solid #72aee6; } #wp-link .unselectable.no-matches-found { padding: 0; border-bottom: 1px solid #dcdcde; background-color: #f6f7f7; } #wp-link .no-matches-found .item-title { display: block; padding: 6px; border-right: 4px solid #d63638; } #wp-link .query-results em { font-style: normal; } #wp-link li:hover { background: #f0f6fc; color: #101517; } #wp-link li.unselectable { border-bottom: 1px solid #dcdcde; } #wp-link li.unselectable:hover { background: #fff; cursor: auto; color: #2c3338; } #wp-link li.selected { background: #dcdcde; color: #2c3338; } #wp-link li.selected .item-title { font-weight: 600; } #wp-link li:last-child { border: none; } #wp-link .item-title { display: inline-block; width: 80%; width: calc(100% - 68px); word-wrap: break-word; } #wp-link .item-info { text-transform: uppercase; color: #646970; font-size: 11px; position: absolute; left: 5px; top: 5px; } #wp-link .river-waiting { display: none; padding: 10px 0; } #wp-link .submitbox { padding: 8px 16px; background: #fff; border-top: 1px solid #dcdcde; position: absolute; bottom: 0; right: 0; left: 0; } #wp-link-cancel { line-height: 1.92307692; float: right; } #wp-link-update { line-height: 1.76923076; float: left; } #wp-link-submit { float: left; } @media screen and (max-width: 782px) { #wp-link-wrap { margin-top: -140px; } #wp-link-wrap .query-results { top: 195px; } #wp-link-wrap.has-text-field .query-results { top: 235px; } #link-selector { padding: 0 16px 60px; } #wp-link-wrap #link-selector { bottom: 52px; } #wp-link-cancel { line-height: 2.46153846; } #wp-link .link-target { padding-top: 10px; } #wp-link .submitbox .button { margin-bottom: 0; } } @media screen and (max-width: 520px) { #wp-link-wrap { width: auto; margin-right: 0; right: 10px; left: 10px; max-width: 500px; } } @media screen and (max-height: 520px) { #wp-link-wrap { transition: none; height: auto; margin-top: 0; top: 10px; bottom: 10px; } #link-selector { overflow: auto; } #search-panel .query-results { position: static; } } @media screen and (max-height: 290px) { #wp-link-wrap { height: auto; margin-top: 0; top: 10px; bottom: 10px; } #link-selector { overflow: auto; height: calc(100% - 92px); padding-bottom: 2px; } #search-panel .query-results { position: static; } } div.wp-link-preview { float: right; margin: 5px; max-width: 694px; overflow: hidden; text-overflow: ellipsis; } div.wp-link-preview a { color: #2271b1; text-decoration: underline; transition-property: border, background, color; transition-duration: .05s; transition-timing-function: ease-in-out; cursor: pointer; } div.wp-link-preview a.wplink-url-error { color: #d63638; } div.wp-link-input { float: right; margin: 2px; max-width: 694px; } div.wp-link-input input { width: 300px; padding: 3px; box-sizing: border-box; line-height: 1.28571429; /* 18px */ /* Override value inherited from default input fields. */ min-height: 26px; } .mce-toolbar div.wp-link-preview ~ .mce-btn, .mce-toolbar div.wp-link-input ~ .mce-btn { margin: 2px 1px; } .mce-inline-toolbar-grp .mce-btn-group .mce-btn:last-child { margin-left: 2px; } .ui-autocomplete.wplink-autocomplete { z-index: 100110; max-height: 200px; overflow-y: auto; padding: 0; margin: 0; list-style: none; position: absolute; border: 1px solid #4f94d4; box-shadow: 0 1px 2px rgba(79, 148, 212, 0.8); background-color: #fff; } .ui-autocomplete.wplink-autocomplete li { margin-bottom: 0; padding: 4px 10px; clear: both; white-space: normal; text-align: right; } .ui-autocomplete.wplink-autocomplete li .wp-editor-float-right { float: left; } .ui-autocomplete.wplink-autocomplete li.ui-state-focus { background-color: #dcdcde; cursor: pointer; } @media screen and (max-width: 782px) { div.wp-link-preview, div.wp-link-input { max-width: 70%; max-width: calc(100% - 86px); } div.wp-link-preview { margin: 8px 5px 8px 0; } div.wp-link-input { width: 300px; } div.wp-link-input input { width: 100%; font-size: 16px; padding: 5px; } } /* =Overlay Body -------------------------------------------------------------- */ .mce-fullscreen { z-index: 100010; } /* =Localization -------------------------------------------------------------- */ .rtl .wp-switch-editor, .rtl .quicktags-toolbar input { font-family: Tahoma, sans-serif; } /* rtl:ignore */ .mce-rtl .mce-flow-layout .mce-flow-layout-item > div { direction: rtl; } /* rtl:ignore */ .mce-rtl .mce-listbox i.mce-caret { left: 6px; } html:lang(he-il) .rtl .wp-switch-editor, html:lang(he-il) .rtl .quicktags-toolbar input { font-family: Arial, sans-serif; } /* HiDPI */ @media print, (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) { .wp-media-buttons .add_media span.wp-media-buttons-icon { background: none; } } PKj l\q3&14j4jcss/editor.min.cssnu[/*! This file is auto-generated */ .mce-tinymce{box-shadow:none}.mce-container,.mce-container *,.mce-widget,.mce-widget *{color:inherit;font-family:inherit}.mce-container .mce-monospace,.mce-widget .mce-monospace{font-family:Consolas,Monaco,monospace;font-size:13px;line-height:150%}#mce-modal-block,#mce-modal-block.mce-fade{opacity:.7;transition:none;background:#000}.mce-window{border-radius:0;box-shadow:0 3px 6px rgba(0,0,0,.3);-webkit-font-smoothing:subpixel-antialiased;transition:none}.mce-window .mce-container-body.mce-abs-layout{overflow:visible}.mce-window .mce-window-head{background:#fff;border-bottom:1px solid #dcdcde;padding:0;min-height:36px}.mce-window .mce-window-head .mce-title{color:#3c434a;font-size:18px;font-weight:600;line-height:36px;margin:0;padding:0 36px 0 16px}.mce-window .mce-window-head .mce-close,.mce-window-head .mce-close .mce-i-remove{color:transparent;top:0;right:0;width:36px;height:36px;padding:0;line-height:36px;text-align:center}.mce-window-head .mce-close .mce-i-remove:before{font:normal 20px/36px dashicons;text-align:center;color:#646970;width:36px;height:36px;display:block}.mce-window-head .mce-close:focus .mce-i-remove:before,.mce-window-head .mce-close:hover .mce-i-remove:before{color:#135e96}.mce-window-head .mce-close:focus .mce-i-remove,div.mce-tab:focus{box-shadow:0 0 0 1px #4f94d4,0 0 2px 1px rgba(79,148,212,.8)}.mce-window .mce-window-head .mce-dragh{width:calc(100% - 36px)}.mce-window .mce-foot{border-top:1px solid #dcdcde}#wp-link .query-results,.mce-checkbox i.mce-i-checkbox,.mce-textbox{border:1px solid #dcdcde;border-radius:0;box-shadow:inset 0 1px 2px rgba(0,0,0,.07);transition:.05s all ease-in-out}#wp-link .query-results:focus,.mce-checkbox:focus i.mce-i-checkbox,.mce-textbox.mce-focus,.mce-textbox:focus{border-color:#4f94d4;box-shadow:0 0 2px rgba(79,148,212,.8)}.mce-window .mce-wp-help{height:360px;width:460px;overflow:auto}.mce-window .mce-wp-help *{box-sizing:border-box}.mce-window .mce-wp-help>.mce-container-body{width:auto!important}.mce-window .wp-editor-help{padding:10px 10px 0 20px}.mce-window .wp-editor-help h2,.mce-window .wp-editor-help p{margin:8px 0;white-space:normal;font-size:14px;font-weight:400}.mce-window .wp-editor-help table{width:100%;margin-bottom:20px}.mce-window .wp-editor-help table.wp-help-single{margin:0 8px 20px}.mce-window .wp-editor-help table.fixed{table-layout:fixed}.mce-window .wp-editor-help table.fixed td:nth-child(odd),.mce-window .wp-editor-help table.fixed th:nth-child(odd){width:12%}.mce-window .wp-editor-help table.fixed td:nth-child(even),.mce-window .wp-editor-help table.fixed th:nth-child(even){width:38%}.mce-window .wp-editor-help table.fixed th:nth-child(odd){padding:5px 0 0}.mce-window .wp-editor-help td,.mce-window .wp-editor-help th{font-size:13px;padding:5px;vertical-align:middle;word-wrap:break-word;white-space:normal}.mce-window .wp-editor-help th{font-weight:600;padding-bottom:0}.mce-window .wp-editor-help kbd{font-family:monospace;padding:2px 7px 3px;font-weight:600;margin:0;background:#f0f0f1;background:rgba(0,0,0,.08)}.mce-window .wp-help-th-center td:nth-child(odd),.mce-window .wp-help-th-center th:nth-child(odd){text-align:center}.mce-floatpanel.mce-popover,.mce-menu{border-color:rgba(0,0,0,.15);border-radius:0;box-shadow:0 3px 5px rgba(0,0,0,.2)}.mce-floatpanel.mce-popover.mce-bottom,.mce-menu{margin-top:2px}.mce-floatpanel .mce-arrow{display:none}.mce-menu .mce-container-body{min-width:160px}.mce-menu-item{border:none;margin-bottom:2px;padding:6px 15px 6px 12px}.mce-menu-has-icons i.mce-ico{line-height:20px}div.mce-panel{border:0;background:#fff}.mce-panel.mce-menu{border:1px solid #dcdcde}div.mce-tab{line-height:13px}div.mce-toolbar-grp{border-bottom:1px solid #dcdcde;background:#f6f7f7;padding:0;position:relative}div.mce-inline-toolbar-grp{border:1px solid #a7aaad;border-radius:2px;box-shadow:0 1px 3px rgba(0,0,0,.15);box-sizing:border-box;margin-bottom:8px;position:absolute;-webkit-user-select:none;user-select:none;max-width:98%;z-index:100100}div.mce-inline-toolbar-grp>div.mce-stack-layout{padding:1px}div.mce-inline-toolbar-grp.mce-arrow-up{margin-bottom:0;margin-top:8px}div.mce-inline-toolbar-grp:after,div.mce-inline-toolbar-grp:before{position:absolute;left:50%;display:block;width:0;height:0;border-style:solid;border-color:transparent;content:""}div.mce-inline-toolbar-grp.mce-arrow-up:before{top:-9px;border-bottom-color:#a7aaad;border-width:0 9px 9px;margin-left:-9px}div.mce-inline-toolbar-grp.mce-arrow-down:before{bottom:-9px;border-top-color:#a7aaad;border-width:9px 9px 0;margin-left:-9px}div.mce-inline-toolbar-grp.mce-arrow-up:after{top:-8px;border-bottom-color:#f6f7f7;border-width:0 8px 8px;margin-left:-8px}div.mce-inline-toolbar-grp.mce-arrow-down:after{bottom:-8px;border-top-color:#f6f7f7;border-width:8px 8px 0;margin-left:-8px}div.mce-inline-toolbar-grp.mce-arrow-left:after,div.mce-inline-toolbar-grp.mce-arrow-left:before{margin:0}div.mce-inline-toolbar-grp.mce-arrow-left:before{left:20px}div.mce-inline-toolbar-grp.mce-arrow-left:after{left:21px}div.mce-inline-toolbar-grp.mce-arrow-right:after,div.mce-inline-toolbar-grp.mce-arrow-right:before{left:auto;margin:0}div.mce-inline-toolbar-grp.mce-arrow-right:before{right:20px}div.mce-inline-toolbar-grp.mce-arrow-right:after{right:21px}div.mce-inline-toolbar-grp.mce-arrow-full{right:0}div.mce-inline-toolbar-grp.mce-arrow-full>div{width:100%;overflow-x:auto}div.mce-toolbar-grp>div{padding:3px}.has-dfw div.mce-toolbar-grp .mce-toolbar.mce-first{padding-right:32px}.mce-toolbar .mce-btn-group{margin:0}.block-library-classic__toolbar .mce-toolbar-grp .mce-toolbar:not(:first-child){display:none}.block-library-classic__toolbar.has-advanced-toolbar .mce-toolbar-grp .mce-toolbar{display:block}div.mce-statusbar{border-top:1px solid #dcdcde}div.mce-path{padding:2px 10px;margin:0}.mce-path,.mce-path .mce-divider,.mce-path-item{font-size:12px}.mce-toolbar .mce-btn,.qt-dfw{border-color:transparent;background:0 0;box-shadow:none;text-shadow:none;cursor:pointer}.mce-btn .mce-txt{direction:inherit;text-align:inherit}.mce-toolbar .mce-btn-group .mce-btn,.qt-dfw{border:1px solid transparent;margin:2px;border-radius:2px}.mce-toolbar .mce-btn-group .mce-btn:focus,.mce-toolbar .mce-btn-group .mce-btn:hover,.qt-dfw:focus,.qt-dfw:hover{background:#f6f7f7;border-color:#50575e;color:#1d2327;box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,.08);outline:0}.mce-toolbar .mce-btn-group .mce-btn.mce-active,.mce-toolbar .mce-btn-group .mce-btn:active,.qt-dfw.active{background:#f0f0f1;border-color:#50575e;box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.3)}.mce-btn.mce-active,.mce-btn.mce-active button,.mce-btn.mce-active i,.mce-btn.mce-active:hover button,.mce-btn.mce-active:hover i{color:inherit}.mce-toolbar .mce-btn-group .mce-btn.mce-active:focus,.mce-toolbar .mce-btn-group .mce-btn.mce-active:hover{border-color:#1d2327}.mce-toolbar .mce-btn-group .mce-btn.mce-disabled:focus,.mce-toolbar .mce-btn-group .mce-btn.mce-disabled:hover{color:#a7aaad;background:0 0;border-color:#dcdcde;text-shadow:0 1px 0 #fff;box-shadow:none}.mce-toolbar .mce-btn-group .mce-btn.mce-disabled:focus{border-color:#50575e}.mce-toolbar .mce-btn-group .mce-first,.mce-toolbar .mce-btn-group .mce-last{border-color:transparent}.mce-toolbar .mce-btn button,.qt-dfw{padding:2px 3px;line-height:normal}.mce-toolbar .mce-listbox button{font-size:13px;line-height:1.53846153;padding-left:6px;padding-right:20px}.mce-toolbar .mce-btn i{text-shadow:none}.mce-toolbar .mce-btn-group>div{white-space:normal}.mce-toolbar .mce-colorbutton .mce-open{border-right:0}.mce-toolbar .mce-colorbutton .mce-preview{margin:0;padding:0;top:auto;bottom:2px;left:3px;height:3px;width:20px;background:#50575e}.mce-toolbar .mce-btn-group .mce-btn.mce-primary{min-width:0;background:#3582c4;border-color:#2271b1 #135e96 #135e96;box-shadow:0 1px 0 #135e96;color:#fff;text-decoration:none;text-shadow:none}.mce-toolbar .mce-btn-group .mce-btn.mce-primary button{padding:2px 3px 1px}.mce-toolbar .mce-btn-group .mce-btn.mce-primary .mce-ico{color:#fff}.mce-toolbar .mce-btn-group .mce-btn.mce-primary:focus,.mce-toolbar .mce-btn-group .mce-btn.mce-primary:hover{background:#4f94d4;border-color:#135e96;color:#fff}.mce-toolbar .mce-btn-group .mce-btn.mce-primary:focus{box-shadow:0 0 1px 1px #72aee6}.mce-toolbar .mce-btn-group .mce-btn.mce-primary:active{background:#2271b1;border-color:#135e96;box-shadow:inset 0 2px 0 #135e96}.mce-toolbar .mce-btn-group .mce-btn.mce-listbox{border-radius:0;direction:ltr;background:#fff;border:1px solid #dcdcde;box-shadow:inset 0 1px 1px -1px rgba(0,0,0,.2)}.mce-toolbar .mce-btn-group .mce-btn.mce-listbox:focus,.mce-toolbar .mce-btn-group .mce-btn.mce-listbox:hover{border-color:#c3c4c7}.mce-panel .mce-btn i.mce-caret{border-top:6px solid #50575e;margin-left:2px;margin-right:2px}.mce-listbox i.mce-caret{right:4px}.mce-panel .mce-btn:focus i.mce-caret,.mce-panel .mce-btn:hover i.mce-caret{border-top-color:#1d2327}.mce-panel .mce-active i.mce-caret{border-top:0;border-bottom:6px solid #1d2327;margin-top:7px}.mce-listbox.mce-active i.mce-caret{margin-top:-3px}.mce-toolbar .mce-splitbtn:hover .mce-open{border-right-color:transparent}.mce-toolbar .mce-splitbtn .mce-open.mce-active{background:0 0;outline:0}.mce-menu .mce-menu-item.mce-active.mce-menu-item-normal,.mce-menu .mce-menu-item.mce-active.mce-menu-item-preview,.mce-menu .mce-menu-item.mce-selected,.mce-menu .mce-menu-item:focus,.mce-menu .mce-menu-item:hover{background:#2271b1;color:#fff}.mce-menu .mce-menu-item.mce-selected .mce-caret,.mce-menu .mce-menu-item:focus .mce-caret,.mce-menu .mce-menu-item:hover .mce-caret{border-left-color:#fff}.rtl .mce-menu .mce-menu-item.mce-selected .mce-caret,.rtl .mce-menu .mce-menu-item:focus .mce-caret,.rtl .mce-menu .mce-menu-item:hover .mce-caret{border-left-color:inherit;border-right-color:#fff}.mce-menu .mce-menu-item.mce-active .mce-menu-shortcut,.mce-menu .mce-menu-item.mce-disabled:hover .mce-ico,.mce-menu .mce-menu-item.mce-disabled:hover .mce-text,.mce-menu .mce-menu-item.mce-selected .mce-ico,.mce-menu .mce-menu-item.mce-selected .mce-text,.mce-menu .mce-menu-item:focus .mce-ico,.mce-menu .mce-menu-item:focus .mce-menu-shortcut,.mce-menu .mce-menu-item:focus .mce-text,.mce-menu .mce-menu-item:hover .mce-ico,.mce-menu .mce-menu-item:hover .mce-menu-shortcut,.mce-menu .mce-menu-item:hover .mce-text{color:inherit}.mce-menu .mce-menu-item.mce-disabled{cursor:default}.mce-menu .mce-menu-item.mce-disabled:hover{background:#c3c4c7}div.mce-menubar{border-color:#dcdcde;background:#fff;border-width:0 0 1px}.mce-menubar .mce-menubtn.mce-active,.mce-menubar .mce-menubtn:focus,.mce-menubar .mce-menubtn:hover{border-color:transparent;background:0 0}.mce-menubar .mce-menubtn:focus{color:#043959;box-shadow:0 0 0 1px #4f94d4,0 0 2px 1px rgba(79,148,212,.8)}.mce-menu-item-sep:hover,div.mce-menu .mce-menu-item-sep{border-bottom:1px solid #dcdcde;height:0;margin:5px 0}.mce-menubtn span{margin-right:0;padding-left:3px}.mce-menu-has-icons i.mce-ico:before{margin-left:-2px}.mce-menu.mce-menu-align .mce-menu-item-normal{position:relative}.mce-menu.mce-menu-align .mce-menu-shortcut{bottom:.6em;font-size:.9em}.mce-primary button,.mce-primary button i{text-align:center;color:#fff;text-shadow:none;padding:0;line-height:1.85714285}.mce-window .mce-btn{color:#50575e;background:#f6f7f7;text-decoration:none;font-size:13px;line-height:26px;height:28px;margin:0;padding:0;cursor:pointer;border:1px solid #c3c4c7;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-shadow:0 1px 0 #c3c4c7}.mce-window .mce-btn::-moz-focus-inner{border-width:0;border-style:none;padding:0}.mce-window .mce-btn:focus,.mce-window .mce-btn:hover{background:#f6f7f7;border-color:#8c8f94;color:#1d2327}.mce-window .mce-btn:focus{border-color:#4f94d4;box-shadow:0 0 3px rgba(34,113,177,.8)}.mce-window .mce-btn:active{background:#f0f0f1;border-color:#8c8f94;box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);transform:translateY(1px)}.mce-window .mce-btn.mce-disabled{color:#a7aaad!important;border-color:#dcdcde!important;background:#f6f7f7!important;box-shadow:none!important;text-shadow:0 1px 0 #fff!important;cursor:default;transform:none!important}.mce-window .mce-btn.mce-primary{background:#3582c4;border-color:#2271b1 #135e96 #135e96;box-shadow:0 1px 0 #135e96;color:#fff;text-decoration:none;text-shadow:0 -1px 1px #135e96,1px 0 1px #135e96,0 1px 1px #135e96,-1px 0 1px #135e96}.mce-window .mce-btn.mce-primary:focus,.mce-window .mce-btn.mce-primary:hover{background:#4f94d4;border-color:#135e96;color:#fff}.mce-window .mce-btn.mce-primary:focus{box-shadow:0 1px 0 #2271b1,0 0 2px 1px #72aee6}.mce-window .mce-btn.mce-primary:active{background:#2271b1;border-color:#135e96;box-shadow:inset 0 2px 0 #135e96;vertical-align:top}.mce-window .mce-btn.mce-primary.mce-disabled{color:#9ec2e6!important;background:#4f94d4!important;border-color:#3582c4!important;box-shadow:none!important;text-shadow:0 -1px 0 rgba(0,0,0,.1)!important;cursor:default}.mce-menubtn.mce-fixed-width span{overflow-x:hidden;text-overflow:ellipsis;width:82px}.mce-charmap{margin:3px}.mce-charmap td{padding:0;border-color:#dcdcde;cursor:pointer}.mce-charmap td:hover{background:#f6f7f7}.mce-charmap td div{width:18px;height:22px;line-height:1.57142857}.mce-tooltip{margin-top:2px}.mce-tooltip-inner{border-radius:3px;box-shadow:0 3px 5px rgba(0,0,0,.2);color:#fff;font-size:12px}.mce-ico{font-family:tinymce,Arial}.mce-btn-small .mce-ico{font-family:tinymce-small,Arial}.mce-toolbar .mce-ico{color:#50575e;line-height:1;width:20px;height:20px;text-align:center;text-shadow:none;margin:0;padding:0}.qt-dfw{color:#50575e;line-height:1;width:28px;height:26px;text-align:center;text-shadow:none}.mce-toolbar .mce-btn .mce-open{line-height:20px}.mce-toolbar .mce-btn.mce-active .mce-open,.mce-toolbar .mce-btn:focus .mce-open,.mce-toolbar .mce-btn:hover .mce-open{border-left-color:#1d2327}div.mce-notification{left:10%!important;right:10%}.mce-notification button.mce-close{right:6px;top:3px;font-weight:400;color:#50575e}.mce-notification button.mce-close:focus,.mce-notification button.mce-close:hover{color:#000}i.mce-i-aligncenter,i.mce-i-alignjustify,i.mce-i-alignleft,i.mce-i-alignright,i.mce-i-backcolor,i.mce-i-blockquote,i.mce-i-bold,i.mce-i-bullist,i.mce-i-charmap,i.mce-i-dashicon,i.mce-i-dfw,i.mce-i-forecolor,i.mce-i-fullscreen,i.mce-i-help,i.mce-i-hr,i.mce-i-indent,i.mce-i-italic,i.mce-i-link,i.mce-i-ltr,i.mce-i-numlist,i.mce-i-outdent,i.mce-i-pastetext,i.mce-i-pasteword,i.mce-i-redo,i.mce-i-remove,i.mce-i-removeformat,i.mce-i-spellchecker,i.mce-i-strikethrough,i.mce-i-underline,i.mce-i-undo,i.mce-i-unlink,i.mce-i-wp-media-library,i.mce-i-wp_adv,i.mce-i-wp_code,i.mce-i-wp_fullscreen,i.mce-i-wp_help,i.mce-i-wp_more,i.mce-i-wp_page{font:normal 20px/1 dashicons;padding:0;vertical-align:top;speak:never;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin-left:-2px;padding-right:2px}.qt-dfw{font:normal 20px/1 dashicons;vertical-align:top;speak:never;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}i.mce-i-bold:before{content:"\f200"}i.mce-i-italic:before{content:"\f201"}i.mce-i-bullist:before{content:"\f203"}i.mce-i-numlist:before{content:"\f204"}i.mce-i-blockquote:before{content:"\f205"}i.mce-i-alignleft:before{content:"\f206"}i.mce-i-aligncenter:before{content:"\f207"}i.mce-i-alignright:before{content:"\f208"}i.mce-i-link:before{content:"\f103"}i.mce-i-unlink:before{content:"\f225"}i.mce-i-wp_more:before{content:"\f209"}i.mce-i-strikethrough:before{content:"\f224"}i.mce-i-spellchecker:before{content:"\f210"}.qt-dfw:before,i.mce-i-dfw:before,i.mce-i-fullscreen:before,i.mce-i-wp_fullscreen:before{content:"\f211"}i.mce-i-wp_adv:before{content:"\f212"}i.mce-i-underline:before{content:"\f213"}i.mce-i-alignjustify:before{content:"\f214"}i.mce-i-backcolor:before,i.mce-i-forecolor:before{content:"\f215"}i.mce-i-pastetext:before{content:"\f217"}i.mce-i-removeformat:before{content:"\f218"}i.mce-i-charmap:before{content:"\f220"}i.mce-i-outdent:before{content:"\f221"}i.mce-i-indent:before{content:"\f222"}i.mce-i-undo:before{content:"\f171"}i.mce-i-redo:before{content:"\f172"}i.mce-i-help:before,i.mce-i-wp_help:before{content:"\f223"}i.mce-i-wp-media-library:before{content:"\f104"}i.mce-i-ltr:before{content:"\f320"}i.mce-i-wp_page:before{content:"\f105"}i.mce-i-hr:before{content:"\f460"}i.mce-i-remove:before{content:"\f158"}i.mce-i-wp_code:before{content:"\f475"}.rtl i.mce-i-outdent:before{content:"\f222"}.rtl i.mce-i-indent:before{content:"\f221"}.wp-editor-wrap{position:relative}.wp-editor-tools{position:relative;z-index:1}.wp-editor-tools:after{clear:both;content:"";display:table}.wp-editor-container{clear:both;border:1px solid #dcdcde}.wp-editor-area{font-family:Consolas,Monaco,monospace;font-size:13px;padding:10px;margin:1px 0 0;line-height:150%;border:0;outline:0;display:block;resize:vertical;box-sizing:border-box}.rtl .wp-editor-area{font-family:Tahoma,Monaco,monospace}.locale-he-il .wp-editor-area{font-family:Arial,Monaco,monospace}.wp-editor-container textarea.wp-editor-area{width:100%;margin:0;box-shadow:none}.wp-editor-tabs{float:right}.wp-switch-editor{float:left;box-sizing:content-box;position:relative;top:1px;background:#f0f0f1;color:#646970;cursor:pointer;font-size:13px;line-height:1.46153846;height:20px;margin:5px 0 0 5px;padding:3px 8px 4px;border:1px solid #dcdcde}.wp-switch-editor:focus{box-shadow:0 0 0 1px #4f94d4,0 0 2px 1px rgba(79,148,212,.8);outline:0;color:#1d2327}.html-active .switch-html:focus,.tmce-active .switch-tmce:focus,.wp-switch-editor:active{box-shadow:none}.wp-switch-editor:active{background-color:#f6f7f7;box-shadow:none}.js .tmce-active .wp-editor-area{color:#fff}.tmce-active .quicktags-toolbar{display:none}.html-active .switch-html,.tmce-active .switch-tmce{background:#f6f7f7;color:#50575e;border-bottom-color:#f6f7f7}.wp-media-buttons{float:left}.wp-media-buttons .button{margin-right:5px;margin-bottom:4px;padding-left:7px;padding-right:7px}.wp-media-buttons .button:active{position:relative;top:1px;margin-top:-1px;margin-bottom:1px}.wp-media-buttons .insert-media{padding-left:5px}.wp-media-buttons a{text-decoration:none;color:#3c434a;font-size:12px}.wp-media-buttons img{padding:0 4px;vertical-align:middle}.wp-media-buttons span.wp-media-buttons-icon{display:inline-block;width:20px;height:20px;line-height:1;vertical-align:middle;margin:0 2px}.wp-media-buttons .add_media span.wp-media-buttons-icon{background:0 0}.wp-media-buttons .add_media span.wp-media-buttons-icon:before{font:normal 18px/1 dashicons;speak:never;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.wp-media-buttons .add_media span.wp-media-buttons-icon:before{content:"\f104"}.mce-content-body dl.wp-caption{max-width:100%}.quicktags-toolbar{padding:3px;position:relative;border-bottom:1px solid #dcdcde;background:#f6f7f7;min-height:30px}.has-dfw .quicktags-toolbar{padding-right:35px}.wp-core-ui .quicktags-toolbar input.button.button-small{margin:2px}.quicktags-toolbar input[value=link]{text-decoration:underline}.quicktags-toolbar input[value=del]{text-decoration:line-through}.quicktags-toolbar input[value="i"]{font-style:italic}.quicktags-toolbar input[value="b"]{font-weight:600}.mce-toolbar .mce-btn-group .mce-btn.mce-wp-dfw,.qt-dfw{position:absolute;top:0;right:0}.mce-toolbar .mce-btn-group .mce-btn.mce-wp-dfw{margin:7px 7px 0 0}.qt-dfw{margin:5px 5px 0 0}.qt-fullscreen{position:static;margin:2px}@media screen and (max-width:782px){.mce-toolbar .mce-btn button,.qt-dfw{padding:6px 7px}.mce-toolbar .mce-btn-group .mce-btn.mce-primary button{padding:6px 7px 5px}.mce-toolbar .mce-btn-group .mce-btn{margin:1px}.qt-dfw{width:36px;height:34px}.mce-toolbar .mce-btn-group .mce-btn.mce-wp-dfw{margin:4px 4px 0 0}.mce-toolbar .mce-colorbutton .mce-preview{left:8px;bottom:6px}.mce-window .mce-btn{padding:2px 0}.has-dfw .quicktags-toolbar,.has-dfw div.mce-toolbar-grp .mce-toolbar.mce-first{padding-right:40px}}@media screen and (min-width:782px){.wp-core-ui .quicktags-toolbar input.button.button-small{font-size:12px;min-height:26px;line-height:2}}#wp_editbtns,#wp_gallerybtns{padding:2px;position:absolute;display:none;z-index:100020}#wp_delgallery,#wp_delimgbtn,#wp_editgallery,#wp_editimgbtn{background-color:#f0f0f1;margin:2px;padding:2px;border:1px solid #8c8f94;border-radius:3px}#wp_delgallery:hover,#wp_delimgbtn:hover,#wp_editgallery:hover,#wp_editimgbtn:hover{border-color:#50575e;background-color:#c3c4c7}#wp-link-wrap{display:none;background-color:#fff;box-shadow:0 3px 6px rgba(0,0,0,.3);width:500px;overflow:hidden;margin-left:-250px;margin-top:-125px;position:fixed;top:50%;left:50%;z-index:100105;transition:height .2s,margin-top .2s}#wp-link-backdrop{display:none;position:fixed;top:0;left:0;right:0;bottom:0;min-height:360px;background:#000;opacity:.7;z-index:100100}#wp-link{position:relative;height:100%}#wp-link-wrap{height:500px;margin-top:-250px}#wp-link-wrap .wp-link-text-field{display:none}#wp-link-wrap.has-text-field .wp-link-text-field{display:block}#link-modal-title{background:#fff;border-bottom:1px solid #dcdcde;height:36px;font-size:18px;font-weight:600;line-height:2;margin:0;padding:0 36px 0 16px}#wp-link-close{color:#646970;padding:0;position:absolute;top:0;right:0;width:36px;height:36px;text-align:center;background:0 0;border:none;cursor:pointer}#wp-link-close:before{font:normal 20px/36px dashicons;vertical-align:top;speak:never;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:36px;height:36px;content:"\f158"}#wp-link-close:focus,#wp-link-close:hover{color:#135e96}#wp-link-close:focus{outline:0;box-shadow:0 0 0 1px #4f94d4,0 0 2px 1px rgba(79,148,212,.8);outline:2px solid transparent;outline-offset:-2px}#wp-link-wrap #link-selector{-webkit-overflow-scrolling:touch;padding:0 16px;position:absolute;top:37px;left:0;right:0;bottom:44px}#wp-link ol,#wp-link ul{list-style:none;margin:0;padding:0}#wp-link input[type=text]{box-sizing:border-box}#wp-link #link-options{padding:8px 0 12px}#wp-link p.howto{margin:3px 0}#wp-link p.howto a{text-decoration:none;color:inherit}#wp-link label input[type=text]{margin-top:5px;width:70%}#wp-link #link-options label span,#wp-link #search-panel label span.search-label{display:inline-block;width:80px;text-align:right;padding-right:5px;max-width:24%;vertical-align:middle;word-wrap:break-word}#wp-link .link-search-field{width:250px;max-width:70%}#wp-link .link-search-wrapper{margin:5px 0 9px;display:block;overflow:hidden}#wp-link .link-search-wrapper .spinner{float:none;margin:-3px 0 0 4px}#wp-link .link-target{padding:3px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#wp-link .link-target label{max-width:70%}#wp-link .query-results{border:1px #dcdcde solid;margin:0 0 12px;background:#fff;overflow:auto;position:absolute;left:16px;right:16px;bottom:0;top:166px}.has-text-field #wp-link .query-results{top:210px}#wp-link li{clear:both;margin-bottom:0;border-bottom:1px solid #f0f0f1;color:#2c3338;padding:4px 6px 4px 10px;cursor:pointer;position:relative}#wp-link .query-notice{padding:0;border-bottom:1px solid #dcdcde;background-color:#fff;color:#000}#wp-link .query-notice .query-notice-default,#wp-link .query-notice .query-notice-hint{display:block;padding:6px;border-left:4px solid #72aee6}#wp-link .unselectable.no-matches-found{padding:0;border-bottom:1px solid #dcdcde;background-color:#f6f7f7}#wp-link .no-matches-found .item-title{display:block;padding:6px;border-left:4px solid #d63638}#wp-link .query-results em{font-style:normal}#wp-link li:hover{background:#f0f6fc;color:#101517}#wp-link li.unselectable{border-bottom:1px solid #dcdcde}#wp-link li.unselectable:hover{background:#fff;cursor:auto;color:#2c3338}#wp-link li.selected{background:#dcdcde;color:#2c3338}#wp-link li.selected .item-title{font-weight:600}#wp-link li:last-child{border:none}#wp-link .item-title{display:inline-block;width:80%;width:calc(100% - 68px);word-wrap:break-word}#wp-link .item-info{text-transform:uppercase;color:#646970;font-size:11px;position:absolute;right:5px;top:5px}#wp-link .river-waiting{display:none;padding:10px 0}#wp-link .submitbox{padding:8px 16px;background:#fff;border-top:1px solid #dcdcde;position:absolute;bottom:0;left:0;right:0}#wp-link-cancel{line-height:1.92307692;float:left}#wp-link-update{line-height:1.76923076;float:right}#wp-link-submit{float:right}@media screen and (max-width:782px){#wp-link-wrap{margin-top:-140px}#wp-link-wrap .query-results{top:195px}#wp-link-wrap.has-text-field .query-results{top:235px}#link-selector{padding:0 16px 60px}#wp-link-wrap #link-selector{bottom:52px}#wp-link-cancel{line-height:2.46153846}#wp-link .link-target{padding-top:10px}#wp-link .submitbox .button{margin-bottom:0}}@media screen and (max-width:520px){#wp-link-wrap{width:auto;margin-left:0;left:10px;right:10px;max-width:500px}}@media screen and (max-height:520px){#wp-link-wrap{transition:none;height:auto;margin-top:0;top:10px;bottom:10px}#link-selector{overflow:auto}#search-panel .query-results{position:static}}@media screen and (max-height:290px){#wp-link-wrap{height:auto;margin-top:0;top:10px;bottom:10px}#link-selector{overflow:auto;height:calc(100% - 92px);padding-bottom:2px}#search-panel .query-results{position:static}}div.wp-link-preview{float:left;margin:5px;max-width:694px;overflow:hidden;text-overflow:ellipsis}div.wp-link-preview a{color:#2271b1;text-decoration:underline;transition-property:border,background,color;transition-duration:.05s;transition-timing-function:ease-in-out;cursor:pointer}div.wp-link-preview a.wplink-url-error{color:#d63638}div.wp-link-input{float:left;margin:2px;max-width:694px}div.wp-link-input input{width:300px;padding:3px;box-sizing:border-box;line-height:1.28571429;min-height:26px}.mce-toolbar div.wp-link-input~.mce-btn,.mce-toolbar div.wp-link-preview~.mce-btn{margin:2px 1px}.mce-inline-toolbar-grp .mce-btn-group .mce-btn:last-child{margin-right:2px}.ui-autocomplete.wplink-autocomplete{z-index:100110;max-height:200px;overflow-y:auto;padding:0;margin:0;list-style:none;position:absolute;border:1px solid #4f94d4;box-shadow:0 1px 2px rgba(79,148,212,.8);background-color:#fff}.ui-autocomplete.wplink-autocomplete li{margin-bottom:0;padding:4px 10px;clear:both;white-space:normal;text-align:left}.ui-autocomplete.wplink-autocomplete li .wp-editor-float-right{float:right}.ui-autocomplete.wplink-autocomplete li.ui-state-focus{background-color:#dcdcde;cursor:pointer}@media screen and (max-width:782px){div.wp-link-input,div.wp-link-preview{max-width:70%;max-width:calc(100% - 86px)}div.wp-link-preview{margin:8px 0 8px 5px}div.wp-link-input{width:300px}div.wp-link-input input{width:100%;font-size:16px;padding:5px}}.mce-fullscreen{z-index:100010}.rtl .quicktags-toolbar input,.rtl .wp-switch-editor{font-family:Tahoma,sans-serif}.mce-rtl .mce-flow-layout .mce-flow-layout-item>div{direction:rtl}.mce-rtl .mce-listbox i.mce-caret{left:6px}html:lang(he-il) .rtl .quicktags-toolbar input,html:lang(he-il) .rtl .wp-switch-editor{font-family:Arial,sans-serif}@media print,(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){.wp-media-buttons .add_media span.wp-media-buttons-icon{background:0 0}}PKj l\2 css/jquery-ui-dialog-rtl.min.cssnu[/*! This file is auto-generated */ /*! * jQuery UI CSS Framework 1.11.4 * http://jqueryui.com * * Copyright jQuery Foundation and other contributors * Released under the MIT license. * http://jquery.org/license * * http://api.jqueryui.com/category/theming/ */.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:after,.ui-helper-clearfix:before{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;right:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;right:0;width:100%;height:100%}/*! * jQuery UI Resizable 1.11.4 * http://jqueryui.com * * Copyright jQuery Foundation and other contributors * Released under the MIT license. * http://jquery.org/license */.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:.1px;display:block;touch-action:none}.ui-resizable-autohide .ui-resizable-handle,.ui-resizable-disabled .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;right:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;right:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.ui-button{display:inline-block;text-decoration:none;font-size:13px;line-height:2;height:28px;margin:0;padding:0 10px 1px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-sizing:border-box;color:#50575e;border-color:#c3c4c7;background:#f6f7f7;box-shadow:0 1px 0 #c3c4c7;vertical-align:top}.ui-button:active,.ui-button:focus{outline:0}.ui-button::-moz-focus-inner{border-width:0;border-style:none;padding:0}.ui-button:focus,.ui-button:hover{background:#f6f7f7;border-color:#8c8f94;color:#1d2327}.ui-button:focus{border-color:#4f94d4;box-shadow:0 0 3px rgba(34,113,177,.8)}.ui-button:active{background:#f0f0f1;border-color:#8c8f94;box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5)}.ui-button:disabled,.ui-button[disabled]{color:#a7aaad!important;border-color:#dcdcde!important;background:#f6f7f7!important;box-shadow:none!important;text-shadow:0 1px 0 #fff!important;cursor:default;transform:none!important}@media screen and (max-width:782px){.ui-button{padding:6px 14px;line-height:normal;font-size:14px;vertical-align:middle;height:auto;margin-bottom:4px}}.ui-dialog{position:absolute;top:0;right:0;z-index:100102;background-color:#fff;box-shadow:0 3px 6px rgba(0,0,0,.3);overflow:hidden}.ui-dialog-titlebar{background:#fff;border-bottom:1px solid #dcdcde;height:36px;font-size:18px;font-weight:600;line-height:2;padding:0 16px 0 36px}.ui-button.ui-dialog-titlebar-close{background:0 0;border:none;box-shadow:none;color:#646970;cursor:pointer;display:block;padding:0;position:absolute;top:0;left:0;width:36px;height:36px;text-align:center;border-radius:0;overflow:hidden}.ui-dialog-titlebar-close:before{font:normal 20px/1 dashicons;vertical-align:top;speak:never;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.8;width:36px;height:36px;content:"\f158"}.ui-button.ui-dialog-titlebar-close:focus,.ui-button.ui-dialog-titlebar-close:hover{color:#135e96}.ui-button.ui-dialog-titlebar-close:focus{box-shadow:0 0 0 1px #4f94d4,0 0 2px 1px rgba(79,148,212,.8);outline:2px solid transparent;outline-offset:-2px}.ui-dialog-content{padding:16px;overflow:auto}.ui-dialog-buttonpane{background:#fff;border-top:1px solid #dcdcde;padding:16px}.ui-dialog-buttonpane .ui-button{margin-right:16px}.ui-dialog-buttonpane .ui-dialog-buttonset{float:left}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-widget-overlay{position:fixed;top:0;right:0;left:0;bottom:0;min-height:360px;background:#000;opacity:.7;z-index:100101}PKj l\OOcss/jquery-ui-dialog-rtl.cssnu[/*! This file is auto-generated */ /*! * jQuery UI CSS Framework 1.11.4 * http://jqueryui.com * * Copyright jQuery Foundation and other contributors * Released under the MIT license. * http://jquery.org/license * * http://api.jqueryui.com/category/theming/ */ /* Layout helpers ----------------------------------*/ .ui-helper-hidden { display: none; } .ui-helper-hidden-accessible { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; } .ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; } .ui-helper-clearfix:before, .ui-helper-clearfix:after { content: ""; display: table; border-collapse: collapse; } .ui-helper-clearfix:after { clear: both; } .ui-helper-clearfix { min-height: 0; /* support: IE7 */ } .ui-helper-zfix { width: 100%; height: 100%; top: 0; right: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); /* support: IE8 */ } .ui-front { z-index: 100; } /* Interaction Cues ----------------------------------*/ .ui-state-disabled { cursor: default !important; } /* Icons ----------------------------------*/ /* states and images */ .ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; } /* Misc visuals ----------------------------------*/ /* Overlays */ .ui-widget-overlay { position: fixed; top: 0; right: 0; width: 100%; height: 100%; } /*! * jQuery UI Resizable 1.11.4 * http://jqueryui.com * * Copyright jQuery Foundation and other contributors * Released under the MIT license. * http://jquery.org/license */ .ui-resizable { position: relative; } .ui-resizable-handle { position: absolute; font-size: 0.1px; display: block; touch-action: none; } .ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; } .ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; right: 0; } .ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; right: 0; } /* rtl:ignore */ .ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0; height: 100%; } /* rtl:ignore */ .ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0; height: 100%; } /* rtl:ignore */ .ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; } /* rtl:ignore */ .ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; } /* rtl:ignore */ .ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; } /* rtl:ignore */ .ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px; } /* WP buttons: see buttons.css. */ .ui-button { display: inline-block; text-decoration: none; font-size: 13px; line-height: 2; height: 28px; margin: 0; padding: 0 10px 1px; cursor: pointer; border-width: 1px; border-style: solid; -webkit-appearance: none; border-radius: 3px; white-space: nowrap; box-sizing: border-box; color: #50575e; border-color: #c3c4c7; background: #f6f7f7; box-shadow: 0 1px 0 #c3c4c7; vertical-align: top; } .ui-button:active, .ui-button:focus { outline: none; } /* Remove the dotted border on :focus and the extra padding in Firefox */ .ui-button::-moz-focus-inner { border-width: 0; border-style: none; padding: 0; } .ui-button:hover, .ui-button:focus { background: #f6f7f7; border-color: #8c8f94; color: #1d2327; } .ui-button:focus { border-color: #4f94d4; box-shadow: 0 0 3px rgba(34, 113, 177, 0.8); } .ui-button:active { background: #f0f0f1; border-color: #8c8f94; box-shadow: inset 0 2px 5px -3px rgba(0, 0, 0, 0.5); } .ui-button[disabled], .ui-button:disabled { color: #a7aaad !important; border-color: #dcdcde !important; background: #f6f7f7 !important; box-shadow: none !important; text-shadow: 0 1px 0 #fff !important; cursor: default; transform: none !important; } @media screen and (max-width: 782px) { .ui-button { padding: 6px 14px; line-height: normal; font-size: 14px; vertical-align: middle; height: auto; margin-bottom: 4px; } } /* WP Theme */ .ui-dialog { position: absolute; top: 0; right: 0; z-index: 100102; background-color: #fff; box-shadow: 0 3px 6px rgba(0, 0, 0, 0.3); overflow: hidden; } .ui-dialog-titlebar { background: #fff; border-bottom: 1px solid #dcdcde; height: 36px; font-size: 18px; font-weight: 600; line-height: 2; padding: 0 16px 0 36px; } .ui-button.ui-dialog-titlebar-close { background: none; border: none; box-shadow: none; color: #646970; cursor: pointer; display: block; padding: 0; position: absolute; top: 0; left: 0; width: 36px; height: 36px; text-align: center; border-radius: 0; overflow: hidden; } .ui-dialog-titlebar-close:before { font: normal 20px/1 dashicons; vertical-align: top; speak: never; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; line-height: 1.8; width: 36px; height: 36px; content: "\f158"; } .ui-button.ui-dialog-titlebar-close:hover, .ui-button.ui-dialog-titlebar-close:focus { color: #135e96; } .ui-button.ui-dialog-titlebar-close:focus { box-shadow: 0 0 0 1px #4f94d4, 0 0 2px 1px rgba(79, 148, 212, 0.8); /* Only visible in Windows High Contrast mode */ outline: 2px solid transparent; outline-offset: -2px; } .ui-dialog-content { padding: 16px; overflow: auto; } .ui-dialog-buttonpane { background: #fff; border-top: 1px solid #dcdcde; padding: 16px; } .ui-dialog-buttonpane .ui-button { margin-right: 16px; } .ui-dialog-buttonpane .ui-dialog-buttonset { float: left; } .ui-draggable .ui-dialog-titlebar { cursor: move; } .ui-widget-overlay { position: fixed; top: 0; right: 0; left: 0; bottom: 0; min-height: 360px; background: #000; opacity: 0.7; filter: alpha(opacity=70); z-index: 100101; } PKj l\7ށ_css/buttons-rtl.min.cssnu[/*! This file is auto-generated */ .wp-core-ui .button,.wp-core-ui .button-primary,.wp-core-ui .button-secondary{display:inline-block;text-decoration:none;font-size:13px;line-height:2.15384615;min-height:30px;margin:0;padding:0 10px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-sizing:border-box}.wp-core-ui button::-moz-focus-inner,.wp-core-ui input[type=button]::-moz-focus-inner,.wp-core-ui input[type=reset]::-moz-focus-inner,.wp-core-ui input[type=submit]::-moz-focus-inner{border-width:0;border-style:none;padding:0}.wp-core-ui .button-group.button-large .button,.wp-core-ui .button.button-large{min-height:32px;line-height:2.30769231;padding:0 12px}.wp-core-ui .button-group.button-small .button,.wp-core-ui .button.button-small{min-height:26px;line-height:2.18181818;padding:0 8px;font-size:11px}.wp-core-ui .button-group.button-hero .button,.wp-core-ui .button.button-hero{font-size:14px;min-height:46px;line-height:3.14285714;padding:0 36px}.wp-core-ui .button.hidden{display:none}.wp-core-ui input[type=reset],.wp-core-ui input[type=reset]:active,.wp-core-ui input[type=reset]:focus,.wp-core-ui input[type=reset]:hover{background:0 0;border:none;box-shadow:none;padding:0 2px 1px;width:auto}.wp-core-ui .button,.wp-core-ui .button-secondary{color:#2271b1;border-color:#2271b1;background:#f6f7f7;vertical-align:top}.wp-core-ui p .button{vertical-align:baseline}.wp-core-ui .button-secondary:hover,.wp-core-ui .button.hover,.wp-core-ui .button:hover{background:#f0f0f1;border-color:#0a4b78;color:#0a4b78}.wp-core-ui .button-secondary:focus,.wp-core-ui .button.focus,.wp-core-ui .button:focus{background:#f6f7f7;border-color:#3582c4;color:#0a4b78;box-shadow:0 0 0 1px #3582c4;outline:2px solid transparent;outline-offset:0}.wp-core-ui .button-secondary:active,.wp-core-ui .button:active{background:#f6f7f7;border-color:#8c8f94;box-shadow:none}.wp-core-ui .button.active,.wp-core-ui .button.active:hover{background-color:#dcdcde;color:#135e96;border-color:#0a4b78;box-shadow:inset 0 2px 5px -3px #0a4b78}.wp-core-ui .button.active:focus{border-color:#3582c4;box-shadow:inset 0 2px 5px -3px #0a4b78,0 0 0 1px #3582c4}.wp-core-ui .button-disabled,.wp-core-ui .button-secondary.disabled,.wp-core-ui .button-secondary:disabled,.wp-core-ui .button-secondary[disabled],.wp-core-ui .button.disabled,.wp-core-ui .button:disabled,.wp-core-ui .button[disabled]{color:#a7aaad!important;border-color:#dcdcde!important;background:#f6f7f7!important;box-shadow:none!important;cursor:default;transform:none!important}.wp-core-ui .button-link{margin:0;padding:0;box-shadow:none;border:0;border-radius:0;background:0 0;cursor:pointer;text-align:right;color:#2271b1;text-decoration:underline;transition-property:border,background,color;transition-duration:.05s;transition-timing-function:ease-in-out}.wp-core-ui .button-link:active,.wp-core-ui .button-link:hover{color:#135e96}.wp-core-ui .button-link:focus{color:#043959;box-shadow:0 0 0 1px #4f94d4,0 0 2px 1px rgba(79,148,212,.8);outline:1px solid transparent}.wp-core-ui .button-link-delete{color:#d63638}.wp-core-ui .button-link-delete:focus,.wp-core-ui .button-link-delete:hover{color:#d63638;background:0 0}.wp-core-ui .button-link-delete:disabled{background:0 0!important}.wp-core-ui .button-primary{background:#2271b1;border-color:#2271b1;color:#fff;text-decoration:none;text-shadow:none}.wp-core-ui .button-primary.focus,.wp-core-ui .button-primary.hover,.wp-core-ui .button-primary:focus,.wp-core-ui .button-primary:hover{background:#135e96;border-color:#135e96;color:#fff}.wp-core-ui .button-primary.focus,.wp-core-ui .button-primary:focus{box-shadow:0 0 0 1px #fff,0 0 0 3px #2271b1}.wp-core-ui .button-primary.active,.wp-core-ui .button-primary.active:focus,.wp-core-ui .button-primary.active:hover,.wp-core-ui .button-primary:active{background:#135e96;border-color:#135e96;box-shadow:none;color:#fff}.wp-core-ui .button-primary-disabled,.wp-core-ui .button-primary.disabled,.wp-core-ui .button-primary:disabled,.wp-core-ui .button-primary[disabled]{color:#a7aaad!important;background:#f6f7f7!important;border-color:#dcdcde!important;box-shadow:none!important;text-shadow:none!important;cursor:default}.wp-core-ui .button-group{position:relative;display:inline-block;white-space:nowrap;font-size:0;vertical-align:middle}.wp-core-ui .button-group>.button{display:inline-block;border-radius:0;margin-left:-1px}.wp-core-ui .button-group>.button:first-child{border-radius:0 3px 3px 0}.wp-core-ui .button-group>.button:last-child{border-radius:3px 0 0 3px}.wp-core-ui .button-group>.button-primary+.button{border-right:0}.wp-core-ui .button-group>.button:focus{position:relative;z-index:1}.wp-core-ui .button-group>.button.active{background-color:#dcdcde;color:#135e96;border-color:#0a4b78;box-shadow:inset 0 2px 5px -3px #0a4b78}.wp-core-ui .button-group>.button.active:focus{border-color:#3582c4;box-shadow:inset 0 2px 5px -3px #0a4b78,0 0 0 1px #3582c4}@media screen and (max-width:782px){.wp-core-ui .button,.wp-core-ui .button.button-large,.wp-core-ui .button.button-small,a.preview,input#publish,input#save-post{padding:0 14px;line-height:2.71428571;font-size:14px;vertical-align:middle;min-height:40px;margin-bottom:4px}.wp-core-ui .copy-to-clipboard-container .copy-attachment-url{margin-bottom:0}#media-upload.wp-core-ui .button{padding:0 10px 1px;min-height:24px;line-height:22px;font-size:13px}.media-frame.mode-grid .bulk-select .button{margin-bottom:0}.wp-core-ui .save-post-status.button{position:relative;margin:0 10px 0 14px}.wp-core-ui.wp-customizer .button{font-size:13px;line-height:2.15384615;min-height:30px;margin:0;vertical-align:inherit}.media-modal-content .media-toolbar-primary .media-button{margin-top:10px;margin-right:5px}.interim-login .button.button-large{min-height:30px;line-height:2;padding:0 12px 2px}}PKj l\o7||css/wp-auth-check.min.cssnu[/*! This file is auto-generated */ #wp-auth-check-wrap.hidden{display:none}#wp-auth-check-wrap #wp-auth-check-bg{position:fixed;top:0;bottom:0;left:0;right:0;background:#000;opacity:.7;z-index:1000010}#wp-auth-check-wrap #wp-auth-check{position:fixed;left:50%;overflow:hidden;top:40px;bottom:20px;max-height:415px;width:380px;margin:0 0 0 -190px;padding:30px 0 0;background-color:#f0f0f1;z-index:1000011;box-shadow:0 3px 6px rgba(0,0,0,.3)}@media screen and (max-width:380px){#wp-auth-check-wrap #wp-auth-check{left:0;width:100%;margin:0}}#wp-auth-check-wrap.fallback #wp-auth-check{max-height:180px;overflow:auto}#wp-auth-check-wrap #wp-auth-check-form{height:100%;position:relative;overflow:auto;-webkit-overflow-scrolling:touch}#wp-auth-check-form.loading:before{content:"";display:block;width:20px;height:20px;position:absolute;left:50%;top:50%;margin:-10px 0 0 -10px;background:url(../images/spinner.gif) no-repeat center;background-size:20px 20px;transform:translateZ(0)}@media print,(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){#wp-auth-check-form.loading:before{background-image:url(../images/spinner-2x.gif)}}#wp-auth-check-wrap #wp-auth-check-form iframe{height:98%;width:100%}#wp-auth-check-wrap .wp-auth-check-close{position:absolute;top:5px;right:5px;height:22px;width:22px;color:#787c82;text-decoration:none;text-align:center}#wp-auth-check-wrap .wp-auth-check-close:before{content:"\f158";font:normal 20px/22px dashicons;speak:never;-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale}#wp-auth-check-wrap .wp-auth-check-close:focus,#wp-auth-check-wrap .wp-auth-check-close:hover{color:#2271b1}#wp-auth-check-wrap .wp-auth-fallback-expired{outline:0}#wp-auth-check-wrap .wp-auth-fallback{font-size:14px;line-height:1.5;padding:0 25px;display:none}#wp-auth-check-wrap.fallback .wp-auth-check-close,#wp-auth-check-wrap.fallback .wp-auth-fallback{display:block}PKj l\dw4ms-settings.phpnu[domain` instead. * @global string $path Deprecated. The path of the site found on load. * Use `get_site()->path` instead. * @global int $site_id Deprecated. The ID of the network found on load. * Use `get_current_network_id()` instead. * @global bool $public Deprecated. Whether the site found on load is public. * Use `get_site()->public` instead. * * @since 3.0.0 */ global $current_site, $current_blog, $domain, $path, $site_id, $public; /** WP_Network class */ require_once ABSPATH . WPINC . '/class-wp-network.php'; /** WP_Site class */ require_once ABSPATH . WPINC . '/class-wp-site.php'; /** Multisite loader */ require_once ABSPATH . WPINC . '/ms-load.php'; /** Default Multisite constants */ require_once ABSPATH . WPINC . '/ms-default-constants.php'; if ( defined( 'SUNRISE' ) ) { include_once WP_CONTENT_DIR . '/sunrise.php'; } /** Check for and define SUBDOMAIN_INSTALL and the deprecated VHOST constant. */ ms_subdomain_constants(); // This block will process a request if the current network or current site objects // have not been populated in the global scope through something like `sunrise.php`. if ( ! isset( $current_site ) || ! isset( $current_blog ) ) { $domain = strtolower( stripslashes( $_SERVER['HTTP_HOST'] ) ); if ( ':80' === substr( $domain, -3 ) ) { $domain = substr( $domain, 0, -3 ); $_SERVER['HTTP_HOST'] = substr( $_SERVER['HTTP_HOST'], 0, -3 ); } elseif ( ':443' === substr( $domain, -4 ) ) { $domain = substr( $domain, 0, -4 ); $_SERVER['HTTP_HOST'] = substr( $_SERVER['HTTP_HOST'], 0, -4 ); } $path = stripslashes( $_SERVER['REQUEST_URI'] ); if ( is_admin() ) { $path = preg_replace( '#(.*)/wp-admin/.*#', '$1/', $path ); } list( $path ) = explode( '?', $path ); $bootstrap_result = ms_load_current_site_and_network( $domain, $path, is_subdomain_install() ); if ( true === $bootstrap_result ) { // `$current_blog` and `$current_site are now populated. } elseif ( false === $bootstrap_result ) { ms_not_installed( $domain, $path ); } else { header( 'Location: ' . $bootstrap_result ); exit; } unset( $bootstrap_result ); $blog_id = $current_blog->blog_id; $public = $current_blog->public; if ( empty( $current_blog->site_id ) ) { // This dates to [MU134] and shouldn't be relevant anymore, // but it could be possible for arguments passed to insert_blog() etc. $current_blog->site_id = 1; } $site_id = $current_blog->site_id; wp_load_core_site_options( $site_id ); } $wpdb->set_prefix( $table_prefix, false ); // $table_prefix can be set in sunrise.php. $wpdb->set_blog_id( $current_blog->blog_id, $current_blog->site_id ); $table_prefix = $wpdb->get_blog_prefix(); $_wp_switched_stack = array(); $switched = false; // Need to init cache again after blog_id is set. wp_start_object_cache(); if ( ! $current_site instanceof WP_Network ) { $current_site = new WP_Network( $current_site ); } if ( ! $current_blog instanceof WP_Site ) { $current_blog = new WP_Site( $current_blog ); } // Define upload directory constants. ms_upload_constants(); /** * Fires after the current site and network have been detected and loaded * in multisite's bootstrap. * * @since 4.6.0 */ do_action( 'ms_loaded' ); PKj l\?`rclass-wp-block-supports.phpnu[register_attributes(); } /** * Registers a block support. * * @since 5.6.0 * * @param string $block_support_name Block support name. * @param array $block_support_config Array containing the properties of the block support. */ public function register( $block_support_name, $block_support_config ) { $this->block_supports[ $block_support_name ] = array_merge( $block_support_config, array( 'name' => $block_support_name ) ); } /** * Generates an array of HTML attributes, such as classes, by applying to * the given block all of the features that the block supports. * * @since 5.6.0 * * @return string[] Array of HTML attributes. */ public function apply_block_supports() { $block_attributes = self::$block_to_render['attrs']; $block_type = WP_Block_Type_Registry::get_instance()->get_registered( self::$block_to_render['blockName'] ); // If no render_callback, assume styles have been previously handled. if ( ! $block_type || empty( $block_type ) ) { return array(); } $output = array(); foreach ( $this->block_supports as $block_support_config ) { if ( ! isset( $block_support_config['apply'] ) ) { continue; } $new_attributes = call_user_func( $block_support_config['apply'], $block_type, $block_attributes ); if ( ! empty( $new_attributes ) ) { foreach ( $new_attributes as $attribute_name => $attribute_value ) { if ( empty( $output[ $attribute_name ] ) ) { $output[ $attribute_name ] = $attribute_value; } else { $output[ $attribute_name ] .= " $attribute_value"; } } } } return $output; } /** * Registers the block attributes required by the different block supports. * * @since 5.6.0 */ private function register_attributes() { $block_registry = WP_Block_Type_Registry::get_instance(); $registered_block_types = $block_registry->get_all_registered(); foreach ( $registered_block_types as $block_type ) { if ( ! property_exists( $block_type, 'supports' ) ) { continue; } if ( ! $block_type->attributes ) { $block_type->attributes = array(); } foreach ( $this->block_supports as $block_support_config ) { if ( ! isset( $block_support_config['register_attribute'] ) ) { continue; } call_user_func( $block_support_config['register_attribute'], $block_type ); } } } } /** * Generates a string of attributes by applying to the current block being * rendered all of the features that the block supports. * * @since 5.6.0 * * @param string[] $extra_attributes Optional. Array of extra attributes to render on the block wrapper. * @return string String of HTML attributes. */ function get_block_wrapper_attributes( $extra_attributes = array() ) { $new_attributes = WP_Block_Supports::get_instance()->apply_block_supports(); if ( empty( $new_attributes ) && empty( $extra_attributes ) ) { return ''; } // This is hardcoded on purpose. // We only support a fixed list of attributes. $attributes_to_merge = array( 'style', 'class' ); $attributes = array(); foreach ( $attributes_to_merge as $attribute_name ) { if ( empty( $new_attributes[ $attribute_name ] ) && empty( $extra_attributes[ $attribute_name ] ) ) { continue; } if ( empty( $new_attributes[ $attribute_name ] ) ) { $attributes[ $attribute_name ] = $extra_attributes[ $attribute_name ]; continue; } if ( empty( $extra_attributes[ $attribute_name ] ) ) { $attributes[ $attribute_name ] = $new_attributes[ $attribute_name ]; continue; } $attributes[ $attribute_name ] = $extra_attributes[ $attribute_name ] . ' ' . $new_attributes[ $attribute_name ]; } foreach ( $extra_attributes as $attribute_name => $value ) { if ( ! in_array( $attribute_name, $attributes_to_merge, true ) ) { $attributes[ $attribute_name ] = $value; } } if ( empty( $attributes ) ) { return ''; } $normalized_attributes = array(); foreach ( $attributes as $key => $value ) { $normalized_attributes[] = $key . '="' . esc_attr( $value ) . '"'; } return implode( ' ', $normalized_attributes ); } PKj l\ps|YYhttp.phpnu[request( $url, $args ); } /** * Retrieve the raw response from a safe HTTP request using the GET method. * * This function is ideal when the HTTP request is being made to an arbitrary * URL. The URL is validated to avoid redirection and request forgery attacks. * * @since 3.6.0 * * @see wp_remote_request() For more information on the response array format. * @see WP_Http::request() For default arguments information. * * @param string $url URL to retrieve. * @param array $args Optional. Request arguments. Default empty array. * @return array|WP_Error The response or WP_Error on failure. */ function wp_safe_remote_get( $url, $args = array() ) { $args['reject_unsafe_urls'] = true; $http = _wp_http_get_object(); return $http->get( $url, $args ); } /** * Retrieve the raw response from a safe HTTP request using the POST method. * * This function is ideal when the HTTP request is being made to an arbitrary * URL. The URL is validated to avoid redirection and request forgery attacks. * * @since 3.6.0 * * @see wp_remote_request() For more information on the response array format. * @see WP_Http::request() For default arguments information. * * @param string $url URL to retrieve. * @param array $args Optional. Request arguments. Default empty array. * @return array|WP_Error The response or WP_Error on failure. */ function wp_safe_remote_post( $url, $args = array() ) { $args['reject_unsafe_urls'] = true; $http = _wp_http_get_object(); return $http->post( $url, $args ); } /** * Retrieve the raw response from a safe HTTP request using the HEAD method. * * This function is ideal when the HTTP request is being made to an arbitrary * URL. The URL is validated to avoid redirection and request forgery attacks. * * @since 3.6.0 * * @see wp_remote_request() For more information on the response array format. * @see WP_Http::request() For default arguments information. * * @param string $url URL to retrieve. * @param array $args Optional. Request arguments. Default empty array. * @return array|WP_Error The response or WP_Error on failure. */ function wp_safe_remote_head( $url, $args = array() ) { $args['reject_unsafe_urls'] = true; $http = _wp_http_get_object(); return $http->head( $url, $args ); } /** * Performs an HTTP request and returns its response. * * There are other API functions available which abstract away the HTTP method: * * - Default 'GET' for wp_remote_get() * - Default 'POST' for wp_remote_post() * - Default 'HEAD' for wp_remote_head() * * @since 2.7.0 * * @see WP_Http::request() For information on default arguments. * * @param string $url URL to retrieve. * @param array $args Optional. Request arguments. Default empty array. * @return array|WP_Error { * The response array or a WP_Error on failure. * * @type string[] $headers Array of response headers keyed by their name. * @type string $body Response body. * @type array $response { * Data about the HTTP response. * * @type int|false $code HTTP response code. * @type string|false $message HTTP response message. * } * @type WP_HTTP_Cookie[] $cookies Array of response cookies. * @type WP_HTTP_Requests_Response|null $http_response Raw HTTP response object. * } */ function wp_remote_request( $url, $args = array() ) { $http = _wp_http_get_object(); return $http->request( $url, $args ); } /** * Performs an HTTP request using the GET method and returns its response. * * @since 2.7.0 * * @see wp_remote_request() For more information on the response array format. * @see WP_Http::request() For default arguments information. * * @param string $url URL to retrieve. * @param array $args Optional. Request arguments. Default empty array. * @return array|WP_Error The response or WP_Error on failure. */ function wp_remote_get( $url, $args = array() ) { $http = _wp_http_get_object(); return $http->get( $url, $args ); } /** * Performs an HTTP request using the POST method and returns its response. * * @since 2.7.0 * * @see wp_remote_request() For more information on the response array format. * @see WP_Http::request() For default arguments information. * * @param string $url URL to retrieve. * @param array $args Optional. Request arguments. Default empty array. * @return array|WP_Error The response or WP_Error on failure. */ function wp_remote_post( $url, $args = array() ) { $http = _wp_http_get_object(); return $http->post( $url, $args ); } /** * Performs an HTTP request using the HEAD method and returns its response. * * @since 2.7.0 * * @see wp_remote_request() For more information on the response array format. * @see WP_Http::request() For default arguments information. * * @param string $url URL to retrieve. * @param array $args Optional. Request arguments. Default empty array. * @return array|WP_Error The response or WP_Error on failure. */ function wp_remote_head( $url, $args = array() ) { $http = _wp_http_get_object(); return $http->head( $url, $args ); } /** * Retrieve only the headers from the raw response. * * @since 2.7.0 * @since 4.6.0 Return value changed from an array to an Requests_Utility_CaseInsensitiveDictionary instance. * * @see \Requests_Utility_CaseInsensitiveDictionary * * @param array|WP_Error $response HTTP response. * @return array|\Requests_Utility_CaseInsensitiveDictionary The headers of the response. Empty array if incorrect parameter given. */ function wp_remote_retrieve_headers( $response ) { if ( is_wp_error( $response ) || ! isset( $response['headers'] ) ) { return array(); } return $response['headers']; } /** * Retrieve a single header by name from the raw response. * * @since 2.7.0 * * @param array|WP_Error $response HTTP response. * @param string $header Header name to retrieve value from. * @return array|string The header(s) value(s). Array if multiple headers with the same name are retrieved. * Empty string if incorrect parameter given, or if the header doesn't exist. */ function wp_remote_retrieve_header( $response, $header ) { if ( is_wp_error( $response ) || ! isset( $response['headers'] ) ) { return ''; } if ( isset( $response['headers'][ $header ] ) ) { return $response['headers'][ $header ]; } return ''; } /** * Retrieve only the response code from the raw response. * * Will return an empty array if incorrect parameter value is given. * * @since 2.7.0 * * @param array|WP_Error $response HTTP response. * @return int|string The response code as an integer. Empty string on incorrect parameter given. */ function wp_remote_retrieve_response_code( $response ) { if ( is_wp_error( $response ) || ! isset( $response['response'] ) || ! is_array( $response['response'] ) ) { return ''; } return $response['response']['code']; } /** * Retrieve only the response message from the raw response. * * Will return an empty array if incorrect parameter value is given. * * @since 2.7.0 * * @param array|WP_Error $response HTTP response. * @return string The response message. Empty string on incorrect parameter given. */ function wp_remote_retrieve_response_message( $response ) { if ( is_wp_error( $response ) || ! isset( $response['response'] ) || ! is_array( $response['response'] ) ) { return ''; } return $response['response']['message']; } /** * Retrieve only the body from the raw response. * * @since 2.7.0 * * @param array|WP_Error $response HTTP response. * @return string The body of the response. Empty string if no body or incorrect parameter given. */ function wp_remote_retrieve_body( $response ) { if ( is_wp_error( $response ) || ! isset( $response['body'] ) ) { return ''; } return $response['body']; } /** * Retrieve only the cookies from the raw response. * * @since 4.4.0 * * @param array|WP_Error $response HTTP response. * @return WP_Http_Cookie[] An array of `WP_Http_Cookie` objects from the response. Empty array if there are none, or the response is a WP_Error. */ function wp_remote_retrieve_cookies( $response ) { if ( is_wp_error( $response ) || empty( $response['cookies'] ) ) { return array(); } return $response['cookies']; } /** * Retrieve a single cookie by name from the raw response. * * @since 4.4.0 * * @param array|WP_Error $response HTTP response. * @param string $name The name of the cookie to retrieve. * @return WP_Http_Cookie|string The `WP_Http_Cookie` object. Empty string if the cookie isn't present in the response. */ function wp_remote_retrieve_cookie( $response, $name ) { $cookies = wp_remote_retrieve_cookies( $response ); if ( empty( $cookies ) ) { return ''; } foreach ( $cookies as $cookie ) { if ( $cookie->name === $name ) { return $cookie; } } return ''; } /** * Retrieve a single cookie's value by name from the raw response. * * @since 4.4.0 * * @param array|WP_Error $response HTTP response. * @param string $name The name of the cookie to retrieve. * @return string The value of the cookie. Empty string if the cookie isn't present in the response. */ function wp_remote_retrieve_cookie_value( $response, $name ) { $cookie = wp_remote_retrieve_cookie( $response, $name ); if ( ! is_a( $cookie, 'WP_Http_Cookie' ) ) { return ''; } return $cookie->value; } /** * Determines if there is an HTTP Transport that can process this request. * * @since 3.2.0 * * @param array $capabilities Array of capabilities to test or a wp_remote_request() $args array. * @param string $url Optional. If given, will check if the URL requires SSL and adds * that requirement to the capabilities array. * * @return bool */ function wp_http_supports( $capabilities = array(), $url = null ) { $http = _wp_http_get_object(); $capabilities = wp_parse_args( $capabilities ); $count = count( $capabilities ); // If we have a numeric $capabilities array, spoof a wp_remote_request() associative $args array. if ( $count && count( array_filter( array_keys( $capabilities ), 'is_numeric' ) ) == $count ) { $capabilities = array_combine( array_values( $capabilities ), array_fill( 0, $count, true ) ); } if ( $url && ! isset( $capabilities['ssl'] ) ) { $scheme = parse_url( $url, PHP_URL_SCHEME ); if ( 'https' === $scheme || 'ssl' === $scheme ) { $capabilities['ssl'] = true; } } return (bool) $http->_get_first_available_transport( $capabilities ); } /** * Get the HTTP Origin of the current request. * * @since 3.4.0 * * @return string URL of the origin. Empty string if no origin. */ function get_http_origin() { $origin = ''; if ( ! empty( $_SERVER['HTTP_ORIGIN'] ) ) { $origin = $_SERVER['HTTP_ORIGIN']; } /** * Change the origin of an HTTP request. * * @since 3.4.0 * * @param string $origin The original origin for the request. */ return apply_filters( 'http_origin', $origin ); } /** * Retrieve list of allowed HTTP origins. * * @since 3.4.0 * * @return string[] Array of origin URLs. */ function get_allowed_http_origins() { $admin_origin = parse_url( admin_url() ); $home_origin = parse_url( home_url() ); // @todo Preserve port? $allowed_origins = array_unique( array( 'http://' . $admin_origin['host'], 'https://' . $admin_origin['host'], 'http://' . $home_origin['host'], 'https://' . $home_origin['host'], ) ); /** * Change the origin types allowed for HTTP requests. * * @since 3.4.0 * * @param string[] $allowed_origins { * Array of default allowed HTTP origins. * * @type string $0 Non-secure URL for admin origin. * @type string $1 Secure URL for admin origin. * @type string $2 Non-secure URL for home origin. * @type string $3 Secure URL for home origin. * } */ return apply_filters( 'allowed_http_origins', $allowed_origins ); } /** * Determines if the HTTP origin is an authorized one. * * @since 3.4.0 * * @param null|string $origin Origin URL. If not provided, the value of get_http_origin() is used. * @return string Origin URL if allowed, empty string if not. */ function is_allowed_http_origin( $origin = null ) { $origin_arg = $origin; if ( null === $origin ) { $origin = get_http_origin(); } if ( $origin && ! in_array( $origin, get_allowed_http_origins(), true ) ) { $origin = ''; } /** * Change the allowed HTTP origin result. * * @since 3.4.0 * * @param string $origin Origin URL if allowed, empty string if not. * @param string $origin_arg Original origin string passed into is_allowed_http_origin function. */ return apply_filters( 'allowed_http_origin', $origin, $origin_arg ); } /** * Send Access-Control-Allow-Origin and related headers if the current request * is from an allowed origin. * * If the request is an OPTIONS request, the script exits with either access * control headers sent, or a 403 response if the origin is not allowed. For * other request methods, you will receive a return value. * * @since 3.4.0 * * @return string|false Returns the origin URL if headers are sent. Returns false * if headers are not sent. */ function send_origin_headers() { $origin = get_http_origin(); if ( is_allowed_http_origin( $origin ) ) { header( 'Access-Control-Allow-Origin: ' . $origin ); header( 'Access-Control-Allow-Credentials: true' ); if ( 'OPTIONS' === $_SERVER['REQUEST_METHOD'] ) { exit; } return $origin; } if ( 'OPTIONS' === $_SERVER['REQUEST_METHOD'] ) { status_header( 403 ); exit; } return false; } /** * Validate a URL for safe use in the HTTP API. * * @since 3.5.2 * * @param string $url Request URL. * @return string|false URL or false on failure. */ function wp_http_validate_url( $url ) { if ( ! is_string( $url ) || '' === $url || is_numeric( $url ) ) { return false; } $original_url = $url; $url = wp_kses_bad_protocol( $url, array( 'http', 'https' ) ); if ( ! $url || strtolower( $url ) !== strtolower( $original_url ) ) { return false; } $parsed_url = parse_url( $url ); if ( ! $parsed_url || empty( $parsed_url['host'] ) ) { return false; } if ( isset( $parsed_url['user'] ) || isset( $parsed_url['pass'] ) ) { return false; } if ( false !== strpbrk( $parsed_url['host'], ':#?[]' ) ) { return false; } $parsed_home = parse_url( get_option( 'home' ) ); $same_host = isset( $parsed_home['host'] ) && strtolower( $parsed_home['host'] ) === strtolower( $parsed_url['host'] ); $host = trim( $parsed_url['host'], '.' ); if ( ! $same_host ) { if ( preg_match( '#^(([1-9]?\d|1\d\d|25[0-5]|2[0-4]\d)\.){3}([1-9]?\d|1\d\d|25[0-5]|2[0-4]\d)$#', $host ) ) { $ip = $host; } else { $ip = gethostbyname( $host ); if ( $ip === $host ) { // Error condition for gethostbyname(). return false; } } if ( $ip ) { $parts = array_map( 'intval', explode( '.', $ip ) ); if ( 127 === $parts[0] || 10 === $parts[0] || 0 === $parts[0] || ( 172 === $parts[0] && 16 <= $parts[1] && 31 >= $parts[1] ) || ( 192 === $parts[0] && 168 === $parts[1] ) ) { // If host appears local, reject unless specifically allowed. /** * Check if HTTP request is external or not. * * Allows to change and allow external requests for the HTTP request. * * @since 3.6.0 * * @param bool $external Whether HTTP request is external or not. * @param string $host Host name of the requested URL. * @param string $url Requested URL. */ if ( ! apply_filters( 'http_request_host_is_external', false, $host, $url ) ) { return false; } } } } if ( empty( $parsed_url['port'] ) ) { return $url; } $port = $parsed_url['port']; /** * Controls the list of ports considered safe in HTTP API. * * Allows to change and allow external requests for the HTTP request. * * @since 5.9.0 * * @param array $allowed_ports Array of integers for valid ports. * @param string $host Host name of the requested URL. * @param string $url Requested URL. */ $allowed_ports = apply_filters( 'http_allowed_safe_ports', array( 80, 443, 8080 ), $host, $url ); if ( is_array( $allowed_ports ) && in_array( $port, $allowed_ports, true ) ) { return $url; } if ( $parsed_home && $same_host && isset( $parsed_home['port'] ) && $parsed_home['port'] === $port ) { return $url; } return false; } /** * Mark allowed redirect hosts safe for HTTP requests as well. * * Attached to the {@see 'http_request_host_is_external'} filter. * * @since 3.6.0 * * @param bool $is_external * @param string $host * @return bool */ function allowed_http_request_hosts( $is_external, $host ) { if ( ! $is_external && wp_validate_redirect( 'http://' . $host ) ) { $is_external = true; } return $is_external; } /** * Adds any domain in a multisite installation for safe HTTP requests to the * allowed list. * * Attached to the {@see 'http_request_host_is_external'} filter. * * @since 3.6.0 * * @global wpdb $wpdb WordPress database abstraction object. * * @param bool $is_external * @param string $host * @return bool */ function ms_allowed_http_request_hosts( $is_external, $host ) { global $wpdb; static $queried = array(); if ( $is_external ) { return $is_external; } if ( get_network()->domain === $host ) { return true; } if ( isset( $queried[ $host ] ) ) { return $queried[ $host ]; } $queried[ $host ] = (bool) $wpdb->get_var( $wpdb->prepare( "SELECT domain FROM $wpdb->blogs WHERE domain = %s LIMIT 1", $host ) ); return $queried[ $host ]; } /** * A wrapper for PHP's parse_url() function that handles consistency in the return * values across PHP versions. * * PHP 5.4.7 expanded parse_url()'s ability to handle non-absolute url's, including * schemeless and relative url's with :// in the path. This function works around * those limitations providing a standard output on PHP 5.2~5.4+. * * Secondly, across various PHP versions, schemeless URLs starting containing a ":" * in the query are being handled inconsistently. This function works around those * differences as well. * * @since 4.4.0 * @since 4.7.0 The `$component` parameter was added for parity with PHP's `parse_url()`. * * @link https://www.php.net/manual/en/function.parse-url.php * * @param string $url The URL to parse. * @param int $component The specific component to retrieve. Use one of the PHP * predefined constants to specify which one. * Defaults to -1 (= return all parts as an array). * @return mixed False on parse failure; Array of URL components on success; * When a specific component has been requested: null if the component * doesn't exist in the given URL; a string or - in the case of * PHP_URL_PORT - integer when it does. See parse_url()'s return values. */ function wp_parse_url( $url, $component = -1 ) { $to_unset = array(); $url = (string) $url; if ( '//' === substr( $url, 0, 2 ) ) { $to_unset[] = 'scheme'; $url = 'placeholder:' . $url; } elseif ( '/' === substr( $url, 0, 1 ) ) { $to_unset[] = 'scheme'; $to_unset[] = 'host'; $url = 'placeholder://placeholder' . $url; } $parts = parse_url( $url ); if ( false === $parts ) { // Parsing failure. return $parts; } // Remove the placeholder values. foreach ( $to_unset as $key ) { unset( $parts[ $key ] ); } return _get_component_from_parsed_url_array( $parts, $component ); } /** * Retrieve a specific component from a parsed URL array. * * @internal * * @since 4.7.0 * @access private * * @link https://www.php.net/manual/en/function.parse-url.php * * @param array|false $url_parts The parsed URL. Can be false if the URL failed to parse. * @param int $component The specific component to retrieve. Use one of the PHP * predefined constants to specify which one. * Defaults to -1 (= return all parts as an array). * @return mixed False on parse failure; Array of URL components on success; * When a specific component has been requested: null if the component * doesn't exist in the given URL; a string or - in the case of * PHP_URL_PORT - integer when it does. See parse_url()'s return values. */ function _get_component_from_parsed_url_array( $url_parts, $component = -1 ) { if ( -1 === $component ) { return $url_parts; } $key = _wp_translate_php_url_constant_to_key( $component ); if ( false !== $key && is_array( $url_parts ) && isset( $url_parts[ $key ] ) ) { return $url_parts[ $key ]; } else { return null; } } /** * Translate a PHP_URL_* constant to the named array keys PHP uses. * * @internal * * @since 4.7.0 * @access private * * @link https://www.php.net/manual/en/url.constants.php * * @param int $constant PHP_URL_* constant. * @return string|false The named key or false. */ function _wp_translate_php_url_constant_to_key( $constant ) { $translation = array( PHP_URL_SCHEME => 'scheme', PHP_URL_HOST => 'host', PHP_URL_PORT => 'port', PHP_URL_USER => 'user', PHP_URL_PASS => 'pass', PHP_URL_PATH => 'path', PHP_URL_QUERY => 'query', PHP_URL_FRAGMENT => 'fragment', ); if ( isset( $translation[ $constant ] ) ) { return $translation[ $constant ]; } else { return false; } } PKj l\x*!rest-api/class-wp-rest-server.phpnu[endpoints = array( // Meta endpoints. '/' => array( 'callback' => array( $this, 'get_index' ), 'methods' => 'GET', 'args' => array( 'context' => array( 'default' => 'view', ), ), ), '/batch/v1' => array( 'callback' => array( $this, 'serve_batch_request_v1' ), 'methods' => 'POST', 'args' => array( 'validation' => array( 'type' => 'string', 'enum' => array( 'require-all-validate', 'normal' ), 'default' => 'normal', ), 'requests' => array( 'required' => true, 'type' => 'array', 'maxItems' => $this->get_max_batch_size(), 'items' => array( 'type' => 'object', 'properties' => array( 'method' => array( 'type' => 'string', 'enum' => array( 'POST', 'PUT', 'PATCH', 'DELETE' ), 'default' => 'POST', ), 'path' => array( 'type' => 'string', 'required' => true, ), 'body' => array( 'type' => 'object', 'properties' => array(), 'additionalProperties' => true, ), 'headers' => array( 'type' => 'object', 'properties' => array(), 'additionalProperties' => array( 'type' => array( 'string', 'array' ), 'items' => array( 'type' => 'string', ), ), ), ), ), ), ), ), ); } /** * Checks the authentication headers if supplied. * * @since 4.4.0 * * @return WP_Error|null WP_Error indicates unsuccessful login, null indicates successful * or no authentication provided */ public function check_authentication() { /** * Filters REST API authentication errors. * * This is used to pass a WP_Error from an authentication method back to * the API. * * Authentication methods should check first if they're being used, as * multiple authentication methods can be enabled on a site (cookies, * HTTP basic auth, OAuth). If the authentication method hooked in is * not actually being attempted, null should be returned to indicate * another authentication method should check instead. Similarly, * callbacks should ensure the value is `null` before checking for * errors. * * A WP_Error instance can be returned if an error occurs, and this should * match the format used by API methods internally (that is, the `status` * data should be used). A callback can return `true` to indicate that * the authentication method was used, and it succeeded. * * @since 4.4.0 * * @param WP_Error|null|true $errors WP_Error if authentication error, null if authentication * method wasn't used, true if authentication succeeded. */ return apply_filters( 'rest_authentication_errors', null ); } /** * Converts an error to a response object. * * This iterates over all error codes and messages to change it into a flat * array. This enables simpler client behaviour, as it is represented as a * list in JSON rather than an object/map. * * @since 4.4.0 * @since 5.7.0 Converted to a wrapper of {@see rest_convert_error_to_response()}. * * @param WP_Error $error WP_Error instance. * @return WP_REST_Response List of associative arrays with code and message keys. */ protected function error_to_response( $error ) { return rest_convert_error_to_response( $error ); } /** * Retrieves an appropriate error representation in JSON. * * Note: This should only be used in WP_REST_Server::serve_request(), as it * cannot handle WP_Error internally. All callbacks and other internal methods * should instead return a WP_Error with the data set to an array that includes * a 'status' key, with the value being the HTTP status to send. * * @since 4.4.0 * * @param string $code WP_Error-style code. * @param string $message Human-readable message. * @param int $status Optional. HTTP status code to send. Default null. * @return string JSON representation of the error */ protected function json_error( $code, $message, $status = null ) { if ( $status ) { $this->set_status( $status ); } $error = compact( 'code', 'message' ); return wp_json_encode( $error ); } /** * Handles serving a REST API request. * * Matches the current server URI to a route and runs the first matching * callback then outputs a JSON representation of the returned value. * * @since 4.4.0 * * @see WP_REST_Server::dispatch() * * @global WP_User $current_user The currently authenticated user. * * @param string $path Optional. The request route. If not set, `$_SERVER['PATH_INFO']` will be used. * Default null. * @return null|false Null if not served and a HEAD request, false otherwise. */ public function serve_request( $path = null ) { /* @var WP_User|null $current_user */ global $current_user; if ( $current_user instanceof WP_User && ! $current_user->exists() ) { /* * If there is no current user authenticated via other means, clear * the cached lack of user, so that an authenticate check can set it * properly. * * This is done because for authentications such as Application * Passwords, we don't want it to be accepted unless the current HTTP * request is a REST API request, which can't always be identified early * enough in evaluation. */ $current_user = null; } /** * Filters whether JSONP is enabled for the REST API. * * @since 4.4.0 * * @param bool $jsonp_enabled Whether JSONP is enabled. Default true. */ $jsonp_enabled = apply_filters( 'rest_jsonp_enabled', true ); $jsonp_callback = false; if ( isset( $_GET['_jsonp'] ) ) { $jsonp_callback = $_GET['_jsonp']; } $content_type = ( $jsonp_callback && $jsonp_enabled ) ? 'application/javascript' : 'application/json'; $this->send_header( 'Content-Type', $content_type . '; charset=' . get_option( 'blog_charset' ) ); $this->send_header( 'X-Robots-Tag', 'noindex' ); $api_root = get_rest_url(); if ( ! empty( $api_root ) ) { $this->send_header( 'Link', '<' . esc_url_raw( $api_root ) . '>; rel="https://api.w.org/"' ); } /* * Mitigate possible JSONP Flash attacks. * * https://miki.it/blog/2014/7/8/abusing-jsonp-with-rosetta-flash/ */ $this->send_header( 'X-Content-Type-Options', 'nosniff' ); $expose_headers = array( 'X-WP-Total', 'X-WP-TotalPages', 'Link' ); /** * Filters the list of response headers that are exposed to REST API CORS requests. * * @since 5.5.0 * * @param string[] $expose_headers The list of response headers to expose. */ $expose_headers = apply_filters( 'rest_exposed_cors_headers', $expose_headers ); $this->send_header( 'Access-Control-Expose-Headers', implode( ', ', $expose_headers ) ); $allow_headers = array( 'Authorization', 'X-WP-Nonce', 'Content-Disposition', 'Content-MD5', 'Content-Type', ); /** * Filters the list of request headers that are allowed for REST API CORS requests. * * The allowed headers are passed to the browser to specify which * headers can be passed to the REST API. By default, we allow the * Content-* headers needed to upload files to the media endpoints. * As well as the Authorization and Nonce headers for allowing authentication. * * @since 5.5.0 * * @param string[] $allow_headers The list of request headers to allow. */ $allow_headers = apply_filters( 'rest_allowed_cors_headers', $allow_headers ); $this->send_header( 'Access-Control-Allow-Headers', implode( ', ', $allow_headers ) ); /** * Filters whether the REST API is enabled. * * @since 4.4.0 * @deprecated 4.7.0 Use the {@see 'rest_authentication_errors'} filter to * restrict access to the REST API. * * @param bool $rest_enabled Whether the REST API is enabled. Default true. */ apply_filters_deprecated( 'rest_enabled', array( true ), '4.7.0', 'rest_authentication_errors', sprintf( /* translators: %s: rest_authentication_errors */ __( 'The REST API can no longer be completely disabled, the %s filter can be used to restrict access to the API, instead.' ), 'rest_authentication_errors' ) ); if ( $jsonp_callback ) { if ( ! $jsonp_enabled ) { echo $this->json_error( 'rest_callback_disabled', __( 'JSONP support is disabled on this site.' ), 400 ); return false; } if ( ! wp_check_jsonp_callback( $jsonp_callback ) ) { echo $this->json_error( 'rest_callback_invalid', __( 'Invalid JSONP callback function.' ), 400 ); return false; } } if ( empty( $path ) ) { if ( isset( $_SERVER['PATH_INFO'] ) ) { $path = $_SERVER['PATH_INFO']; } else { $path = '/'; } } $request = new WP_REST_Request( $_SERVER['REQUEST_METHOD'], $path ); $request->set_query_params( wp_unslash( $_GET ) ); $request->set_body_params( wp_unslash( $_POST ) ); $request->set_file_params( $_FILES ); $request->set_headers( $this->get_headers( wp_unslash( $_SERVER ) ) ); $request->set_body( self::get_raw_data() ); /* * HTTP method override for clients that can't use PUT/PATCH/DELETE. First, we check * $_GET['_method']. If that is not set, we check for the HTTP_X_HTTP_METHOD_OVERRIDE * header. */ $method_overridden = false; if ( isset( $_GET['_method'] ) ) { $request->set_method( $_GET['_method'] ); } elseif ( isset( $_SERVER['HTTP_X_HTTP_METHOD_OVERRIDE'] ) ) { $request->set_method( $_SERVER['HTTP_X_HTTP_METHOD_OVERRIDE'] ); $method_overridden = true; } $result = $this->check_authentication(); if ( ! is_wp_error( $result ) ) { $result = $this->dispatch( $request ); } // Normalize to either WP_Error or WP_REST_Response... $result = rest_ensure_response( $result ); // ...then convert WP_Error across. if ( is_wp_error( $result ) ) { $result = $this->error_to_response( $result ); } /** * Filters the REST API response. * * Allows modification of the response before returning. * * @since 4.4.0 * @since 4.5.0 Applied to embedded responses. * * @param WP_HTTP_Response $result Result to send to the client. Usually a `WP_REST_Response`. * @param WP_REST_Server $server Server instance. * @param WP_REST_Request $request Request used to generate the response. */ $result = apply_filters( 'rest_post_dispatch', rest_ensure_response( $result ), $this, $request ); // Wrap the response in an envelope if asked for. if ( isset( $_GET['_envelope'] ) ) { $result = $this->envelope_response( $result, isset( $_GET['_embed'] ) ); } // Send extra data from response objects. $headers = $result->get_headers(); $this->send_headers( $headers ); $code = $result->get_status(); $this->set_status( $code ); /** * Filters whether the REST API request has already been served. * * Allow sending the request manually - by returning true, the API result * will not be sent to the client. * * @since 4.4.0 * * @param bool $served Whether the request has already been served. * Default false. * @param WP_HTTP_Response $result Result to send to the client. Usually a `WP_REST_Response`. * @param WP_REST_Request $request Request used to generate the response. * @param WP_REST_Server $server Server instance. */ $served = apply_filters( 'rest_pre_serve_request', false, $result, $request, $this ); /** * Filters whether to send nocache headers on a REST API request. * * @since 4.4.0 * @since 6.x.x Moved the block to catch the filter added on rest_cookie_check_errors() from rest-api.php * * @param bool $rest_send_nocache_headers Whether to send no-cache headers. */ $send_no_cache_headers = apply_filters( 'rest_send_nocache_headers', is_user_logged_in() ); // send no cache headers if the $send_no_cache_headers is true // OR if the HTTP_X_HTTP_METHOD_OVERRIDE is used but resulted a 4xx response code. if ( $send_no_cache_headers || ( true === $method_overridden && strpos( $code, '4' ) === 0 ) ) { foreach ( wp_get_nocache_headers() as $header => $header_value ) { if ( empty( $header_value ) ) { $this->remove_header( $header ); } else { $this->send_header( $header, $header_value ); } } } if ( ! $served ) { if ( 'HEAD' === $request->get_method() ) { return null; } // Embed links inside the request. $embed = isset( $_GET['_embed'] ) ? rest_parse_embed_param( $_GET['_embed'] ) : false; $result = $this->response_to_data( $result, $embed ); /** * Filters the REST API response. * * Allows modification of the response data after inserting * embedded data (if any) and before echoing the response data. * * @since 4.8.1 * * @param array $result Response data to send to the client. * @param WP_REST_Server $server Server instance. * @param WP_REST_Request $request Request used to generate the response. */ $result = apply_filters( 'rest_pre_echo_response', $result, $this, $request ); // The 204 response shouldn't have a body. if ( 204 === $code || null === $result ) { return null; } $result = wp_json_encode( $result ); $json_error_message = $this->get_json_last_error(); if ( $json_error_message ) { $this->set_status( 500 ); $json_error_obj = new WP_Error( 'rest_encode_error', $json_error_message, array( 'status' => 500 ) ); $result = $this->error_to_response( $json_error_obj ); $result = wp_json_encode( $result->data ); } if ( $jsonp_callback ) { // Prepend '/**/' to mitigate possible JSONP Flash attacks. // https://miki.it/blog/2014/7/8/abusing-jsonp-with-rosetta-flash/ echo '/**/' . $jsonp_callback . '(' . $result . ')'; } else { echo $result; } } return null; } /** * Converts a response to data to send. * * @since 4.4.0 * @since 5.4.0 The $embed parameter can now contain a list of link relations to include. * * @param WP_REST_Response $response Response object. * @param bool|string[] $embed Whether to embed all links, a filtered list of link relations, or no links. * @return array { * Data with sub-requests embedded. * * @type array $_links Links. * @type array $_embedded Embedded objects. * } */ public function response_to_data( $response, $embed ) { $data = $response->get_data(); $links = self::get_compact_response_links( $response ); if ( ! empty( $links ) ) { // Convert links to part of the data. $data['_links'] = $links; } if ( $embed ) { $this->embed_cache = array(); // Determine if this is a numeric array. if ( wp_is_numeric_array( $data ) ) { foreach ( $data as $key => $item ) { $data[ $key ] = $this->embed_links( $item, $embed ); } } else { $data = $this->embed_links( $data, $embed ); } $this->embed_cache = array(); } return $data; } /** * Retrieves links from a response. * * Extracts the links from a response into a structured hash, suitable for * direct output. * * @since 4.4.0 * * @param WP_REST_Response $response Response to extract links from. * @return array Map of link relation to list of link hashes. */ public static function get_response_links( $response ) { $links = $response->get_links(); if ( empty( $links ) ) { return array(); } // Convert links to part of the data. $data = array(); foreach ( $links as $rel => $items ) { $data[ $rel ] = array(); foreach ( $items as $item ) { $attributes = $item['attributes']; $attributes['href'] = $item['href']; $data[ $rel ][] = $attributes; } } return $data; } /** * Retrieves the CURIEs (compact URIs) used for relations. * * Extracts the links from a response into a structured hash, suitable for * direct output. * * @since 4.5.0 * * @param WP_REST_Response $response Response to extract links from. * @return array Map of link relation to list of link hashes. */ public static function get_compact_response_links( $response ) { $links = self::get_response_links( $response ); if ( empty( $links ) ) { return array(); } $curies = $response->get_curies(); $used_curies = array(); foreach ( $links as $rel => $items ) { // Convert $rel URIs to their compact versions if they exist. foreach ( $curies as $curie ) { $href_prefix = substr( $curie['href'], 0, strpos( $curie['href'], '{rel}' ) ); if ( strpos( $rel, $href_prefix ) !== 0 ) { continue; } // Relation now changes from '$uri' to '$curie:$relation'. $rel_regex = str_replace( '\{rel\}', '(.+)', preg_quote( $curie['href'], '!' ) ); preg_match( '!' . $rel_regex . '!', $rel, $matches ); if ( $matches ) { $new_rel = $curie['name'] . ':' . $matches[1]; $used_curies[ $curie['name'] ] = $curie; $links[ $new_rel ] = $items; unset( $links[ $rel ] ); break; } } } // Push the curies onto the start of the links array. if ( $used_curies ) { $links['curies'] = array_values( $used_curies ); } return $links; } /** * Embeds the links from the data into the request. * * @since 4.4.0 * @since 5.4.0 The $embed parameter can now contain a list of link relations to include. * * @param array $data Data from the request. * @param bool|string[] $embed Whether to embed all links or a filtered list of link relations. * @return array { * Data with sub-requests embedded. * * @type array $_links Links. * @type array $_embedded Embedded objects. * } */ protected function embed_links( $data, $embed = true ) { if ( empty( $data['_links'] ) ) { return $data; } $embedded = array(); foreach ( $data['_links'] as $rel => $links ) { // If a list of relations was specified, and the link relation // is not in the list of allowed relations, don't process the link. if ( is_array( $embed ) && ! in_array( $rel, $embed, true ) ) { continue; } $embeds = array(); foreach ( $links as $item ) { // Determine if the link is embeddable. if ( empty( $item['embeddable'] ) ) { // Ensure we keep the same order. $embeds[] = array(); continue; } if ( ! array_key_exists( $item['href'], $this->embed_cache ) ) { // Run through our internal routing and serve. $request = WP_REST_Request::from_url( $item['href'] ); if ( ! $request ) { $embeds[] = array(); continue; } // Embedded resources get passed context=embed. if ( empty( $request['context'] ) ) { $request['context'] = 'embed'; } $response = $this->dispatch( $request ); /** This filter is documented in wp-includes/rest-api/class-wp-rest-server.php */ $response = apply_filters( 'rest_post_dispatch', rest_ensure_response( $response ), $this, $request ); $this->embed_cache[ $item['href'] ] = $this->response_to_data( $response, false ); } $embeds[] = $this->embed_cache[ $item['href'] ]; } // Determine if any real links were found. $has_links = count( array_filter( $embeds ) ); if ( $has_links ) { $embedded[ $rel ] = $embeds; } } if ( ! empty( $embedded ) ) { $data['_embedded'] = $embedded; } return $data; } /** * Wraps the response in an envelope. * * The enveloping technique is used to work around browser/client * compatibility issues. Essentially, it converts the full HTTP response to * data instead. * * @since 4.4.0 * * @param WP_REST_Response $response Response object. * @param bool $embed Whether links should be embedded. * @return WP_REST_Response New response with wrapped data */ public function envelope_response( $response, $embed ) { $envelope = array( 'body' => $this->response_to_data( $response, $embed ), 'status' => $response->get_status(), 'headers' => $response->get_headers(), ); /** * Filters the enveloped form of a REST API response. * * @since 4.4.0 * * @param array $envelope { * Envelope data. * * @type array $body Response data. * @type int $status The 3-digit HTTP status code. * @type array $headers Map of header name to header value. * } * @param WP_REST_Response $response Original response data. */ $envelope = apply_filters( 'rest_envelope_response', $envelope, $response ); // Ensure it's still a response and return. return rest_ensure_response( $envelope ); } /** * Registers a route to the server. * * @since 4.4.0 * * @param string $namespace Namespace. * @param string $route The REST route. * @param array $route_args Route arguments. * @param bool $override Optional. Whether the route should be overridden if it already exists. * Default false. */ public function register_route( $namespace, $route, $route_args, $override = false ) { if ( ! isset( $this->namespaces[ $namespace ] ) ) { $this->namespaces[ $namespace ] = array(); $this->register_route( $namespace, '/' . $namespace, array( array( 'methods' => self::READABLE, 'callback' => array( $this, 'get_namespace_index' ), 'args' => array( 'namespace' => array( 'default' => $namespace, ), 'context' => array( 'default' => 'view', ), ), ), ) ); } // Associative to avoid double-registration. $this->namespaces[ $namespace ][ $route ] = true; $route_args['namespace'] = $namespace; if ( $override || empty( $this->endpoints[ $route ] ) ) { $this->endpoints[ $route ] = $route_args; } else { $this->endpoints[ $route ] = array_merge( $this->endpoints[ $route ], $route_args ); } } /** * Retrieves the route map. * * The route map is an associative array with path regexes as the keys. The * value is an indexed array with the callback function/method as the first * item, and a bitmask of HTTP methods as the second item (see the class * constants). * * Each route can be mapped to more than one callback by using an array of * the indexed arrays. This allows mapping e.g. GET requests to one callback * and POST requests to another. * * Note that the path regexes (array keys) must have @ escaped, as this is * used as the delimiter with preg_match() * * @since 4.4.0 * @since 5.4.0 Add $namespace parameter. * * @param string $namespace Optionally, only return routes in the given namespace. * @return array `'/path/regex' => array( $callback, $bitmask )` or * `'/path/regex' => array( array( $callback, $bitmask ), ...)`. */ public function get_routes( $namespace = '' ) { $endpoints = $this->endpoints; if ( $namespace ) { $endpoints = wp_list_filter( $endpoints, array( 'namespace' => $namespace ) ); } /** * Filters the array of available REST API endpoints. * * @since 4.4.0 * * @param array $endpoints The available endpoints. An array of matching regex patterns, each mapped * to an array of callbacks for the endpoint. These take the format * `'/path/regex' => array( $callback, $bitmask )` or * `'/path/regex' => array( array( $callback, $bitmask ). */ $endpoints = apply_filters( 'rest_endpoints', $endpoints ); // Normalise the endpoints. $defaults = array( 'methods' => '', 'accept_json' => false, 'accept_raw' => false, 'show_in_index' => true, 'args' => array(), ); foreach ( $endpoints as $route => &$handlers ) { if ( isset( $handlers['callback'] ) ) { // Single endpoint, add one deeper. $handlers = array( $handlers ); } if ( ! isset( $this->route_options[ $route ] ) ) { $this->route_options[ $route ] = array(); } foreach ( $handlers as $key => &$handler ) { if ( ! is_numeric( $key ) ) { // Route option, move it to the options. $this->route_options[ $route ][ $key ] = $handler; unset( $handlers[ $key ] ); continue; } $handler = wp_parse_args( $handler, $defaults ); // Allow comma-separated HTTP methods. if ( is_string( $handler['methods'] ) ) { $methods = explode( ',', $handler['methods'] ); } elseif ( is_array( $handler['methods'] ) ) { $methods = $handler['methods']; } else { $methods = array(); } $handler['methods'] = array(); foreach ( $methods as $method ) { $method = strtoupper( trim( $method ) ); $handler['methods'][ $method ] = true; } } } return $endpoints; } /** * Retrieves namespaces registered on the server. * * @since 4.4.0 * * @return string[] List of registered namespaces. */ public function get_namespaces() { return array_keys( $this->namespaces ); } /** * Retrieves specified options for a route. * * @since 4.4.0 * * @param string $route Route pattern to fetch options for. * @return array|null Data as an associative array if found, or null if not found. */ public function get_route_options( $route ) { if ( ! isset( $this->route_options[ $route ] ) ) { return null; } return $this->route_options[ $route ]; } /** * Matches the request to a callback and call it. * * @since 4.4.0 * * @param WP_REST_Request $request Request to attempt dispatching. * @return WP_REST_Response Response returned by the callback. */ public function dispatch( $request ) { /** * Filters the pre-calculated result of a REST API dispatch request. * * Allow hijacking the request before dispatching by returning a non-empty. The returned value * will be used to serve the request instead. * * @since 4.4.0 * * @param mixed $result Response to replace the requested version with. Can be anything * a normal endpoint can return, or null to not hijack the request. * @param WP_REST_Server $server Server instance. * @param WP_REST_Request $request Request used to generate the response. */ $result = apply_filters( 'rest_pre_dispatch', null, $this, $request ); if ( ! empty( $result ) ) { return $result; } $error = null; $matched = $this->match_request_to_handler( $request ); if ( is_wp_error( $matched ) ) { return $this->error_to_response( $matched ); } list( $route, $handler ) = $matched; if ( ! is_callable( $handler['callback'] ) ) { $error = new WP_Error( 'rest_invalid_handler', __( 'The handler for the route is invalid.' ), array( 'status' => 500 ) ); } if ( ! is_wp_error( $error ) ) { $check_required = $request->has_valid_params(); if ( is_wp_error( $check_required ) ) { $error = $check_required; } else { $check_sanitized = $request->sanitize_params(); if ( is_wp_error( $check_sanitized ) ) { $error = $check_sanitized; } } } return $this->respond_to_request( $request, $route, $handler, $error ); } /** * Matches a request object to its handler. * * @access private * @since 5.6.0 * * @param WP_REST_Request $request The request object. * @return array|WP_Error The route and request handler on success or a WP_Error instance if no handler was found. */ protected function match_request_to_handler( $request ) { $method = $request->get_method(); $path = $request->get_route(); $with_namespace = array(); foreach ( $this->get_namespaces() as $namespace ) { if ( 0 === strpos( trailingslashit( ltrim( $path, '/' ) ), $namespace ) ) { $with_namespace[] = $this->get_routes( $namespace ); } } if ( $with_namespace ) { $routes = array_merge( ...$with_namespace ); } else { $routes = $this->get_routes(); } foreach ( $routes as $route => $handlers ) { $match = preg_match( '@^' . $route . '$@i', $path, $matches ); if ( ! $match ) { continue; } $args = array(); foreach ( $matches as $param => $value ) { if ( ! is_int( $param ) ) { $args[ $param ] = $value; } } foreach ( $handlers as $handler ) { $callback = $handler['callback']; $response = null; // Fallback to GET method if no HEAD method is registered. $checked_method = $method; if ( 'HEAD' === $method && empty( $handler['methods']['HEAD'] ) ) { $checked_method = 'GET'; } if ( empty( $handler['methods'][ $checked_method ] ) ) { continue; } if ( ! is_callable( $callback ) ) { return array( $route, $handler ); } $request->set_url_params( $args ); $request->set_attributes( $handler ); $defaults = array(); foreach ( $handler['args'] as $arg => $options ) { if ( isset( $options['default'] ) ) { $defaults[ $arg ] = $options['default']; } } $request->set_default_params( $defaults ); return array( $route, $handler ); } } return new WP_Error( 'rest_no_route', __( 'No route was found matching the URL and request method.' ), array( 'status' => 404 ) ); } /** * Dispatches the request to the callback handler. * * @access private * @since 5.6.0 * * @param WP_REST_Request $request The request object. * @param string $route The matched route regex. * @param array $handler The matched route handler. * @param WP_Error|null $response The current error object if any. * @return WP_REST_Response */ protected function respond_to_request( $request, $route, $handler, $response ) { /** * Filters the response before executing any REST API callbacks. * * Allows plugins to perform additional validation after a * request is initialized and matched to a registered route, * but before it is executed. * * Note that this filter will not be called for requests that * fail to authenticate or match to a registered route. * * @since 4.7.0 * * @param WP_REST_Response|WP_HTTP_Response|WP_Error|mixed $response Result to send to the client. * Usually a WP_REST_Response or WP_Error. * @param array $handler Route handler used for the request. * @param WP_REST_Request $request Request used to generate the response. */ $response = apply_filters( 'rest_request_before_callbacks', $response, $handler, $request ); // Check permission specified on the route. if ( ! is_wp_error( $response ) && ! empty( $handler['permission_callback'] ) ) { $permission = call_user_func( $handler['permission_callback'], $request ); if ( is_wp_error( $permission ) ) { $response = $permission; } elseif ( false === $permission || null === $permission ) { $response = new WP_Error( 'rest_forbidden', __( 'Sorry, you are not allowed to do that.' ), array( 'status' => rest_authorization_required_code() ) ); } } if ( ! is_wp_error( $response ) ) { /** * Filters the REST API dispatch request result. * * Allow plugins to override dispatching the request. * * @since 4.4.0 * @since 4.5.0 Added `$route` and `$handler` parameters. * * @param mixed $dispatch_result Dispatch result, will be used if not empty. * @param WP_REST_Request $request Request used to generate the response. * @param string $route Route matched for the request. * @param array $handler Route handler used for the request. */ $dispatch_result = apply_filters( 'rest_dispatch_request', null, $request, $route, $handler ); // Allow plugins to halt the request via this filter. if ( null !== $dispatch_result ) { $response = $dispatch_result; } else { $response = call_user_func( $handler['callback'], $request ); } } /** * Filters the response immediately after executing any REST API * callbacks. * * Allows plugins to perform any needed cleanup, for example, * to undo changes made during the {@see 'rest_request_before_callbacks'} * filter. * * Note that this filter will not be called for requests that * fail to authenticate or match to a registered route. * * Note that an endpoint's `permission_callback` can still be * called after this filter - see `rest_send_allow_header()`. * * @since 4.7.0 * * @param WP_REST_Response|WP_HTTP_Response|WP_Error|mixed $response Result to send to the client. * Usually a WP_REST_Response or WP_Error. * @param array $handler Route handler used for the request. * @param WP_REST_Request $request Request used to generate the response. */ $response = apply_filters( 'rest_request_after_callbacks', $response, $handler, $request ); if ( is_wp_error( $response ) ) { $response = $this->error_to_response( $response ); } else { $response = rest_ensure_response( $response ); } $response->set_matched_route( $route ); $response->set_matched_handler( $handler ); return $response; } /** * Returns if an error occurred during most recent JSON encode/decode. * * Strings to be translated will be in format like * "Encoding error: Maximum stack depth exceeded". * * @since 4.4.0 * * @return false|string Boolean false or string error message. */ protected function get_json_last_error() { $last_error_code = json_last_error(); if ( JSON_ERROR_NONE === $last_error_code || empty( $last_error_code ) ) { return false; } return json_last_error_msg(); } /** * Retrieves the site index. * * This endpoint describes the capabilities of the site. * * @since 4.4.0 * * @param array $request { * Request. * * @type string $context Context. * } * @return WP_REST_Response The API root index data. */ public function get_index( $request ) { // General site data. $available = array( 'name' => get_option( 'blogname' ), 'description' => get_option( 'blogdescription' ), 'url' => get_option( 'siteurl' ), 'home' => home_url(), 'gmt_offset' => get_option( 'gmt_offset' ), 'timezone_string' => get_option( 'timezone_string' ), 'namespaces' => array_keys( $this->namespaces ), 'authentication' => array(), 'routes' => $this->get_data_for_routes( $this->get_routes(), $request['context'] ), ); $response = new WP_REST_Response( $available ); $response->add_link( 'help', 'https://developer.wordpress.org/rest-api/' ); $this->add_active_theme_link_to_index( $response ); $this->add_site_logo_to_index( $response ); $this->add_site_icon_to_index( $response ); /** * Filters the REST API root index data. * * This contains the data describing the API. This includes information * about supported authentication schemes, supported namespaces, routes * available on the API, and a small amount of data about the site. * * @since 4.4.0 * * @param WP_REST_Response $response Response data. */ return apply_filters( 'rest_index', $response ); } /** * Adds a link to the active theme for users who have proper permissions. * * @since 5.7.0 * * @param WP_REST_Response $response REST API response. */ protected function add_active_theme_link_to_index( WP_REST_Response $response ) { $should_add = current_user_can( 'switch_themes' ) || current_user_can( 'manage_network_themes' ); if ( ! $should_add && current_user_can( 'edit_posts' ) ) { $should_add = true; } if ( ! $should_add ) { foreach ( get_post_types( array( 'show_in_rest' => true ), 'objects' ) as $post_type ) { if ( current_user_can( $post_type->cap->edit_posts ) ) { $should_add = true; break; } } } if ( $should_add ) { $theme = wp_get_theme(); $response->add_link( 'https://api.w.org/active-theme', rest_url( 'wp/v2/themes/' . $theme->get_stylesheet() ) ); } } /** * Exposes the site logo through the WordPress REST API. * * This is used for fetching this information when user has no rights * to update settings. * * @since 5.8.0 * * @param WP_REST_Response $response REST API response. */ protected function add_site_logo_to_index( WP_REST_Response $response ) { $site_logo_id = get_theme_mod( 'custom_logo', 0 ); $this->add_image_to_index( $response, $site_logo_id, 'site_logo' ); } /** * Exposes the site icon through the WordPress REST API. * * This is used for fetching this information when user has no rights * to update settings. * * @since 5.9.0 * * @param WP_REST_Response $response REST API response. */ protected function add_site_icon_to_index( WP_REST_Response $response ) { $site_icon_id = get_option( 'site_icon', 0 ); $this->add_image_to_index( $response, $site_icon_id, 'site_icon' ); } /** * Exposes an image through the WordPress REST API. * This is used for fetching this information when user has no rights * to update settings. * * @since 5.9.0 * * @param WP_REST_Response $response REST API response. * @param int $image_id Image attachment ID. * @param string $type Type of Image. */ protected function add_image_to_index( WP_REST_Response $response, $image_id, $type ) { $response->data[ $type ] = (int) $image_id; if ( $image_id ) { $response->add_link( 'https://api.w.org/featuredmedia', rest_url( rest_get_route_for_post( $image_id ) ), array( 'embeddable' => true, 'type' => $type, ) ); } } /** * Retrieves the index for a namespace. * * @since 4.4.0 * * @param WP_REST_Request $request REST request instance. * @return WP_REST_Response|WP_Error WP_REST_Response instance if the index was found, * WP_Error if the namespace isn't set. */ public function get_namespace_index( $request ) { $namespace = $request['namespace']; if ( ! isset( $this->namespaces[ $namespace ] ) ) { return new WP_Error( 'rest_invalid_namespace', __( 'The specified namespace could not be found.' ), array( 'status' => 404 ) ); } $routes = $this->namespaces[ $namespace ]; $endpoints = array_intersect_key( $this->get_routes(), $routes ); $data = array( 'namespace' => $namespace, 'routes' => $this->get_data_for_routes( $endpoints, $request['context'] ), ); $response = rest_ensure_response( $data ); // Link to the root index. $response->add_link( 'up', rest_url( '/' ) ); /** * Filters the REST API namespace index data. * * This typically is just the route data for the namespace, but you can * add any data you'd like here. * * @since 4.4.0 * * @param WP_REST_Response $response Response data. * @param WP_REST_Request $request Request data. The namespace is passed as the 'namespace' parameter. */ return apply_filters( 'rest_namespace_index', $response, $request ); } /** * Retrieves the publicly-visible data for routes. * * @since 4.4.0 * * @param array $routes Routes to get data for. * @param string $context Optional. Context for data. Accepts 'view' or 'help'. Default 'view'. * @return array[] Route data to expose in indexes, keyed by route. */ public function get_data_for_routes( $routes, $context = 'view' ) { $available = array(); // Find the available routes. foreach ( $routes as $route => $callbacks ) { $data = $this->get_data_for_route( $route, $callbacks, $context ); if ( empty( $data ) ) { continue; } /** * Filters the publicly-visible data for a single REST API route. * * @since 4.4.0 * * @param array $data Publicly-visible data for the route. */ $available[ $route ] = apply_filters( 'rest_endpoints_description', $data ); } /** * Filters the publicly-visible data for REST API routes. * * This data is exposed on indexes and can be used by clients or * developers to investigate the site and find out how to use it. It * acts as a form of self-documentation. * * @since 4.4.0 * * @param array[] $available Route data to expose in indexes, keyed by route. * @param array $routes Internal route data as an associative array. */ return apply_filters( 'rest_route_data', $available, $routes ); } /** * Retrieves publicly-visible data for the route. * * @since 4.4.0 * * @param string $route Route to get data for. * @param array $callbacks Callbacks to convert to data. * @param string $context Optional. Context for the data. Accepts 'view' or 'help'. Default 'view'. * @return array|null Data for the route, or null if no publicly-visible data. */ public function get_data_for_route( $route, $callbacks, $context = 'view' ) { $data = array( 'namespace' => '', 'methods' => array(), 'endpoints' => array(), ); $allow_batch = false; if ( isset( $this->route_options[ $route ] ) ) { $options = $this->route_options[ $route ]; if ( isset( $options['namespace'] ) ) { $data['namespace'] = $options['namespace']; } $allow_batch = isset( $options['allow_batch'] ) ? $options['allow_batch'] : false; if ( isset( $options['schema'] ) && 'help' === $context ) { $data['schema'] = call_user_func( $options['schema'] ); } } $allowed_schema_keywords = array_flip( rest_get_allowed_schema_keywords() ); $route = preg_replace( '#\(\?P<(\w+?)>.*?\)#', '{$1}', $route ); foreach ( $callbacks as $callback ) { // Skip to the next route if any callback is hidden. if ( empty( $callback['show_in_index'] ) ) { continue; } $data['methods'] = array_merge( $data['methods'], array_keys( $callback['methods'] ) ); $endpoint_data = array( 'methods' => array_keys( $callback['methods'] ), ); $callback_batch = isset( $callback['allow_batch'] ) ? $callback['allow_batch'] : $allow_batch; if ( $callback_batch ) { $endpoint_data['allow_batch'] = $callback_batch; } if ( isset( $callback['args'] ) ) { $endpoint_data['args'] = array(); foreach ( $callback['args'] as $key => $opts ) { $arg_data = array_intersect_key( $opts, $allowed_schema_keywords ); $arg_data['required'] = ! empty( $opts['required'] ); $endpoint_data['args'][ $key ] = $arg_data; } } $data['endpoints'][] = $endpoint_data; // For non-variable routes, generate links. if ( strpos( $route, '{' ) === false ) { $data['_links'] = array( 'self' => array( array( 'href' => rest_url( $route ), ), ), ); } } if ( empty( $data['methods'] ) ) { // No methods supported, hide the route. return null; } return $data; } /** * Gets the maximum number of requests that can be included in a batch. * * @since 5.6.0 * * @return int The maximum requests. */ protected function get_max_batch_size() { /** * Filters the maximum number of REST API requests that can be included in a batch. * * @since 5.6.0 * * @param int $max_size The maximum size. */ return apply_filters( 'rest_get_max_batch_size', 25 ); } /** * Serves the batch/v1 request. * * @since 5.6.0 * * @param WP_REST_Request $batch_request The batch request object. * @return WP_REST_Response The generated response object. */ public function serve_batch_request_v1( WP_REST_Request $batch_request ) { $requests = array(); foreach ( $batch_request['requests'] as $args ) { $parsed_url = wp_parse_url( $args['path'] ); if ( false === $parsed_url ) { $requests[] = new WP_Error( 'parse_path_failed', __( 'Could not parse the path.' ), array( 'status' => 400 ) ); continue; } $single_request = new WP_REST_Request( isset( $args['method'] ) ? $args['method'] : 'POST', $parsed_url['path'] ); if ( ! empty( $parsed_url['query'] ) ) { $query_args = null; // Satisfy linter. wp_parse_str( $parsed_url['query'], $query_args ); $single_request->set_query_params( $query_args ); } if ( ! empty( $args['body'] ) ) { $single_request->set_body_params( $args['body'] ); } if ( ! empty( $args['headers'] ) ) { $single_request->set_headers( $args['headers'] ); } $requests[] = $single_request; } $matches = array(); $validation = array(); $has_error = false; foreach ( $requests as $single_request ) { $match = $this->match_request_to_handler( $single_request ); $matches[] = $match; $error = null; if ( is_wp_error( $match ) ) { $error = $match; } if ( ! $error ) { list( $route, $handler ) = $match; if ( isset( $handler['allow_batch'] ) ) { $allow_batch = $handler['allow_batch']; } else { $route_options = $this->get_route_options( $route ); $allow_batch = isset( $route_options['allow_batch'] ) ? $route_options['allow_batch'] : false; } if ( ! is_array( $allow_batch ) || empty( $allow_batch['v1'] ) ) { $error = new WP_Error( 'rest_batch_not_allowed', __( 'The requested route does not support batch requests.' ), array( 'status' => 400 ) ); } } if ( ! $error ) { $check_required = $single_request->has_valid_params(); if ( is_wp_error( $check_required ) ) { $error = $check_required; } } if ( ! $error ) { $check_sanitized = $single_request->sanitize_params(); if ( is_wp_error( $check_sanitized ) ) { $error = $check_sanitized; } } if ( $error ) { $has_error = true; $validation[] = $error; } else { $validation[] = true; } } $responses = array(); if ( $has_error && 'require-all-validate' === $batch_request['validation'] ) { foreach ( $validation as $valid ) { if ( is_wp_error( $valid ) ) { $responses[] = $this->envelope_response( $this->error_to_response( $valid ), false )->get_data(); } else { $responses[] = null; } } return new WP_REST_Response( array( 'failed' => 'validation', 'responses' => $responses, ), WP_Http::MULTI_STATUS ); } foreach ( $requests as $i => $single_request ) { $clean_request = clone $single_request; $clean_request->set_url_params( array() ); $clean_request->set_attributes( array() ); $clean_request->set_default_params( array() ); /** This filter is documented in wp-includes/rest-api/class-wp-rest-server.php */ $result = apply_filters( 'rest_pre_dispatch', null, $this, $clean_request ); if ( empty( $result ) ) { $match = $matches[ $i ]; $error = null; if ( is_wp_error( $validation[ $i ] ) ) { $error = $validation[ $i ]; } if ( is_wp_error( $match ) ) { $result = $this->error_to_response( $match ); } else { list( $route, $handler ) = $match; if ( ! $error && ! is_callable( $handler['callback'] ) ) { $error = new WP_Error( 'rest_invalid_handler', __( 'The handler for the route is invalid' ), array( 'status' => 500 ) ); } $result = $this->respond_to_request( $single_request, $route, $handler, $error ); } } /** This filter is documented in wp-includes/rest-api/class-wp-rest-server.php */ $result = apply_filters( 'rest_post_dispatch', rest_ensure_response( $result ), $this, $single_request ); $responses[] = $this->envelope_response( $result, false )->get_data(); } return new WP_REST_Response( array( 'responses' => $responses ), WP_Http::MULTI_STATUS ); } /** * Sends an HTTP status code. * * @since 4.4.0 * * @param int $code HTTP status. */ protected function set_status( $code ) { status_header( $code ); } /** * Sends an HTTP header. * * @since 4.4.0 * * @param string $key Header key. * @param string $value Header value. */ public function send_header( $key, $value ) { /* * Sanitize as per RFC2616 (Section 4.2): * * Any LWS that occurs between field-content MAY be replaced with a * single SP before interpreting the field value or forwarding the * message downstream. */ $value = preg_replace( '/\s+/', ' ', $value ); header( sprintf( '%s: %s', $key, $value ) ); } /** * Sends multiple HTTP headers. * * @since 4.4.0 * * @param array $headers Map of header name to header value. */ public function send_headers( $headers ) { foreach ( $headers as $key => $value ) { $this->send_header( $key, $value ); } } /** * Removes an HTTP header from the current response. * * @since 4.8.0 * * @param string $key Header key. */ public function remove_header( $key ) { header_remove( $key ); } /** * Retrieves the raw request entity (body). * * @since 4.4.0 * * @global string $HTTP_RAW_POST_DATA Raw post data. * * @return string Raw request data. */ public static function get_raw_data() { // phpcs:disable PHPCompatibility.Variables.RemovedPredefinedGlobalVariables.http_raw_post_dataDeprecatedRemoved global $HTTP_RAW_POST_DATA; // $HTTP_RAW_POST_DATA was deprecated in PHP 5.6 and removed in PHP 7.0. if ( ! isset( $HTTP_RAW_POST_DATA ) ) { $HTTP_RAW_POST_DATA = file_get_contents( 'php://input' ); } return $HTTP_RAW_POST_DATA; // phpcs:enable } /** * Extracts headers from a PHP-style $_SERVER array. * * @since 4.4.0 * * @param array $server Associative array similar to `$_SERVER`. * @return array Headers extracted from the input. */ public function get_headers( $server ) { $headers = array(); // CONTENT_* headers are not prefixed with HTTP_. $additional = array( 'CONTENT_LENGTH' => true, 'CONTENT_MD5' => true, 'CONTENT_TYPE' => true, ); foreach ( $server as $key => $value ) { if ( strpos( $key, 'HTTP_' ) === 0 ) { $headers[ substr( $key, 5 ) ] = $value; } elseif ( 'REDIRECT_HTTP_AUTHORIZATION' === $key && empty( $server['HTTP_AUTHORIZATION'] ) ) { /* * In some server configurations, the authorization header is passed in this alternate location. * Since it would not be passed in in both places we do not check for both headers and resolve. */ $headers['AUTHORIZATION'] = $value; } elseif ( isset( $additional[ $key ] ) ) { $headers[ $key ] = $value; } } return $headers; } } PKj l\10JtJt5rest-api/endpoints/class-wp-rest-posts-controller.phpnu[ true ); /** * Constructor. * * @since 4.7.0 * * @param string $post_type Post type. */ public function __construct( $post_type ) { $this->post_type = $post_type; $obj = get_post_type_object( $post_type ); $this->rest_base = ! empty( $obj->rest_base ) ? $obj->rest_base : $obj->name; $this->namespace = ! empty( $obj->rest_namespace ) ? $obj->rest_namespace : 'wp/v2'; $this->meta = new WP_REST_Post_Meta_Fields( $this->post_type ); } /** * Registers the routes for posts. * * @since 4.7.0 * * @see register_rest_route() */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), array( 'methods' => WP_REST_Server::CREATABLE, 'callback' => array( $this, 'create_item' ), 'permission_callback' => array( $this, 'create_item_permissions_check' ), 'args' => $this->get_endpoint_args_for_item_schema( WP_REST_Server::CREATABLE ), ), 'allow_batch' => $this->allow_batch, 'schema' => array( $this, 'get_public_item_schema' ), ) ); $schema = $this->get_item_schema(); $get_item_args = array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ); if ( isset( $schema['properties']['password'] ) ) { $get_item_args['password'] = array( 'description' => __( 'The password for the post if it is password protected.' ), 'type' => 'string', ); } register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P[\d]+)', array( 'args' => array( 'id' => array( 'description' => __( 'Unique identifier for the post.' ), 'type' => 'integer', ), ), array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), 'args' => $get_item_args, ), array( 'methods' => WP_REST_Server::EDITABLE, 'callback' => array( $this, 'update_item' ), 'permission_callback' => array( $this, 'update_item_permissions_check' ), 'args' => $this->get_endpoint_args_for_item_schema( WP_REST_Server::EDITABLE ), ), array( 'methods' => WP_REST_Server::DELETABLE, 'callback' => array( $this, 'delete_item' ), 'permission_callback' => array( $this, 'delete_item_permissions_check' ), 'args' => array( 'force' => array( 'type' => 'boolean', 'default' => false, 'description' => __( 'Whether to bypass Trash and force deletion.' ), ), ), ), 'allow_batch' => $this->allow_batch, 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Checks if a given request has access to read posts. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_items_permissions_check( $request ) { $post_type = get_post_type_object( $this->post_type ); if ( 'edit' === $request['context'] && ! current_user_can( $post_type->cap->edit_posts ) ) { return new WP_Error( 'rest_forbidden_context', __( 'Sorry, you are not allowed to edit posts in this post type.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Override the result of the post password check for REST requested posts. * * Allow users to read the content of password protected posts if they have * previously passed a permission check or if they have the `edit_post` capability * for the post being checked. * * @since 5.7.1 * * @param bool $required Whether the post requires a password check. * @param WP_Post $post The post been password checked. * @return bool Result of password check taking in to account REST API considerations. */ public function check_password_required( $required, $post ) { if ( ! $required ) { return $required; } $post = get_post( $post ); if ( ! $post ) { return $required; } if ( ! empty( $this->password_check_passed[ $post->ID ] ) ) { // Password previously checked and approved. return false; } return ! current_user_can( 'edit_post', $post->ID ); } /** * Retrieves a collection of posts. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_items( $request ) { // Ensure a search string is set in case the orderby is set to 'relevance'. if ( ! empty( $request['orderby'] ) && 'relevance' === $request['orderby'] && empty( $request['search'] ) ) { return new WP_Error( 'rest_no_search_term_defined', __( 'You need to define a search term to order by relevance.' ), array( 'status' => 400 ) ); } // Ensure an include parameter is set in case the orderby is set to 'include'. if ( ! empty( $request['orderby'] ) && 'include' === $request['orderby'] && empty( $request['include'] ) ) { return new WP_Error( 'rest_orderby_include_missing_include', __( 'You need to define an include parameter to order by include.' ), array( 'status' => 400 ) ); } // Retrieve the list of registered collection query parameters. $registered = $this->get_collection_params(); $args = array(); /* * This array defines mappings between public API query parameters whose * values are accepted as-passed, and their internal WP_Query parameter * name equivalents (some are the same). Only values which are also * present in $registered will be set. */ $parameter_mappings = array( 'author' => 'author__in', 'author_exclude' => 'author__not_in', 'exclude' => 'post__not_in', 'include' => 'post__in', 'menu_order' => 'menu_order', 'offset' => 'offset', 'order' => 'order', 'orderby' => 'orderby', 'page' => 'paged', 'parent' => 'post_parent__in', 'parent_exclude' => 'post_parent__not_in', 'search' => 's', 'slug' => 'post_name__in', 'status' => 'post_status', ); /* * For each known parameter which is both registered and present in the request, * set the parameter's value on the query $args. */ foreach ( $parameter_mappings as $api_param => $wp_param ) { if ( isset( $registered[ $api_param ], $request[ $api_param ] ) ) { $args[ $wp_param ] = $request[ $api_param ]; } } // Check for & assign any parameters which require special handling or setting. $args['date_query'] = array(); if ( isset( $registered['before'], $request['before'] ) ) { $args['date_query'][] = array( 'before' => $request['before'], 'column' => 'post_date', ); } if ( isset( $registered['modified_before'], $request['modified_before'] ) ) { $args['date_query'][] = array( 'before' => $request['modified_before'], 'column' => 'post_modified', ); } if ( isset( $registered['after'], $request['after'] ) ) { $args['date_query'][] = array( 'after' => $request['after'], 'column' => 'post_date', ); } if ( isset( $registered['modified_after'], $request['modified_after'] ) ) { $args['date_query'][] = array( 'after' => $request['modified_after'], 'column' => 'post_modified', ); } // Ensure our per_page parameter overrides any provided posts_per_page filter. if ( isset( $registered['per_page'] ) ) { $args['posts_per_page'] = $request['per_page']; } if ( isset( $registered['sticky'], $request['sticky'] ) ) { $sticky_posts = get_option( 'sticky_posts', array() ); if ( ! is_array( $sticky_posts ) ) { $sticky_posts = array(); } if ( $request['sticky'] ) { /* * As post__in will be used to only get sticky posts, * we have to support the case where post__in was already * specified. */ $args['post__in'] = $args['post__in'] ? array_intersect( $sticky_posts, $args['post__in'] ) : $sticky_posts; /* * If we intersected, but there are no post IDs in common, * WP_Query won't return "no posts" for post__in = array() * so we have to fake it a bit. */ if ( ! $args['post__in'] ) { $args['post__in'] = array( 0 ); } } elseif ( $sticky_posts ) { /* * As post___not_in will be used to only get posts that * are not sticky, we have to support the case where post__not_in * was already specified. */ $args['post__not_in'] = array_merge( $args['post__not_in'], $sticky_posts ); } } $args = $this->prepare_tax_query( $args, $request ); // Force the post_type argument, since it's not a user input variable. $args['post_type'] = $this->post_type; /** * Filters WP_Query arguments when querying posts via the REST API. * * The dynamic portion of the hook name, `$this->post_type`, refers to the post type slug. * * Possible hook names include: * * - `rest_post_query` * - `rest_page_query` * - `rest_attachment_query` * * Enables adding extra arguments or setting defaults for a post collection request. * * @since 4.7.0 * @since 5.7.0 Moved after the `tax_query` query arg is generated. * * @link https://developer.wordpress.org/reference/classes/wp_query/ * * @param array $args Array of arguments for WP_Query. * @param WP_REST_Request $request The REST API request. */ $args = apply_filters( "rest_{$this->post_type}_query", $args, $request ); $query_args = $this->prepare_items_query( $args, $request ); $posts_query = new WP_Query(); $query_result = $posts_query->query( $query_args ); // Allow access to all password protected posts if the context is edit. if ( 'edit' === $request['context'] ) { add_filter( 'post_password_required', array( $this, 'check_password_required' ), 10, 2 ); } $posts = array(); foreach ( $query_result as $post ) { if ( 'edit' === $request['context'] ) { $permission = $this->check_update_permission( $post ); } else { $permission = $this->check_read_permission( $post ); } if ( ! $permission ) { continue; } $data = $this->prepare_item_for_response( $post, $request ); $posts[] = $this->prepare_response_for_collection( $data ); } // Reset filter. if ( 'edit' === $request['context'] ) { remove_filter( 'post_password_required', array( $this, 'check_password_required' ) ); } $page = (int) $query_args['paged']; $total_posts = $posts_query->found_posts; if ( $total_posts < 1 ) { // Out-of-bounds, run the query again without LIMIT for total count. unset( $query_args['paged'] ); $count_query = new WP_Query(); $count_query->query( $query_args ); $total_posts = $count_query->found_posts; } $max_pages = ceil( $total_posts / (int) $posts_query->query_vars['posts_per_page'] ); if ( $page > $max_pages && $total_posts > 0 ) { return new WP_Error( 'rest_post_invalid_page_number', __( 'The page number requested is larger than the number of pages available.' ), array( 'status' => 400 ) ); } $response = rest_ensure_response( $posts ); $response->header( 'X-WP-Total', (int) $total_posts ); $response->header( 'X-WP-TotalPages', (int) $max_pages ); $request_params = $request->get_query_params(); $base = add_query_arg( urlencode_deep( $request_params ), rest_url( sprintf( '%s/%s', $this->namespace, $this->rest_base ) ) ); if ( $page > 1 ) { $prev_page = $page - 1; if ( $prev_page > $max_pages ) { $prev_page = $max_pages; } $prev_link = add_query_arg( 'page', $prev_page, $base ); $response->link_header( 'prev', $prev_link ); } if ( $max_pages > $page ) { $next_page = $page + 1; $next_link = add_query_arg( 'page', $next_page, $base ); $response->link_header( 'next', $next_link ); } return $response; } /** * Get the post, if the ID is valid. * * @since 4.7.2 * * @param int $id Supplied ID. * @return WP_Post|WP_Error Post object if ID is valid, WP_Error otherwise. */ protected function get_post( $id ) { $error = new WP_Error( 'rest_post_invalid_id', __( 'Invalid post ID.' ), array( 'status' => 404 ) ); if ( (int) $id <= 0 ) { return $error; } $post = get_post( (int) $id ); if ( empty( $post ) || empty( $post->ID ) || $this->post_type !== $post->post_type ) { return $error; } return $post; } /** * Checks if a given request has access to read a post. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access for the item, WP_Error object otherwise. */ public function get_item_permissions_check( $request ) { $post = $this->get_post( $request['id'] ); if ( is_wp_error( $post ) ) { return $post; } if ( 'edit' === $request['context'] && $post && ! $this->check_update_permission( $post ) ) { return new WP_Error( 'rest_forbidden_context', __( 'Sorry, you are not allowed to edit this post.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( $post && ! empty( $request['password'] ) ) { // Check post password, and return error if invalid. if ( ! hash_equals( $post->post_password, $request['password'] ) ) { return new WP_Error( 'rest_post_incorrect_password', __( 'Incorrect post password.' ), array( 'status' => 403 ) ); } } // Allow access to all password protected posts if the context is edit. if ( 'edit' === $request['context'] ) { add_filter( 'post_password_required', array( $this, 'check_password_required' ), 10, 2 ); } if ( $post ) { return $this->check_read_permission( $post ); } return true; } /** * Checks if the user can access password-protected content. * * This method determines whether we need to override the regular password * check in core with a filter. * * @since 4.7.0 * * @param WP_Post $post Post to check against. * @param WP_REST_Request $request Request data to check. * @return bool True if the user can access password-protected content, otherwise false. */ public function can_access_password_content( $post, $request ) { if ( empty( $post->post_password ) ) { // No filter required. return false; } /* * Users always gets access to password protected content in the edit * context if they have the `edit_post` meta capability. */ if ( 'edit' === $request['context'] && current_user_can( 'edit_post', $post->ID ) ) { return true; } // No password, no auth. if ( empty( $request['password'] ) ) { return false; } // Double-check the request password. return hash_equals( $post->post_password, $request['password'] ); } /** * Retrieves a single post. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_item( $request ) { $post = $this->get_post( $request['id'] ); if ( is_wp_error( $post ) ) { return $post; } $data = $this->prepare_item_for_response( $post, $request ); $response = rest_ensure_response( $data ); if ( is_post_type_viewable( get_post_type_object( $post->post_type ) ) ) { $response->link_header( 'alternate', get_permalink( $post->ID ), array( 'type' => 'text/html' ) ); } return $response; } /** * Checks if a given request has access to create a post. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to create items, WP_Error object otherwise. */ public function create_item_permissions_check( $request ) { if ( ! empty( $request['id'] ) ) { return new WP_Error( 'rest_post_exists', __( 'Cannot create existing post.' ), array( 'status' => 400 ) ); } $post_type = get_post_type_object( $this->post_type ); if ( ! empty( $request['author'] ) && get_current_user_id() !== $request['author'] && ! current_user_can( $post_type->cap->edit_others_posts ) ) { return new WP_Error( 'rest_cannot_edit_others', __( 'Sorry, you are not allowed to create posts as this user.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( ! empty( $request['sticky'] ) && ! current_user_can( $post_type->cap->edit_others_posts ) && ! current_user_can( $post_type->cap->publish_posts ) ) { return new WP_Error( 'rest_cannot_assign_sticky', __( 'Sorry, you are not allowed to make posts sticky.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( ! current_user_can( $post_type->cap->create_posts ) ) { return new WP_Error( 'rest_cannot_create', __( 'Sorry, you are not allowed to create posts as this user.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( ! $this->check_assign_terms_permission( $request ) ) { return new WP_Error( 'rest_cannot_assign_term', __( 'Sorry, you are not allowed to assign the provided terms.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Creates a single post. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function create_item( $request ) { if ( ! empty( $request['id'] ) ) { return new WP_Error( 'rest_post_exists', __( 'Cannot create existing post.' ), array( 'status' => 400 ) ); } $prepared_post = $this->prepare_item_for_database( $request ); if ( is_wp_error( $prepared_post ) ) { return $prepared_post; } $prepared_post->post_type = $this->post_type; $post_id = wp_insert_post( wp_slash( (array) $prepared_post ), true, false ); if ( is_wp_error( $post_id ) ) { if ( 'db_insert_error' === $post_id->get_error_code() ) { $post_id->add_data( array( 'status' => 500 ) ); } else { $post_id->add_data( array( 'status' => 400 ) ); } return $post_id; } $post = get_post( $post_id ); /** * Fires after a single post is created or updated via the REST API. * * The dynamic portion of the hook name, `$this->post_type`, refers to the post type slug. * * Possible hook names include: * * - `rest_insert_post` * - `rest_insert_page` * - `rest_insert_attachment` * * @since 4.7.0 * * @param WP_Post $post Inserted or updated post object. * @param WP_REST_Request $request Request object. * @param bool $creating True when creating a post, false when updating. */ do_action( "rest_insert_{$this->post_type}", $post, $request, true ); $schema = $this->get_item_schema(); if ( ! empty( $schema['properties']['sticky'] ) ) { if ( ! empty( $request['sticky'] ) ) { stick_post( $post_id ); } else { unstick_post( $post_id ); } } if ( ! empty( $schema['properties']['featured_media'] ) && isset( $request['featured_media'] ) ) { $this->handle_featured_media( $request['featured_media'], $post_id ); } if ( ! empty( $schema['properties']['format'] ) && ! empty( $request['format'] ) ) { set_post_format( $post, $request['format'] ); } if ( ! empty( $schema['properties']['template'] ) && isset( $request['template'] ) ) { $this->handle_template( $request['template'], $post_id, true ); } $terms_update = $this->handle_terms( $post_id, $request ); if ( is_wp_error( $terms_update ) ) { return $terms_update; } if ( ! empty( $schema['properties']['meta'] ) && isset( $request['meta'] ) ) { $meta_update = $this->meta->update_value( $request['meta'], $post_id ); if ( is_wp_error( $meta_update ) ) { return $meta_update; } } $post = get_post( $post_id ); $fields_update = $this->update_additional_fields_for_object( $post, $request ); if ( is_wp_error( $fields_update ) ) { return $fields_update; } $request->set_param( 'context', 'edit' ); /** * Fires after a single post is completely created or updated via the REST API. * * The dynamic portion of the hook name, `$this->post_type`, refers to the post type slug. * * Possible hook names include: * * - `rest_after_insert_post` * - `rest_after_insert_page` * - `rest_after_insert_attachment` * * @since 5.0.0 * * @param WP_Post $post Inserted or updated post object. * @param WP_REST_Request $request Request object. * @param bool $creating True when creating a post, false when updating. */ do_action( "rest_after_insert_{$this->post_type}", $post, $request, true ); wp_after_insert_post( $post, false, null ); $response = $this->prepare_item_for_response( $post, $request ); $response = rest_ensure_response( $response ); $response->set_status( 201 ); $response->header( 'Location', rest_url( sprintf( '%s/%s/%d', $this->namespace, $this->rest_base, $post_id ) ) ); return $response; } /** * Checks if a given request has access to update a post. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to update the item, WP_Error object otherwise. */ public function update_item_permissions_check( $request ) { $post = $this->get_post( $request['id'] ); if ( is_wp_error( $post ) ) { return $post; } $post_type = get_post_type_object( $this->post_type ); if ( $post && ! $this->check_update_permission( $post ) ) { return new WP_Error( 'rest_cannot_edit', __( 'Sorry, you are not allowed to edit this post.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( ! empty( $request['author'] ) && get_current_user_id() !== $request['author'] && ! current_user_can( $post_type->cap->edit_others_posts ) ) { return new WP_Error( 'rest_cannot_edit_others', __( 'Sorry, you are not allowed to update posts as this user.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( ! empty( $request['sticky'] ) && ! current_user_can( $post_type->cap->edit_others_posts ) && ! current_user_can( $post_type->cap->publish_posts ) ) { return new WP_Error( 'rest_cannot_assign_sticky', __( 'Sorry, you are not allowed to make posts sticky.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( ! $this->check_assign_terms_permission( $request ) ) { return new WP_Error( 'rest_cannot_assign_term', __( 'Sorry, you are not allowed to assign the provided terms.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Updates a single post. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function update_item( $request ) { $valid_check = $this->get_post( $request['id'] ); if ( is_wp_error( $valid_check ) ) { return $valid_check; } $post_before = get_post( $request['id'] ); $post = $this->prepare_item_for_database( $request ); if ( is_wp_error( $post ) ) { return $post; } // Convert the post object to an array, otherwise wp_update_post() will expect non-escaped input. $post_id = wp_update_post( wp_slash( (array) $post ), true, false ); if ( is_wp_error( $post_id ) ) { if ( 'db_update_error' === $post_id->get_error_code() ) { $post_id->add_data( array( 'status' => 500 ) ); } else { $post_id->add_data( array( 'status' => 400 ) ); } return $post_id; } $post = get_post( $post_id ); /** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-posts-controller.php */ do_action( "rest_insert_{$this->post_type}", $post, $request, false ); $schema = $this->get_item_schema(); if ( ! empty( $schema['properties']['format'] ) && ! empty( $request['format'] ) ) { set_post_format( $post, $request['format'] ); } if ( ! empty( $schema['properties']['featured_media'] ) && isset( $request['featured_media'] ) ) { $this->handle_featured_media( $request['featured_media'], $post_id ); } if ( ! empty( $schema['properties']['sticky'] ) && isset( $request['sticky'] ) ) { if ( ! empty( $request['sticky'] ) ) { stick_post( $post_id ); } else { unstick_post( $post_id ); } } if ( ! empty( $schema['properties']['template'] ) && isset( $request['template'] ) ) { $this->handle_template( $request['template'], $post->ID ); } $terms_update = $this->handle_terms( $post->ID, $request ); if ( is_wp_error( $terms_update ) ) { return $terms_update; } if ( ! empty( $schema['properties']['meta'] ) && isset( $request['meta'] ) ) { $meta_update = $this->meta->update_value( $request['meta'], $post->ID ); if ( is_wp_error( $meta_update ) ) { return $meta_update; } } $post = get_post( $post_id ); $fields_update = $this->update_additional_fields_for_object( $post, $request ); if ( is_wp_error( $fields_update ) ) { return $fields_update; } $request->set_param( 'context', 'edit' ); // Filter is fired in WP_REST_Attachments_Controller subclass. if ( 'attachment' === $this->post_type ) { $response = $this->prepare_item_for_response( $post, $request ); return rest_ensure_response( $response ); } /** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-posts-controller.php */ do_action( "rest_after_insert_{$this->post_type}", $post, $request, false ); wp_after_insert_post( $post, true, $post_before ); $response = $this->prepare_item_for_response( $post, $request ); return rest_ensure_response( $response ); } /** * Checks if a given request has access to delete a post. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to delete the item, WP_Error object otherwise. */ public function delete_item_permissions_check( $request ) { $post = $this->get_post( $request['id'] ); if ( is_wp_error( $post ) ) { return $post; } if ( $post && ! $this->check_delete_permission( $post ) ) { return new WP_Error( 'rest_cannot_delete', __( 'Sorry, you are not allowed to delete this post.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Deletes a single post. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function delete_item( $request ) { $post = $this->get_post( $request['id'] ); if ( is_wp_error( $post ) ) { return $post; } $id = $post->ID; $force = (bool) $request['force']; $supports_trash = ( EMPTY_TRASH_DAYS > 0 ); if ( 'attachment' === $post->post_type ) { $supports_trash = $supports_trash && MEDIA_TRASH; } /** * Filters whether a post is trashable. * * The dynamic portion of the hook name, `$this->post_type`, refers to the post type slug. * * Possible hook names include: * * - `rest_post_trashable` * - `rest_page_trashable` * - `rest_attachment_trashable` * * Pass false to disable Trash support for the post. * * @since 4.7.0 * * @param bool $supports_trash Whether the post type support trashing. * @param WP_Post $post The Post object being considered for trashing support. */ $supports_trash = apply_filters( "rest_{$this->post_type}_trashable", $supports_trash, $post ); if ( ! $this->check_delete_permission( $post ) ) { return new WP_Error( 'rest_user_cannot_delete_post', __( 'Sorry, you are not allowed to delete this post.' ), array( 'status' => rest_authorization_required_code() ) ); } $request->set_param( 'context', 'edit' ); // If we're forcing, then delete permanently. if ( $force ) { $previous = $this->prepare_item_for_response( $post, $request ); $result = wp_delete_post( $id, true ); $response = new WP_REST_Response(); $response->set_data( array( 'deleted' => true, 'previous' => $previous->get_data(), ) ); } else { // If we don't support trashing for this type, error out. if ( ! $supports_trash ) { return new WP_Error( 'rest_trash_not_supported', /* translators: %s: force=true */ sprintf( __( "The post does not support trashing. Set '%s' to delete." ), 'force=true' ), array( 'status' => 501 ) ); } // Otherwise, only trash if we haven't already. if ( 'trash' === $post->post_status ) { return new WP_Error( 'rest_already_trashed', __( 'The post has already been deleted.' ), array( 'status' => 410 ) ); } // (Note that internally this falls through to `wp_delete_post()` // if the Trash is disabled.) $result = wp_trash_post( $id ); $post = get_post( $id ); $response = $this->prepare_item_for_response( $post, $request ); } if ( ! $result ) { return new WP_Error( 'rest_cannot_delete', __( 'The post cannot be deleted.' ), array( 'status' => 500 ) ); } /** * Fires immediately after a single post is deleted or trashed via the REST API. * * They dynamic portion of the hook name, `$this->post_type`, refers to the post type slug. * * Possible hook names include: * * - `rest_delete_post` * - `rest_delete_page` * - `rest_delete_attachment` * * @since 4.7.0 * * @param WP_Post $post The deleted or trashed post. * @param WP_REST_Response $response The response data. * @param WP_REST_Request $request The request sent to the API. */ do_action( "rest_delete_{$this->post_type}", $post, $response, $request ); return $response; } /** * Determines the allowed query_vars for a get_items() response and prepares * them for WP_Query. * * @since 4.7.0 * * @param array $prepared_args Optional. Prepared WP_Query arguments. Default empty array. * @param WP_REST_Request $request Optional. Full details about the request. * @return array Items query arguments. */ protected function prepare_items_query( $prepared_args = array(), $request = null ) { $query_args = array(); foreach ( $prepared_args as $key => $value ) { /** * Filters the query_vars used in get_items() for the constructed query. * * The dynamic portion of the hook name, `$key`, refers to the query_var key. * * @since 4.7.0 * * @param string $value The query_var value. */ $query_args[ $key ] = apply_filters( "rest_query_var-{$key}", $value ); // phpcs:ignore WordPress.NamingConventions.ValidHookName.UseUnderscores } if ( 'post' !== $this->post_type || ! isset( $query_args['ignore_sticky_posts'] ) ) { $query_args['ignore_sticky_posts'] = true; } // Map to proper WP_Query orderby param. if ( isset( $query_args['orderby'] ) && isset( $request['orderby'] ) ) { $orderby_mappings = array( 'id' => 'ID', 'include' => 'post__in', 'slug' => 'post_name', 'include_slugs' => 'post_name__in', ); if ( isset( $orderby_mappings[ $request['orderby'] ] ) ) { $query_args['orderby'] = $orderby_mappings[ $request['orderby'] ]; } } return $query_args; } /** * Checks the post_date_gmt or modified_gmt and prepare any post or * modified date for single post output. * * @since 4.7.0 * * @param string $date_gmt GMT publication time. * @param string|null $date Optional. Local publication time. Default null. * @return string|null ISO8601/RFC3339 formatted datetime. */ protected function prepare_date_response( $date_gmt, $date = null ) { // Use the date if passed. if ( isset( $date ) ) { return mysql_to_rfc3339( $date ); } // Return null if $date_gmt is empty/zeros. if ( '0000-00-00 00:00:00' === $date_gmt ) { return null; } // Return the formatted datetime. return mysql_to_rfc3339( $date_gmt ); } /** * Prepares a single post for create or update. * * @since 4.7.0 * * @param WP_REST_Request $request Request object. * @return stdClass|WP_Error Post object or WP_Error. */ protected function prepare_item_for_database( $request ) { $prepared_post = new stdClass(); $current_status = ''; // Post ID. if ( isset( $request['id'] ) ) { $existing_post = $this->get_post( $request['id'] ); if ( is_wp_error( $existing_post ) ) { return $existing_post; } $prepared_post->ID = $existing_post->ID; $current_status = $existing_post->post_status; } $schema = $this->get_item_schema(); // Post title. if ( ! empty( $schema['properties']['title'] ) && isset( $request['title'] ) ) { if ( is_string( $request['title'] ) ) { $prepared_post->post_title = $request['title']; } elseif ( ! empty( $request['title']['raw'] ) ) { $prepared_post->post_title = $request['title']['raw']; } } // Post content. if ( ! empty( $schema['properties']['content'] ) && isset( $request['content'] ) ) { if ( is_string( $request['content'] ) ) { $prepared_post->post_content = $request['content']; } elseif ( isset( $request['content']['raw'] ) ) { $prepared_post->post_content = $request['content']['raw']; } } // Post excerpt. if ( ! empty( $schema['properties']['excerpt'] ) && isset( $request['excerpt'] ) ) { if ( is_string( $request['excerpt'] ) ) { $prepared_post->post_excerpt = $request['excerpt']; } elseif ( isset( $request['excerpt']['raw'] ) ) { $prepared_post->post_excerpt = $request['excerpt']['raw']; } } // Post type. if ( empty( $request['id'] ) ) { // Creating new post, use default type for the controller. $prepared_post->post_type = $this->post_type; } else { // Updating a post, use previous type. $prepared_post->post_type = get_post_type( $request['id'] ); } $post_type = get_post_type_object( $prepared_post->post_type ); // Post status. if ( ! empty( $schema['properties']['status'] ) && isset( $request['status'] ) && ( ! $current_status || $current_status !== $request['status'] ) ) { $status = $this->handle_status_param( $request['status'], $post_type ); if ( is_wp_error( $status ) ) { return $status; } $prepared_post->post_status = $status; } // Post date. if ( ! empty( $schema['properties']['date'] ) && ! empty( $request['date'] ) ) { $current_date = isset( $prepared_post->ID ) ? get_post( $prepared_post->ID )->post_date : false; $date_data = rest_get_date_with_gmt( $request['date'] ); if ( ! empty( $date_data ) && $current_date !== $date_data[0] ) { list( $prepared_post->post_date, $prepared_post->post_date_gmt ) = $date_data; $prepared_post->edit_date = true; } } elseif ( ! empty( $schema['properties']['date_gmt'] ) && ! empty( $request['date_gmt'] ) ) { $current_date = isset( $prepared_post->ID ) ? get_post( $prepared_post->ID )->post_date_gmt : false; $date_data = rest_get_date_with_gmt( $request['date_gmt'], true ); if ( ! empty( $date_data ) && $current_date !== $date_data[1] ) { list( $prepared_post->post_date, $prepared_post->post_date_gmt ) = $date_data; $prepared_post->edit_date = true; } } // Sending a null date or date_gmt value resets date and date_gmt to their // default values (`0000-00-00 00:00:00`). if ( ( ! empty( $schema['properties']['date_gmt'] ) && $request->has_param( 'date_gmt' ) && null === $request['date_gmt'] ) || ( ! empty( $schema['properties']['date'] ) && $request->has_param( 'date' ) && null === $request['date'] ) ) { $prepared_post->post_date_gmt = null; $prepared_post->post_date = null; } // Post slug. if ( ! empty( $schema['properties']['slug'] ) && isset( $request['slug'] ) ) { $prepared_post->post_name = $request['slug']; } // Author. if ( ! empty( $schema['properties']['author'] ) && ! empty( $request['author'] ) ) { $post_author = (int) $request['author']; if ( get_current_user_id() !== $post_author ) { $user_obj = get_userdata( $post_author ); if ( ! $user_obj ) { return new WP_Error( 'rest_invalid_author', __( 'Invalid author ID.' ), array( 'status' => 400 ) ); } } $prepared_post->post_author = $post_author; } // Post password. if ( ! empty( $schema['properties']['password'] ) && isset( $request['password'] ) ) { $prepared_post->post_password = $request['password']; if ( '' !== $request['password'] ) { if ( ! empty( $schema['properties']['sticky'] ) && ! empty( $request['sticky'] ) ) { return new WP_Error( 'rest_invalid_field', __( 'A post can not be sticky and have a password.' ), array( 'status' => 400 ) ); } if ( ! empty( $prepared_post->ID ) && is_sticky( $prepared_post->ID ) ) { return new WP_Error( 'rest_invalid_field', __( 'A sticky post can not be password protected.' ), array( 'status' => 400 ) ); } } } if ( ! empty( $schema['properties']['sticky'] ) && ! empty( $request['sticky'] ) ) { if ( ! empty( $prepared_post->ID ) && post_password_required( $prepared_post->ID ) ) { return new WP_Error( 'rest_invalid_field', __( 'A password protected post can not be set to sticky.' ), array( 'status' => 400 ) ); } } // Parent. if ( ! empty( $schema['properties']['parent'] ) && isset( $request['parent'] ) ) { if ( 0 === (int) $request['parent'] ) { $prepared_post->post_parent = 0; } else { $parent = get_post( (int) $request['parent'] ); if ( empty( $parent ) ) { return new WP_Error( 'rest_post_invalid_id', __( 'Invalid post parent ID.' ), array( 'status' => 400 ) ); } $prepared_post->post_parent = (int) $parent->ID; } } // Menu order. if ( ! empty( $schema['properties']['menu_order'] ) && isset( $request['menu_order'] ) ) { $prepared_post->menu_order = (int) $request['menu_order']; } // Comment status. if ( ! empty( $schema['properties']['comment_status'] ) && ! empty( $request['comment_status'] ) ) { $prepared_post->comment_status = $request['comment_status']; } // Ping status. if ( ! empty( $schema['properties']['ping_status'] ) && ! empty( $request['ping_status'] ) ) { $prepared_post->ping_status = $request['ping_status']; } if ( ! empty( $schema['properties']['template'] ) ) { // Force template to null so that it can be handled exclusively by the REST controller. $prepared_post->page_template = null; } /** * Filters a post before it is inserted via the REST API. * * The dynamic portion of the hook name, `$this->post_type`, refers to the post type slug. * * Possible hook names include: * * - `rest_pre_insert_post` * - `rest_pre_insert_page` * - `rest_pre_insert_attachment` * * @since 4.7.0 * * @param stdClass $prepared_post An object representing a single post prepared * for inserting or updating the database. * @param WP_REST_Request $request Request object. */ return apply_filters( "rest_pre_insert_{$this->post_type}", $prepared_post, $request ); } /** * Checks whether the status is valid for the given post. * * Allows for sending an update request with the current status, even if that status would not be acceptable. * * @since 5.6.0 * * @param string $status The provided status. * @param WP_REST_Request $request The request object. * @param string $param The parameter name. * @return true|WP_Error True if the status is valid, or WP_Error if not. */ public function check_status( $status, $request, $param ) { if ( $request['id'] ) { $post = $this->get_post( $request['id'] ); if ( ! is_wp_error( $post ) && $post->post_status === $status ) { return true; } } $args = $request->get_attributes()['args'][ $param ]; return rest_validate_value_from_schema( $status, $args, $param ); } /** * Determines validity and normalizes the given status parameter. * * @since 4.7.0 * * @param string $post_status Post status. * @param WP_Post_Type $post_type Post type. * @return string|WP_Error Post status or WP_Error if lacking the proper permission. */ protected function handle_status_param( $post_status, $post_type ) { switch ( $post_status ) { case 'draft': case 'pending': break; case 'private': if ( ! current_user_can( $post_type->cap->publish_posts ) ) { return new WP_Error( 'rest_cannot_publish', __( 'Sorry, you are not allowed to create private posts in this post type.' ), array( 'status' => rest_authorization_required_code() ) ); } break; case 'publish': case 'future': if ( ! current_user_can( $post_type->cap->publish_posts ) ) { return new WP_Error( 'rest_cannot_publish', __( 'Sorry, you are not allowed to publish posts in this post type.' ), array( 'status' => rest_authorization_required_code() ) ); } break; default: if ( ! get_post_status_object( $post_status ) ) { $post_status = 'draft'; } break; } return $post_status; } /** * Determines the featured media based on a request param. * * @since 4.7.0 * * @param int $featured_media Featured Media ID. * @param int $post_id Post ID. * @return bool|WP_Error Whether the post thumbnail was successfully deleted, otherwise WP_Error. */ protected function handle_featured_media( $featured_media, $post_id ) { $featured_media = (int) $featured_media; if ( $featured_media ) { $result = set_post_thumbnail( $post_id, $featured_media ); if ( $result ) { return true; } else { return new WP_Error( 'rest_invalid_featured_media', __( 'Invalid featured media ID.' ), array( 'status' => 400 ) ); } } else { return delete_post_thumbnail( $post_id ); } } /** * Check whether the template is valid for the given post. * * @since 4.9.0 * * @param string $template Page template filename. * @param WP_REST_Request $request Request. * @return bool|WP_Error True if template is still valid or if the same as existing value, or false if template not supported. */ public function check_template( $template, $request ) { if ( ! $template ) { return true; } if ( $request['id'] ) { $post = get_post( $request['id'] ); $current_template = get_page_template_slug( $request['id'] ); } else { $post = null; $current_template = ''; } // Always allow for updating a post to the same template, even if that template is no longer supported. if ( $template === $current_template ) { return true; } // If this is a create request, get_post() will return null and wp theme will fallback to the passed post type. $allowed_templates = wp_get_theme()->get_page_templates( $post, $this->post_type ); if ( isset( $allowed_templates[ $template ] ) ) { return true; } return new WP_Error( 'rest_invalid_param', /* translators: 1: Parameter, 2: List of valid values. */ sprintf( __( '%1$s is not one of %2$s.' ), 'template', implode( ', ', array_keys( $allowed_templates ) ) ) ); } /** * Sets the template for a post. * * @since 4.7.0 * @since 4.9.0 Added the `$validate` parameter. * * @param string $template Page template filename. * @param int $post_id Post ID. * @param bool $validate Whether to validate that the template selected is valid. */ public function handle_template( $template, $post_id, $validate = false ) { if ( $validate && ! array_key_exists( $template, wp_get_theme()->get_page_templates( get_post( $post_id ) ) ) ) { $template = ''; } update_post_meta( $post_id, '_wp_page_template', $template ); } /** * Updates the post's terms from a REST request. * * @since 4.7.0 * * @param int $post_id The post ID to update the terms form. * @param WP_REST_Request $request The request object with post and terms data. * @return null|WP_Error WP_Error on an error assigning any of the terms, otherwise null. */ protected function handle_terms( $post_id, $request ) { $taxonomies = wp_list_filter( get_object_taxonomies( $this->post_type, 'objects' ), array( 'show_in_rest' => true ) ); foreach ( $taxonomies as $taxonomy ) { $base = ! empty( $taxonomy->rest_base ) ? $taxonomy->rest_base : $taxonomy->name; if ( ! isset( $request[ $base ] ) ) { continue; } $result = wp_set_object_terms( $post_id, $request[ $base ], $taxonomy->name ); if ( is_wp_error( $result ) ) { return $result; } } } /** * Checks whether current user can assign all terms sent with the current request. * * @since 4.7.0 * * @param WP_REST_Request $request The request object with post and terms data. * @return bool Whether the current user can assign the provided terms. */ protected function check_assign_terms_permission( $request ) { $taxonomies = wp_list_filter( get_object_taxonomies( $this->post_type, 'objects' ), array( 'show_in_rest' => true ) ); foreach ( $taxonomies as $taxonomy ) { $base = ! empty( $taxonomy->rest_base ) ? $taxonomy->rest_base : $taxonomy->name; if ( ! isset( $request[ $base ] ) ) { continue; } foreach ( (array) $request[ $base ] as $term_id ) { // Invalid terms will be rejected later. if ( ! get_term( $term_id, $taxonomy->name ) ) { continue; } if ( ! current_user_can( 'assign_term', (int) $term_id ) ) { return false; } } } return true; } /** * Checks if a given post type can be viewed or managed. * * @since 4.7.0 * * @param WP_Post_Type|string $post_type Post type name or object. * @return bool Whether the post type is allowed in REST. */ protected function check_is_post_type_allowed( $post_type ) { if ( ! is_object( $post_type ) ) { $post_type = get_post_type_object( $post_type ); } if ( ! empty( $post_type ) && ! empty( $post_type->show_in_rest ) ) { return true; } return false; } /** * Checks if a post can be read. * * Correctly handles posts with the inherit status. * * @since 4.7.0 * * @param WP_Post $post Post object. * @return bool Whether the post can be read. */ public function check_read_permission( $post ) { $post_type = get_post_type_object( $post->post_type ); if ( ! $this->check_is_post_type_allowed( $post_type ) ) { return false; } // Is the post readable? if ( 'publish' === $post->post_status || current_user_can( 'read_post', $post->ID ) ) { return true; } $post_status_obj = get_post_status_object( $post->post_status ); if ( $post_status_obj && $post_status_obj->public ) { return true; } // Can we read the parent if we're inheriting? if ( 'inherit' === $post->post_status && $post->post_parent > 0 ) { $parent = get_post( $post->post_parent ); if ( $parent ) { return $this->check_read_permission( $parent ); } } /* * If there isn't a parent, but the status is set to inherit, assume * it's published (as per get_post_status()). */ if ( 'inherit' === $post->post_status ) { return true; } return false; } /** * Checks if a post can be edited. * * @since 4.7.0 * * @param WP_Post $post Post object. * @return bool Whether the post can be edited. */ protected function check_update_permission( $post ) { $post_type = get_post_type_object( $post->post_type ); if ( ! $this->check_is_post_type_allowed( $post_type ) ) { return false; } return current_user_can( 'edit_post', $post->ID ); } /** * Checks if a post can be created. * * @since 4.7.0 * * @param WP_Post $post Post object. * @return bool Whether the post can be created. */ protected function check_create_permission( $post ) { $post_type = get_post_type_object( $post->post_type ); if ( ! $this->check_is_post_type_allowed( $post_type ) ) { return false; } return current_user_can( $post_type->cap->create_posts ); } /** * Checks if a post can be deleted. * * @since 4.7.0 * * @param WP_Post $post Post object. * @return bool Whether the post can be deleted. */ protected function check_delete_permission( $post ) { $post_type = get_post_type_object( $post->post_type ); if ( ! $this->check_is_post_type_allowed( $post_type ) ) { return false; } return current_user_can( 'delete_post', $post->ID ); } /** * Prepares a single post output for response. * * @since 4.7.0 * @since 5.9.0 Renamed `$post` to `$item` to match parent class for PHP 8 named parameter support. * * @param WP_Post $item Post object. * @param WP_REST_Request $request Request object. * @return WP_REST_Response Response object. */ public function prepare_item_for_response( $item, $request ) { // Restores the more descriptive, specific name for use within this method. $post = $item; $GLOBALS['post'] = $post; setup_postdata( $post ); $fields = $this->get_fields_for_response( $request ); // Base fields for every post. $data = array(); if ( rest_is_field_included( 'id', $fields ) ) { $data['id'] = $post->ID; } if ( rest_is_field_included( 'date', $fields ) ) { $data['date'] = $this->prepare_date_response( $post->post_date_gmt, $post->post_date ); } if ( rest_is_field_included( 'date_gmt', $fields ) ) { /* * For drafts, `post_date_gmt` may not be set, indicating that the date * of the draft should be updated each time it is saved (see #38883). * In this case, shim the value based on the `post_date` field * with the site's timezone offset applied. */ if ( '0000-00-00 00:00:00' === $post->post_date_gmt ) { $post_date_gmt = get_gmt_from_date( $post->post_date ); } else { $post_date_gmt = $post->post_date_gmt; } $data['date_gmt'] = $this->prepare_date_response( $post_date_gmt ); } if ( rest_is_field_included( 'guid', $fields ) ) { $data['guid'] = array( /** This filter is documented in wp-includes/post-template.php */ 'rendered' => apply_filters( 'get_the_guid', $post->guid, $post->ID ), 'raw' => $post->guid, ); } if ( rest_is_field_included( 'modified', $fields ) ) { $data['modified'] = $this->prepare_date_response( $post->post_modified_gmt, $post->post_modified ); } if ( rest_is_field_included( 'modified_gmt', $fields ) ) { /* * For drafts, `post_modified_gmt` may not be set (see `post_date_gmt` comments * above). In this case, shim the value based on the `post_modified` field * with the site's timezone offset applied. */ if ( '0000-00-00 00:00:00' === $post->post_modified_gmt ) { $post_modified_gmt = gmdate( 'Y-m-d H:i:s', strtotime( $post->post_modified ) - ( get_option( 'gmt_offset' ) * 3600 ) ); } else { $post_modified_gmt = $post->post_modified_gmt; } $data['modified_gmt'] = $this->prepare_date_response( $post_modified_gmt ); } if ( rest_is_field_included( 'password', $fields ) ) { $data['password'] = $post->post_password; } if ( rest_is_field_included( 'slug', $fields ) ) { $data['slug'] = $post->post_name; } if ( rest_is_field_included( 'status', $fields ) ) { $data['status'] = $post->post_status; } if ( rest_is_field_included( 'type', $fields ) ) { $data['type'] = $post->post_type; } if ( rest_is_field_included( 'link', $fields ) ) { $data['link'] = get_permalink( $post->ID ); } if ( rest_is_field_included( 'title', $fields ) ) { $data['title'] = array(); } if ( rest_is_field_included( 'title.raw', $fields ) ) { $data['title']['raw'] = $post->post_title; } if ( rest_is_field_included( 'title.rendered', $fields ) ) { add_filter( 'protected_title_format', array( $this, 'protected_title_format' ) ); $data['title']['rendered'] = get_the_title( $post->ID ); remove_filter( 'protected_title_format', array( $this, 'protected_title_format' ) ); } $has_password_filter = false; if ( $this->can_access_password_content( $post, $request ) ) { $this->password_check_passed[ $post->ID ] = true; // Allow access to the post, permissions already checked before. add_filter( 'post_password_required', array( $this, 'check_password_required' ), 10, 2 ); $has_password_filter = true; } if ( rest_is_field_included( 'content', $fields ) ) { $data['content'] = array(); } if ( rest_is_field_included( 'content.raw', $fields ) ) { $data['content']['raw'] = $post->post_content; } if ( rest_is_field_included( 'content.rendered', $fields ) ) { /** This filter is documented in wp-includes/post-template.php */ $data['content']['rendered'] = post_password_required( $post ) ? '' : apply_filters( 'the_content', $post->post_content ); } if ( rest_is_field_included( 'content.protected', $fields ) ) { $data['content']['protected'] = (bool) $post->post_password; } if ( rest_is_field_included( 'content.block_version', $fields ) ) { $data['content']['block_version'] = block_version( $post->post_content ); } if ( rest_is_field_included( 'excerpt', $fields ) ) { /** This filter is documented in wp-includes/post-template.php */ $excerpt = apply_filters( 'get_the_excerpt', $post->post_excerpt, $post ); /** This filter is documented in wp-includes/post-template.php */ $excerpt = apply_filters( 'the_excerpt', $excerpt ); $data['excerpt'] = array( 'raw' => $post->post_excerpt, 'rendered' => post_password_required( $post ) ? '' : $excerpt, 'protected' => (bool) $post->post_password, ); } if ( $has_password_filter ) { // Reset filter. remove_filter( 'post_password_required', array( $this, 'check_password_required' ) ); } if ( rest_is_field_included( 'author', $fields ) ) { $data['author'] = (int) $post->post_author; } if ( rest_is_field_included( 'featured_media', $fields ) ) { $data['featured_media'] = (int) get_post_thumbnail_id( $post->ID ); } if ( rest_is_field_included( 'parent', $fields ) ) { $data['parent'] = (int) $post->post_parent; } if ( rest_is_field_included( 'menu_order', $fields ) ) { $data['menu_order'] = (int) $post->menu_order; } if ( rest_is_field_included( 'comment_status', $fields ) ) { $data['comment_status'] = $post->comment_status; } if ( rest_is_field_included( 'ping_status', $fields ) ) { $data['ping_status'] = $post->ping_status; } if ( rest_is_field_included( 'sticky', $fields ) ) { $data['sticky'] = is_sticky( $post->ID ); } if ( rest_is_field_included( 'template', $fields ) ) { $template = get_page_template_slug( $post->ID ); if ( $template ) { $data['template'] = $template; } else { $data['template'] = ''; } } if ( rest_is_field_included( 'format', $fields ) ) { $data['format'] = get_post_format( $post->ID ); // Fill in blank post format. if ( empty( $data['format'] ) ) { $data['format'] = 'standard'; } } if ( rest_is_field_included( 'meta', $fields ) ) { $data['meta'] = $this->meta->get_value( $post->ID, $request ); } $taxonomies = wp_list_filter( get_object_taxonomies( $this->post_type, 'objects' ), array( 'show_in_rest' => true ) ); foreach ( $taxonomies as $taxonomy ) { $base = ! empty( $taxonomy->rest_base ) ? $taxonomy->rest_base : $taxonomy->name; if ( rest_is_field_included( $base, $fields ) ) { $terms = get_the_terms( $post, $taxonomy->name ); $data[ $base ] = $terms ? array_values( wp_list_pluck( $terms, 'term_id' ) ) : array(); } } $post_type_obj = get_post_type_object( $post->post_type ); if ( is_post_type_viewable( $post_type_obj ) && $post_type_obj->public ) { $permalink_template_requested = rest_is_field_included( 'permalink_template', $fields ); $generated_slug_requested = rest_is_field_included( 'generated_slug', $fields ); if ( $permalink_template_requested || $generated_slug_requested ) { if ( ! function_exists( 'get_sample_permalink' ) ) { require_once ABSPATH . 'wp-admin/includes/post.php'; } $sample_permalink = get_sample_permalink( $post->ID, $post->post_title, '' ); if ( $permalink_template_requested ) { $data['permalink_template'] = $sample_permalink[0]; } if ( $generated_slug_requested ) { $data['generated_slug'] = $sample_permalink[1]; } } } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->add_additional_fields_to_object( $data, $request ); $data = $this->filter_response_by_context( $data, $context ); // Wrap the data in a response object. $response = rest_ensure_response( $data ); $links = $this->prepare_links( $post ); $response->add_links( $links ); if ( ! empty( $links['self']['href'] ) ) { $actions = $this->get_available_actions( $post, $request ); $self = $links['self']['href']; foreach ( $actions as $rel ) { $response->add_link( $rel, $self ); } } /** * Filters the post data for a REST API response. * * The dynamic portion of the hook name, `$this->post_type`, refers to the post type slug. * * Possible hook names include: * * - `rest_prepare_post` * - `rest_prepare_page` * - `rest_prepare_attachment` * * @since 4.7.0 * * @param WP_REST_Response $response The response object. * @param WP_Post $post Post object. * @param WP_REST_Request $request Request object. */ return apply_filters( "rest_prepare_{$this->post_type}", $response, $post, $request ); } /** * Overwrites the default protected title format. * * By default, WordPress will show password protected posts with a title of * "Protected: %s", as the REST API communicates the protected status of a post * in a machine readable format, we remove the "Protected: " prefix. * * @since 4.7.0 * * @return string Protected title format. */ public function protected_title_format() { return '%s'; } /** * Prepares links for the request. * * @since 4.7.0 * * @param WP_Post $post Post object. * @return array Links for the given post. */ protected function prepare_links( $post ) { $base = sprintf( '%s/%s', $this->namespace, $this->rest_base ); // Entity meta. $links = array( 'self' => array( 'href' => rest_url( trailingslashit( $base ) . $post->ID ), ), 'collection' => array( 'href' => rest_url( $base ), ), 'about' => array( 'href' => rest_url( 'wp/v2/types/' . $this->post_type ), ), ); if ( ( in_array( $post->post_type, array( 'post', 'page' ), true ) || post_type_supports( $post->post_type, 'author' ) ) && ! empty( $post->post_author ) ) { $links['author'] = array( 'href' => rest_url( 'wp/v2/users/' . $post->post_author ), 'embeddable' => true, ); } if ( in_array( $post->post_type, array( 'post', 'page' ), true ) || post_type_supports( $post->post_type, 'comments' ) ) { $replies_url = rest_url( 'wp/v2/comments' ); $replies_url = add_query_arg( 'post', $post->ID, $replies_url ); $links['replies'] = array( 'href' => $replies_url, 'embeddable' => true, ); } if ( in_array( $post->post_type, array( 'post', 'page' ), true ) || post_type_supports( $post->post_type, 'revisions' ) ) { $revisions = wp_get_post_revisions( $post->ID, array( 'fields' => 'ids' ) ); $revisions_count = count( $revisions ); $links['version-history'] = array( 'href' => rest_url( trailingslashit( $base ) . $post->ID . '/revisions' ), 'count' => $revisions_count, ); if ( $revisions_count > 0 ) { $last_revision = array_shift( $revisions ); $links['predecessor-version'] = array( 'href' => rest_url( trailingslashit( $base ) . $post->ID . '/revisions/' . $last_revision ), 'id' => $last_revision, ); } } $post_type_obj = get_post_type_object( $post->post_type ); if ( $post_type_obj->hierarchical && ! empty( $post->post_parent ) ) { $links['up'] = array( 'href' => rest_url( rest_get_route_for_post( $post->post_parent ) ), 'embeddable' => true, ); } // If we have a featured media, add that. $featured_media = get_post_thumbnail_id( $post->ID ); if ( $featured_media ) { $image_url = rest_url( rest_get_route_for_post( $featured_media ) ); $links['https://api.w.org/featuredmedia'] = array( 'href' => $image_url, 'embeddable' => true, ); } if ( ! in_array( $post->post_type, array( 'attachment', 'nav_menu_item', 'revision' ), true ) ) { $attachments_url = rest_url( rest_get_route_for_post_type_items( 'attachment' ) ); $attachments_url = add_query_arg( 'parent', $post->ID, $attachments_url ); $links['https://api.w.org/attachment'] = array( 'href' => $attachments_url, ); } $taxonomies = get_object_taxonomies( $post->post_type ); if ( ! empty( $taxonomies ) ) { $links['https://api.w.org/term'] = array(); foreach ( $taxonomies as $tax ) { $taxonomy_route = rest_get_route_for_taxonomy_items( $tax ); // Skip taxonomies that are not public. if ( empty( $taxonomy_route ) ) { continue; } $terms_url = add_query_arg( 'post', $post->ID, rest_url( $taxonomy_route ) ); $links['https://api.w.org/term'][] = array( 'href' => $terms_url, 'taxonomy' => $tax, 'embeddable' => true, ); } } return $links; } /** * Get the link relations available for the post and current user. * * @since 4.9.8 * * @param WP_Post $post Post object. * @param WP_REST_Request $request Request object. * @return array List of link relations. */ protected function get_available_actions( $post, $request ) { if ( 'edit' !== $request['context'] ) { return array(); } $rels = array(); $post_type = get_post_type_object( $post->post_type ); if ( 'attachment' !== $this->post_type && current_user_can( $post_type->cap->publish_posts ) ) { $rels[] = 'https://api.w.org/action-publish'; } if ( current_user_can( 'unfiltered_html' ) ) { $rels[] = 'https://api.w.org/action-unfiltered-html'; } if ( 'post' === $post_type->name ) { if ( current_user_can( $post_type->cap->edit_others_posts ) && current_user_can( $post_type->cap->publish_posts ) ) { $rels[] = 'https://api.w.org/action-sticky'; } } if ( post_type_supports( $post_type->name, 'author' ) ) { if ( current_user_can( $post_type->cap->edit_others_posts ) ) { $rels[] = 'https://api.w.org/action-assign-author'; } } $taxonomies = wp_list_filter( get_object_taxonomies( $this->post_type, 'objects' ), array( 'show_in_rest' => true ) ); foreach ( $taxonomies as $tax ) { $tax_base = ! empty( $tax->rest_base ) ? $tax->rest_base : $tax->name; $create_cap = is_taxonomy_hierarchical( $tax->name ) ? $tax->cap->edit_terms : $tax->cap->assign_terms; if ( current_user_can( $create_cap ) ) { $rels[] = 'https://api.w.org/action-create-' . $tax_base; } if ( current_user_can( $tax->cap->assign_terms ) ) { $rels[] = 'https://api.w.org/action-assign-' . $tax_base; } } return $rels; } /** * Retrieves the post's schema, conforming to JSON Schema. * * @since 4.7.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => $this->post_type, 'type' => 'object', // Base properties for every Post. 'properties' => array( 'date' => array( 'description' => __( "The date the post was published, in the site's timezone." ), 'type' => array( 'string', 'null' ), 'format' => 'date-time', 'context' => array( 'view', 'edit', 'embed' ), ), 'date_gmt' => array( 'description' => __( 'The date the post was published, as GMT.' ), 'type' => array( 'string', 'null' ), 'format' => 'date-time', 'context' => array( 'view', 'edit' ), ), 'guid' => array( 'description' => __( 'The globally unique identifier for the post.' ), 'type' => 'object', 'context' => array( 'view', 'edit' ), 'readonly' => true, 'properties' => array( 'raw' => array( 'description' => __( 'GUID for the post, as it exists in the database.' ), 'type' => 'string', 'context' => array( 'edit' ), 'readonly' => true, ), 'rendered' => array( 'description' => __( 'GUID for the post, transformed for display.' ), 'type' => 'string', 'context' => array( 'view', 'edit' ), 'readonly' => true, ), ), ), 'id' => array( 'description' => __( 'Unique identifier for the post.' ), 'type' => 'integer', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'link' => array( 'description' => __( 'URL to the post.' ), 'type' => 'string', 'format' => 'uri', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'modified' => array( 'description' => __( "The date the post was last modified, in the site's timezone." ), 'type' => 'string', 'format' => 'date-time', 'context' => array( 'view', 'edit' ), 'readonly' => true, ), 'modified_gmt' => array( 'description' => __( 'The date the post was last modified, as GMT.' ), 'type' => 'string', 'format' => 'date-time', 'context' => array( 'view', 'edit' ), 'readonly' => true, ), 'slug' => array( 'description' => __( 'An alphanumeric identifier for the post unique to its type.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'arg_options' => array( 'sanitize_callback' => array( $this, 'sanitize_slug' ), ), ), 'status' => array( 'description' => __( 'A named status for the post.' ), 'type' => 'string', 'enum' => array_keys( get_post_stati( array( 'internal' => false ) ) ), 'context' => array( 'view', 'edit' ), 'arg_options' => array( 'validate_callback' => array( $this, 'check_status' ), ), ), 'type' => array( 'description' => __( 'Type of post.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'password' => array( 'description' => __( 'A password to protect access to the content and excerpt.' ), 'type' => 'string', 'context' => array( 'edit' ), ), ), ); $post_type_obj = get_post_type_object( $this->post_type ); if ( is_post_type_viewable( $post_type_obj ) && $post_type_obj->public ) { $schema['properties']['permalink_template'] = array( 'description' => __( 'Permalink template for the post.' ), 'type' => 'string', 'context' => array( 'edit' ), 'readonly' => true, ); $schema['properties']['generated_slug'] = array( 'description' => __( 'Slug automatically generated from the post title.' ), 'type' => 'string', 'context' => array( 'edit' ), 'readonly' => true, ); } if ( $post_type_obj->hierarchical ) { $schema['properties']['parent'] = array( 'description' => __( 'The ID for the parent of the post.' ), 'type' => 'integer', 'context' => array( 'view', 'edit' ), ); } $post_type_attributes = array( 'title', 'editor', 'author', 'excerpt', 'thumbnail', 'comments', 'revisions', 'page-attributes', 'post-formats', 'custom-fields', ); $fixed_schemas = array( 'post' => array( 'title', 'editor', 'author', 'excerpt', 'thumbnail', 'comments', 'revisions', 'post-formats', 'custom-fields', ), 'page' => array( 'title', 'editor', 'author', 'excerpt', 'thumbnail', 'comments', 'revisions', 'page-attributes', 'custom-fields', ), 'attachment' => array( 'title', 'author', 'comments', 'revisions', 'custom-fields', ), ); foreach ( $post_type_attributes as $attribute ) { if ( isset( $fixed_schemas[ $this->post_type ] ) && ! in_array( $attribute, $fixed_schemas[ $this->post_type ], true ) ) { continue; } elseif ( ! isset( $fixed_schemas[ $this->post_type ] ) && ! post_type_supports( $this->post_type, $attribute ) ) { continue; } switch ( $attribute ) { case 'title': $schema['properties']['title'] = array( 'description' => __( 'The title for the post.' ), 'type' => 'object', 'context' => array( 'view', 'edit', 'embed' ), 'arg_options' => array( 'sanitize_callback' => null, // Note: sanitization implemented in self::prepare_item_for_database(). 'validate_callback' => null, // Note: validation implemented in self::prepare_item_for_database(). ), 'properties' => array( 'raw' => array( 'description' => __( 'Title for the post, as it exists in the database.' ), 'type' => 'string', 'context' => array( 'edit' ), ), 'rendered' => array( 'description' => __( 'HTML title for the post, transformed for display.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), ), ); break; case 'editor': $schema['properties']['content'] = array( 'description' => __( 'The content for the post.' ), 'type' => 'object', 'context' => array( 'view', 'edit' ), 'arg_options' => array( 'sanitize_callback' => null, // Note: sanitization implemented in self::prepare_item_for_database(). 'validate_callback' => null, // Note: validation implemented in self::prepare_item_for_database(). ), 'properties' => array( 'raw' => array( 'description' => __( 'Content for the post, as it exists in the database.' ), 'type' => 'string', 'context' => array( 'edit' ), ), 'rendered' => array( 'description' => __( 'HTML content for the post, transformed for display.' ), 'type' => 'string', 'context' => array( 'view', 'edit' ), 'readonly' => true, ), 'block_version' => array( 'description' => __( 'Version of the content block format used by the post.' ), 'type' => 'integer', 'context' => array( 'edit' ), 'readonly' => true, ), 'protected' => array( 'description' => __( 'Whether the content is protected with a password.' ), 'type' => 'boolean', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), ), ); break; case 'author': $schema['properties']['author'] = array( 'description' => __( 'The ID for the author of the post.' ), 'type' => 'integer', 'context' => array( 'view', 'edit', 'embed' ), ); break; case 'excerpt': $schema['properties']['excerpt'] = array( 'description' => __( 'The excerpt for the post.' ), 'type' => 'object', 'context' => array( 'view', 'edit', 'embed' ), 'arg_options' => array( 'sanitize_callback' => null, // Note: sanitization implemented in self::prepare_item_for_database(). 'validate_callback' => null, // Note: validation implemented in self::prepare_item_for_database(). ), 'properties' => array( 'raw' => array( 'description' => __( 'Excerpt for the post, as it exists in the database.' ), 'type' => 'string', 'context' => array( 'edit' ), ), 'rendered' => array( 'description' => __( 'HTML excerpt for the post, transformed for display.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'protected' => array( 'description' => __( 'Whether the excerpt is protected with a password.' ), 'type' => 'boolean', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), ), ); break; case 'thumbnail': $schema['properties']['featured_media'] = array( 'description' => __( 'The ID of the featured media for the post.' ), 'type' => 'integer', 'context' => array( 'view', 'edit', 'embed' ), ); break; case 'comments': $schema['properties']['comment_status'] = array( 'description' => __( 'Whether or not comments are open on the post.' ), 'type' => 'string', 'enum' => array( 'open', 'closed' ), 'context' => array( 'view', 'edit' ), ); $schema['properties']['ping_status'] = array( 'description' => __( 'Whether or not the post can be pinged.' ), 'type' => 'string', 'enum' => array( 'open', 'closed' ), 'context' => array( 'view', 'edit' ), ); break; case 'page-attributes': $schema['properties']['menu_order'] = array( 'description' => __( 'The order of the post in relation to other posts.' ), 'type' => 'integer', 'context' => array( 'view', 'edit' ), ); break; case 'post-formats': // Get the native post formats and remove the array keys. $formats = array_values( get_post_format_slugs() ); $schema['properties']['format'] = array( 'description' => __( 'The format for the post.' ), 'type' => 'string', 'enum' => $formats, 'context' => array( 'view', 'edit' ), ); break; case 'custom-fields': $schema['properties']['meta'] = $this->meta->get_field_schema(); break; } } if ( 'post' === $this->post_type ) { $schema['properties']['sticky'] = array( 'description' => __( 'Whether or not the post should be treated as sticky.' ), 'type' => 'boolean', 'context' => array( 'view', 'edit' ), ); } $schema['properties']['template'] = array( 'description' => __( 'The theme file to use to display the post.' ), 'type' => 'string', 'context' => array( 'view', 'edit' ), 'arg_options' => array( 'validate_callback' => array( $this, 'check_template' ), ), ); $taxonomies = wp_list_filter( get_object_taxonomies( $this->post_type, 'objects' ), array( 'show_in_rest' => true ) ); foreach ( $taxonomies as $taxonomy ) { $base = ! empty( $taxonomy->rest_base ) ? $taxonomy->rest_base : $taxonomy->name; if ( array_key_exists( $base, $schema['properties'] ) ) { $taxonomy_field_name_with_conflict = ! empty( $taxonomy->rest_base ) ? 'rest_base' : 'name'; _doing_it_wrong( 'register_taxonomy', sprintf( /* translators: 1: The taxonomy name, 2: The property name, either 'rest_base' or 'name', 3: The conflicting value. */ __( 'The "%1$s" taxonomy "%2$s" property (%3$s) conflicts with an existing property on the REST API Posts Controller. Specify a custom "rest_base" when registering the taxonomy to avoid this error.' ), $taxonomy->name, $taxonomy_field_name_with_conflict, $base ), '5.4.0' ); } $schema['properties'][ $base ] = array( /* translators: %s: Taxonomy name. */ 'description' => sprintf( __( 'The terms assigned to the post in the %s taxonomy.' ), $taxonomy->name ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), 'context' => array( 'view', 'edit' ), ); } $schema_links = $this->get_schema_links(); if ( $schema_links ) { $schema['links'] = $schema_links; } // Take a snapshot of which fields are in the schema pre-filtering. $schema_fields = array_keys( $schema['properties'] ); /** * Filters the post's schema. * * The dynamic portion of the filter, `$this->post_type`, refers to the * post type slug for the controller. * * Possible hook names include: * * - `rest_post_item_schema` * - `rest_page_item_schema` * - `rest_attachment_item_schema` * * @since 5.4.0 * * @param array $schema Item schema data. */ $schema = apply_filters( "rest_{$this->post_type}_item_schema", $schema ); // Emit a _doing_it_wrong warning if user tries to add new properties using this filter. $new_fields = array_diff( array_keys( $schema['properties'] ), $schema_fields ); if ( count( $new_fields ) > 0 ) { _doing_it_wrong( __METHOD__, sprintf( /* translators: %s: register_rest_field */ __( 'Please use %s to add new schema properties.' ), 'register_rest_field' ), '5.4.0' ); } $this->schema = $schema; return $this->add_additional_fields_schema( $this->schema ); } /** * Retrieve Link Description Objects that should be added to the Schema for the posts collection. * * @since 4.9.8 * * @return array */ protected function get_schema_links() { $href = rest_url( "{$this->namespace}/{$this->rest_base}/{id}" ); $links = array(); if ( 'attachment' !== $this->post_type ) { $links[] = array( 'rel' => 'https://api.w.org/action-publish', 'title' => __( 'The current user can publish this post.' ), 'href' => $href, 'targetSchema' => array( 'type' => 'object', 'properties' => array( 'status' => array( 'type' => 'string', 'enum' => array( 'publish', 'future' ), ), ), ), ); } $links[] = array( 'rel' => 'https://api.w.org/action-unfiltered-html', 'title' => __( 'The current user can post unfiltered HTML markup and JavaScript.' ), 'href' => $href, 'targetSchema' => array( 'type' => 'object', 'properties' => array( 'content' => array( 'raw' => array( 'type' => 'string', ), ), ), ), ); if ( 'post' === $this->post_type ) { $links[] = array( 'rel' => 'https://api.w.org/action-sticky', 'title' => __( 'The current user can sticky this post.' ), 'href' => $href, 'targetSchema' => array( 'type' => 'object', 'properties' => array( 'sticky' => array( 'type' => 'boolean', ), ), ), ); } if ( post_type_supports( $this->post_type, 'author' ) ) { $links[] = array( 'rel' => 'https://api.w.org/action-assign-author', 'title' => __( 'The current user can change the author on this post.' ), 'href' => $href, 'targetSchema' => array( 'type' => 'object', 'properties' => array( 'author' => array( 'type' => 'integer', ), ), ), ); } $taxonomies = wp_list_filter( get_object_taxonomies( $this->post_type, 'objects' ), array( 'show_in_rest' => true ) ); foreach ( $taxonomies as $tax ) { $tax_base = ! empty( $tax->rest_base ) ? $tax->rest_base : $tax->name; /* translators: %s: Taxonomy name. */ $assign_title = sprintf( __( 'The current user can assign terms in the %s taxonomy.' ), $tax->name ); /* translators: %s: Taxonomy name. */ $create_title = sprintf( __( 'The current user can create terms in the %s taxonomy.' ), $tax->name ); $links[] = array( 'rel' => 'https://api.w.org/action-assign-' . $tax_base, 'title' => $assign_title, 'href' => $href, 'targetSchema' => array( 'type' => 'object', 'properties' => array( $tax_base => array( 'type' => 'array', 'items' => array( 'type' => 'integer', ), ), ), ), ); $links[] = array( 'rel' => 'https://api.w.org/action-create-' . $tax_base, 'title' => $create_title, 'href' => $href, 'targetSchema' => array( 'type' => 'object', 'properties' => array( $tax_base => array( 'type' => 'array', 'items' => array( 'type' => 'integer', ), ), ), ), ); } return $links; } /** * Retrieves the query params for the posts collection. * * @since 4.7.0 * @since 5.4.0 The `tax_relation` query parameter was added. * @since 5.7.0 The `modified_after` and `modified_before` query parameters were added. * * @return array Collection parameters. */ public function get_collection_params() { $query_params = parent::get_collection_params(); $query_params['context']['default'] = 'view'; $query_params['after'] = array( 'description' => __( 'Limit response to posts published after a given ISO8601 compliant date.' ), 'type' => 'string', 'format' => 'date-time', ); $query_params['modified_after'] = array( 'description' => __( 'Limit response to posts modified after a given ISO8601 compliant date.' ), 'type' => 'string', 'format' => 'date-time', ); if ( post_type_supports( $this->post_type, 'author' ) ) { $query_params['author'] = array( 'description' => __( 'Limit result set to posts assigned to specific authors.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), 'default' => array(), ); $query_params['author_exclude'] = array( 'description' => __( 'Ensure result set excludes posts assigned to specific authors.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), 'default' => array(), ); } $query_params['before'] = array( 'description' => __( 'Limit response to posts published before a given ISO8601 compliant date.' ), 'type' => 'string', 'format' => 'date-time', ); $query_params['modified_before'] = array( 'description' => __( 'Limit response to posts modified before a given ISO8601 compliant date.' ), 'type' => 'string', 'format' => 'date-time', ); $query_params['exclude'] = array( 'description' => __( 'Ensure result set excludes specific IDs.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), 'default' => array(), ); $query_params['include'] = array( 'description' => __( 'Limit result set to specific IDs.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), 'default' => array(), ); if ( 'page' === $this->post_type || post_type_supports( $this->post_type, 'page-attributes' ) ) { $query_params['menu_order'] = array( 'description' => __( 'Limit result set to posts with a specific menu_order value.' ), 'type' => 'integer', ); } $query_params['offset'] = array( 'description' => __( 'Offset the result set by a specific number of items.' ), 'type' => 'integer', ); $query_params['order'] = array( 'description' => __( 'Order sort attribute ascending or descending.' ), 'type' => 'string', 'default' => 'desc', 'enum' => array( 'asc', 'desc' ), ); $query_params['orderby'] = array( 'description' => __( 'Sort collection by post attribute.' ), 'type' => 'string', 'default' => 'date', 'enum' => array( 'author', 'date', 'id', 'include', 'modified', 'parent', 'relevance', 'slug', 'include_slugs', 'title', ), ); if ( 'page' === $this->post_type || post_type_supports( $this->post_type, 'page-attributes' ) ) { $query_params['orderby']['enum'][] = 'menu_order'; } $post_type = get_post_type_object( $this->post_type ); if ( $post_type->hierarchical || 'attachment' === $this->post_type ) { $query_params['parent'] = array( 'description' => __( 'Limit result set to items with particular parent IDs.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), 'default' => array(), ); $query_params['parent_exclude'] = array( 'description' => __( 'Limit result set to all items except those of a particular parent ID.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), 'default' => array(), ); } $query_params['slug'] = array( 'description' => __( 'Limit result set to posts with one or more specific slugs.' ), 'type' => 'array', 'items' => array( 'type' => 'string', ), 'sanitize_callback' => 'wp_parse_slug_list', ); $query_params['status'] = array( 'default' => 'publish', 'description' => __( 'Limit result set to posts assigned one or more statuses.' ), 'type' => 'array', 'items' => array( 'enum' => array_merge( array_keys( get_post_stati() ), array( 'any' ) ), 'type' => 'string', ), 'sanitize_callback' => array( $this, 'sanitize_post_statuses' ), ); $query_params = $this->prepare_taxonomy_limit_schema( $query_params ); if ( 'post' === $this->post_type ) { $query_params['sticky'] = array( 'description' => __( 'Limit result set to items that are sticky.' ), 'type' => 'boolean', ); } /** * Filters collection parameters for the posts controller. * * The dynamic part of the filter `$this->post_type` refers to the post * type slug for the controller. * * This filter registers the collection parameter, but does not map the * collection parameter to an internal WP_Query parameter. Use the * `rest_{$this->post_type}_query` filter to set WP_Query parameters. * * @since 4.7.0 * * @param array $query_params JSON Schema-formatted collection parameters. * @param WP_Post_Type $post_type Post type object. */ return apply_filters( "rest_{$this->post_type}_collection_params", $query_params, $post_type ); } /** * Sanitizes and validates the list of post statuses, including whether the * user can query private statuses. * * @since 4.7.0 * * @param string|array $statuses One or more post statuses. * @param WP_REST_Request $request Full details about the request. * @param string $parameter Additional parameter to pass to validation. * @return array|WP_Error A list of valid statuses, otherwise WP_Error object. */ public function sanitize_post_statuses( $statuses, $request, $parameter ) { $statuses = wp_parse_slug_list( $statuses ); // The default status is different in WP_REST_Attachments_Controller. $attributes = $request->get_attributes(); $default_status = $attributes['args']['status']['default']; foreach ( $statuses as $status ) { if ( $status === $default_status ) { continue; } $post_type_obj = get_post_type_object( $this->post_type ); if ( current_user_can( $post_type_obj->cap->edit_posts ) || 'private' === $status && current_user_can( $post_type_obj->cap->read_private_posts ) ) { $result = rest_validate_request_arg( $status, $request, $parameter ); if ( is_wp_error( $result ) ) { return $result; } } else { return new WP_Error( 'rest_forbidden_status', __( 'Status is forbidden.' ), array( 'status' => rest_authorization_required_code() ) ); } } return $statuses; } /** * Prepares the 'tax_query' for a collection of posts. * * @since 5.7.0 * * @param array $args WP_Query arguments. * @param WP_REST_Request $request Full details about the request. * @return array Updated query arguments. */ private function prepare_tax_query( array $args, WP_REST_Request $request ) { $relation = $request['tax_relation']; if ( $relation ) { $args['tax_query'] = array( 'relation' => $relation ); } $taxonomies = wp_list_filter( get_object_taxonomies( $this->post_type, 'objects' ), array( 'show_in_rest' => true ) ); foreach ( $taxonomies as $taxonomy ) { $base = ! empty( $taxonomy->rest_base ) ? $taxonomy->rest_base : $taxonomy->name; $tax_include = $request[ $base ]; $tax_exclude = $request[ $base . '_exclude' ]; if ( $tax_include ) { $terms = array(); $include_children = false; $operator = 'IN'; if ( rest_is_array( $tax_include ) ) { $terms = $tax_include; } elseif ( rest_is_object( $tax_include ) ) { $terms = empty( $tax_include['terms'] ) ? array() : $tax_include['terms']; $include_children = ! empty( $tax_include['include_children'] ); if ( isset( $tax_include['operator'] ) && 'AND' === $tax_include['operator'] ) { $operator = 'AND'; } } if ( $terms ) { $args['tax_query'][] = array( 'taxonomy' => $taxonomy->name, 'field' => 'term_id', 'terms' => $terms, 'include_children' => $include_children, 'operator' => $operator, ); } } if ( $tax_exclude ) { $terms = array(); $include_children = false; if ( rest_is_array( $tax_exclude ) ) { $terms = $tax_exclude; } elseif ( rest_is_object( $tax_exclude ) ) { $terms = empty( $tax_exclude['terms'] ) ? array() : $tax_exclude['terms']; $include_children = ! empty( $tax_exclude['include_children'] ); } if ( $terms ) { $args['tax_query'][] = array( 'taxonomy' => $taxonomy->name, 'field' => 'term_id', 'terms' => $terms, 'include_children' => $include_children, 'operator' => 'NOT IN', ); } } } return $args; } /** * Prepares the collection schema for including and excluding items by terms. * * @since 5.7.0 * * @param array $query_params Collection schema. * @return array Updated schema. */ private function prepare_taxonomy_limit_schema( array $query_params ) { $taxonomies = wp_list_filter( get_object_taxonomies( $this->post_type, 'objects' ), array( 'show_in_rest' => true ) ); if ( ! $taxonomies ) { return $query_params; } $query_params['tax_relation'] = array( 'description' => __( 'Limit result set based on relationship between multiple taxonomies.' ), 'type' => 'string', 'enum' => array( 'AND', 'OR' ), ); $limit_schema = array( 'type' => array( 'object', 'array' ), 'oneOf' => array( array( 'title' => __( 'Term ID List' ), 'description' => __( 'Match terms with the listed IDs.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), ), array( 'title' => __( 'Term ID Taxonomy Query' ), 'description' => __( 'Perform an advanced term query.' ), 'type' => 'object', 'properties' => array( 'terms' => array( 'description' => __( 'Term IDs.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), 'default' => array(), ), 'include_children' => array( 'description' => __( 'Whether to include child terms in the terms limiting the result set.' ), 'type' => 'boolean', 'default' => false, ), ), 'additionalProperties' => false, ), ), ); $include_schema = array_merge( array( /* translators: %s: Taxonomy name. */ 'description' => __( 'Limit result set to items with specific terms assigned in the %s taxonomy.' ), ), $limit_schema ); // 'operator' is supported only for 'include' queries. $include_schema['oneOf'][1]['properties']['operator'] = array( 'description' => __( 'Whether items must be assigned all or any of the specified terms.' ), 'type' => 'string', 'enum' => array( 'AND', 'OR' ), 'default' => 'OR', ); $exclude_schema = array_merge( array( /* translators: %s: Taxonomy name. */ 'description' => __( 'Limit result set to items except those with specific terms assigned in the %s taxonomy.' ), ), $limit_schema ); foreach ( $taxonomies as $taxonomy ) { $base = ! empty( $taxonomy->rest_base ) ? $taxonomy->rest_base : $taxonomy->name; $base_exclude = $base . '_exclude'; $query_params[ $base ] = $include_schema; $query_params[ $base ]['description'] = sprintf( $query_params[ $base ]['description'], $base ); $query_params[ $base_exclude ] = $exclude_schema; $query_params[ $base_exclude ]['description'] = sprintf( $query_params[ $base_exclude ]['description'], $base ); if ( ! $taxonomy->hierarchical ) { unset( $query_params[ $base ]['oneOf'][1]['properties']['include_children'] ); unset( $query_params[ $base_exclude ]['oneOf'][1]['properties']['include_children'] ); } } return $query_params; } } PKj l\wKK6rest-api/endpoints/class-wp-rest-themes-controller.phpnu[//` or `/themes//`. * Excludes invalid directory name characters: `/:<>*?"|`. */ const PATTERN = '[^\/:<>\*\?"\|]+(?:\/[^\/:<>\*\?"\|]+)?'; /** * Constructor. * * @since 5.0.0 */ public function __construct() { $this->namespace = 'wp/v2'; $this->rest_base = 'themes'; } /** * Registers the routes for themes. * * @since 5.0.0 * * @see register_rest_route() */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), 'schema' => array( $this, 'get_item_schema' ), ) ); register_rest_route( $this->namespace, sprintf( '/%s/(?P%s)', $this->rest_base, self::PATTERN ), array( 'args' => array( 'stylesheet' => array( 'description' => __( "The theme's stylesheet. This uniquely identifies the theme." ), 'type' => 'string', 'sanitize_callback' => array( $this, '_sanitize_stylesheet_callback' ), ), ), array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Sanitize the stylesheet to decode endpoint. * * @since 5.9.0 * * @param string $stylesheet The stylesheet name. * @return string Sanitized stylesheet. */ public function _sanitize_stylesheet_callback( $stylesheet ) { return urldecode( $stylesheet ); } /** * Checks if a given request has access to read the theme. * * @since 5.0.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access for the item, otherwise WP_Error object. */ public function get_items_permissions_check( $request ) { if ( current_user_can( 'switch_themes' ) || current_user_can( 'manage_network_themes' ) ) { return true; } $registered = $this->get_collection_params(); if ( isset( $registered['status'], $request['status'] ) && is_array( $request['status'] ) && array( 'active' ) === $request['status'] ) { return $this->check_read_active_theme_permission(); } return new WP_Error( 'rest_cannot_view_themes', __( 'Sorry, you are not allowed to view themes.' ), array( 'status' => rest_authorization_required_code() ) ); } /** * Checks if a given request has access to read the theme. * * @since 5.7.0 * * @param WP_REST_Request $request Full details about the request. * @return bool|WP_Error True if the request has read access for the item, otherwise WP_Error object. */ public function get_item_permissions_check( $request ) { if ( current_user_can( 'switch_themes' ) || current_user_can( 'manage_network_themes' ) ) { return true; } $wp_theme = wp_get_theme( $request['stylesheet'] ); $current_theme = wp_get_theme(); if ( $this->is_same_theme( $wp_theme, $current_theme ) ) { return $this->check_read_active_theme_permission(); } return new WP_Error( 'rest_cannot_view_themes', __( 'Sorry, you are not allowed to view themes.' ), array( 'status' => rest_authorization_required_code() ) ); } /** * Checks if a theme can be read. * * @since 5.7.0 * * @return bool|WP_Error Whether the theme can be read. */ protected function check_read_active_theme_permission() { if ( current_user_can( 'edit_posts' ) ) { return true; } foreach ( get_post_types( array( 'show_in_rest' => true ), 'objects' ) as $post_type ) { if ( current_user_can( $post_type->cap->edit_posts ) ) { return true; } } return new WP_Error( 'rest_cannot_view_active_theme', __( 'Sorry, you are not allowed to view the active theme.' ), array( 'status' => rest_authorization_required_code() ) ); } /** * Retrieves a single theme. * * @since 5.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_item( $request ) { $wp_theme = wp_get_theme( $request['stylesheet'] ); if ( ! $wp_theme->exists() ) { return new WP_Error( 'rest_theme_not_found', __( 'Theme not found.' ), array( 'status' => 404 ) ); } $data = $this->prepare_item_for_response( $wp_theme, $request ); return rest_ensure_response( $data ); } /** * Retrieves a collection of themes. * * @since 5.0.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_items( $request ) { $themes = array(); $active_themes = wp_get_themes(); $current_theme = wp_get_theme(); $status = $request['status']; foreach ( $active_themes as $theme_name => $theme ) { $theme_status = ( $this->is_same_theme( $theme, $current_theme ) ) ? 'active' : 'inactive'; if ( is_array( $status ) && ! in_array( $theme_status, $status, true ) ) { continue; } $prepared = $this->prepare_item_for_response( $theme, $request ); $themes[] = $this->prepare_response_for_collection( $prepared ); } $response = rest_ensure_response( $themes ); $response->header( 'X-WP-Total', count( $themes ) ); $response->header( 'X-WP-TotalPages', 1 ); return $response; } /** * Prepares a single theme output for response. * * @since 5.0.0 * @since 5.9.0 Renamed `$theme` to `$item` to match parent class for PHP 8 named parameter support. * * @param WP_Theme $item Theme object. * @param WP_REST_Request $request Request object. * @return WP_REST_Response Response object. */ public function prepare_item_for_response( $item, $request ) { // Restores the more descriptive, specific name for use within this method. $theme = $item; $data = array(); $fields = $this->get_fields_for_response( $request ); if ( rest_is_field_included( 'stylesheet', $fields ) ) { $data['stylesheet'] = $theme->get_stylesheet(); } if ( rest_is_field_included( 'template', $fields ) ) { /** * Use the get_template() method, not the 'Template' header, for finding the template. * The 'Template' header is only good for what was written in the style.css, while * get_template() takes into account where WordPress actually located the theme and * whether it is actually valid. */ $data['template'] = $theme->get_template(); } $plain_field_mappings = array( 'requires_php' => 'RequiresPHP', 'requires_wp' => 'RequiresWP', 'textdomain' => 'TextDomain', 'version' => 'Version', ); foreach ( $plain_field_mappings as $field => $header ) { if ( rest_is_field_included( $field, $fields ) ) { $data[ $field ] = $theme->get( $header ); } } if ( rest_is_field_included( 'screenshot', $fields ) ) { // Using $theme->get_screenshot() with no args to get absolute URL. $data['screenshot'] = $theme->get_screenshot() ? $theme->get_screenshot() : ''; } $rich_field_mappings = array( 'author' => 'Author', 'author_uri' => 'AuthorURI', 'description' => 'Description', 'name' => 'Name', 'tags' => 'Tags', 'theme_uri' => 'ThemeURI', ); foreach ( $rich_field_mappings as $field => $header ) { if ( rest_is_field_included( "{$field}.raw", $fields ) ) { $data[ $field ]['raw'] = $theme->display( $header, false, true ); } if ( rest_is_field_included( "{$field}.rendered", $fields ) ) { $data[ $field ]['rendered'] = $theme->display( $header ); } } $current_theme = wp_get_theme(); if ( rest_is_field_included( 'status', $fields ) ) { $data['status'] = ( $this->is_same_theme( $theme, $current_theme ) ) ? 'active' : 'inactive'; } if ( rest_is_field_included( 'theme_supports', $fields ) && $this->is_same_theme( $theme, $current_theme ) ) { foreach ( get_registered_theme_features() as $feature => $config ) { if ( ! is_array( $config['show_in_rest'] ) ) { continue; } $name = $config['show_in_rest']['name']; if ( ! rest_is_field_included( "theme_supports.{$name}", $fields ) ) { continue; } if ( ! current_theme_supports( $feature ) ) { $data['theme_supports'][ $name ] = $config['show_in_rest']['schema']['default']; continue; } $support = get_theme_support( $feature ); if ( isset( $config['show_in_rest']['prepare_callback'] ) ) { $prepare = $config['show_in_rest']['prepare_callback']; } else { $prepare = array( $this, 'prepare_theme_support' ); } $prepared = $prepare( $support, $config, $feature, $request ); if ( is_wp_error( $prepared ) ) { continue; } $data['theme_supports'][ $name ] = $prepared; } } $data = $this->add_additional_fields_to_object( $data, $request ); // Wrap the data in a response object. $response = rest_ensure_response( $data ); $response->add_links( $this->prepare_links( $theme ) ); if ( $theme->get_stylesheet() === wp_get_theme()->get_stylesheet() ) { // This creates a record for the current theme if not existent. $id = WP_Theme_JSON_Resolver::get_user_global_styles_post_id(); } else { $user_cpt = WP_Theme_JSON_Resolver::get_user_data_from_wp_global_styles( $theme ); $id = isset( $user_cpt['ID'] ) ? $user_cpt['ID'] : null; } if ( $id ) { $response->add_link( 'https://api.w.org/user-global-styles', rest_url( 'wp/v2/global-styles/' . $id ) ); } /** * Filters theme data returned from the REST API. * * @since 5.0.0 * * @param WP_REST_Response $response The response object. * @param WP_Theme $theme Theme object used to create response. * @param WP_REST_Request $request Request object. */ return apply_filters( 'rest_prepare_theme', $response, $theme, $request ); } /** * Prepares links for the request. * * @since 5.7.0 * * @param WP_Theme $theme Theme data. * @return array Links for the given block type. */ protected function prepare_links( $theme ) { return array( 'self' => array( 'href' => rest_url( sprintf( '%s/%s/%s', $this->namespace, $this->rest_base, $theme->get_stylesheet() ) ), ), 'collection' => array( 'href' => rest_url( sprintf( '%s/%s', $this->namespace, $this->rest_base ) ), ), ); } /** * Helper function to compare two themes. * * @since 5.7.0 * * @param WP_Theme $theme_a First theme to compare. * @param WP_Theme $theme_b Second theme to compare. * @return bool */ protected function is_same_theme( $theme_a, $theme_b ) { return $theme_a->get_stylesheet() === $theme_b->get_stylesheet(); } /** * Prepares the theme support value for inclusion in the REST API response. * * @since 5.5.0 * * @param mixed $support The raw value from get_theme_support(). * @param array $args The feature's registration args. * @param string $feature The feature name. * @param WP_REST_Request $request The request object. * @return mixed The prepared support value. */ protected function prepare_theme_support( $support, $args, $feature, $request ) { $schema = $args['show_in_rest']['schema']; if ( 'boolean' === $schema['type'] ) { return true; } if ( is_array( $support ) && ! $args['variadic'] ) { $support = $support[0]; } return rest_sanitize_value_from_schema( $support, $schema ); } /** * Retrieves the theme's schema, conforming to JSON Schema. * * @since 5.0.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'theme', 'type' => 'object', 'properties' => array( 'stylesheet' => array( 'description' => __( 'The theme\'s stylesheet. This uniquely identifies the theme.' ), 'type' => 'string', 'readonly' => true, ), 'template' => array( 'description' => __( 'The theme\'s template. If this is a child theme, this refers to the parent theme, otherwise this is the same as the theme\'s stylesheet.' ), 'type' => 'string', 'readonly' => true, ), 'author' => array( 'description' => __( 'The theme author.' ), 'type' => 'object', 'readonly' => true, 'properties' => array( 'raw' => array( 'description' => __( 'The theme author\'s name, as found in the theme header.' ), 'type' => 'string', ), 'rendered' => array( 'description' => __( 'HTML for the theme author, transformed for display.' ), 'type' => 'string', ), ), ), 'author_uri' => array( 'description' => __( 'The website of the theme author.' ), 'type' => 'object', 'readonly' => true, 'properties' => array( 'raw' => array( 'description' => __( 'The website of the theme author, as found in the theme header.' ), 'type' => 'string', 'format' => 'uri', ), 'rendered' => array( 'description' => __( 'The website of the theme author, transformed for display.' ), 'type' => 'string', 'format' => 'uri', ), ), ), 'description' => array( 'description' => __( 'A description of the theme.' ), 'type' => 'object', 'readonly' => true, 'properties' => array( 'raw' => array( 'description' => __( 'The theme description, as found in the theme header.' ), 'type' => 'string', ), 'rendered' => array( 'description' => __( 'The theme description, transformed for display.' ), 'type' => 'string', ), ), ), 'name' => array( 'description' => __( 'The name of the theme.' ), 'type' => 'object', 'readonly' => true, 'properties' => array( 'raw' => array( 'description' => __( 'The theme name, as found in the theme header.' ), 'type' => 'string', ), 'rendered' => array( 'description' => __( 'The theme name, transformed for display.' ), 'type' => 'string', ), ), ), 'requires_php' => array( 'description' => __( 'The minimum PHP version required for the theme to work.' ), 'type' => 'string', 'readonly' => true, ), 'requires_wp' => array( 'description' => __( 'The minimum WordPress version required for the theme to work.' ), 'type' => 'string', 'readonly' => true, ), 'screenshot' => array( 'description' => __( 'The theme\'s screenshot URL.' ), 'type' => 'string', 'format' => 'uri', 'readonly' => true, ), 'tags' => array( 'description' => __( 'Tags indicating styles and features of the theme.' ), 'type' => 'object', 'readonly' => true, 'properties' => array( 'raw' => array( 'description' => __( 'The theme tags, as found in the theme header.' ), 'type' => 'array', 'items' => array( 'type' => 'string', ), ), 'rendered' => array( 'description' => __( 'The theme tags, transformed for display.' ), 'type' => 'string', ), ), ), 'textdomain' => array( 'description' => __( 'The theme\'s text domain.' ), 'type' => 'string', 'readonly' => true, ), 'theme_supports' => array( 'description' => __( 'Features supported by this theme.' ), 'type' => 'object', 'readonly' => true, 'properties' => array(), ), 'theme_uri' => array( 'description' => __( 'The URI of the theme\'s webpage.' ), 'type' => 'object', 'readonly' => true, 'properties' => array( 'raw' => array( 'description' => __( 'The URI of the theme\'s webpage, as found in the theme header.' ), 'type' => 'string', 'format' => 'uri', ), 'rendered' => array( 'description' => __( 'The URI of the theme\'s webpage, transformed for display.' ), 'type' => 'string', 'format' => 'uri', ), ), ), 'version' => array( 'description' => __( 'The theme\'s current version.' ), 'type' => 'string', 'readonly' => true, ), 'status' => array( 'description' => __( 'A named status for the theme.' ), 'type' => 'string', 'enum' => array( 'inactive', 'active' ), ), ), ); foreach ( get_registered_theme_features() as $feature => $config ) { if ( ! is_array( $config['show_in_rest'] ) ) { continue; } $name = $config['show_in_rest']['name']; $schema['properties']['theme_supports']['properties'][ $name ] = $config['show_in_rest']['schema']; } $this->schema = $schema; return $this->add_additional_fields_schema( $this->schema ); } /** * Retrieves the search params for the themes collection. * * @since 5.0.0 * * @return array Collection parameters. */ public function get_collection_params() { $query_params = array( 'status' => array( 'description' => __( 'Limit result set to themes assigned one or more statuses.' ), 'type' => 'array', 'items' => array( 'enum' => array( 'active', 'inactive' ), 'type' => 'string', ), ), ); /** * Filters REST API collection parameters for the themes controller. * * @since 5.0.0 * * @param array $query_params JSON Schema-formatted collection parameters. */ return apply_filters( 'rest_themes_collection_params', $query_params ); } /** * Sanitizes and validates the list of theme status. * * @since 5.0.0 * @deprecated 5.7.0 * * @param string|array $statuses One or more theme statuses. * @param WP_REST_Request $request Full details about the request. * @param string $parameter Additional parameter to pass to validation. * @return array|WP_Error A list of valid statuses, otherwise WP_Error object. */ public function sanitize_theme_status( $statuses, $request, $parameter ) { _deprecated_function( __METHOD__, '5.7.0' ); $statuses = wp_parse_slug_list( $statuses ); foreach ( $statuses as $status ) { $result = rest_validate_request_arg( $status, $request, $parameter ); if ( is_wp_error( $result ) ) { return $result; } } return $statuses; } } PKj l\]_a]a]Erest-api/endpoints/class-wp-rest-application-passwords-controller.phpnu[namespace = 'wp/v2'; $this->rest_base = 'users/(?P(?:[\d]+|me))/application-passwords'; } /** * Registers the REST API routes for the application passwords controller. * * @since 5.6.0 */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), array( 'methods' => WP_REST_Server::CREATABLE, 'callback' => array( $this, 'create_item' ), 'permission_callback' => array( $this, 'create_item_permissions_check' ), 'args' => $this->get_endpoint_args_for_item_schema(), ), array( 'methods' => WP_REST_Server::DELETABLE, 'callback' => array( $this, 'delete_items' ), 'permission_callback' => array( $this, 'delete_items_permissions_check' ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/introspect', array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_current_item' ), 'permission_callback' => array( $this, 'get_current_item_permissions_check' ), 'args' => array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P[\w\-]+)', array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), 'args' => array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ), ), array( 'methods' => WP_REST_Server::EDITABLE, 'callback' => array( $this, 'update_item' ), 'permission_callback' => array( $this, 'update_item_permissions_check' ), 'args' => $this->get_endpoint_args_for_item_schema( WP_REST_Server::EDITABLE ), ), array( 'methods' => WP_REST_Server::DELETABLE, 'callback' => array( $this, 'delete_item' ), 'permission_callback' => array( $this, 'delete_item_permissions_check' ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Checks if a given request has access to get application passwords. * * @since 5.6.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_items_permissions_check( $request ) { $user = $this->get_user( $request ); if ( is_wp_error( $user ) ) { return $user; } if ( ! current_user_can( 'list_app_passwords', $user->ID ) ) { return new WP_Error( 'rest_cannot_list_application_passwords', __( 'Sorry, you are not allowed to list application passwords for this user.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Retrieves a collection of application passwords. * * @since 5.6.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_items( $request ) { $user = $this->get_user( $request ); if ( is_wp_error( $user ) ) { return $user; } $passwords = WP_Application_Passwords::get_user_application_passwords( $user->ID ); $response = array(); foreach ( $passwords as $password ) { $response[] = $this->prepare_response_for_collection( $this->prepare_item_for_response( $password, $request ) ); } return new WP_REST_Response( $response ); } /** * Checks if a given request has access to get a specific application password. * * @since 5.6.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access for the item, WP_Error object otherwise. */ public function get_item_permissions_check( $request ) { $user = $this->get_user( $request ); if ( is_wp_error( $user ) ) { return $user; } if ( ! current_user_can( 'read_app_password', $user->ID, $request['uuid'] ) ) { return new WP_Error( 'rest_cannot_read_application_password', __( 'Sorry, you are not allowed to read this application password.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Retrieves one application password from the collection. * * @since 5.6.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_item( $request ) { $password = $this->get_application_password( $request ); if ( is_wp_error( $password ) ) { return $password; } return $this->prepare_item_for_response( $password, $request ); } /** * Checks if a given request has access to create application passwords. * * @since 5.6.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to create items, WP_Error object otherwise. */ public function create_item_permissions_check( $request ) { $user = $this->get_user( $request ); if ( is_wp_error( $user ) ) { return $user; } if ( ! current_user_can( 'create_app_password', $user->ID ) ) { return new WP_Error( 'rest_cannot_create_application_passwords', __( 'Sorry, you are not allowed to create application passwords for this user.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Creates an application password. * * @since 5.6.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function create_item( $request ) { $user = $this->get_user( $request ); if ( is_wp_error( $user ) ) { return $user; } $prepared = $this->prepare_item_for_database( $request ); if ( is_wp_error( $prepared ) ) { return $prepared; } $created = WP_Application_Passwords::create_new_application_password( $user->ID, wp_slash( (array) $prepared ) ); if ( is_wp_error( $created ) ) { return $created; } $password = $created[0]; $item = WP_Application_Passwords::get_user_application_password( $user->ID, $created[1]['uuid'] ); $item['new_password'] = WP_Application_Passwords::chunk_password( $password ); $fields_update = $this->update_additional_fields_for_object( $item, $request ); if ( is_wp_error( $fields_update ) ) { return $fields_update; } /** * Fires after a single application password is completely created or updated via the REST API. * * @since 5.6.0 * * @param array $item Inserted or updated password item. * @param WP_REST_Request $request Request object. * @param bool $creating True when creating an application password, false when updating. */ do_action( 'rest_after_insert_application_password', $item, $request, true ); $request->set_param( 'context', 'edit' ); $response = $this->prepare_item_for_response( $item, $request ); $response->set_status( 201 ); $response->header( 'Location', $response->get_links()['self'][0]['href'] ); return $response; } /** * Checks if a given request has access to update application passwords. * * @since 5.6.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to create items, WP_Error object otherwise. */ public function update_item_permissions_check( $request ) { $user = $this->get_user( $request ); if ( is_wp_error( $user ) ) { return $user; } if ( ! current_user_can( 'edit_app_password', $user->ID, $request['uuid'] ) ) { return new WP_Error( 'rest_cannot_edit_application_password', __( 'Sorry, you are not allowed to edit this application password.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Updates an application password. * * @since 5.6.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function update_item( $request ) { $user = $this->get_user( $request ); if ( is_wp_error( $user ) ) { return $user; } $item = $this->get_application_password( $request ); if ( is_wp_error( $item ) ) { return $item; } $prepared = $this->prepare_item_for_database( $request ); if ( is_wp_error( $prepared ) ) { return $prepared; } $saved = WP_Application_Passwords::update_application_password( $user->ID, $item['uuid'], wp_slash( (array) $prepared ) ); if ( is_wp_error( $saved ) ) { return $saved; } $fields_update = $this->update_additional_fields_for_object( $item, $request ); if ( is_wp_error( $fields_update ) ) { return $fields_update; } $item = WP_Application_Passwords::get_user_application_password( $user->ID, $item['uuid'] ); /** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-application-passwords-controller.php */ do_action( 'rest_after_insert_application_password', $item, $request, false ); $request->set_param( 'context', 'edit' ); return $this->prepare_item_for_response( $item, $request ); } /** * Checks if a given request has access to delete all application passwords for a user. * * @since 5.6.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to delete the item, WP_Error object otherwise. */ public function delete_items_permissions_check( $request ) { $user = $this->get_user( $request ); if ( is_wp_error( $user ) ) { return $user; } if ( ! current_user_can( 'delete_app_passwords', $user->ID ) ) { return new WP_Error( 'rest_cannot_delete_application_passwords', __( 'Sorry, you are not allowed to delete application passwords for this user.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Deletes all application passwords for a user. * * @since 5.6.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function delete_items( $request ) { $user = $this->get_user( $request ); if ( is_wp_error( $user ) ) { return $user; } $deleted = WP_Application_Passwords::delete_all_application_passwords( $user->ID ); if ( is_wp_error( $deleted ) ) { return $deleted; } return new WP_REST_Response( array( 'deleted' => true, 'count' => $deleted, ) ); } /** * Checks if a given request has access to delete a specific application password for a user. * * @since 5.6.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to delete the item, WP_Error object otherwise. */ public function delete_item_permissions_check( $request ) { $user = $this->get_user( $request ); if ( is_wp_error( $user ) ) { return $user; } if ( ! current_user_can( 'delete_app_password', $user->ID, $request['uuid'] ) ) { return new WP_Error( 'rest_cannot_delete_application_password', __( 'Sorry, you are not allowed to delete this application password.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Deletes an application password for a user. * * @since 5.6.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function delete_item( $request ) { $user = $this->get_user( $request ); if ( is_wp_error( $user ) ) { return $user; } $password = $this->get_application_password( $request ); if ( is_wp_error( $password ) ) { return $password; } $request->set_param( 'context', 'edit' ); $previous = $this->prepare_item_for_response( $password, $request ); $deleted = WP_Application_Passwords::delete_application_password( $user->ID, $password['uuid'] ); if ( is_wp_error( $deleted ) ) { return $deleted; } return new WP_REST_Response( array( 'deleted' => true, 'previous' => $previous->get_data(), ) ); } /** * Checks if a given request has access to get the currently used application password for a user. * * @since 5.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access for the item, WP_Error object otherwise. */ public function get_current_item_permissions_check( $request ) { $user = $this->get_user( $request ); if ( is_wp_error( $user ) ) { return $user; } if ( get_current_user_id() !== $user->ID ) { return new WP_Error( 'rest_cannot_introspect_app_password_for_non_authenticated_user', __( 'The authenticated application password can only be introspected for the current user.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Retrieves the application password being currently used for authentication of a user. * * @since 5.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_current_item( $request ) { $user = $this->get_user( $request ); if ( is_wp_error( $user ) ) { return $user; } $uuid = rest_get_authenticated_app_password(); if ( ! $uuid ) { return new WP_Error( 'rest_no_authenticated_app_password', __( 'Cannot introspect application password.' ), array( 'status' => 404 ) ); } $password = WP_Application_Passwords::get_user_application_password( $user->ID, $uuid ); if ( ! $password ) { return new WP_Error( 'rest_application_password_not_found', __( 'Application password not found.' ), array( 'status' => 500 ) ); } return $this->prepare_item_for_response( $password, $request ); } /** * Performs a permissions check for the request. * * @since 5.6.0 * @deprecated 5.7.0 Use `edit_user` directly or one of the specific meta capabilities introduced in 5.7.0. * * @param WP_REST_Request $request * @return true|WP_Error */ protected function do_permissions_check( $request ) { _deprecated_function( __METHOD__, '5.7.0' ); $user = $this->get_user( $request ); if ( is_wp_error( $user ) ) { return $user; } if ( ! current_user_can( 'edit_user', $user->ID ) ) { return new WP_Error( 'rest_cannot_manage_application_passwords', __( 'Sorry, you are not allowed to manage application passwords for this user.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Prepares an application password for a create or update operation. * * @since 5.6.0 * * @param WP_REST_Request $request Request object. * @return object|WP_Error The prepared item, or WP_Error object on failure. */ protected function prepare_item_for_database( $request ) { $prepared = (object) array( 'name' => $request['name'], ); if ( $request['app_id'] && ! $request['uuid'] ) { $prepared->app_id = $request['app_id']; } /** * Filters an application password before it is inserted via the REST API. * * @since 5.6.0 * * @param stdClass $prepared An object representing a single application password prepared for inserting or updating the database. * @param WP_REST_Request $request Request object. */ return apply_filters( 'rest_pre_insert_application_password', $prepared, $request ); } /** * Prepares the application password for the REST response. * * @since 5.6.0 * * @param array $item WordPress representation of the item. * @param WP_REST_Request $request Request object. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function prepare_item_for_response( $item, $request ) { $user = $this->get_user( $request ); if ( is_wp_error( $user ) ) { return $user; } $prepared = array( 'uuid' => $item['uuid'], 'app_id' => empty( $item['app_id'] ) ? '' : $item['app_id'], 'name' => $item['name'], 'created' => gmdate( 'Y-m-d\TH:i:s', $item['created'] ), 'last_used' => $item['last_used'] ? gmdate( 'Y-m-d\TH:i:s', $item['last_used'] ) : null, 'last_ip' => $item['last_ip'] ? $item['last_ip'] : null, ); if ( isset( $item['new_password'] ) ) { $prepared['password'] = $item['new_password']; } $prepared = $this->add_additional_fields_to_object( $prepared, $request ); $prepared = $this->filter_response_by_context( $prepared, $request['context'] ); $response = new WP_REST_Response( $prepared ); $response->add_links( $this->prepare_links( $user, $item ) ); /** * Filters the REST API response for an application password. * * @since 5.6.0 * * @param WP_REST_Response $response The response object. * @param array $item The application password array. * @param WP_REST_Request $request The request object. */ return apply_filters( 'rest_prepare_application_password', $response, $item, $request ); } /** * Prepares links for the request. * * @since 5.6.0 * * @param WP_User $user The requested user. * @param array $item The application password. * @return array The list of links. */ protected function prepare_links( WP_User $user, $item ) { return array( 'self' => array( 'href' => rest_url( sprintf( '%s/users/%d/application-passwords/%s', $this->namespace, $user->ID, $item['uuid'] ) ), ), ); } /** * Gets the requested user. * * @since 5.6.0 * * @param WP_REST_Request $request The request object. * @return WP_User|WP_Error The WordPress user associated with the request, or a WP_Error if none found. */ protected function get_user( $request ) { if ( ! wp_is_application_passwords_available() ) { return new WP_Error( 'application_passwords_disabled', __( 'Application passwords are not available.' ), array( 'status' => 501 ) ); } $error = new WP_Error( 'rest_user_invalid_id', __( 'Invalid user ID.' ), array( 'status' => 404 ) ); $id = $request['user_id']; if ( 'me' === $id ) { if ( ! is_user_logged_in() ) { return new WP_Error( 'rest_not_logged_in', __( 'You are not currently logged in.' ), array( 'status' => 401 ) ); } $user = wp_get_current_user(); } else { $id = (int) $id; if ( $id <= 0 ) { return $error; } $user = get_userdata( $id ); } if ( empty( $user ) || ! $user->exists() ) { return $error; } if ( is_multisite() && ! is_user_member_of_blog( $user->ID ) ) { return $error; } if ( ! wp_is_application_passwords_available_for_user( $user ) ) { return new WP_Error( 'application_passwords_disabled_for_user', __( 'Application passwords are not available for your account. Please contact the site administrator for assistance.' ), array( 'status' => 501 ) ); } return $user; } /** * Gets the requested application password for a user. * * @since 5.6.0 * * @param WP_REST_Request $request The request object. * @return array|WP_Error The application password details if found, a WP_Error otherwise. */ protected function get_application_password( $request ) { $user = $this->get_user( $request ); if ( is_wp_error( $user ) ) { return $user; } $password = WP_Application_Passwords::get_user_application_password( $user->ID, $request['uuid'] ); if ( ! $password ) { return new WP_Error( 'rest_application_password_not_found', __( 'Application password not found.' ), array( 'status' => 404 ) ); } return $password; } /** * Retrieves the query params for the collections. * * @since 5.6.0 * * @return array Query parameters for the collection. */ public function get_collection_params() { return array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ); } /** * Retrieves the application password's schema, conforming to JSON Schema. * * @since 5.6.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $this->schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'application-password', 'type' => 'object', 'properties' => array( 'uuid' => array( 'description' => __( 'The unique identifier for the application password.' ), 'type' => 'string', 'format' => 'uuid', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'app_id' => array( 'description' => __( 'A UUID provided by the application to uniquely identify it. It is recommended to use an UUID v5 with the URL or DNS namespace.' ), 'type' => 'string', 'format' => 'uuid', 'context' => array( 'view', 'edit', 'embed' ), ), 'name' => array( 'description' => __( 'The name of the application password.' ), 'type' => 'string', 'required' => true, 'context' => array( 'view', 'edit', 'embed' ), 'minLength' => 1, 'pattern' => '.*\S.*', ), 'password' => array( 'description' => __( 'The generated password. Only available after adding an application.' ), 'type' => 'string', 'context' => array( 'edit' ), 'readonly' => true, ), 'created' => array( 'description' => __( 'The GMT date the application password was created.' ), 'type' => 'string', 'format' => 'date-time', 'context' => array( 'view', 'edit' ), 'readonly' => true, ), 'last_used' => array( 'description' => __( 'The GMT date the application password was last used.' ), 'type' => array( 'string', 'null' ), 'format' => 'date-time', 'context' => array( 'view', 'edit' ), 'readonly' => true, ), 'last_ip' => array( 'description' => __( 'The IP address the application password was last used by.' ), 'type' => array( 'string', 'null' ), 'format' => 'ip', 'context' => array( 'view', 'edit' ), 'readonly' => true, ), ), ); return $this->add_additional_fields_schema( $this->schema ); } } PKj l\̌~]HH<rest-api/endpoints/class-wp-rest-widget-types-controller.phpnu[namespace = 'wp/v2'; $this->rest_base = 'widget-types'; } /** * Registers the widget type routes. * * @since 5.8.0 * * @see register_rest_route() */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P[a-zA-Z0-9_-]+)', array( 'args' => array( 'id' => array( 'description' => __( 'The widget type id.' ), 'type' => 'string', ), ), array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), 'args' => $this->get_collection_params(), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P[a-zA-Z0-9_-]+)/encode', array( 'args' => array( 'id' => array( 'description' => __( 'The widget type id.' ), 'type' => 'string', 'required' => true, ), 'instance' => array( 'description' => __( 'Current instance settings of the widget.' ), 'type' => 'object', ), 'form_data' => array( 'description' => __( 'Serialized widget form data to encode into instance settings.' ), 'type' => 'string', 'sanitize_callback' => static function( $string ) { $array = array(); wp_parse_str( $string, $array ); return $array; }, ), ), array( 'methods' => WP_REST_Server::CREATABLE, 'permission_callback' => array( $this, 'get_item_permissions_check' ), 'callback' => array( $this, 'encode_form_data' ), ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P[a-zA-Z0-9_-]+)/render', array( array( 'methods' => WP_REST_Server::CREATABLE, 'permission_callback' => array( $this, 'get_item_permissions_check' ), 'callback' => array( $this, 'render' ), 'args' => array( 'id' => array( 'description' => __( 'The widget type id.' ), 'type' => 'string', 'required' => true, ), 'instance' => array( 'description' => __( 'Current instance settings of the widget.' ), 'type' => 'object', ), ), ), ) ); } /** * Checks whether a given request has permission to read widget types. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_items_permissions_check( $request ) { return $this->check_read_permission(); } /** * Retrieves the list of all widget types. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_items( $request ) { $data = array(); foreach ( $this->get_widgets() as $widget ) { $widget_type = $this->prepare_item_for_response( $widget, $request ); $data[] = $this->prepare_response_for_collection( $widget_type ); } return rest_ensure_response( $data ); } /** * Checks if a given request has access to read a widget type. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access for the item, WP_Error object otherwise. */ public function get_item_permissions_check( $request ) { $check = $this->check_read_permission(); if ( is_wp_error( $check ) ) { return $check; } $widget_id = $request['id']; $widget_type = $this->get_widget( $widget_id ); if ( is_wp_error( $widget_type ) ) { return $widget_type; } return true; } /** * Checks whether the user can read widget types. * * @since 5.8.0 * * @return true|WP_Error True if the widget type is visible, WP_Error otherwise. */ protected function check_read_permission() { if ( ! current_user_can( 'edit_theme_options' ) ) { return new WP_Error( 'rest_cannot_manage_widgets', __( 'Sorry, you are not allowed to manage widgets on this site.' ), array( 'status' => rest_authorization_required_code(), ) ); } return true; } /** * Gets the details about the requested widget. * * @since 5.8.0 * * @param string $id The widget type id. * @return array|WP_Error The array of widget data if the name is valid, WP_Error otherwise. */ public function get_widget( $id ) { foreach ( $this->get_widgets() as $widget ) { if ( $id === $widget['id'] ) { return $widget; } } return new WP_Error( 'rest_widget_type_invalid', __( 'Invalid widget type.' ), array( 'status' => 404 ) ); } /** * Normalize array of widgets. * * @since 5.8.0 * * @global WP_Widget_Factory $wp_widget_factory * @global array $wp_registered_widgets The list of registered widgets. * * @return array Array of widgets. */ protected function get_widgets() { global $wp_widget_factory, $wp_registered_widgets; $widgets = array(); foreach ( $wp_registered_widgets as $widget ) { $parsed_id = wp_parse_widget_id( $widget['id'] ); $widget_object = $wp_widget_factory->get_widget_object( $parsed_id['id_base'] ); $widget['id'] = $parsed_id['id_base']; $widget['is_multi'] = (bool) $widget_object; if ( isset( $widget['name'] ) ) { $widget['name'] = html_entity_decode( $widget['name'], ENT_QUOTES, get_bloginfo( 'charset' ) ); } if ( isset( $widget['description'] ) ) { $widget['description'] = html_entity_decode( $widget['description'], ENT_QUOTES, get_bloginfo( 'charset' ) ); } unset( $widget['callback'] ); $classname = ''; foreach ( (array) $widget['classname'] as $cn ) { if ( is_string( $cn ) ) { $classname .= '_' . $cn; } elseif ( is_object( $cn ) ) { $classname .= '_' . get_class( $cn ); } } $widget['classname'] = ltrim( $classname, '_' ); $widgets[ $widget['id'] ] = $widget; } ksort( $widgets ); return $widgets; } /** * Retrieves a single widget type from the collection. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_item( $request ) { $widget_id = $request['id']; $widget_type = $this->get_widget( $widget_id ); if ( is_wp_error( $widget_type ) ) { return $widget_type; } $data = $this->prepare_item_for_response( $widget_type, $request ); return rest_ensure_response( $data ); } /** * Prepares a widget type object for serialization. * * @since 5.8.0 * @since 5.9.0 Renamed `$widget_type` to `$item` to match parent class for PHP 8 named parameter support. * * @param array $item Widget type data. * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response Widget type data. */ public function prepare_item_for_response( $item, $request ) { // Restores the more descriptive, specific name for use within this method. $widget_type = $item; $fields = $this->get_fields_for_response( $request ); $data = array( 'id' => $widget_type['id'], ); $schema = $this->get_item_schema(); $extra_fields = array( 'name', 'description', 'is_multi', 'classname', 'widget_class', 'option_name', 'customize_selective_refresh', ); foreach ( $extra_fields as $extra_field ) { if ( ! rest_is_field_included( $extra_field, $fields ) ) { continue; } if ( isset( $widget_type[ $extra_field ] ) ) { $field = $widget_type[ $extra_field ]; } elseif ( array_key_exists( 'default', $schema['properties'][ $extra_field ] ) ) { $field = $schema['properties'][ $extra_field ]['default']; } else { $field = ''; } $data[ $extra_field ] = rest_sanitize_value_from_schema( $field, $schema['properties'][ $extra_field ] ); } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->add_additional_fields_to_object( $data, $request ); $data = $this->filter_response_by_context( $data, $context ); $response = rest_ensure_response( $data ); $response->add_links( $this->prepare_links( $widget_type ) ); /** * Filters the REST API response for a widget type. * * @since 5.8.0 * * @param WP_REST_Response $response The response object. * @param array $widget_type The array of widget data. * @param WP_REST_Request $request The request object. */ return apply_filters( 'rest_prepare_widget_type', $response, $widget_type, $request ); } /** * Prepares links for the widget type. * * @since 5.8.0 * * @param array $widget_type Widget type data. * @return array Links for the given widget type. */ protected function prepare_links( $widget_type ) { return array( 'collection' => array( 'href' => rest_url( sprintf( '%s/%s', $this->namespace, $this->rest_base ) ), ), 'self' => array( 'href' => rest_url( sprintf( '%s/%s/%s', $this->namespace, $this->rest_base, $widget_type['id'] ) ), ), ); } /** * Retrieves the widget type's schema, conforming to JSON Schema. * * @since 5.8.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'widget-type', 'type' => 'object', 'properties' => array( 'id' => array( 'description' => __( 'Unique slug identifying the widget type.' ), 'type' => 'string', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'name' => array( 'description' => __( 'Human-readable name identifying the widget type.' ), 'type' => 'string', 'default' => '', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'description' => array( 'description' => __( 'Description of the widget.' ), 'type' => 'string', 'default' => '', 'context' => array( 'view', 'edit', 'embed' ), ), 'is_multi' => array( 'description' => __( 'Whether the widget supports multiple instances' ), 'type' => 'boolean', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'classname' => array( 'description' => __( 'Class name' ), 'type' => 'string', 'default' => '', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), ), ); $this->schema = $schema; return $this->add_additional_fields_schema( $this->schema ); } /** * An RPC-style endpoint which can be used by clients to turn user input in * a widget admin form into an encoded instance object. * * Accepts: * * - id: A widget type ID. * - instance: A widget's encoded instance object. Optional. * - form_data: Form data from submitting a widget's admin form. Optional. * * Returns: * - instance: The encoded instance object after updating the widget with * the given form data. * - form: The widget's admin form after updating the widget with the * given form data. * * @since 5.8.0 * * @global WP_Widget_Factory $wp_widget_factory * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function encode_form_data( $request ) { global $wp_widget_factory; $id = $request['id']; $widget_object = $wp_widget_factory->get_widget_object( $id ); if ( ! $widget_object ) { return new WP_Error( 'rest_invalid_widget', __( 'Cannot preview a widget that does not extend WP_Widget.' ), array( 'status' => 400 ) ); } // Set the widget's number so that the id attributes in the HTML that we // return are predictable. if ( isset( $request['number'] ) && is_numeric( $request['number'] ) ) { $widget_object->_set( (int) $request['number'] ); } else { $widget_object->_set( -1 ); } if ( isset( $request['instance']['encoded'], $request['instance']['hash'] ) ) { $serialized_instance = base64_decode( $request['instance']['encoded'] ); if ( ! hash_equals( wp_hash( $serialized_instance ), $request['instance']['hash'] ) ) { return new WP_Error( 'rest_invalid_widget', __( 'The provided instance is malformed.' ), array( 'status' => 400 ) ); } $instance = unserialize( $serialized_instance ); } else { $instance = array(); } if ( isset( $request['form_data'][ "widget-$id" ] ) && is_array( $request['form_data'][ "widget-$id" ] ) ) { $new_instance = array_values( $request['form_data'][ "widget-$id" ] )[0]; $old_instance = $instance; $instance = $widget_object->update( $new_instance, $old_instance ); /** This filter is documented in wp-includes/class-wp-widget.php */ $instance = apply_filters( 'widget_update_callback', $instance, $new_instance, $old_instance, $widget_object ); } $serialized_instance = serialize( $instance ); $widget_key = $wp_widget_factory->get_widget_key( $id ); $response = array( 'form' => trim( $this->get_widget_form( $widget_object, $instance ) ), 'preview' => trim( $this->get_widget_preview( $widget_key, $instance ) ), 'instance' => array( 'encoded' => base64_encode( $serialized_instance ), 'hash' => wp_hash( $serialized_instance ), ), ); if ( ! empty( $widget_object->widget_options['show_instance_in_rest'] ) ) { // Use new stdClass so that JSON result is {} and not []. $response['instance']['raw'] = empty( $instance ) ? new stdClass : $instance; } return rest_ensure_response( $response ); } /** * Returns the output of WP_Widget::widget() when called with the provided * instance. Used by encode_form_data() to preview a widget. * @since 5.8.0 * * @param string $widget The widget's PHP class name (see class-wp-widget.php). * @param array $instance Widget instance settings. * @return string */ private function get_widget_preview( $widget, $instance ) { ob_start(); the_widget( $widget, $instance ); return ob_get_clean(); } /** * Returns the output of WP_Widget::form() when called with the provided * instance. Used by encode_form_data() to preview a widget's form. * * @since 5.8.0 * * @param WP_Widget $widget_object Widget object to call widget() on. * @param array $instance Widget instance settings. * @return string */ private function get_widget_form( $widget_object, $instance ) { ob_start(); /** This filter is documented in wp-includes/class-wp-widget.php */ $instance = apply_filters( 'widget_form_callback', $instance, $widget_object ); if ( false !== $instance ) { $return = $widget_object->form( $instance ); /** This filter is documented in wp-includes/class-wp-widget.php */ do_action_ref_array( 'in_widget_form', array( &$widget_object, &$return, $instance ) ); } return ob_get_clean(); } /** * Renders a single Legacy Widget and wraps it in a JSON-encodable array. * * @since 5.9.0 * * @param WP_REST_Request $request Full details about the request. * * @return array An array with rendered Legacy Widget HTML. */ public function render( $request ) { return array( 'preview' => $this->render_legacy_widget_preview_iframe( $request['id'], isset( $request['instance'] ) ? $request['instance'] : null ), ); } /** * Renders a page containing a preview of the requested Legacy Widget block. * * @since 5.9.0 * * @param string $id_base The id base of the requested widget. * @param array $instance The widget instance attributes. * * @return string Rendered Legacy Widget block preview. */ private function render_legacy_widget_preview_iframe( $id_base, $instance ) { if ( ! defined( 'IFRAME_REQUEST' ) ) { define( 'IFRAME_REQUEST', true ); } ob_start(); ?> > >
      get_registered( 'core/legacy-widget' ); echo $block->render( array( 'idBase' => $id_base, 'instance' => $instance, ) ); ?>
      $this->get_context_param( array( 'default' => 'view' ) ), ); } } PKj l\ $@@5rest-api/endpoints/class-wp-rest-menus-controller.phpnu[check_has_read_only_access( $request ); } /** * Checks if a request has access to read or edit the specified menu. * * @since 5.9.0 * * @param WP_REST_Request $request Full details about the request. * @return bool|WP_Error True if the request has read access for the item, otherwise false or WP_Error object. */ public function get_item_permissions_check( $request ) { $has_permission = parent::get_item_permissions_check( $request ); if ( true !== $has_permission ) { return $has_permission; } return $this->check_has_read_only_access( $request ); } /** * Gets the term, if the ID is valid. * * @since 5.9.0 * * @param int $id Supplied ID. * @return WP_Term|WP_Error Term object if ID is valid, WP_Error otherwise. */ protected function get_term( $id ) { $term = parent::get_term( $id ); if ( is_wp_error( $term ) ) { return $term; } $nav_term = wp_get_nav_menu_object( $term ); $nav_term->auto_add = $this->get_menu_auto_add( $nav_term->term_id ); return $nav_term; } /** * Checks whether the current user has read permission for the endpoint. * * This allows for any user that can `edit_theme_options` or edit any REST API available post type. * * @since 5.9.0 * * @param WP_REST_Request $request Full details about the request. * @return bool|WP_Error Whether the current user has permission. */ protected function check_has_read_only_access( $request ) { if ( current_user_can( 'edit_theme_options' ) ) { return true; } if ( current_user_can( 'edit_posts' ) ) { return true; } foreach ( get_post_types( array( 'show_in_rest' => true ), 'objects' ) as $post_type ) { if ( current_user_can( $post_type->cap->edit_posts ) ) { return true; } } return new WP_Error( 'rest_cannot_view', __( 'Sorry, you are not allowed to view menus.' ), array( 'status' => rest_authorization_required_code() ) ); } /** * Prepares a single term output for response. * * @since 5.9.0 * * @param WP_Term $term Term object. * @param WP_REST_Request $request Request object. * @return WP_REST_Response Response object. */ public function prepare_item_for_response( $term, $request ) { $nav_menu = wp_get_nav_menu_object( $term ); $response = parent::prepare_item_for_response( $nav_menu, $request ); $fields = $this->get_fields_for_response( $request ); $data = $response->get_data(); if ( rest_is_field_included( 'locations', $fields ) ) { $data['locations'] = $this->get_menu_locations( $nav_menu->term_id ); } if ( rest_is_field_included( 'auto_add', $fields ) ) { $data['auto_add'] = $this->get_menu_auto_add( $nav_menu->term_id ); } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->add_additional_fields_to_object( $data, $request ); $data = $this->filter_response_by_context( $data, $context ); $response = rest_ensure_response( $data ); $response->add_links( $this->prepare_links( $term ) ); /** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-terms-controller.php */ return apply_filters( "rest_prepare_{$this->taxonomy}", $response, $term, $request ); } /** * Prepares links for the request. * * @since 5.9.0 * * @param WP_Term $term Term object. * @return array Links for the given term. */ protected function prepare_links( $term ) { $links = parent::prepare_links( $term ); $locations = $this->get_menu_locations( $term->term_id ); foreach ( $locations as $location ) { $url = rest_url( sprintf( 'wp/v2/menu-locations/%s', $location ) ); $links['https://api.w.org/menu-location'][] = array( 'href' => $url, 'embeddable' => true, ); } return $links; } /** * Prepares a single term for create or update. * * @since 5.9.0 * * @param WP_REST_Request $request Request object. * @return object Prepared term data. */ public function prepare_item_for_database( $request ) { $prepared_term = parent::prepare_item_for_database( $request ); $schema = $this->get_item_schema(); if ( isset( $request['name'] ) && ! empty( $schema['properties']['name'] ) ) { $prepared_term->{'menu-name'} = $request['name']; } return $prepared_term; } /** * Creates a single term in a taxonomy. * * @since 5.9.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function create_item( $request ) { if ( isset( $request['parent'] ) ) { if ( ! is_taxonomy_hierarchical( $this->taxonomy ) ) { return new WP_Error( 'rest_taxonomy_not_hierarchical', __( 'Cannot set parent term, taxonomy is not hierarchical.' ), array( 'status' => 400 ) ); } $parent = wp_get_nav_menu_object( (int) $request['parent'] ); if ( ! $parent ) { return new WP_Error( 'rest_term_invalid', __( 'Parent term does not exist.' ), array( 'status' => 400 ) ); } } $prepared_term = $this->prepare_item_for_database( $request ); $term = wp_update_nav_menu_object( 0, wp_slash( (array) $prepared_term ) ); if ( is_wp_error( $term ) ) { /* * If we're going to inform the client that the term already exists, * give them the identifier for future use. */ if ( in_array( 'menu_exists', $term->get_error_codes(), true ) ) { $existing_term = get_term_by( 'name', $prepared_term->{'menu-name'}, $this->taxonomy ); $term->add_data( $existing_term->term_id, 'menu_exists' ); $term->add_data( array( 'status' => 400, 'term_id' => $existing_term->term_id, ) ); } else { $term->add_data( array( 'status' => 400 ) ); } return $term; } $term = $this->get_term( $term ); /** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-terms-controller.php */ do_action( "rest_insert_{$this->taxonomy}", $term, $request, true ); $schema = $this->get_item_schema(); if ( ! empty( $schema['properties']['meta'] ) && isset( $request['meta'] ) ) { $meta_update = $this->meta->update_value( $request['meta'], $term->term_id ); if ( is_wp_error( $meta_update ) ) { return $meta_update; } } $locations_update = $this->handle_locations( $term->term_id, $request ); if ( is_wp_error( $locations_update ) ) { return $locations_update; } $this->handle_auto_add( $term->term_id, $request ); $fields_update = $this->update_additional_fields_for_object( $term, $request ); if ( is_wp_error( $fields_update ) ) { return $fields_update; } $request->set_param( 'context', 'view' ); /** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-terms-controller.php */ do_action( "rest_after_insert_{$this->taxonomy}", $term, $request, true ); $response = $this->prepare_item_for_response( $term, $request ); $response = rest_ensure_response( $response ); $response->set_status( 201 ); $response->header( 'Location', rest_url( $this->namespace . '/' . $this->rest_base . '/' . $term->term_id ) ); return $response; } /** * Updates a single term from a taxonomy. * * @since 5.9.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function update_item( $request ) { $term = $this->get_term( $request['id'] ); if ( is_wp_error( $term ) ) { return $term; } if ( isset( $request['parent'] ) ) { if ( ! is_taxonomy_hierarchical( $this->taxonomy ) ) { return new WP_Error( 'rest_taxonomy_not_hierarchical', __( 'Cannot set parent term, taxonomy is not hierarchical.' ), array( 'status' => 400 ) ); } $parent = get_term( (int) $request['parent'], $this->taxonomy ); if ( ! $parent ) { return new WP_Error( 'rest_term_invalid', __( 'Parent term does not exist.' ), array( 'status' => 400 ) ); } } $prepared_term = $this->prepare_item_for_database( $request ); // Only update the term if we have something to update. if ( ! empty( $prepared_term ) ) { if ( ! isset( $prepared_term->{'menu-name'} ) ) { // wp_update_nav_menu_object() requires that the menu-name is always passed. $prepared_term->{'menu-name'} = $term->name; } $update = wp_update_nav_menu_object( $term->term_id, wp_slash( (array) $prepared_term ) ); if ( is_wp_error( $update ) ) { return $update; } } $term = get_term( $term->term_id, $this->taxonomy ); /** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-terms-controller.php */ do_action( "rest_insert_{$this->taxonomy}", $term, $request, false ); $schema = $this->get_item_schema(); if ( ! empty( $schema['properties']['meta'] ) && isset( $request['meta'] ) ) { $meta_update = $this->meta->update_value( $request['meta'], $term->term_id ); if ( is_wp_error( $meta_update ) ) { return $meta_update; } } $locations_update = $this->handle_locations( $term->term_id, $request ); if ( is_wp_error( $locations_update ) ) { return $locations_update; } $this->handle_auto_add( $term->term_id, $request ); $fields_update = $this->update_additional_fields_for_object( $term, $request ); if ( is_wp_error( $fields_update ) ) { return $fields_update; } $request->set_param( 'context', 'view' ); /** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-terms-controller.php */ do_action( "rest_after_insert_{$this->taxonomy}", $term, $request, false ); $response = $this->prepare_item_for_response( $term, $request ); return rest_ensure_response( $response ); } /** * Deletes a single term from a taxonomy. * * @since 5.9.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function delete_item( $request ) { $term = $this->get_term( $request['id'] ); if ( is_wp_error( $term ) ) { return $term; } // We don't support trashing for terms. if ( ! $request['force'] ) { /* translators: %s: force=true */ return new WP_Error( 'rest_trash_not_supported', sprintf( __( "Menus do not support trashing. Set '%s' to delete." ), 'force=true' ), array( 'status' => 501 ) ); } $request->set_param( 'context', 'view' ); $previous = $this->prepare_item_for_response( $term, $request ); $result = wp_delete_nav_menu( $term ); if ( ! $result || is_wp_error( $result ) ) { return new WP_Error( 'rest_cannot_delete', __( 'The menu cannot be deleted.' ), array( 'status' => 500 ) ); } $response = new WP_REST_Response(); $response->set_data( array( 'deleted' => true, 'previous' => $previous->get_data(), ) ); /** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-terms-controller.php */ do_action( "rest_delete_{$this->taxonomy}", $term, $response, $request ); return $response; } /** * Returns the value of a menu's auto_add setting. * * @since 5.9.0 * * @param int $menu_id The menu id to query. * @return bool The value of auto_add. */ protected function get_menu_auto_add( $menu_id ) { $nav_menu_option = (array) get_option( 'nav_menu_options', array( 'auto_add' => array() ) ); return in_array( $menu_id, $nav_menu_option['auto_add'], true ); } /** * Updates the menu's auto add from a REST request. * * @since 5.9.0 * * @param int $menu_id The menu id to update. * @param WP_REST_Request $request Full details about the request. * @return bool True if the auto add setting was successfully updated. */ protected function handle_auto_add( $menu_id, $request ) { if ( ! isset( $request['auto_add'] ) ) { return true; } $nav_menu_option = (array) get_option( 'nav_menu_options', array( 'auto_add' => array() ) ); if ( ! isset( $nav_menu_option['auto_add'] ) ) { $nav_menu_option['auto_add'] = array(); } $auto_add = $request['auto_add']; $i = array_search( $menu_id, $nav_menu_option['auto_add'], true ); if ( $auto_add && false === $i ) { $nav_menu_option['auto_add'][] = $menu_id; } elseif ( ! $auto_add && false !== $i ) { array_splice( $nav_menu_option['auto_add'], $i, 1 ); } $update = update_option( 'nav_menu_options', $nav_menu_option ); /** This action is documented in wp-includes/nav-menu.php */ do_action( 'wp_update_nav_menu', $menu_id ); return $update; } /** * Returns the names of the locations assigned to the menu. * * @since 5.9.0 * * @param int $menu_id The menu id. * @return string[] The locations assigned to the menu. */ protected function get_menu_locations( $menu_id ) { $locations = get_nav_menu_locations(); $menu_locations = array(); foreach ( $locations as $location => $assigned_menu_id ) { if ( $menu_id === $assigned_menu_id ) { $menu_locations[] = $location; } } return $menu_locations; } /** * Updates the menu's locations from a REST request. * * @since 5.9.0 * * @param int $menu_id The menu id to update. * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True on success, a WP_Error on an error updating any of the locations. */ protected function handle_locations( $menu_id, $request ) { if ( ! isset( $request['locations'] ) ) { return true; } $menu_locations = get_registered_nav_menus(); $menu_locations = array_keys( $menu_locations ); $new_locations = array(); foreach ( $request['locations'] as $location ) { if ( ! in_array( $location, $menu_locations, true ) ) { return new WP_Error( 'rest_invalid_menu_location', __( 'Invalid menu location.' ), array( 'status' => 400, 'location' => $location, ) ); } $new_locations[ $location ] = $menu_id; } $assigned_menu = get_nav_menu_locations(); foreach ( $assigned_menu as $location => $term_id ) { if ( $term_id === $menu_id ) { unset( $assigned_menu[ $location ] ); } } $new_assignments = array_merge( $assigned_menu, $new_locations ); set_theme_mod( 'nav_menu_locations', $new_assignments ); return true; } /** * Retrieves the term's schema, conforming to JSON Schema. * * @since 5.9.0 * * @return array Item schema data. */ public function get_item_schema() { $schema = parent::get_item_schema(); unset( $schema['properties']['count'], $schema['properties']['link'], $schema['properties']['taxonomy'] ); $schema['properties']['locations'] = array( 'description' => __( 'The locations assigned to the menu.' ), 'type' => 'array', 'items' => array( 'type' => 'string', ), 'context' => array( 'view', 'edit' ), 'arg_options' => array( 'validate_callback' => function ( $locations, $request, $param ) { $valid = rest_validate_request_arg( $locations, $request, $param ); if ( true !== $valid ) { return $valid; } $locations = rest_sanitize_request_arg( $locations, $request, $param ); foreach ( $locations as $location ) { if ( ! array_key_exists( $location, get_registered_nav_menus() ) ) { return new WP_Error( 'rest_invalid_menu_location', __( 'Invalid menu location.' ), array( 'location' => $location, ) ); } } return true; }, ), ); $schema['properties']['auto_add'] = array( 'description' => __( 'Whether to automatically add top level pages to this menu.' ), 'context' => array( 'view', 'edit' ), 'type' => 'boolean', ); return $schema; } } PKj l\X458rest-api/endpoints/class-wp-rest-comments-controller.phpnu[namespace = 'wp/v2'; $this->rest_base = 'comments'; $this->meta = new WP_REST_Comment_Meta_Fields(); } /** * Registers the routes for comments. * * @since 4.7.0 * * @see register_rest_route() */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), array( 'methods' => WP_REST_Server::CREATABLE, 'callback' => array( $this, 'create_item' ), 'permission_callback' => array( $this, 'create_item_permissions_check' ), 'args' => $this->get_endpoint_args_for_item_schema( WP_REST_Server::CREATABLE ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P[\d]+)', array( 'args' => array( 'id' => array( 'description' => __( 'Unique identifier for the comment.' ), 'type' => 'integer', ), ), array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), 'args' => array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), 'password' => array( 'description' => __( 'The password for the parent post of the comment (if the post is password protected).' ), 'type' => 'string', ), ), ), array( 'methods' => WP_REST_Server::EDITABLE, 'callback' => array( $this, 'update_item' ), 'permission_callback' => array( $this, 'update_item_permissions_check' ), 'args' => $this->get_endpoint_args_for_item_schema( WP_REST_Server::EDITABLE ), ), array( 'methods' => WP_REST_Server::DELETABLE, 'callback' => array( $this, 'delete_item' ), 'permission_callback' => array( $this, 'delete_item_permissions_check' ), 'args' => array( 'force' => array( 'type' => 'boolean', 'default' => false, 'description' => __( 'Whether to bypass Trash and force deletion.' ), ), 'password' => array( 'description' => __( 'The password for the parent post of the comment (if the post is password protected).' ), 'type' => 'string', ), ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Checks if a given request has access to read comments. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, error object otherwise. */ public function get_items_permissions_check( $request ) { if ( ! empty( $request['post'] ) ) { foreach ( (array) $request['post'] as $post_id ) { $post = get_post( $post_id ); if ( ! empty( $post_id ) && $post && ! $this->check_read_post_permission( $post, $request ) ) { return new WP_Error( 'rest_cannot_read_post', __( 'Sorry, you are not allowed to read the post for this comment.' ), array( 'status' => rest_authorization_required_code() ) ); } elseif ( 0 === $post_id && ! current_user_can( 'moderate_comments' ) ) { return new WP_Error( 'rest_cannot_read', __( 'Sorry, you are not allowed to read comments without a post.' ), array( 'status' => rest_authorization_required_code() ) ); } } } if ( ! empty( $request['context'] ) && 'edit' === $request['context'] && ! current_user_can( 'moderate_comments' ) ) { return new WP_Error( 'rest_forbidden_context', __( 'Sorry, you are not allowed to edit comments.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( ! current_user_can( 'edit_posts' ) ) { $protected_params = array( 'author', 'author_exclude', 'author_email', 'type', 'status' ); $forbidden_params = array(); foreach ( $protected_params as $param ) { if ( 'status' === $param ) { if ( 'approve' !== $request[ $param ] ) { $forbidden_params[] = $param; } } elseif ( 'type' === $param ) { if ( 'comment' !== $request[ $param ] ) { $forbidden_params[] = $param; } } elseif ( ! empty( $request[ $param ] ) ) { $forbidden_params[] = $param; } } if ( ! empty( $forbidden_params ) ) { return new WP_Error( 'rest_forbidden_param', /* translators: %s: List of forbidden parameters. */ sprintf( __( 'Query parameter not permitted: %s' ), implode( ', ', $forbidden_params ) ), array( 'status' => rest_authorization_required_code() ) ); } } return true; } /** * Retrieves a list of comment items. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or error object on failure. */ public function get_items( $request ) { // Retrieve the list of registered collection query parameters. $registered = $this->get_collection_params(); /* * This array defines mappings between public API query parameters whose * values are accepted as-passed, and their internal WP_Query parameter * name equivalents (some are the same). Only values which are also * present in $registered will be set. */ $parameter_mappings = array( 'author' => 'author__in', 'author_email' => 'author_email', 'author_exclude' => 'author__not_in', 'exclude' => 'comment__not_in', 'include' => 'comment__in', 'offset' => 'offset', 'order' => 'order', 'parent' => 'parent__in', 'parent_exclude' => 'parent__not_in', 'per_page' => 'number', 'post' => 'post__in', 'search' => 'search', 'status' => 'status', 'type' => 'type', ); $prepared_args = array(); /* * For each known parameter which is both registered and present in the request, * set the parameter's value on the query $prepared_args. */ foreach ( $parameter_mappings as $api_param => $wp_param ) { if ( isset( $registered[ $api_param ], $request[ $api_param ] ) ) { $prepared_args[ $wp_param ] = $request[ $api_param ]; } } // Ensure certain parameter values default to empty strings. foreach ( array( 'author_email', 'search' ) as $param ) { if ( ! isset( $prepared_args[ $param ] ) ) { $prepared_args[ $param ] = ''; } } if ( isset( $registered['orderby'] ) ) { $prepared_args['orderby'] = $this->normalize_query_param( $request['orderby'] ); } $prepared_args['no_found_rows'] = false; $prepared_args['date_query'] = array(); // Set before into date query. Date query must be specified as an array of an array. if ( isset( $registered['before'], $request['before'] ) ) { $prepared_args['date_query'][0]['before'] = $request['before']; } // Set after into date query. Date query must be specified as an array of an array. if ( isset( $registered['after'], $request['after'] ) ) { $prepared_args['date_query'][0]['after'] = $request['after']; } if ( isset( $registered['page'] ) && empty( $request['offset'] ) ) { $prepared_args['offset'] = $prepared_args['number'] * ( absint( $request['page'] ) - 1 ); } /** * Filters WP_Comment_Query arguments when querying comments via the REST API. * * @since 4.7.0 * * @link https://developer.wordpress.org/reference/classes/wp_comment_query/ * * @param array $prepared_args Array of arguments for WP_Comment_Query. * @param WP_REST_Request $request The REST API request. */ $prepared_args = apply_filters( 'rest_comment_query', $prepared_args, $request ); $query = new WP_Comment_Query; $query_result = $query->query( $prepared_args ); $comments = array(); foreach ( $query_result as $comment ) { if ( ! $this->check_read_permission( $comment, $request ) ) { continue; } $data = $this->prepare_item_for_response( $comment, $request ); $comments[] = $this->prepare_response_for_collection( $data ); } $total_comments = (int) $query->found_comments; $max_pages = (int) $query->max_num_pages; if ( $total_comments < 1 ) { // Out-of-bounds, run the query again without LIMIT for total count. unset( $prepared_args['number'], $prepared_args['offset'] ); $query = new WP_Comment_Query; $prepared_args['count'] = true; $total_comments = $query->query( $prepared_args ); $max_pages = ceil( $total_comments / $request['per_page'] ); } $response = rest_ensure_response( $comments ); $response->header( 'X-WP-Total', $total_comments ); $response->header( 'X-WP-TotalPages', $max_pages ); $base = add_query_arg( urlencode_deep( $request->get_query_params() ), rest_url( sprintf( '%s/%s', $this->namespace, $this->rest_base ) ) ); if ( $request['page'] > 1 ) { $prev_page = $request['page'] - 1; if ( $prev_page > $max_pages ) { $prev_page = $max_pages; } $prev_link = add_query_arg( 'page', $prev_page, $base ); $response->link_header( 'prev', $prev_link ); } if ( $max_pages > $request['page'] ) { $next_page = $request['page'] + 1; $next_link = add_query_arg( 'page', $next_page, $base ); $response->link_header( 'next', $next_link ); } return $response; } /** * Get the comment, if the ID is valid. * * @since 4.7.2 * * @param int $id Supplied ID. * @return WP_Comment|WP_Error Comment object if ID is valid, WP_Error otherwise. */ protected function get_comment( $id ) { $error = new WP_Error( 'rest_comment_invalid_id', __( 'Invalid comment ID.' ), array( 'status' => 404 ) ); if ( (int) $id <= 0 ) { return $error; } $id = (int) $id; $comment = get_comment( $id ); if ( empty( $comment ) ) { return $error; } if ( ! empty( $comment->comment_post_ID ) ) { $post = get_post( (int) $comment->comment_post_ID ); if ( empty( $post ) ) { return new WP_Error( 'rest_post_invalid_id', __( 'Invalid post ID.' ), array( 'status' => 404 ) ); } } return $comment; } /** * Checks if a given request has access to read the comment. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access for the item, error object otherwise. */ public function get_item_permissions_check( $request ) { $comment = $this->get_comment( $request['id'] ); if ( is_wp_error( $comment ) ) { return $comment; } if ( ! empty( $request['context'] ) && 'edit' === $request['context'] && ! current_user_can( 'moderate_comments' ) ) { return new WP_Error( 'rest_forbidden_context', __( 'Sorry, you are not allowed to edit comments.' ), array( 'status' => rest_authorization_required_code() ) ); } $post = get_post( $comment->comment_post_ID ); if ( ! $this->check_read_permission( $comment, $request ) ) { return new WP_Error( 'rest_cannot_read', __( 'Sorry, you are not allowed to read this comment.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( $post && ! $this->check_read_post_permission( $post, $request ) ) { return new WP_Error( 'rest_cannot_read_post', __( 'Sorry, you are not allowed to read the post for this comment.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Retrieves a comment. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or error object on failure. */ public function get_item( $request ) { $comment = $this->get_comment( $request['id'] ); if ( is_wp_error( $comment ) ) { return $comment; } $data = $this->prepare_item_for_response( $comment, $request ); $response = rest_ensure_response( $data ); return $response; } /** * Checks if a given request has access to create a comment. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to create items, error object otherwise. */ public function create_item_permissions_check( $request ) { if ( ! is_user_logged_in() ) { if ( get_option( 'comment_registration' ) ) { return new WP_Error( 'rest_comment_login_required', __( 'Sorry, you must be logged in to comment.' ), array( 'status' => 401 ) ); } /** * Filters whether comments can be created via the REST API without authentication. * * Enables creating comments for anonymous users. * * @since 4.7.0 * * @param bool $allow_anonymous Whether to allow anonymous comments to * be created. Default `false`. * @param WP_REST_Request $request Request used to generate the * response. */ $allow_anonymous = apply_filters( 'rest_allow_anonymous_comments', false, $request ); if ( ! $allow_anonymous ) { return new WP_Error( 'rest_comment_login_required', __( 'Sorry, you must be logged in to comment.' ), array( 'status' => 401 ) ); } } // Limit who can set comment `author`, `author_ip` or `status` to anything other than the default. if ( isset( $request['author'] ) && get_current_user_id() !== $request['author'] && ! current_user_can( 'moderate_comments' ) ) { return new WP_Error( 'rest_comment_invalid_author', /* translators: %s: Request parameter. */ sprintf( __( "Sorry, you are not allowed to edit '%s' for comments." ), 'author' ), array( 'status' => rest_authorization_required_code() ) ); } if ( isset( $request['author_ip'] ) && ! current_user_can( 'moderate_comments' ) ) { if ( empty( $_SERVER['REMOTE_ADDR'] ) || $request['author_ip'] !== $_SERVER['REMOTE_ADDR'] ) { return new WP_Error( 'rest_comment_invalid_author_ip', /* translators: %s: Request parameter. */ sprintf( __( "Sorry, you are not allowed to edit '%s' for comments." ), 'author_ip' ), array( 'status' => rest_authorization_required_code() ) ); } } if ( isset( $request['status'] ) && ! current_user_can( 'moderate_comments' ) ) { return new WP_Error( 'rest_comment_invalid_status', /* translators: %s: Request parameter. */ sprintf( __( "Sorry, you are not allowed to edit '%s' for comments." ), 'status' ), array( 'status' => rest_authorization_required_code() ) ); } if ( empty( $request['post'] ) ) { return new WP_Error( 'rest_comment_invalid_post_id', __( 'Sorry, you are not allowed to create this comment without a post.' ), array( 'status' => 403 ) ); } $post = get_post( (int) $request['post'] ); if ( ! $post ) { return new WP_Error( 'rest_comment_invalid_post_id', __( 'Sorry, you are not allowed to create this comment without a post.' ), array( 'status' => 403 ) ); } if ( 'draft' === $post->post_status ) { return new WP_Error( 'rest_comment_draft_post', __( 'Sorry, you are not allowed to create a comment on this post.' ), array( 'status' => 403 ) ); } if ( 'trash' === $post->post_status ) { return new WP_Error( 'rest_comment_trash_post', __( 'Sorry, you are not allowed to create a comment on this post.' ), array( 'status' => 403 ) ); } if ( ! $this->check_read_post_permission( $post, $request ) ) { return new WP_Error( 'rest_cannot_read_post', __( 'Sorry, you are not allowed to read the post for this comment.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( ! comments_open( $post->ID ) ) { return new WP_Error( 'rest_comment_closed', __( 'Sorry, comments are closed for this item.' ), array( 'status' => 403 ) ); } return true; } /** * Creates a comment. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or error object on failure. */ public function create_item( $request ) { if ( ! empty( $request['id'] ) ) { return new WP_Error( 'rest_comment_exists', __( 'Cannot create existing comment.' ), array( 'status' => 400 ) ); } // Do not allow comments to be created with a non-default type. if ( ! empty( $request['type'] ) && 'comment' !== $request['type'] ) { return new WP_Error( 'rest_invalid_comment_type', __( 'Cannot create a comment with that type.' ), array( 'status' => 400 ) ); } $prepared_comment = $this->prepare_item_for_database( $request ); if ( is_wp_error( $prepared_comment ) ) { return $prepared_comment; } $prepared_comment['comment_type'] = 'comment'; if ( ! isset( $prepared_comment['comment_content'] ) ) { $prepared_comment['comment_content'] = ''; } if ( ! $this->check_is_comment_content_allowed( $prepared_comment ) ) { return new WP_Error( 'rest_comment_content_invalid', __( 'Invalid comment content.' ), array( 'status' => 400 ) ); } // Setting remaining values before wp_insert_comment so we can use wp_allow_comment(). if ( ! isset( $prepared_comment['comment_date_gmt'] ) ) { $prepared_comment['comment_date_gmt'] = current_time( 'mysql', true ); } // Set author data if the user's logged in. $missing_author = empty( $prepared_comment['user_id'] ) && empty( $prepared_comment['comment_author'] ) && empty( $prepared_comment['comment_author_email'] ) && empty( $prepared_comment['comment_author_url'] ); if ( is_user_logged_in() && $missing_author ) { $user = wp_get_current_user(); $prepared_comment['user_id'] = $user->ID; $prepared_comment['comment_author'] = $user->display_name; $prepared_comment['comment_author_email'] = $user->user_email; $prepared_comment['comment_author_url'] = $user->user_url; } // Honor the discussion setting that requires a name and email address of the comment author. if ( get_option( 'require_name_email' ) ) { if ( empty( $prepared_comment['comment_author'] ) || empty( $prepared_comment['comment_author_email'] ) ) { return new WP_Error( 'rest_comment_author_data_required', __( 'Creating a comment requires valid author name and email values.' ), array( 'status' => 400 ) ); } } if ( ! isset( $prepared_comment['comment_author_email'] ) ) { $prepared_comment['comment_author_email'] = ''; } if ( ! isset( $prepared_comment['comment_author_url'] ) ) { $prepared_comment['comment_author_url'] = ''; } if ( ! isset( $prepared_comment['comment_agent'] ) ) { $prepared_comment['comment_agent'] = ''; } $check_comment_lengths = wp_check_comment_data_max_lengths( $prepared_comment ); if ( is_wp_error( $check_comment_lengths ) ) { $error_code = $check_comment_lengths->get_error_code(); return new WP_Error( $error_code, __( 'Comment field exceeds maximum length allowed.' ), array( 'status' => 400 ) ); } $prepared_comment['comment_approved'] = wp_allow_comment( $prepared_comment, true ); if ( is_wp_error( $prepared_comment['comment_approved'] ) ) { $error_code = $prepared_comment['comment_approved']->get_error_code(); $error_message = $prepared_comment['comment_approved']->get_error_message(); if ( 'comment_duplicate' === $error_code ) { return new WP_Error( $error_code, $error_message, array( 'status' => 409 ) ); } if ( 'comment_flood' === $error_code ) { return new WP_Error( $error_code, $error_message, array( 'status' => 400 ) ); } return $prepared_comment['comment_approved']; } /** * Filters a comment before it is inserted via the REST API. * * Allows modification of the comment right before it is inserted via wp_insert_comment(). * Returning a WP_Error value from the filter will short-circuit insertion and allow * skipping further processing. * * @since 4.7.0 * @since 4.8.0 `$prepared_comment` can now be a WP_Error to short-circuit insertion. * * @param array|WP_Error $prepared_comment The prepared comment data for wp_insert_comment(). * @param WP_REST_Request $request Request used to insert the comment. */ $prepared_comment = apply_filters( 'rest_pre_insert_comment', $prepared_comment, $request ); if ( is_wp_error( $prepared_comment ) ) { return $prepared_comment; } $comment_id = wp_insert_comment( wp_filter_comment( wp_slash( (array) $prepared_comment ) ) ); if ( ! $comment_id ) { return new WP_Error( 'rest_comment_failed_create', __( 'Creating comment failed.' ), array( 'status' => 500 ) ); } if ( isset( $request['status'] ) ) { $this->handle_status_param( $request['status'], $comment_id ); } $comment = get_comment( $comment_id ); /** * Fires after a comment is created or updated via the REST API. * * @since 4.7.0 * * @param WP_Comment $comment Inserted or updated comment object. * @param WP_REST_Request $request Request object. * @param bool $creating True when creating a comment, false * when updating. */ do_action( 'rest_insert_comment', $comment, $request, true ); $schema = $this->get_item_schema(); if ( ! empty( $schema['properties']['meta'] ) && isset( $request['meta'] ) ) { $meta_update = $this->meta->update_value( $request['meta'], $comment_id ); if ( is_wp_error( $meta_update ) ) { return $meta_update; } } $fields_update = $this->update_additional_fields_for_object( $comment, $request ); if ( is_wp_error( $fields_update ) ) { return $fields_update; } $context = current_user_can( 'moderate_comments' ) ? 'edit' : 'view'; $request->set_param( 'context', $context ); /** * Fires completely after a comment is created or updated via the REST API. * * @since 5.0.0 * * @param WP_Comment $comment Inserted or updated comment object. * @param WP_REST_Request $request Request object. * @param bool $creating True when creating a comment, false * when updating. */ do_action( 'rest_after_insert_comment', $comment, $request, true ); $response = $this->prepare_item_for_response( $comment, $request ); $response = rest_ensure_response( $response ); $response->set_status( 201 ); $response->header( 'Location', rest_url( sprintf( '%s/%s/%d', $this->namespace, $this->rest_base, $comment_id ) ) ); return $response; } /** * Checks if a given REST request has access to update a comment. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to update the item, error object otherwise. */ public function update_item_permissions_check( $request ) { $comment = $this->get_comment( $request['id'] ); if ( is_wp_error( $comment ) ) { return $comment; } if ( ! $this->check_edit_permission( $comment ) ) { return new WP_Error( 'rest_cannot_edit', __( 'Sorry, you are not allowed to edit this comment.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Updates a comment. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or error object on failure. */ public function update_item( $request ) { $comment = $this->get_comment( $request['id'] ); if ( is_wp_error( $comment ) ) { return $comment; } $id = $comment->comment_ID; if ( isset( $request['type'] ) && get_comment_type( $id ) !== $request['type'] ) { return new WP_Error( 'rest_comment_invalid_type', __( 'Sorry, you are not allowed to change the comment type.' ), array( 'status' => 404 ) ); } $prepared_args = $this->prepare_item_for_database( $request ); if ( is_wp_error( $prepared_args ) ) { return $prepared_args; } if ( ! empty( $prepared_args['comment_post_ID'] ) ) { $post = get_post( $prepared_args['comment_post_ID'] ); if ( empty( $post ) ) { return new WP_Error( 'rest_comment_invalid_post_id', __( 'Invalid post ID.' ), array( 'status' => 403 ) ); } } if ( empty( $prepared_args ) && isset( $request['status'] ) ) { // Only the comment status is being changed. $change = $this->handle_status_param( $request['status'], $id ); if ( ! $change ) { return new WP_Error( 'rest_comment_failed_edit', __( 'Updating comment status failed.' ), array( 'status' => 500 ) ); } } elseif ( ! empty( $prepared_args ) ) { if ( is_wp_error( $prepared_args ) ) { return $prepared_args; } if ( isset( $prepared_args['comment_content'] ) && empty( $prepared_args['comment_content'] ) ) { return new WP_Error( 'rest_comment_content_invalid', __( 'Invalid comment content.' ), array( 'status' => 400 ) ); } $prepared_args['comment_ID'] = $id; $check_comment_lengths = wp_check_comment_data_max_lengths( $prepared_args ); if ( is_wp_error( $check_comment_lengths ) ) { $error_code = $check_comment_lengths->get_error_code(); return new WP_Error( $error_code, __( 'Comment field exceeds maximum length allowed.' ), array( 'status' => 400 ) ); } $updated = wp_update_comment( wp_slash( (array) $prepared_args ), true ); if ( is_wp_error( $updated ) ) { return new WP_Error( 'rest_comment_failed_edit', __( 'Updating comment failed.' ), array( 'status' => 500 ) ); } if ( isset( $request['status'] ) ) { $this->handle_status_param( $request['status'], $id ); } } $comment = get_comment( $id ); /** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-comments-controller.php */ do_action( 'rest_insert_comment', $comment, $request, false ); $schema = $this->get_item_schema(); if ( ! empty( $schema['properties']['meta'] ) && isset( $request['meta'] ) ) { $meta_update = $this->meta->update_value( $request['meta'], $id ); if ( is_wp_error( $meta_update ) ) { return $meta_update; } } $fields_update = $this->update_additional_fields_for_object( $comment, $request ); if ( is_wp_error( $fields_update ) ) { return $fields_update; } $request->set_param( 'context', 'edit' ); /** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-comments-controller.php */ do_action( 'rest_after_insert_comment', $comment, $request, false ); $response = $this->prepare_item_for_response( $comment, $request ); return rest_ensure_response( $response ); } /** * Checks if a given request has access to delete a comment. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to delete the item, error object otherwise. */ public function delete_item_permissions_check( $request ) { $comment = $this->get_comment( $request['id'] ); if ( is_wp_error( $comment ) ) { return $comment; } if ( ! $this->check_edit_permission( $comment ) ) { return new WP_Error( 'rest_cannot_delete', __( 'Sorry, you are not allowed to delete this comment.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Deletes a comment. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or error object on failure. */ public function delete_item( $request ) { $comment = $this->get_comment( $request['id'] ); if ( is_wp_error( $comment ) ) { return $comment; } $force = isset( $request['force'] ) ? (bool) $request['force'] : false; /** * Filters whether a comment can be trashed via the REST API. * * Return false to disable trash support for the comment. * * @since 4.7.0 * * @param bool $supports_trash Whether the comment supports trashing. * @param WP_Comment $comment The comment object being considered for trashing support. */ $supports_trash = apply_filters( 'rest_comment_trashable', ( EMPTY_TRASH_DAYS > 0 ), $comment ); $request->set_param( 'context', 'edit' ); if ( $force ) { $previous = $this->prepare_item_for_response( $comment, $request ); $result = wp_delete_comment( $comment->comment_ID, true ); $response = new WP_REST_Response(); $response->set_data( array( 'deleted' => true, 'previous' => $previous->get_data(), ) ); } else { // If this type doesn't support trashing, error out. if ( ! $supports_trash ) { return new WP_Error( 'rest_trash_not_supported', /* translators: %s: force=true */ sprintf( __( "The comment does not support trashing. Set '%s' to delete." ), 'force=true' ), array( 'status' => 501 ) ); } if ( 'trash' === $comment->comment_approved ) { return new WP_Error( 'rest_already_trashed', __( 'The comment has already been trashed.' ), array( 'status' => 410 ) ); } $result = wp_trash_comment( $comment->comment_ID ); $comment = get_comment( $comment->comment_ID ); $response = $this->prepare_item_for_response( $comment, $request ); } if ( ! $result ) { return new WP_Error( 'rest_cannot_delete', __( 'The comment cannot be deleted.' ), array( 'status' => 500 ) ); } /** * Fires after a comment is deleted via the REST API. * * @since 4.7.0 * * @param WP_Comment $comment The deleted comment data. * @param WP_REST_Response $response The response returned from the API. * @param WP_REST_Request $request The request sent to the API. */ do_action( 'rest_delete_comment', $comment, $response, $request ); return $response; } /** * Prepares a single comment output for response. * * @since 4.7.0 * @since 5.9.0 Renamed `$comment` to `$item` to match parent class for PHP 8 named parameter support. * * @param WP_Comment $item Comment object. * @param WP_REST_Request $request Request object. * @return WP_REST_Response Response object. */ public function prepare_item_for_response( $item, $request ) { // Restores the more descriptive, specific name for use within this method. $comment = $item; $fields = $this->get_fields_for_response( $request ); $data = array(); if ( in_array( 'id', $fields, true ) ) { $data['id'] = (int) $comment->comment_ID; } if ( in_array( 'post', $fields, true ) ) { $data['post'] = (int) $comment->comment_post_ID; } if ( in_array( 'parent', $fields, true ) ) { $data['parent'] = (int) $comment->comment_parent; } if ( in_array( 'author', $fields, true ) ) { $data['author'] = (int) $comment->user_id; } if ( in_array( 'author_name', $fields, true ) ) { $data['author_name'] = $comment->comment_author; } if ( in_array( 'author_email', $fields, true ) ) { $data['author_email'] = $comment->comment_author_email; } if ( in_array( 'author_url', $fields, true ) ) { $data['author_url'] = $comment->comment_author_url; } if ( in_array( 'author_ip', $fields, true ) ) { $data['author_ip'] = $comment->comment_author_IP; } if ( in_array( 'author_user_agent', $fields, true ) ) { $data['author_user_agent'] = $comment->comment_agent; } if ( in_array( 'date', $fields, true ) ) { $data['date'] = mysql_to_rfc3339( $comment->comment_date ); } if ( in_array( 'date_gmt', $fields, true ) ) { $data['date_gmt'] = mysql_to_rfc3339( $comment->comment_date_gmt ); } if ( in_array( 'content', $fields, true ) ) { $data['content'] = array( /** This filter is documented in wp-includes/comment-template.php */ 'rendered' => apply_filters( 'comment_text', $comment->comment_content, $comment ), 'raw' => $comment->comment_content, ); } if ( in_array( 'link', $fields, true ) ) { $data['link'] = get_comment_link( $comment ); } if ( in_array( 'status', $fields, true ) ) { $data['status'] = $this->prepare_status_response( $comment->comment_approved ); } if ( in_array( 'type', $fields, true ) ) { $data['type'] = get_comment_type( $comment->comment_ID ); } if ( in_array( 'author_avatar_urls', $fields, true ) ) { $data['author_avatar_urls'] = rest_get_avatar_urls( $comment ); } if ( in_array( 'meta', $fields, true ) ) { $data['meta'] = $this->meta->get_value( $comment->comment_ID, $request ); } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->add_additional_fields_to_object( $data, $request ); $data = $this->filter_response_by_context( $data, $context ); // Wrap the data in a response object. $response = rest_ensure_response( $data ); $response->add_links( $this->prepare_links( $comment ) ); /** * Filters a comment returned from the REST API. * * Allows modification of the comment right before it is returned. * * @since 4.7.0 * * @param WP_REST_Response $response The response object. * @param WP_Comment $comment The original comment object. * @param WP_REST_Request $request Request used to generate the response. */ return apply_filters( 'rest_prepare_comment', $response, $comment, $request ); } /** * Prepares links for the request. * * @since 4.7.0 * * @param WP_Comment $comment Comment object. * @return array Links for the given comment. */ protected function prepare_links( $comment ) { $links = array( 'self' => array( 'href' => rest_url( sprintf( '%s/%s/%d', $this->namespace, $this->rest_base, $comment->comment_ID ) ), ), 'collection' => array( 'href' => rest_url( sprintf( '%s/%s', $this->namespace, $this->rest_base ) ), ), ); if ( 0 !== (int) $comment->user_id ) { $links['author'] = array( 'href' => rest_url( 'wp/v2/users/' . $comment->user_id ), 'embeddable' => true, ); } if ( 0 !== (int) $comment->comment_post_ID ) { $post = get_post( $comment->comment_post_ID ); $post_route = rest_get_route_for_post( $post ); if ( ! empty( $post->ID ) && $post_route ) { $links['up'] = array( 'href' => rest_url( $post_route ), 'embeddable' => true, 'post_type' => $post->post_type, ); } } if ( 0 !== (int) $comment->comment_parent ) { $links['in-reply-to'] = array( 'href' => rest_url( sprintf( '%s/%s/%d', $this->namespace, $this->rest_base, $comment->comment_parent ) ), 'embeddable' => true, ); } // Only grab one comment to verify the comment has children. $comment_children = $comment->get_children( array( 'number' => 1, 'count' => true, ) ); if ( ! empty( $comment_children ) ) { $args = array( 'parent' => $comment->comment_ID, ); $rest_url = add_query_arg( $args, rest_url( $this->namespace . '/' . $this->rest_base ) ); $links['children'] = array( 'href' => $rest_url, ); } return $links; } /** * Prepends internal property prefix to query parameters to match our response fields. * * @since 4.7.0 * * @param string $query_param Query parameter. * @return string The normalized query parameter. */ protected function normalize_query_param( $query_param ) { $prefix = 'comment_'; switch ( $query_param ) { case 'id': $normalized = $prefix . 'ID'; break; case 'post': $normalized = $prefix . 'post_ID'; break; case 'parent': $normalized = $prefix . 'parent'; break; case 'include': $normalized = 'comment__in'; break; default: $normalized = $prefix . $query_param; break; } return $normalized; } /** * Checks comment_approved to set comment status for single comment output. * * @since 4.7.0 * * @param string|int $comment_approved comment status. * @return string Comment status. */ protected function prepare_status_response( $comment_approved ) { switch ( $comment_approved ) { case 'hold': case '0': $status = 'hold'; break; case 'approve': case '1': $status = 'approved'; break; case 'spam': case 'trash': default: $status = $comment_approved; break; } return $status; } /** * Prepares a single comment to be inserted into the database. * * @since 4.7.0 * * @param WP_REST_Request $request Request object. * @return array|WP_Error Prepared comment, otherwise WP_Error object. */ protected function prepare_item_for_database( $request ) { $prepared_comment = array(); /* * Allow the comment_content to be set via the 'content' or * the 'content.raw' properties of the Request object. */ if ( isset( $request['content'] ) && is_string( $request['content'] ) ) { $prepared_comment['comment_content'] = trim( $request['content'] ); } elseif ( isset( $request['content']['raw'] ) && is_string( $request['content']['raw'] ) ) { $prepared_comment['comment_content'] = trim( $request['content']['raw'] ); } if ( isset( $request['post'] ) ) { $prepared_comment['comment_post_ID'] = (int) $request['post']; } if ( isset( $request['parent'] ) ) { $prepared_comment['comment_parent'] = $request['parent']; } if ( isset( $request['author'] ) ) { $user = new WP_User( $request['author'] ); if ( $user->exists() ) { $prepared_comment['user_id'] = $user->ID; $prepared_comment['comment_author'] = $user->display_name; $prepared_comment['comment_author_email'] = $user->user_email; $prepared_comment['comment_author_url'] = $user->user_url; } else { return new WP_Error( 'rest_comment_author_invalid', __( 'Invalid comment author ID.' ), array( 'status' => 400 ) ); } } if ( isset( $request['author_name'] ) ) { $prepared_comment['comment_author'] = $request['author_name']; } if ( isset( $request['author_email'] ) ) { $prepared_comment['comment_author_email'] = $request['author_email']; } if ( isset( $request['author_url'] ) ) { $prepared_comment['comment_author_url'] = $request['author_url']; } if ( isset( $request['author_ip'] ) && current_user_can( 'moderate_comments' ) ) { $prepared_comment['comment_author_IP'] = $request['author_ip']; } elseif ( ! empty( $_SERVER['REMOTE_ADDR'] ) && rest_is_ip_address( $_SERVER['REMOTE_ADDR'] ) ) { $prepared_comment['comment_author_IP'] = $_SERVER['REMOTE_ADDR']; } else { $prepared_comment['comment_author_IP'] = '127.0.0.1'; } if ( ! empty( $request['author_user_agent'] ) ) { $prepared_comment['comment_agent'] = $request['author_user_agent']; } elseif ( $request->get_header( 'user_agent' ) ) { $prepared_comment['comment_agent'] = $request->get_header( 'user_agent' ); } if ( ! empty( $request['date'] ) ) { $date_data = rest_get_date_with_gmt( $request['date'] ); if ( ! empty( $date_data ) ) { list( $prepared_comment['comment_date'], $prepared_comment['comment_date_gmt'] ) = $date_data; } } elseif ( ! empty( $request['date_gmt'] ) ) { $date_data = rest_get_date_with_gmt( $request['date_gmt'], true ); if ( ! empty( $date_data ) ) { list( $prepared_comment['comment_date'], $prepared_comment['comment_date_gmt'] ) = $date_data; } } /** * Filters a comment added via the REST API after it is prepared for insertion into the database. * * Allows modification of the comment right after it is prepared for the database. * * @since 4.7.0 * * @param array $prepared_comment The prepared comment data for `wp_insert_comment`. * @param WP_REST_Request $request The current request. */ return apply_filters( 'rest_preprocess_comment', $prepared_comment, $request ); } /** * Retrieves the comment's schema, conforming to JSON Schema. * * @since 4.7.0 * * @return array */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'comment', 'type' => 'object', 'properties' => array( 'id' => array( 'description' => __( 'Unique identifier for the comment.' ), 'type' => 'integer', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'author' => array( 'description' => __( 'The ID of the user object, if author was a user.' ), 'type' => 'integer', 'context' => array( 'view', 'edit', 'embed' ), ), 'author_email' => array( 'description' => __( 'Email address for the comment author.' ), 'type' => 'string', 'format' => 'email', 'context' => array( 'edit' ), 'arg_options' => array( 'sanitize_callback' => array( $this, 'check_comment_author_email' ), 'validate_callback' => null, // Skip built-in validation of 'email'. ), ), 'author_ip' => array( 'description' => __( 'IP address for the comment author.' ), 'type' => 'string', 'format' => 'ip', 'context' => array( 'edit' ), ), 'author_name' => array( 'description' => __( 'Display name for the comment author.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'arg_options' => array( 'sanitize_callback' => 'sanitize_text_field', ), ), 'author_url' => array( 'description' => __( 'URL for the comment author.' ), 'type' => 'string', 'format' => 'uri', 'context' => array( 'view', 'edit', 'embed' ), ), 'author_user_agent' => array( 'description' => __( 'User agent for the comment author.' ), 'type' => 'string', 'context' => array( 'edit' ), 'arg_options' => array( 'sanitize_callback' => 'sanitize_text_field', ), ), 'content' => array( 'description' => __( 'The content for the comment.' ), 'type' => 'object', 'context' => array( 'view', 'edit', 'embed' ), 'arg_options' => array( 'sanitize_callback' => null, // Note: sanitization implemented in self::prepare_item_for_database(). 'validate_callback' => null, // Note: validation implemented in self::prepare_item_for_database(). ), 'properties' => array( 'raw' => array( 'description' => __( 'Content for the comment, as it exists in the database.' ), 'type' => 'string', 'context' => array( 'edit' ), ), 'rendered' => array( 'description' => __( 'HTML content for the comment, transformed for display.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), ), ), 'date' => array( 'description' => __( "The date the comment was published, in the site's timezone." ), 'type' => 'string', 'format' => 'date-time', 'context' => array( 'view', 'edit', 'embed' ), ), 'date_gmt' => array( 'description' => __( 'The date the comment was published, as GMT.' ), 'type' => 'string', 'format' => 'date-time', 'context' => array( 'view', 'edit' ), ), 'link' => array( 'description' => __( 'URL to the comment.' ), 'type' => 'string', 'format' => 'uri', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'parent' => array( 'description' => __( 'The ID for the parent of the comment.' ), 'type' => 'integer', 'context' => array( 'view', 'edit', 'embed' ), 'default' => 0, ), 'post' => array( 'description' => __( 'The ID of the associated post object.' ), 'type' => 'integer', 'context' => array( 'view', 'edit' ), 'default' => 0, ), 'status' => array( 'description' => __( 'State of the comment.' ), 'type' => 'string', 'context' => array( 'view', 'edit' ), 'arg_options' => array( 'sanitize_callback' => 'sanitize_key', ), ), 'type' => array( 'description' => __( 'Type of the comment.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), ), ); if ( get_option( 'show_avatars' ) ) { $avatar_properties = array(); $avatar_sizes = rest_get_avatar_sizes(); foreach ( $avatar_sizes as $size ) { $avatar_properties[ $size ] = array( /* translators: %d: Avatar image size in pixels. */ 'description' => sprintf( __( 'Avatar URL with image size of %d pixels.' ), $size ), 'type' => 'string', 'format' => 'uri', 'context' => array( 'embed', 'view', 'edit' ), ); } $schema['properties']['author_avatar_urls'] = array( 'description' => __( 'Avatar URLs for the comment author.' ), 'type' => 'object', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, 'properties' => $avatar_properties, ); } $schema['properties']['meta'] = $this->meta->get_field_schema(); $this->schema = $schema; return $this->add_additional_fields_schema( $this->schema ); } /** * Retrieves the query params for collections. * * @since 4.7.0 * * @return array Comments collection parameters. */ public function get_collection_params() { $query_params = parent::get_collection_params(); $query_params['context']['default'] = 'view'; $query_params['after'] = array( 'description' => __( 'Limit response to comments published after a given ISO8601 compliant date.' ), 'type' => 'string', 'format' => 'date-time', ); $query_params['author'] = array( 'description' => __( 'Limit result set to comments assigned to specific user IDs. Requires authorization.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), ); $query_params['author_exclude'] = array( 'description' => __( 'Ensure result set excludes comments assigned to specific user IDs. Requires authorization.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), ); $query_params['author_email'] = array( 'default' => null, 'description' => __( 'Limit result set to that from a specific author email. Requires authorization.' ), 'format' => 'email', 'type' => 'string', ); $query_params['before'] = array( 'description' => __( 'Limit response to comments published before a given ISO8601 compliant date.' ), 'type' => 'string', 'format' => 'date-time', ); $query_params['exclude'] = array( 'description' => __( 'Ensure result set excludes specific IDs.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), 'default' => array(), ); $query_params['include'] = array( 'description' => __( 'Limit result set to specific IDs.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), 'default' => array(), ); $query_params['offset'] = array( 'description' => __( 'Offset the result set by a specific number of items.' ), 'type' => 'integer', ); $query_params['order'] = array( 'description' => __( 'Order sort attribute ascending or descending.' ), 'type' => 'string', 'default' => 'desc', 'enum' => array( 'asc', 'desc', ), ); $query_params['orderby'] = array( 'description' => __( 'Sort collection by comment attribute.' ), 'type' => 'string', 'default' => 'date_gmt', 'enum' => array( 'date', 'date_gmt', 'id', 'include', 'post', 'parent', 'type', ), ); $query_params['parent'] = array( 'default' => array(), 'description' => __( 'Limit result set to comments of specific parent IDs.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), ); $query_params['parent_exclude'] = array( 'default' => array(), 'description' => __( 'Ensure result set excludes specific parent IDs.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), ); $query_params['post'] = array( 'default' => array(), 'description' => __( 'Limit result set to comments assigned to specific post IDs.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), ); $query_params['status'] = array( 'default' => 'approve', 'description' => __( 'Limit result set to comments assigned a specific status. Requires authorization.' ), 'sanitize_callback' => 'sanitize_key', 'type' => 'string', 'validate_callback' => 'rest_validate_request_arg', ); $query_params['type'] = array( 'default' => 'comment', 'description' => __( 'Limit result set to comments assigned a specific type. Requires authorization.' ), 'sanitize_callback' => 'sanitize_key', 'type' => 'string', 'validate_callback' => 'rest_validate_request_arg', ); $query_params['password'] = array( 'description' => __( 'The password for the post if it is password protected.' ), 'type' => 'string', ); /** * Filters REST API collection parameters for the comments controller. * * This filter registers the collection parameter, but does not map the * collection parameter to an internal WP_Comment_Query parameter. Use the * `rest_comment_query` filter to set WP_Comment_Query parameters. * * @since 4.7.0 * * @param array $query_params JSON Schema-formatted collection parameters. */ return apply_filters( 'rest_comment_collection_params', $query_params ); } /** * Sets the comment_status of a given comment object when creating or updating a comment. * * @since 4.7.0 * * @param string|int $new_status New comment status. * @param int $comment_id Comment ID. * @return bool Whether the status was changed. */ protected function handle_status_param( $new_status, $comment_id ) { $old_status = wp_get_comment_status( $comment_id ); if ( $new_status === $old_status ) { return false; } switch ( $new_status ) { case 'approved': case 'approve': case '1': $changed = wp_set_comment_status( $comment_id, 'approve' ); break; case 'hold': case '0': $changed = wp_set_comment_status( $comment_id, 'hold' ); break; case 'spam': $changed = wp_spam_comment( $comment_id ); break; case 'unspam': $changed = wp_unspam_comment( $comment_id ); break; case 'trash': $changed = wp_trash_comment( $comment_id ); break; case 'untrash': $changed = wp_untrash_comment( $comment_id ); break; default: $changed = false; break; } return $changed; } /** * Checks if the post can be read. * * Correctly handles posts with the inherit status. * * @since 4.7.0 * * @param WP_Post $post Post object. * @param WP_REST_Request $request Request data to check. * @return bool Whether post can be read. */ protected function check_read_post_permission( $post, $request ) { $post_type = get_post_type_object( $post->post_type ); // Return false if custom post type doesn't exist if ( ! $post_type ) { return false; } $posts_controller = $post_type->get_rest_controller(); // Ensure the posts controller is specifically a WP_REST_Posts_Controller instance // before using methods specific to that controller. if ( ! $posts_controller instanceof WP_REST_Posts_Controller ) { $posts_controller = new WP_REST_Posts_Controller( $post->post_type ); } $has_password_filter = false; // Only check password if a specific post was queried for or a single comment $requested_post = ! empty( $request['post'] ) && ( ! is_array( $request['post'] ) || 1 === count( $request['post'] ) ); $requested_comment = ! empty( $request['id'] ); if ( ( $requested_post || $requested_comment ) && $posts_controller->can_access_password_content( $post, $request ) ) { add_filter( 'post_password_required', '__return_false' ); $has_password_filter = true; } if ( post_password_required( $post ) ) { $result = current_user_can( 'edit_post', $post->ID ); } else { $result = $posts_controller->check_read_permission( $post ); } if ( $has_password_filter ) { remove_filter( 'post_password_required', '__return_false' ); } return $result; } /** * Checks if the comment can be read. * * @since 4.7.0 * * @param WP_Comment $comment Comment object. * @param WP_REST_Request $request Request data to check. * @return bool Whether the comment can be read. */ protected function check_read_permission( $comment, $request ) { if ( ! empty( $comment->comment_post_ID ) ) { $post = get_post( $comment->comment_post_ID ); if ( $post ) { if ( $this->check_read_post_permission( $post, $request ) && 1 === (int) $comment->comment_approved ) { return true; } } } if ( 0 === get_current_user_id() ) { return false; } if ( empty( $comment->comment_post_ID ) && ! current_user_can( 'moderate_comments' ) ) { return false; } if ( ! empty( $comment->user_id ) && get_current_user_id() === (int) $comment->user_id ) { return true; } return current_user_can( 'edit_comment', $comment->comment_ID ); } /** * Checks if a comment can be edited or deleted. * * @since 4.7.0 * * @param WP_Comment $comment Comment object. * @return bool Whether the comment can be edited or deleted. */ protected function check_edit_permission( $comment ) { if ( 0 === (int) get_current_user_id() ) { return false; } if ( current_user_can( 'moderate_comments' ) ) { return true; } return current_user_can( 'edit_comment', $comment->comment_ID ); } /** * Checks a comment author email for validity. * * Accepts either a valid email address or empty string as a valid comment * author email address. Setting the comment author email to an empty * string is allowed when a comment is being updated. * * @since 4.7.0 * * @param string $value Author email value submitted. * @param WP_REST_Request $request Full details about the request. * @param string $param The parameter name. * @return string|WP_Error The sanitized email address, if valid, * otherwise an error. */ public function check_comment_author_email( $value, $request, $param ) { $email = (string) $value; if ( empty( $email ) ) { return $email; } $check_email = rest_validate_request_arg( $email, $request, $param ); if ( is_wp_error( $check_email ) ) { return $check_email; } return $email; } /** * If empty comments are not allowed, checks if the provided comment content is not empty. * * @since 5.6.0 * * @param array $prepared_comment The prepared comment data. * @return bool True if the content is allowed, false otherwise. */ protected function check_is_comment_content_allowed( $prepared_comment ) { $check = wp_parse_args( $prepared_comment, array( 'comment_post_ID' => 0, 'comment_parent' => 0, 'user_ID' => 0, 'comment_author' => null, 'comment_author_email' => null, 'comment_author_url' => null, ) ); /** This filter is documented in wp-includes/comment.php */ $allow_empty = apply_filters( 'allow_empty_comment', false, $check ); if ( $allow_empty ) { return true; } /* * Do not allow a comment to be created with missing or empty * comment_content. See wp_handle_comment_submission(). */ return '' !== $check['comment_content']; } } PKj l\ 3<9&9&?rest-api/endpoints/class-wp-rest-block-directory-controller.phpnu[namespace = 'wp/v2'; $this->rest_base = 'block-directory'; } /** * Registers the necessary REST API routes. */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base . '/search', array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Checks whether a given request has permission to install and activate plugins. * * @since 5.5.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has permission, WP_Error object otherwise. */ public function get_items_permissions_check( $request ) { if ( ! current_user_can( 'install_plugins' ) || ! current_user_can( 'activate_plugins' ) ) { return new WP_Error( 'rest_block_directory_cannot_view', __( 'Sorry, you are not allowed to browse the block directory.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Search and retrieve blocks metadata * * @since 5.5.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_items( $request ) { require_once ABSPATH . 'wp-admin/includes/plugin-install.php'; require_once ABSPATH . 'wp-admin/includes/plugin.php'; $response = plugins_api( 'query_plugins', array( 'block' => $request['term'], 'per_page' => $request['per_page'], 'page' => $request['page'], ) ); if ( is_wp_error( $response ) ) { $response->add_data( array( 'status' => 500 ) ); return $response; } $result = array(); foreach ( $response->plugins as $plugin ) { // If the API returned a plugin with empty data for 'blocks', skip it. if ( empty( $plugin['blocks'] ) ) { continue; } $data = $this->prepare_item_for_response( $plugin, $request ); $result[] = $this->prepare_response_for_collection( $data ); } return rest_ensure_response( $result ); } /** * Parse block metadata for a block, and prepare it for an API repsonse. * * @since 5.5.0 * @since 5.9.0 Renamed `$plugin` to `$item` to match parent class for PHP 8 named parameter support. * * @param array $item The plugin metadata. * @param WP_REST_Request $request Request object. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function prepare_item_for_response( $item, $request ) { // Restores the more descriptive, specific name for use within this method. $plugin = $item; // There might be multiple blocks in a plugin. Only the first block is mapped. $block_data = reset( $plugin['blocks'] ); // A data array containing the properties we'll return. $block = array( 'name' => $block_data['name'], 'title' => ( $block_data['title'] ? $block_data['title'] : $plugin['name'] ), 'description' => wp_trim_words( $plugin['short_description'], 30, '...' ), 'id' => $plugin['slug'], 'rating' => $plugin['rating'] / 20, 'rating_count' => (int) $plugin['num_ratings'], 'active_installs' => (int) $plugin['active_installs'], 'author_block_rating' => $plugin['author_block_rating'] / 20, 'author_block_count' => (int) $plugin['author_block_count'], 'author' => wp_strip_all_tags( $plugin['author'] ), 'icon' => ( isset( $plugin['icons']['1x'] ) ? $plugin['icons']['1x'] : 'block-default' ), 'last_updated' => gmdate( 'Y-m-d\TH:i:s', strtotime( $plugin['last_updated'] ) ), 'humanized_updated' => sprintf( /* translators: %s: Human-readable time difference. */ __( '%s ago' ), human_time_diff( strtotime( $plugin['last_updated'] ) ) ), ); $this->add_additional_fields_to_object( $block, $request ); $response = new WP_REST_Response( $block ); $response->add_links( $this->prepare_links( $plugin ) ); return $response; } /** * Generates a list of links to include in the response for the plugin. * * @since 5.5.0 * * @param array $plugin The plugin data from WordPress.org. * @return array */ protected function prepare_links( $plugin ) { $links = array( 'https://api.w.org/install-plugin' => array( 'href' => add_query_arg( 'slug', urlencode( $plugin['slug'] ), rest_url( 'wp/v2/plugins' ) ), ), ); $plugin_file = $this->find_plugin_for_slug( $plugin['slug'] ); if ( $plugin_file ) { $links['https://api.w.org/plugin'] = array( 'href' => rest_url( 'wp/v2/plugins/' . substr( $plugin_file, 0, - 4 ) ), 'embeddable' => true, ); } return $links; } /** * Finds an installed plugin for the given slug. * * @since 5.5.0 * * @param string $slug The WordPress.org directory slug for a plugin. * @return string The plugin file found matching it. */ protected function find_plugin_for_slug( $slug ) { require_once ABSPATH . 'wp-admin/includes/plugin.php'; $plugin_files = get_plugins( '/' . $slug ); if ( ! $plugin_files ) { return ''; } $plugin_files = array_keys( $plugin_files ); return $slug . '/' . reset( $plugin_files ); } /** * Retrieves the theme's schema, conforming to JSON Schema. * * @since 5.5.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $this->schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'block-directory-item', 'type' => 'object', 'properties' => array( 'name' => array( 'description' => __( 'The block name, in namespace/block-name format.' ), 'type' => 'string', 'context' => array( 'view' ), ), 'title' => array( 'description' => __( 'The block title, in human readable format.' ), 'type' => 'string', 'context' => array( 'view' ), ), 'description' => array( 'description' => __( 'A short description of the block, in human readable format.' ), 'type' => 'string', 'context' => array( 'view' ), ), 'id' => array( 'description' => __( 'The block slug.' ), 'type' => 'string', 'context' => array( 'view' ), ), 'rating' => array( 'description' => __( 'The star rating of the block.' ), 'type' => 'integer', 'context' => array( 'view' ), ), 'rating_count' => array( 'description' => __( 'The number of ratings.' ), 'type' => 'integer', 'context' => array( 'view' ), ), 'active_installs' => array( 'description' => __( 'The number sites that have activated this block.' ), 'type' => 'string', 'context' => array( 'view' ), ), 'author_block_rating' => array( 'description' => __( 'The average rating of blocks published by the same author.' ), 'type' => 'integer', 'context' => array( 'view' ), ), 'author_block_count' => array( 'description' => __( 'The number of blocks published by the same author.' ), 'type' => 'integer', 'context' => array( 'view' ), ), 'author' => array( 'description' => __( 'The WordPress.org username of the block author.' ), 'type' => 'string', 'context' => array( 'view' ), ), 'icon' => array( 'description' => __( 'The block icon.' ), 'type' => 'string', 'format' => 'uri', 'context' => array( 'view' ), ), 'last_updated' => array( 'description' => __( 'The date when the block was last updated.' ), 'type' => 'string', 'format' => 'date-time', 'context' => array( 'view' ), ), 'humanized_updated' => array( 'description' => __( 'The date when the block was last updated, in fuzzy human readable format.' ), 'type' => 'string', 'context' => array( 'view' ), ), ), ); return $this->add_additional_fields_schema( $this->schema ); } /** * Retrieves the search params for the blocks collection. * * @since 5.5.0 * * @return array Collection parameters. */ public function get_collection_params() { $query_params = parent::get_collection_params(); $query_params['context']['default'] = 'view'; $query_params['term'] = array( 'description' => __( 'Limit result set to blocks matching the search term.' ), 'type' => 'string', 'required' => true, 'minLength' => 1, ); unset( $query_params['search'] ); /** * Filters REST API collection parameters for the block directory controller. * * @since 5.5.0 * * @param array $query_params JSON Schema-formatted collection parameters. */ return apply_filters( 'rest_block_directory_collection_params', $query_params ); } } PKj l\ؠaHaH/rest-api/endpoints/class-wp-rest-controller.phpnu[ 405 ) ); } /** * Retrieves a collection of items. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_items( $request ) { return new WP_Error( 'invalid-method', /* translators: %s: Method name. */ sprintf( __( "Method '%s' not implemented. Must be overridden in subclass." ), __METHOD__ ), array( 'status' => 405 ) ); } /** * Checks if a given request has access to get a specific item. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access for the item, WP_Error object otherwise. */ public function get_item_permissions_check( $request ) { return new WP_Error( 'invalid-method', /* translators: %s: Method name. */ sprintf( __( "Method '%s' not implemented. Must be overridden in subclass." ), __METHOD__ ), array( 'status' => 405 ) ); } /** * Retrieves one item from the collection. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_item( $request ) { return new WP_Error( 'invalid-method', /* translators: %s: Method name. */ sprintf( __( "Method '%s' not implemented. Must be overridden in subclass." ), __METHOD__ ), array( 'status' => 405 ) ); } /** * Checks if a given request has access to create items. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to create items, WP_Error object otherwise. */ public function create_item_permissions_check( $request ) { return new WP_Error( 'invalid-method', /* translators: %s: Method name. */ sprintf( __( "Method '%s' not implemented. Must be overridden in subclass." ), __METHOD__ ), array( 'status' => 405 ) ); } /** * Creates one item from the collection. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function create_item( $request ) { return new WP_Error( 'invalid-method', /* translators: %s: Method name. */ sprintf( __( "Method '%s' not implemented. Must be overridden in subclass." ), __METHOD__ ), array( 'status' => 405 ) ); } /** * Checks if a given request has access to update a specific item. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to update the item, WP_Error object otherwise. */ public function update_item_permissions_check( $request ) { return new WP_Error( 'invalid-method', /* translators: %s: Method name. */ sprintf( __( "Method '%s' not implemented. Must be overridden in subclass." ), __METHOD__ ), array( 'status' => 405 ) ); } /** * Updates one item from the collection. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function update_item( $request ) { return new WP_Error( 'invalid-method', /* translators: %s: Method name. */ sprintf( __( "Method '%s' not implemented. Must be overridden in subclass." ), __METHOD__ ), array( 'status' => 405 ) ); } /** * Checks if a given request has access to delete a specific item. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to delete the item, WP_Error object otherwise. */ public function delete_item_permissions_check( $request ) { return new WP_Error( 'invalid-method', /* translators: %s: Method name. */ sprintf( __( "Method '%s' not implemented. Must be overridden in subclass." ), __METHOD__ ), array( 'status' => 405 ) ); } /** * Deletes one item from the collection. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function delete_item( $request ) { return new WP_Error( 'invalid-method', /* translators: %s: Method name. */ sprintf( __( "Method '%s' not implemented. Must be overridden in subclass." ), __METHOD__ ), array( 'status' => 405 ) ); } /** * Prepares one item for create or update operation. * * @since 4.7.0 * * @param WP_REST_Request $request Request object. * @return object|WP_Error The prepared item, or WP_Error object on failure. */ protected function prepare_item_for_database( $request ) { return new WP_Error( 'invalid-method', /* translators: %s: Method name. */ sprintf( __( "Method '%s' not implemented. Must be overridden in subclass." ), __METHOD__ ), array( 'status' => 405 ) ); } /** * Prepares the item for the REST response. * * @since 4.7.0 * * @param mixed $item WordPress representation of the item. * @param WP_REST_Request $request Request object. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function prepare_item_for_response( $item, $request ) { return new WP_Error( 'invalid-method', /* translators: %s: Method name. */ sprintf( __( "Method '%s' not implemented. Must be overridden in subclass." ), __METHOD__ ), array( 'status' => 405 ) ); } /** * Prepares a response for insertion into a collection. * * @since 4.7.0 * * @param WP_REST_Response $response Response object. * @return array|mixed Response data, ready for insertion into collection data. */ public function prepare_response_for_collection( $response ) { if ( ! ( $response instanceof WP_REST_Response ) ) { return $response; } $data = (array) $response->get_data(); $server = rest_get_server(); $links = $server::get_compact_response_links( $response ); if ( ! empty( $links ) ) { $data['_links'] = $links; } return $data; } /** * Filters a response based on the context defined in the schema. * * @since 4.7.0 * * @param array $data Response data to filter. * @param string $context Context defined in the schema. * @return array Filtered response. */ public function filter_response_by_context( $data, $context ) { $schema = $this->get_item_schema(); return rest_filter_response_by_context( $data, $schema, $context ); } /** * Retrieves the item's schema, conforming to JSON Schema. * * @since 4.7.0 * * @return array Item schema data. */ public function get_item_schema() { return $this->add_additional_fields_schema( array() ); } /** * Retrieves the item's schema for display / public consumption purposes. * * @since 4.7.0 * * @return array Public item schema data. */ public function get_public_item_schema() { $schema = $this->get_item_schema(); if ( ! empty( $schema['properties'] ) ) { foreach ( $schema['properties'] as &$property ) { unset( $property['arg_options'] ); } } return $schema; } /** * Retrieves the query params for the collections. * * @since 4.7.0 * * @return array Query parameters for the collection. */ public function get_collection_params() { return array( 'context' => $this->get_context_param(), 'page' => array( 'description' => __( 'Current page of the collection.' ), 'type' => 'integer', 'default' => 1, 'sanitize_callback' => 'absint', 'validate_callback' => 'rest_validate_request_arg', 'minimum' => 1, ), 'per_page' => array( 'description' => __( 'Maximum number of items to be returned in result set.' ), 'type' => 'integer', 'default' => 10, 'minimum' => 1, 'maximum' => 100, 'sanitize_callback' => 'absint', 'validate_callback' => 'rest_validate_request_arg', ), 'search' => array( 'description' => __( 'Limit results to those matching a string.' ), 'type' => 'string', 'sanitize_callback' => 'sanitize_text_field', 'validate_callback' => 'rest_validate_request_arg', ), ); } /** * Retrieves the magical context param. * * Ensures consistent descriptions between endpoints, and populates enum from schema. * * @since 4.7.0 * * @param array $args Optional. Additional arguments for context parameter. Default empty array. * @return array Context parameter details. */ public function get_context_param( $args = array() ) { $param_details = array( 'description' => __( 'Scope under which the request is made; determines fields present in response.' ), 'type' => 'string', 'sanitize_callback' => 'sanitize_key', 'validate_callback' => 'rest_validate_request_arg', ); $schema = $this->get_item_schema(); if ( empty( $schema['properties'] ) ) { return array_merge( $param_details, $args ); } $contexts = array(); foreach ( $schema['properties'] as $attributes ) { if ( ! empty( $attributes['context'] ) ) { $contexts = array_merge( $contexts, $attributes['context'] ); } } if ( ! empty( $contexts ) ) { $param_details['enum'] = array_unique( $contexts ); rsort( $param_details['enum'] ); } return array_merge( $param_details, $args ); } /** * Adds the values from additional fields to a data object. * * @since 4.7.0 * * @param array $prepared Prepared response array. * @param WP_REST_Request $request Full details about the request. * @return array Modified data object with additional fields. */ protected function add_additional_fields_to_object( $prepared, $request ) { $additional_fields = $this->get_additional_fields(); $requested_fields = $this->get_fields_for_response( $request ); foreach ( $additional_fields as $field_name => $field_options ) { if ( ! $field_options['get_callback'] ) { continue; } if ( ! rest_is_field_included( $field_name, $requested_fields ) ) { continue; } $prepared[ $field_name ] = call_user_func( $field_options['get_callback'], $prepared, $field_name, $request, $this->get_object_type() ); } return $prepared; } /** * Updates the values of additional fields added to a data object. * * @since 4.7.0 * * @param object $object Data model like WP_Term or WP_Post. * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True on success, WP_Error object if a field cannot be updated. */ protected function update_additional_fields_for_object( $object, $request ) { $additional_fields = $this->get_additional_fields(); foreach ( $additional_fields as $field_name => $field_options ) { if ( ! $field_options['update_callback'] ) { continue; } // Don't run the update callbacks if the data wasn't passed in the request. if ( ! isset( $request[ $field_name ] ) ) { continue; } $result = call_user_func( $field_options['update_callback'], $request[ $field_name ], $object, $field_name, $request, $this->get_object_type() ); if ( is_wp_error( $result ) ) { return $result; } } return true; } /** * Adds the schema from additional fields to a schema array. * * The type of object is inferred from the passed schema. * * @since 4.7.0 * * @param array $schema Schema array. * @return array Modified Schema array. */ protected function add_additional_fields_schema( $schema ) { if ( empty( $schema['title'] ) ) { return $schema; } // Can't use $this->get_object_type otherwise we cause an inf loop. $object_type = $schema['title']; $additional_fields = $this->get_additional_fields( $object_type ); foreach ( $additional_fields as $field_name => $field_options ) { if ( ! $field_options['schema'] ) { continue; } $schema['properties'][ $field_name ] = $field_options['schema']; } return $schema; } /** * Retrieves all of the registered additional fields for a given object-type. * * @since 4.7.0 * * @global array $wp_rest_additional_fields Holds registered fields, organized by object type. * * @param string $object_type Optional. The object type. * @return array Registered additional fields (if any), empty array if none or if the object type * could not be inferred. */ protected function get_additional_fields( $object_type = null ) { global $wp_rest_additional_fields; if ( ! $object_type ) { $object_type = $this->get_object_type(); } if ( ! $object_type ) { return array(); } if ( ! $wp_rest_additional_fields || ! isset( $wp_rest_additional_fields[ $object_type ] ) ) { return array(); } return $wp_rest_additional_fields[ $object_type ]; } /** * Retrieves the object type this controller is responsible for managing. * * @since 4.7.0 * * @return string Object type for the controller. */ protected function get_object_type() { $schema = $this->get_item_schema(); if ( ! $schema || ! isset( $schema['title'] ) ) { return null; } return $schema['title']; } /** * Gets an array of fields to be included on the response. * * Included fields are based on item schema and `_fields=` request argument. * * @since 4.9.6 * * @param WP_REST_Request $request Full details about the request. * @return string[] Fields to be included in the response. */ public function get_fields_for_response( $request ) { $schema = $this->get_item_schema(); $properties = isset( $schema['properties'] ) ? $schema['properties'] : array(); $additional_fields = $this->get_additional_fields(); foreach ( $additional_fields as $field_name => $field_options ) { // For back-compat, include any field with an empty schema // because it won't be present in $this->get_item_schema(). if ( is_null( $field_options['schema'] ) ) { $properties[ $field_name ] = $field_options; } } // Exclude fields that specify a different context than the request context. $context = $request['context']; if ( $context ) { foreach ( $properties as $name => $options ) { if ( ! empty( $options['context'] ) && ! in_array( $context, $options['context'], true ) ) { unset( $properties[ $name ] ); } } } $fields = array_keys( $properties ); if ( ! isset( $request['_fields'] ) ) { return $fields; } $requested_fields = wp_parse_list( $request['_fields'] ); if ( 0 === count( $requested_fields ) ) { return $fields; } // Trim off outside whitespace from the comma delimited list. $requested_fields = array_map( 'trim', $requested_fields ); // Always persist 'id', because it can be needed for add_additional_fields_to_object(). if ( in_array( 'id', $fields, true ) ) { $requested_fields[] = 'id'; } // Return the list of all requested fields which appear in the schema. return array_reduce( $requested_fields, static function( $response_fields, $field ) use ( $fields ) { if ( in_array( $field, $fields, true ) ) { $response_fields[] = $field; return $response_fields; } // Check for nested fields if $field is not a direct match. $nested_fields = explode( '.', $field ); // A nested field is included so long as its top-level property // is present in the schema. if ( in_array( $nested_fields[0], $fields, true ) ) { $response_fields[] = $field; } return $response_fields; }, array() ); } /** * Retrieves an array of endpoint arguments from the item schema for the controller. * * @since 4.7.0 * * @param string $method Optional. HTTP method of the request. The arguments for `CREATABLE` requests are * checked for required values and may fall-back to a given default, this is not done * on `EDITABLE` requests. Default WP_REST_Server::CREATABLE. * @return array Endpoint arguments. */ public function get_endpoint_args_for_item_schema( $method = WP_REST_Server::CREATABLE ) { return rest_get_endpoint_args_for_schema( $this->get_item_schema(), $method ); } /** * Sanitizes the slug value. * * @since 4.7.0 * * @internal We can't use sanitize_title() directly, as the second * parameter is the fallback title, which would end up being set to the * request object. * * @see https://github.com/WP-API/WP-API/issues/1585 * * @todo Remove this in favour of https://core.trac.wordpress.org/ticket/34659 * * @param string $slug Slug value passed in request. * @return string Sanitized value for the slug. */ public function sanitize_slug( $slug ) { return sanitize_title( $slug ); } } PKj l\wll9rest-api/endpoints/class-wp-rest-templates-controller.phpnu[post_type = $post_type; $obj = get_post_type_object( $post_type ); $this->rest_base = ! empty( $obj->rest_base ) ? $obj->rest_base : $obj->name; $this->namespace = ! empty( $obj->rest_namespace ) ? $obj->rest_namespace : 'wp/v2'; } /** * Registers the controllers routes. * * @since 5.8.0 */ public function register_routes() { // Lists all templates. register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), array( 'methods' => WP_REST_Server::CREATABLE, 'callback' => array( $this, 'create_item' ), 'permission_callback' => array( $this, 'create_item_permissions_check' ), 'args' => $this->get_endpoint_args_for_item_schema( WP_REST_Server::CREATABLE ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); // Lists/updates a single template based on the given id. register_rest_route( $this->namespace, // The route. sprintf( '/%s/(?P%s%s)', $this->rest_base, // Matches theme's directory: `/themes///` or `/themes//`. // Excludes invalid directory name characters: `/:<>*?"|`. '([^\/:<>\*\?"\|]+(?:\/[^\/:<>\*\?"\|]+)?)', // Matches the template name. '[\/\w-]+' ), array( 'args' => array( 'id' => array( 'description' => __( 'The id of a template' ), 'type' => 'string', 'sanitize_callback' => array( $this, '_sanitize_template_id' ), ), ), array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), 'args' => array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ), ), array( 'methods' => WP_REST_Server::EDITABLE, 'callback' => array( $this, 'update_item' ), 'permission_callback' => array( $this, 'update_item_permissions_check' ), 'args' => $this->get_endpoint_args_for_item_schema( WP_REST_Server::EDITABLE ), ), array( 'methods' => WP_REST_Server::DELETABLE, 'callback' => array( $this, 'delete_item' ), 'permission_callback' => array( $this, 'delete_item_permissions_check' ), 'args' => array( 'force' => array( 'type' => 'boolean', 'default' => false, 'description' => __( 'Whether to bypass Trash and force deletion.' ), ), ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Checks if the user has permissions to make the request. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ protected function permissions_check( $request ) { // Verify if the current user has edit_theme_options capability. // This capability is required to edit/view/delete templates. if ( ! current_user_can( 'edit_theme_options' ) ) { return new WP_Error( 'rest_cannot_manage_templates', __( 'Sorry, you are not allowed to access the templates on this site.' ), array( 'status' => rest_authorization_required_code(), ) ); } return true; } /** * Requesting this endpoint for a template like 'twentytwentytwo//home' * requires using a path like /wp/v2/templates/twentytwentytwo//home. There * are special cases when WordPress routing corrects the name to contain * only a single slash like 'twentytwentytwo/home'. * * This method doubles the last slash if it's not already doubled. It relies * on the template ID format {theme_name}//{template_slug} and the fact that * slugs cannot contain slashes. * * @since 5.9.0 * @see https://core.trac.wordpress.org/ticket/54507 * * @param string $id Template ID. * @return string Sanitized template ID. */ public function _sanitize_template_id( $id ) { $id = urldecode( $id ); $last_slash_pos = strrpos( $id, '/' ); if ( false === $last_slash_pos ) { return $id; } $is_double_slashed = substr( $id, $last_slash_pos - 1, 1 ) === '/'; if ( $is_double_slashed ) { return $id; } return ( substr( $id, 0, $last_slash_pos ) . '/' . substr( $id, $last_slash_pos ) ); } /** * Checks if a given request has access to read templates. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_items_permissions_check( $request ) { return $this->permissions_check( $request ); } /** * Returns a list of templates. * * @since 5.8.0 * * @param WP_REST_Request $request The request instance. * @return WP_REST_Response */ public function get_items( $request ) { $query = array(); if ( isset( $request['wp_id'] ) ) { $query['wp_id'] = $request['wp_id']; } if ( isset( $request['area'] ) ) { $query['area'] = $request['area']; } if ( isset( $request['post_type'] ) ) { $query['post_type'] = $request['post_type']; } $templates = array(); foreach ( get_block_templates( $query, $this->post_type ) as $template ) { $data = $this->prepare_item_for_response( $template, $request ); $templates[] = $this->prepare_response_for_collection( $data ); } return rest_ensure_response( $templates ); } /** * Checks if a given request has access to read a single template. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access for the item, WP_Error object otherwise. */ public function get_item_permissions_check( $request ) { return $this->permissions_check( $request ); } /** * Returns the given template * * @since 5.8.0 * * @param WP_REST_Request $request The request instance. * @return WP_REST_Response|WP_Error */ public function get_item( $request ) { if ( isset( $request['source'] ) && 'theme' === $request['source'] ) { $template = get_block_file_template( $request['id'], $this->post_type ); } else { $template = get_block_template( $request['id'], $this->post_type ); } if ( ! $template ) { return new WP_Error( 'rest_template_not_found', __( 'No templates exist with that id.' ), array( 'status' => 404 ) ); } return $this->prepare_item_for_response( $template, $request ); } /** * Checks if a given request has access to write a single template. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has write access for the item, WP_Error object otherwise. */ public function update_item_permissions_check( $request ) { return $this->permissions_check( $request ); } /** * Updates a single template. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function update_item( $request ) { $template = get_block_template( $request['id'], $this->post_type ); if ( ! $template ) { return new WP_Error( 'rest_template_not_found', __( 'No templates exist with that id.' ), array( 'status' => 404 ) ); } $post_before = get_post( $template->wp_id ); if ( isset( $request['source'] ) && 'theme' === $request['source'] ) { wp_delete_post( $template->wp_id, true ); $request->set_param( 'context', 'edit' ); $template = get_block_template( $request['id'], $this->post_type ); $response = $this->prepare_item_for_response( $template, $request ); return rest_ensure_response( $response ); } $changes = $this->prepare_item_for_database( $request ); if ( is_wp_error( $changes ) ) { return $changes; } if ( 'custom' === $template->source ) { $update = true; $result = wp_update_post( wp_slash( (array) $changes ), false ); } else { $update = false; $post_before = null; $result = wp_insert_post( wp_slash( (array) $changes ), false ); } if ( is_wp_error( $result ) ) { if ( 'db_update_error' === $result->get_error_code() ) { $result->add_data( array( 'status' => 500 ) ); } else { $result->add_data( array( 'status' => 400 ) ); } return $result; } $template = get_block_template( $request['id'], $this->post_type ); $fields_update = $this->update_additional_fields_for_object( $template, $request ); if ( is_wp_error( $fields_update ) ) { return $fields_update; } $request->set_param( 'context', 'edit' ); $post = get_post( $template->wp_id ); /** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-posts-controller.php */ do_action( "rest_after_insert_{$this->post_type}", $post, $request, false ); wp_after_insert_post( $post, $update, $post_before ); $response = $this->prepare_item_for_response( $template, $request ); return rest_ensure_response( $response ); } /** * Checks if a given request has access to create a template. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to create items, WP_Error object otherwise. */ public function create_item_permissions_check( $request ) { return $this->permissions_check( $request ); } /** * Creates a single template. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function create_item( $request ) { $prepared_post = $this->prepare_item_for_database( $request ); if ( is_wp_error( $prepared_post ) ) { return $prepared_post; } $prepared_post->post_name = $request['slug']; $post_id = wp_insert_post( wp_slash( (array) $prepared_post ), true ); if ( is_wp_error( $post_id ) ) { if ( 'db_insert_error' === $post_id->get_error_code() ) { $post_id->add_data( array( 'status' => 500 ) ); } else { $post_id->add_data( array( 'status' => 400 ) ); } return $post_id; } $posts = get_block_templates( array( 'wp_id' => $post_id ), $this->post_type ); if ( ! count( $posts ) ) { return new WP_Error( 'rest_template_insert_error', __( 'No templates exist with that id.' ), array( 'status' => 400 ) ); } $id = $posts[0]->id; $post = get_post( $post_id ); $template = get_block_template( $id, $this->post_type ); $fields_update = $this->update_additional_fields_for_object( $template, $request ); if ( is_wp_error( $fields_update ) ) { return $fields_update; } /** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-posts-controller.php */ do_action( "rest_after_insert_{$this->post_type}", $post, $request, true ); wp_after_insert_post( $post, false, null ); $response = $this->prepare_item_for_response( $template, $request ); $response = rest_ensure_response( $response ); $response->set_status( 201 ); $response->header( 'Location', rest_url( sprintf( '%s/%s/%s', $this->namespace, $this->rest_base, $template->id ) ) ); return $response; } /** * Checks if a given request has access to delete a single template. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has delete access for the item, WP_Error object otherwise. */ public function delete_item_permissions_check( $request ) { return $this->permissions_check( $request ); } /** * Deletes a single template. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function delete_item( $request ) { $template = get_block_template( $request['id'], $this->post_type ); if ( ! $template ) { return new WP_Error( 'rest_template_not_found', __( 'No templates exist with that id.' ), array( 'status' => 404 ) ); } if ( 'custom' !== $template->source ) { return new WP_Error( 'rest_invalid_template', __( 'Templates based on theme files can\'t be removed.' ), array( 'status' => 400 ) ); } $id = $template->wp_id; $force = (bool) $request['force']; $request->set_param( 'context', 'edit' ); // If we're forcing, then delete permanently. if ( $force ) { $previous = $this->prepare_item_for_response( $template, $request ); $result = wp_delete_post( $id, true ); $response = new WP_REST_Response(); $response->set_data( array( 'deleted' => true, 'previous' => $previous->get_data(), ) ); } else { // Otherwise, only trash if we haven't already. if ( 'trash' === $template->status ) { return new WP_Error( 'rest_template_already_trashed', __( 'The template has already been deleted.' ), array( 'status' => 410 ) ); } // (Note that internally this falls through to `wp_delete_post()` // if the Trash is disabled.) $result = wp_trash_post( $id ); $template->status = 'trash'; $response = $this->prepare_item_for_response( $template, $request ); } if ( ! $result ) { return new WP_Error( 'rest_cannot_delete', __( 'The template cannot be deleted.' ), array( 'status' => 500 ) ); } return $response; } /** * Prepares a single template for create or update. * * @since 5.8.0 * * @param WP_REST_Request $request Request object. * @return stdClass Changes to pass to wp_update_post. */ protected function prepare_item_for_database( $request ) { $template = $request['id'] ? get_block_template( $request['id'], $this->post_type ) : null; $changes = new stdClass(); if ( null === $template ) { $changes->post_type = $this->post_type; $changes->post_status = 'publish'; $changes->tax_input = array( 'wp_theme' => isset( $request['theme'] ) ? $request['theme'] : wp_get_theme()->get_stylesheet(), ); } elseif ( 'custom' !== $template->source ) { $changes->post_name = $template->slug; $changes->post_type = $this->post_type; $changes->post_status = 'publish'; $changes->tax_input = array( 'wp_theme' => $template->theme, ); $changes->meta_input = array( 'origin' => $template->source, ); } else { $changes->post_name = $template->slug; $changes->ID = $template->wp_id; $changes->post_status = 'publish'; } if ( isset( $request['content'] ) ) { if ( is_string( $request['content'] ) ) { $changes->post_content = $request['content']; } elseif ( isset( $request['content']['raw'] ) ) { $changes->post_content = $request['content']['raw']; } } elseif ( null !== $template && 'custom' !== $template->source ) { $changes->post_content = $template->content; } if ( isset( $request['title'] ) ) { if ( is_string( $request['title'] ) ) { $changes->post_title = $request['title']; } elseif ( ! empty( $request['title']['raw'] ) ) { $changes->post_title = $request['title']['raw']; } } elseif ( null !== $template && 'custom' !== $template->source ) { $changes->post_title = $template->title; } if ( isset( $request['description'] ) ) { $changes->post_excerpt = $request['description']; } elseif ( null !== $template && 'custom' !== $template->source ) { $changes->post_excerpt = $template->description; } if ( 'wp_template_part' === $this->post_type ) { if ( isset( $request['area'] ) ) { $changes->tax_input['wp_template_part_area'] = _filter_block_template_part_area( $request['area'] ); } elseif ( null !== $template && 'custom' !== $template->source && $template->area ) { $changes->tax_input['wp_template_part_area'] = _filter_block_template_part_area( $template->area ); } elseif ( ! $template->area ) { $changes->tax_input['wp_template_part_area'] = WP_TEMPLATE_PART_AREA_UNCATEGORIZED; } } if ( ! empty( $request['author'] ) ) { $post_author = (int) $request['author']; if ( get_current_user_id() !== $post_author ) { $user_obj = get_userdata( $post_author ); if ( ! $user_obj ) { return new WP_Error( 'rest_invalid_author', __( 'Invalid author ID.' ), array( 'status' => 400 ) ); } } $changes->post_author = $post_author; } return $changes; } /** * Prepare a single template output for response * * @since 5.8.0 * @since 5.9.0 Renamed `$template` to `$item` to match parent class for PHP 8 named parameter support. * * @param WP_Block_Template $item Template instance. * @param WP_REST_Request $request Request object. * @return WP_REST_Response Response object. */ public function prepare_item_for_response( $item, $request ) { // phpcs:ignore VariableAnalysis.CodeAnalysis.VariableAnalysis.UnusedVariable // Restores the more descriptive, specific name for use within this method. $template = $item; $fields = $this->get_fields_for_response( $request ); // Base fields for every template. $data = array(); if ( rest_is_field_included( 'id', $fields ) ) { $data['id'] = $template->id; } if ( rest_is_field_included( 'theme', $fields ) ) { $data['theme'] = $template->theme; } if ( rest_is_field_included( 'content', $fields ) ) { $data['content'] = array(); } if ( rest_is_field_included( 'content.raw', $fields ) ) { $data['content']['raw'] = $template->content; } if ( rest_is_field_included( 'content.block_version', $fields ) ) { $data['content']['block_version'] = block_version( $template->content ); } if ( rest_is_field_included( 'slug', $fields ) ) { $data['slug'] = $template->slug; } if ( rest_is_field_included( 'source', $fields ) ) { $data['source'] = $template->source; } if ( rest_is_field_included( 'origin', $fields ) ) { $data['origin'] = $template->origin; } if ( rest_is_field_included( 'type', $fields ) ) { $data['type'] = $template->type; } if ( rest_is_field_included( 'description', $fields ) ) { $data['description'] = $template->description; } if ( rest_is_field_included( 'title', $fields ) ) { $data['title'] = array(); } if ( rest_is_field_included( 'title.raw', $fields ) ) { $data['title']['raw'] = $template->title; } if ( rest_is_field_included( 'title.rendered', $fields ) ) { if ( $template->wp_id ) { /** This filter is documented in wp-includes/post-template.php */ $data['title']['rendered'] = apply_filters( 'the_title', $template->title, $template->wp_id ); } else { $data['title']['rendered'] = $template->title; } } if ( rest_is_field_included( 'status', $fields ) ) { $data['status'] = $template->status; } if ( rest_is_field_included( 'wp_id', $fields ) ) { $data['wp_id'] = (int) $template->wp_id; } if ( rest_is_field_included( 'has_theme_file', $fields ) ) { $data['has_theme_file'] = (bool) $template->has_theme_file; } if ( rest_is_field_included( 'is_custom', $fields ) && 'wp_template' === $template->type ) { $data['is_custom'] = $template->is_custom; } if ( rest_is_field_included( 'author', $fields ) ) { $data['author'] = (int) $template->author; } if ( rest_is_field_included( 'area', $fields ) && 'wp_template_part' === $template->type ) { $data['area'] = $template->area; } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->add_additional_fields_to_object( $data, $request ); $data = $this->filter_response_by_context( $data, $context ); // Wrap the data in a response object. $response = rest_ensure_response( $data ); $links = $this->prepare_links( $template->id ); $response->add_links( $links ); if ( ! empty( $links['self']['href'] ) ) { $actions = $this->get_available_actions(); $self = $links['self']['href']; foreach ( $actions as $rel ) { $response->add_link( $rel, $self ); } } return $response; } /** * Prepares links for the request. * * @since 5.8.0 * * @param integer $id ID. * @return array Links for the given post. */ protected function prepare_links( $id ) { $base = sprintf( '%s/%s', $this->namespace, $this->rest_base ); $links = array( 'self' => array( 'href' => rest_url( trailingslashit( $base ) . $id ), ), 'collection' => array( 'href' => rest_url( $base ), ), 'about' => array( 'href' => rest_url( 'wp/v2/types/' . $this->post_type ), ), ); return $links; } /** * Get the link relations available for the post and current user. * * @since 5.8.0 * * @return string[] List of link relations. */ protected function get_available_actions() { $rels = array(); $post_type = get_post_type_object( $this->post_type ); if ( current_user_can( $post_type->cap->publish_posts ) ) { $rels[] = 'https://api.w.org/action-publish'; } if ( current_user_can( 'unfiltered_html' ) ) { $rels[] = 'https://api.w.org/action-unfiltered-html'; } return $rels; } /** * Retrieves the query params for the posts collection. * * @since 5.8.0 * @since 5.9.0 Added `'area'` and `'post_type'`. * * @return array Collection parameters. */ public function get_collection_params() { return array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), 'wp_id' => array( 'description' => __( 'Limit to the specified post id.' ), 'type' => 'integer', ), 'area' => array( 'description' => __( 'Limit to the specified template part area.' ), 'type' => 'string', ), 'post_type' => array( 'description' => __( 'Post type to get the templates for.' ), 'type' => 'string', ), ); } /** * Retrieves the block type' schema, conforming to JSON Schema. * * @since 5.8.0 * @since 5.9.0 Added `'area'`. * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => $this->post_type, 'type' => 'object', 'properties' => array( 'id' => array( 'description' => __( 'ID of template.' ), 'type' => 'string', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'slug' => array( 'description' => __( 'Unique slug identifying the template.' ), 'type' => 'string', 'context' => array( 'embed', 'view', 'edit' ), 'required' => true, 'minLength' => 1, 'pattern' => '[a-zA-Z0-9_\-]+', ), 'theme' => array( 'description' => __( 'Theme identifier for the template.' ), 'type' => 'string', 'context' => array( 'embed', 'view', 'edit' ), ), 'type' => array( 'description' => __( 'Type of template.' ), 'type' => 'string', 'context' => array( 'embed', 'view', 'edit' ), ), 'source' => array( 'description' => __( 'Source of template' ), 'type' => 'string', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'origin' => array( 'description' => __( 'Source of a customized template' ), 'type' => 'string', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'content' => array( 'description' => __( 'Content of template.' ), 'type' => array( 'object', 'string' ), 'default' => '', 'context' => array( 'embed', 'view', 'edit' ), 'properties' => array( 'raw' => array( 'description' => __( 'Content for the template, as it exists in the database.' ), 'type' => 'string', 'context' => array( 'view', 'edit' ), ), 'block_version' => array( 'description' => __( 'Version of the content block format used by the template.' ), 'type' => 'integer', 'context' => array( 'edit' ), 'readonly' => true, ), ), ), 'title' => array( 'description' => __( 'Title of template.' ), 'type' => array( 'object', 'string' ), 'default' => '', 'context' => array( 'embed', 'view', 'edit' ), 'properties' => array( 'raw' => array( 'description' => __( 'Title for the template, as it exists in the database.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), ), 'rendered' => array( 'description' => __( 'HTML title for the template, transformed for display.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), ), ), 'description' => array( 'description' => __( 'Description of template.' ), 'type' => 'string', 'default' => '', 'context' => array( 'embed', 'view', 'edit' ), ), 'status' => array( 'description' => __( 'Status of template.' ), 'type' => 'string', 'enum' => array_keys( get_post_stati( array( 'internal' => false ) ) ), 'default' => 'publish', 'context' => array( 'embed', 'view', 'edit' ), ), 'wp_id' => array( 'description' => __( 'Post ID.' ), 'type' => 'integer', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'has_theme_file' => array( 'description' => __( 'Theme file exists.' ), 'type' => 'bool', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'author' => array( 'description' => __( 'The ID for the author of the template.' ), 'type' => 'integer', 'context' => array( 'view', 'edit', 'embed' ), ), ), ); if ( 'wp_template' === $this->post_type ) { $schema['properties']['is_custom'] = array( 'description' => __( 'Whether a template is a custom template.' ), 'type' => 'bool', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ); } if ( 'wp_template_part' === $this->post_type ) { $schema['properties']['area'] = array( 'description' => __( 'Where the template part is intended for use (header, footer, etc.)' ), 'type' => 'string', 'context' => array( 'embed', 'view', 'edit' ), ); } $this->schema = $schema; return $this->add_additional_fields_schema( $this->schema ); } } PKj l\6'oxx;rest-api/endpoints/class-wp-rest-attachments-controller.phpnu[namespace, '/' . $this->rest_base . '/(?P[\d]+)/post-process', array( 'methods' => WP_REST_Server::CREATABLE, 'callback' => array( $this, 'post_process_item' ), 'permission_callback' => array( $this, 'post_process_item_permissions_check' ), 'args' => array( 'id' => array( 'description' => __( 'Unique identifier for the attachment.' ), 'type' => 'integer', ), 'action' => array( 'type' => 'string', 'enum' => array( 'create-image-subsizes' ), 'required' => true, ), ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P[\d]+)/edit', array( 'methods' => WP_REST_Server::CREATABLE, 'callback' => array( $this, 'edit_media_item' ), 'permission_callback' => array( $this, 'edit_media_item_permissions_check' ), 'args' => $this->get_edit_media_item_args(), ) ); } /** * Determines the allowed query_vars for a get_items() response and * prepares for WP_Query. * * @since 4.7.0 * * @param array $prepared_args Optional. Array of prepared arguments. Default empty array. * @param WP_REST_Request $request Optional. Request to prepare items for. * @return array Array of query arguments. */ protected function prepare_items_query( $prepared_args = array(), $request = null ) { $query_args = parent::prepare_items_query( $prepared_args, $request ); if ( empty( $query_args['post_status'] ) ) { $query_args['post_status'] = 'inherit'; } $media_types = $this->get_media_types(); if ( ! empty( $request['media_type'] ) && isset( $media_types[ $request['media_type'] ] ) ) { $query_args['post_mime_type'] = $media_types[ $request['media_type'] ]; } if ( ! empty( $request['mime_type'] ) ) { $parts = explode( '/', $request['mime_type'] ); if ( isset( $media_types[ $parts[0] ] ) && in_array( $request['mime_type'], $media_types[ $parts[0] ], true ) ) { $query_args['post_mime_type'] = $request['mime_type']; } } // Filter query clauses to include filenames. if ( isset( $query_args['s'] ) ) { add_filter( 'wp_allow_query_attachment_by_filename', '__return_true' ); } return $query_args; } /** * Checks if a given request has access to create an attachment. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error Boolean true if the attachment may be created, or a WP_Error if not. */ public function create_item_permissions_check( $request ) { $ret = parent::create_item_permissions_check( $request ); if ( ! $ret || is_wp_error( $ret ) ) { return $ret; } if ( ! current_user_can( 'upload_files' ) ) { return new WP_Error( 'rest_cannot_create', __( 'Sorry, you are not allowed to upload media on this site.' ), array( 'status' => 400 ) ); } // Attaching media to a post requires ability to edit said post. if ( ! empty( $request['post'] ) && ! current_user_can( 'edit_post', (int) $request['post'] ) ) { return new WP_Error( 'rest_cannot_edit', __( 'Sorry, you are not allowed to upload media to this post.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Creates a single attachment. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, WP_Error object on failure. */ public function create_item( $request ) { if ( ! empty( $request['post'] ) && in_array( get_post_type( $request['post'] ), array( 'revision', 'attachment' ), true ) ) { return new WP_Error( 'rest_invalid_param', __( 'Invalid parent type.' ), array( 'status' => 400 ) ); } $insert = $this->insert_attachment( $request ); if ( is_wp_error( $insert ) ) { return $insert; } $schema = $this->get_item_schema(); // Extract by name. $attachment_id = $insert['attachment_id']; $file = $insert['file']; if ( isset( $request['alt_text'] ) ) { update_post_meta( $attachment_id, '_wp_attachment_image_alt', sanitize_text_field( $request['alt_text'] ) ); } if ( ! empty( $schema['properties']['meta'] ) && isset( $request['meta'] ) ) { $meta_update = $this->meta->update_value( $request['meta'], $attachment_id ); if ( is_wp_error( $meta_update ) ) { return $meta_update; } } $attachment = get_post( $attachment_id ); $fields_update = $this->update_additional_fields_for_object( $attachment, $request ); if ( is_wp_error( $fields_update ) ) { return $fields_update; } $request->set_param( 'context', 'edit' ); /** * Fires after a single attachment is completely created or updated via the REST API. * * @since 5.0.0 * * @param WP_Post $attachment Inserted or updated attachment object. * @param WP_REST_Request $request Request object. * @param bool $creating True when creating an attachment, false when updating. */ do_action( 'rest_after_insert_attachment', $attachment, $request, true ); wp_after_insert_post( $attachment, false, null ); if ( defined( 'REST_REQUEST' ) && REST_REQUEST ) { // Set a custom header with the attachment_id. // Used by the browser/client to resume creating image sub-sizes after a PHP fatal error. header( 'X-WP-Upload-Attachment-ID: ' . $attachment_id ); } // Include media and image functions to get access to wp_generate_attachment_metadata(). require_once ABSPATH . 'wp-admin/includes/media.php'; require_once ABSPATH . 'wp-admin/includes/image.php'; // Post-process the upload (create image sub-sizes, make PDF thumbnails, etc.) and insert attachment meta. // At this point the server may run out of resources and post-processing of uploaded images may fail. wp_update_attachment_metadata( $attachment_id, wp_generate_attachment_metadata( $attachment_id, $file ) ); $response = $this->prepare_item_for_response( $attachment, $request ); $response = rest_ensure_response( $response ); $response->set_status( 201 ); $response->header( 'Location', rest_url( sprintf( '%s/%s/%d', $this->namespace, $this->rest_base, $attachment_id ) ) ); return $response; } /** * Inserts the attachment post in the database. Does not update the attachment meta. * * @since 5.3.0 * * @param WP_REST_Request $request * @return array|WP_Error */ protected function insert_attachment( $request ) { // Get the file via $_FILES or raw data. $files = $request->get_file_params(); $headers = $request->get_headers(); if ( ! empty( $files ) ) { $file = $this->upload_from_file( $files, $headers ); } else { $file = $this->upload_from_data( $request->get_body(), $headers ); } if ( is_wp_error( $file ) ) { return $file; } $name = wp_basename( $file['file'] ); $name_parts = pathinfo( $name ); $name = trim( substr( $name, 0, -( 1 + strlen( $name_parts['extension'] ) ) ) ); $url = $file['url']; $type = $file['type']; $file = $file['file']; // Include image functions to get access to wp_read_image_metadata(). require_once ABSPATH . 'wp-admin/includes/image.php'; // Use image exif/iptc data for title and caption defaults if possible. $image_meta = wp_read_image_metadata( $file ); if ( ! empty( $image_meta ) ) { if ( empty( $request['title'] ) && trim( $image_meta['title'] ) && ! is_numeric( sanitize_title( $image_meta['title'] ) ) ) { $request['title'] = $image_meta['title']; } if ( empty( $request['caption'] ) && trim( $image_meta['caption'] ) ) { $request['caption'] = $image_meta['caption']; } } $attachment = $this->prepare_item_for_database( $request ); $attachment->post_mime_type = $type; $attachment->guid = $url; if ( empty( $attachment->post_title ) ) { $attachment->post_title = preg_replace( '/\.[^.]+$/', '', wp_basename( $file ) ); } // $post_parent is inherited from $attachment['post_parent']. $id = wp_insert_attachment( wp_slash( (array) $attachment ), $file, 0, true, false ); if ( is_wp_error( $id ) ) { if ( 'db_update_error' === $id->get_error_code() ) { $id->add_data( array( 'status' => 500 ) ); } else { $id->add_data( array( 'status' => 400 ) ); } return $id; } $attachment = get_post( $id ); /** * Fires after a single attachment is created or updated via the REST API. * * @since 4.7.0 * * @param WP_Post $attachment Inserted or updated attachment * object. * @param WP_REST_Request $request The request sent to the API. * @param bool $creating True when creating an attachment, false when updating. */ do_action( 'rest_insert_attachment', $attachment, $request, true ); return array( 'attachment_id' => $id, 'file' => $file, ); } /** * Updates a single attachment. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, WP_Error object on failure. */ public function update_item( $request ) { if ( ! empty( $request['post'] ) && in_array( get_post_type( $request['post'] ), array( 'revision', 'attachment' ), true ) ) { return new WP_Error( 'rest_invalid_param', __( 'Invalid parent type.' ), array( 'status' => 400 ) ); } $attachment_before = get_post( $request['id'] ); $response = parent::update_item( $request ); if ( is_wp_error( $response ) ) { return $response; } $response = rest_ensure_response( $response ); $data = $response->get_data(); if ( isset( $request['alt_text'] ) ) { update_post_meta( $data['id'], '_wp_attachment_image_alt', $request['alt_text'] ); } $attachment = get_post( $request['id'] ); $fields_update = $this->update_additional_fields_for_object( $attachment, $request ); if ( is_wp_error( $fields_update ) ) { return $fields_update; } $request->set_param( 'context', 'edit' ); /** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-attachments-controller.php */ do_action( 'rest_after_insert_attachment', $attachment, $request, false ); wp_after_insert_post( $attachment, true, $attachment_before ); $response = $this->prepare_item_for_response( $attachment, $request ); $response = rest_ensure_response( $response ); return $response; } /** * Performs post processing on an attachment. * * @since 5.3.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, WP_Error object on failure. */ public function post_process_item( $request ) { switch ( $request['action'] ) { case 'create-image-subsizes': require_once ABSPATH . 'wp-admin/includes/image.php'; wp_update_image_subsizes( $request['id'] ); break; } $request['context'] = 'edit'; return $this->prepare_item_for_response( get_post( $request['id'] ), $request ); } /** * Checks if a given request can perform post processing on an attachment. * * @since 5.3.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to update the item, WP_Error object otherwise. */ public function post_process_item_permissions_check( $request ) { return $this->update_item_permissions_check( $request ); } /** * Checks if a given request has access to editing media. * * @since 5.5.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function edit_media_item_permissions_check( $request ) { if ( ! current_user_can( 'upload_files' ) ) { return new WP_Error( 'rest_cannot_edit_image', __( 'Sorry, you are not allowed to upload media on this site.' ), array( 'status' => rest_authorization_required_code() ) ); } return $this->update_item_permissions_check( $request ); } /** * Applies edits to a media item and creates a new attachment record. * * @since 5.5.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, WP_Error object on failure. */ public function edit_media_item( $request ) { require_once ABSPATH . 'wp-admin/includes/image.php'; $attachment_id = $request['id']; // This also confirms the attachment is an image. $image_file = wp_get_original_image_path( $attachment_id ); $image_meta = wp_get_attachment_metadata( $attachment_id ); if ( ! $image_meta || ! $image_file || ! wp_image_file_matches_image_meta( $request['src'], $image_meta, $attachment_id ) ) { return new WP_Error( 'rest_unknown_attachment', __( 'Unable to get meta information for file.' ), array( 'status' => 404 ) ); } $supported_types = array( 'image/jpeg', 'image/png', 'image/gif', 'image/webp' ); $mime_type = get_post_mime_type( $attachment_id ); if ( ! in_array( $mime_type, $supported_types, true ) ) { return new WP_Error( 'rest_cannot_edit_file_type', __( 'This type of file cannot be edited.' ), array( 'status' => 400 ) ); } // The `modifiers` param takes precedence over the older format. if ( isset( $request['modifiers'] ) ) { $modifiers = $request['modifiers']; } else { $modifiers = array(); if ( ! empty( $request['rotation'] ) ) { $modifiers[] = array( 'type' => 'rotate', 'args' => array( 'angle' => $request['rotation'], ), ); } if ( isset( $request['x'], $request['y'], $request['width'], $request['height'] ) ) { $modifiers[] = array( 'type' => 'crop', 'args' => array( 'left' => $request['x'], 'top' => $request['y'], 'width' => $request['width'], 'height' => $request['height'], ), ); } if ( 0 === count( $modifiers ) ) { return new WP_Error( 'rest_image_not_edited', __( 'The image was not edited. Edit the image before applying the changes.' ), array( 'status' => 400 ) ); } } /* * If the file doesn't exist, attempt a URL fopen on the src link. * This can occur with certain file replication plugins. * Keep the original file path to get a modified name later. */ $image_file_to_edit = $image_file; if ( ! file_exists( $image_file_to_edit ) ) { $image_file_to_edit = _load_image_to_edit_path( $attachment_id ); } $image_editor = wp_get_image_editor( $image_file_to_edit ); if ( is_wp_error( $image_editor ) ) { return new WP_Error( 'rest_unknown_image_file_type', __( 'Unable to edit this image.' ), array( 'status' => 500 ) ); } foreach ( $modifiers as $modifier ) { $args = $modifier['args']; switch ( $modifier['type'] ) { case 'rotate': // Rotation direction: clockwise vs. counter clockwise. $rotate = 0 - $args['angle']; if ( 0 !== $rotate ) { $result = $image_editor->rotate( $rotate ); if ( is_wp_error( $result ) ) { return new WP_Error( 'rest_image_rotation_failed', __( 'Unable to rotate this image.' ), array( 'status' => 500 ) ); } } break; case 'crop': $size = $image_editor->get_size(); $crop_x = round( ( $size['width'] * $args['left'] ) / 100.0 ); $crop_y = round( ( $size['height'] * $args['top'] ) / 100.0 ); $width = round( ( $size['width'] * $args['width'] ) / 100.0 ); $height = round( ( $size['height'] * $args['height'] ) / 100.0 ); if ( $size['width'] !== $width && $size['height'] !== $height ) { $result = $image_editor->crop( $crop_x, $crop_y, $width, $height ); if ( is_wp_error( $result ) ) { return new WP_Error( 'rest_image_crop_failed', __( 'Unable to crop this image.' ), array( 'status' => 500 ) ); } } break; } } // Calculate the file name. $image_ext = pathinfo( $image_file, PATHINFO_EXTENSION ); $image_name = wp_basename( $image_file, ".{$image_ext}" ); // Do not append multiple `-edited` to the file name. // The user may be editing a previously edited image. if ( preg_match( '/-edited(-\d+)?$/', $image_name ) ) { // Remove any `-1`, `-2`, etc. `wp_unique_filename()` will add the proper number. $image_name = preg_replace( '/-edited(-\d+)?$/', '-edited', $image_name ); } else { // Append `-edited` before the extension. $image_name .= '-edited'; } $filename = "{$image_name}.{$image_ext}"; // Create the uploads sub-directory if needed. $uploads = wp_upload_dir(); // Make the file name unique in the (new) upload directory. $filename = wp_unique_filename( $uploads['path'], $filename ); // Save to disk. $saved = $image_editor->save( $uploads['path'] . "/$filename" ); if ( is_wp_error( $saved ) ) { return $saved; } // Create new attachment post. $new_attachment_post = array( 'post_mime_type' => $saved['mime-type'], 'guid' => $uploads['url'] . "/$filename", 'post_title' => $image_name, 'post_content' => '', ); // Copy post_content, post_excerpt, and post_title from the edited image's attachment post. $attachment_post = get_post( $attachment_id ); if ( $attachment_post ) { $new_attachment_post['post_content'] = $attachment_post->post_content; $new_attachment_post['post_excerpt'] = $attachment_post->post_excerpt; $new_attachment_post['post_title'] = $attachment_post->post_title; } $new_attachment_id = wp_insert_attachment( wp_slash( $new_attachment_post ), $saved['path'], 0, true ); if ( is_wp_error( $new_attachment_id ) ) { if ( 'db_update_error' === $new_attachment_id->get_error_code() ) { $new_attachment_id->add_data( array( 'status' => 500 ) ); } else { $new_attachment_id->add_data( array( 'status' => 400 ) ); } return $new_attachment_id; } // Copy the image alt text from the edited image. $image_alt = get_post_meta( $attachment_id, '_wp_attachment_image_alt', true ); if ( ! empty( $image_alt ) ) { // update_post_meta() expects slashed. update_post_meta( $new_attachment_id, '_wp_attachment_image_alt', wp_slash( $image_alt ) ); } if ( defined( 'REST_REQUEST' ) && REST_REQUEST ) { // Set a custom header with the attachment_id. // Used by the browser/client to resume creating image sub-sizes after a PHP fatal error. header( 'X-WP-Upload-Attachment-ID: ' . $new_attachment_id ); } // Generate image sub-sizes and meta. $new_image_meta = wp_generate_attachment_metadata( $new_attachment_id, $saved['path'] ); // Copy the EXIF metadata from the original attachment if not generated for the edited image. if ( isset( $image_meta['image_meta'] ) && isset( $new_image_meta['image_meta'] ) && is_array( $new_image_meta['image_meta'] ) ) { // Merge but skip empty values. foreach ( (array) $image_meta['image_meta'] as $key => $value ) { if ( empty( $new_image_meta['image_meta'][ $key ] ) && ! empty( $value ) ) { $new_image_meta['image_meta'][ $key ] = $value; } } } // Reset orientation. At this point the image is edited and orientation is correct. if ( ! empty( $new_image_meta['image_meta']['orientation'] ) ) { $new_image_meta['image_meta']['orientation'] = 1; } // The attachment_id may change if the site is exported and imported. $new_image_meta['parent_image'] = array( 'attachment_id' => $attachment_id, // Path to the originally uploaded image file relative to the uploads directory. 'file' => _wp_relative_upload_path( $image_file ), ); /** * Filters the meta data for the new image created by editing an existing image. * * @since 5.5.0 * * @param array $new_image_meta Meta data for the new image. * @param int $new_attachment_id Attachment post ID for the new image. * @param int $attachment_id Attachment post ID for the edited (parent) image. */ $new_image_meta = apply_filters( 'wp_edited_image_metadata', $new_image_meta, $new_attachment_id, $attachment_id ); wp_update_attachment_metadata( $new_attachment_id, $new_image_meta ); $response = $this->prepare_item_for_response( get_post( $new_attachment_id ), $request ); $response->set_status( 201 ); $response->header( 'Location', rest_url( sprintf( '%s/%s/%s', $this->namespace, $this->rest_base, $new_attachment_id ) ) ); return $response; } /** * Prepares a single attachment for create or update. * * @since 4.7.0 * * @param WP_REST_Request $request Request object. * @return stdClass|WP_Error Post object. */ protected function prepare_item_for_database( $request ) { $prepared_attachment = parent::prepare_item_for_database( $request ); // Attachment caption (post_excerpt internally). if ( isset( $request['caption'] ) ) { if ( is_string( $request['caption'] ) ) { $prepared_attachment->post_excerpt = $request['caption']; } elseif ( isset( $request['caption']['raw'] ) ) { $prepared_attachment->post_excerpt = $request['caption']['raw']; } } // Attachment description (post_content internally). if ( isset( $request['description'] ) ) { if ( is_string( $request['description'] ) ) { $prepared_attachment->post_content = $request['description']; } elseif ( isset( $request['description']['raw'] ) ) { $prepared_attachment->post_content = $request['description']['raw']; } } if ( isset( $request['post'] ) ) { $prepared_attachment->post_parent = (int) $request['post']; } return $prepared_attachment; } /** * Prepares a single attachment output for response. * * @since 4.7.0 * @since 5.9.0 Renamed `$post` to `$item` to match parent class for PHP 8 named parameter support. * * @param WP_Post $item Attachment object. * @param WP_REST_Request $request Request object. * @return WP_REST_Response Response object. */ public function prepare_item_for_response( $item, $request ) { // Restores the more descriptive, specific name for use within this method. $post = $item; $response = parent::prepare_item_for_response( $post, $request ); $fields = $this->get_fields_for_response( $request ); $data = $response->get_data(); if ( in_array( 'description', $fields, true ) ) { $data['description'] = array( 'raw' => $post->post_content, /** This filter is documented in wp-includes/post-template.php */ 'rendered' => apply_filters( 'the_content', $post->post_content ), ); } if ( in_array( 'caption', $fields, true ) ) { /** This filter is documented in wp-includes/post-template.php */ $caption = apply_filters( 'get_the_excerpt', $post->post_excerpt, $post ); /** This filter is documented in wp-includes/post-template.php */ $caption = apply_filters( 'the_excerpt', $caption ); $data['caption'] = array( 'raw' => $post->post_excerpt, 'rendered' => $caption, ); } if ( in_array( 'alt_text', $fields, true ) ) { $data['alt_text'] = get_post_meta( $post->ID, '_wp_attachment_image_alt', true ); } if ( in_array( 'media_type', $fields, true ) ) { $data['media_type'] = wp_attachment_is_image( $post->ID ) ? 'image' : 'file'; } if ( in_array( 'mime_type', $fields, true ) ) { $data['mime_type'] = $post->post_mime_type; } if ( in_array( 'media_details', $fields, true ) ) { $data['media_details'] = wp_get_attachment_metadata( $post->ID ); // Ensure empty details is an empty object. if ( empty( $data['media_details'] ) ) { $data['media_details'] = new stdClass; } elseif ( ! empty( $data['media_details']['sizes'] ) ) { foreach ( $data['media_details']['sizes'] as $size => &$size_data ) { if ( isset( $size_data['mime-type'] ) ) { $size_data['mime_type'] = $size_data['mime-type']; unset( $size_data['mime-type'] ); } // Use the same method image_downsize() does. $image_src = wp_get_attachment_image_src( $post->ID, $size ); if ( ! $image_src ) { continue; } $size_data['source_url'] = $image_src[0]; } $full_src = wp_get_attachment_image_src( $post->ID, 'full' ); if ( ! empty( $full_src ) ) { $data['media_details']['sizes']['full'] = array( 'file' => wp_basename( $full_src[0] ), 'width' => $full_src[1], 'height' => $full_src[2], 'mime_type' => $post->post_mime_type, 'source_url' => $full_src[0], ); } } else { $data['media_details']['sizes'] = new stdClass; } } if ( in_array( 'post', $fields, true ) ) { $data['post'] = ! empty( $post->post_parent ) ? (int) $post->post_parent : null; } if ( in_array( 'source_url', $fields, true ) ) { $data['source_url'] = wp_get_attachment_url( $post->ID ); } if ( in_array( 'missing_image_sizes', $fields, true ) ) { require_once ABSPATH . 'wp-admin/includes/image.php'; $data['missing_image_sizes'] = array_keys( wp_get_missing_image_subsizes( $post->ID ) ); } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->filter_response_by_context( $data, $context ); $links = $response->get_links(); // Wrap the data in a response object. $response = rest_ensure_response( $data ); foreach ( $links as $rel => $rel_links ) { foreach ( $rel_links as $link ) { $response->add_link( $rel, $link['href'], $link['attributes'] ); } } /** * Filters an attachment returned from the REST API. * * Allows modification of the attachment right before it is returned. * * @since 4.7.0 * * @param WP_REST_Response $response The response object. * @param WP_Post $post The original attachment post. * @param WP_REST_Request $request Request used to generate the response. */ return apply_filters( 'rest_prepare_attachment', $response, $post, $request ); } /** * Retrieves the attachment's schema, conforming to JSON Schema. * * @since 4.7.0 * * @return array Item schema as an array. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $schema = parent::get_item_schema(); $schema['properties']['alt_text'] = array( 'description' => __( 'Alternative text to display when attachment is not displayed.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'arg_options' => array( 'sanitize_callback' => 'sanitize_text_field', ), ); $schema['properties']['caption'] = array( 'description' => __( 'The attachment caption.' ), 'type' => 'object', 'context' => array( 'view', 'edit', 'embed' ), 'arg_options' => array( 'sanitize_callback' => null, // Note: sanitization implemented in self::prepare_item_for_database(). 'validate_callback' => null, // Note: validation implemented in self::prepare_item_for_database(). ), 'properties' => array( 'raw' => array( 'description' => __( 'Caption for the attachment, as it exists in the database.' ), 'type' => 'string', 'context' => array( 'edit' ), ), 'rendered' => array( 'description' => __( 'HTML caption for the attachment, transformed for display.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), ), ); $schema['properties']['description'] = array( 'description' => __( 'The attachment description.' ), 'type' => 'object', 'context' => array( 'view', 'edit' ), 'arg_options' => array( 'sanitize_callback' => null, // Note: sanitization implemented in self::prepare_item_for_database(). 'validate_callback' => null, // Note: validation implemented in self::prepare_item_for_database(). ), 'properties' => array( 'raw' => array( 'description' => __( 'Description for the attachment, as it exists in the database.' ), 'type' => 'string', 'context' => array( 'edit' ), ), 'rendered' => array( 'description' => __( 'HTML description for the attachment, transformed for display.' ), 'type' => 'string', 'context' => array( 'view', 'edit' ), 'readonly' => true, ), ), ); $schema['properties']['media_type'] = array( 'description' => __( 'Attachment type.' ), 'type' => 'string', 'enum' => array( 'image', 'file' ), 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ); $schema['properties']['mime_type'] = array( 'description' => __( 'The attachment MIME type.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ); $schema['properties']['media_details'] = array( 'description' => __( 'Details about the media file, specific to its type.' ), 'type' => 'object', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ); $schema['properties']['post'] = array( 'description' => __( 'The ID for the associated post of the attachment.' ), 'type' => 'integer', 'context' => array( 'view', 'edit' ), ); $schema['properties']['source_url'] = array( 'description' => __( 'URL to the original attachment file.' ), 'type' => 'string', 'format' => 'uri', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ); $schema['properties']['missing_image_sizes'] = array( 'description' => __( 'List of the missing image sizes of the attachment.' ), 'type' => 'array', 'items' => array( 'type' => 'string' ), 'context' => array( 'edit' ), 'readonly' => true, ); unset( $schema['properties']['password'] ); $this->schema = $schema; return $this->add_additional_fields_schema( $this->schema ); } /** * Handles an upload via raw POST data. * * @since 4.7.0 * * @param array $data Supplied file data. * @param array $headers HTTP headers from the request. * @return array|WP_Error Data from wp_handle_sideload(). */ protected function upload_from_data( $data, $headers ) { if ( empty( $data ) ) { return new WP_Error( 'rest_upload_no_data', __( 'No data supplied.' ), array( 'status' => 400 ) ); } if ( empty( $headers['content_type'] ) ) { return new WP_Error( 'rest_upload_no_content_type', __( 'No Content-Type supplied.' ), array( 'status' => 400 ) ); } if ( empty( $headers['content_disposition'] ) ) { return new WP_Error( 'rest_upload_no_content_disposition', __( 'No Content-Disposition supplied.' ), array( 'status' => 400 ) ); } $filename = self::get_filename_from_disposition( $headers['content_disposition'] ); if ( empty( $filename ) ) { return new WP_Error( 'rest_upload_invalid_disposition', __( 'Invalid Content-Disposition supplied. Content-Disposition needs to be formatted as `attachment; filename="image.png"` or similar.' ), array( 'status' => 400 ) ); } if ( ! empty( $headers['content_md5'] ) ) { $content_md5 = array_shift( $headers['content_md5'] ); $expected = trim( $content_md5 ); $actual = md5( $data ); if ( $expected !== $actual ) { return new WP_Error( 'rest_upload_hash_mismatch', __( 'Content hash did not match expected.' ), array( 'status' => 412 ) ); } } // Get the content-type. $type = array_shift( $headers['content_type'] ); // Include filesystem functions to get access to wp_tempnam() and wp_handle_sideload(). require_once ABSPATH . 'wp-admin/includes/file.php'; // Save the file. $tmpfname = wp_tempnam( $filename ); $fp = fopen( $tmpfname, 'w+' ); if ( ! $fp ) { return new WP_Error( 'rest_upload_file_error', __( 'Could not open file handle.' ), array( 'status' => 500 ) ); } fwrite( $fp, $data ); fclose( $fp ); // Now, sideload it in. $file_data = array( 'error' => null, 'tmp_name' => $tmpfname, 'name' => $filename, 'type' => $type, ); $size_check = self::check_upload_size( $file_data ); if ( is_wp_error( $size_check ) ) { return $size_check; } $overrides = array( 'test_form' => false, ); $sideloaded = wp_handle_sideload( $file_data, $overrides ); if ( isset( $sideloaded['error'] ) ) { @unlink( $tmpfname ); return new WP_Error( 'rest_upload_sideload_error', $sideloaded['error'], array( 'status' => 500 ) ); } return $sideloaded; } /** * Parses filename from a Content-Disposition header value. * * As per RFC6266: * * content-disposition = "Content-Disposition" ":" * disposition-type *( ";" disposition-parm ) * * disposition-type = "inline" | "attachment" | disp-ext-type * ; case-insensitive * disp-ext-type = token * * disposition-parm = filename-parm | disp-ext-parm * * filename-parm = "filename" "=" value * | "filename*" "=" ext-value * * disp-ext-parm = token "=" value * | ext-token "=" ext-value * ext-token = * * @since 4.7.0 * * @link https://tools.ietf.org/html/rfc2388 * @link https://tools.ietf.org/html/rfc6266 * * @param string[] $disposition_header List of Content-Disposition header values. * @return string|null Filename if available, or null if not found. */ public static function get_filename_from_disposition( $disposition_header ) { // Get the filename. $filename = null; foreach ( $disposition_header as $value ) { $value = trim( $value ); if ( strpos( $value, ';' ) === false ) { continue; } list( $type, $attr_parts ) = explode( ';', $value, 2 ); $attr_parts = explode( ';', $attr_parts ); $attributes = array(); foreach ( $attr_parts as $part ) { if ( strpos( $part, '=' ) === false ) { continue; } list( $key, $value ) = explode( '=', $part, 2 ); $attributes[ trim( $key ) ] = trim( $value ); } if ( empty( $attributes['filename'] ) ) { continue; } $filename = trim( $attributes['filename'] ); // Unquote quoted filename, but after trimming. if ( substr( $filename, 0, 1 ) === '"' && substr( $filename, -1, 1 ) === '"' ) { $filename = substr( $filename, 1, -1 ); } } return $filename; } /** * Retrieves the query params for collections of attachments. * * @since 4.7.0 * * @return array Query parameters for the attachment collection as an array. */ public function get_collection_params() { $params = parent::get_collection_params(); $params['status']['default'] = 'inherit'; $params['status']['items']['enum'] = array( 'inherit', 'private', 'trash' ); $media_types = $this->get_media_types(); $params['media_type'] = array( 'default' => null, 'description' => __( 'Limit result set to attachments of a particular media type.' ), 'type' => 'string', 'enum' => array_keys( $media_types ), ); $params['mime_type'] = array( 'default' => null, 'description' => __( 'Limit result set to attachments of a particular MIME type.' ), 'type' => 'string', ); return $params; } /** * Handles an upload via multipart/form-data ($_FILES). * * @since 4.7.0 * * @param array $files Data from the `$_FILES` superglobal. * @param array $headers HTTP headers from the request. * @return array|WP_Error Data from wp_handle_upload(). */ protected function upload_from_file( $files, $headers ) { if ( empty( $files ) ) { return new WP_Error( 'rest_upload_no_data', __( 'No data supplied.' ), array( 'status' => 400 ) ); } // Verify hash, if given. if ( ! empty( $headers['content_md5'] ) ) { $content_md5 = array_shift( $headers['content_md5'] ); $expected = trim( $content_md5 ); $actual = md5_file( $files['file']['tmp_name'] ); if ( $expected !== $actual ) { return new WP_Error( 'rest_upload_hash_mismatch', __( 'Content hash did not match expected.' ), array( 'status' => 412 ) ); } } // Pass off to WP to handle the actual upload. $overrides = array( 'test_form' => false, ); // Bypasses is_uploaded_file() when running unit tests. if ( defined( 'DIR_TESTDATA' ) && DIR_TESTDATA ) { $overrides['action'] = 'wp_handle_mock_upload'; } $size_check = self::check_upload_size( $files['file'] ); if ( is_wp_error( $size_check ) ) { return $size_check; } // Include filesystem functions to get access to wp_handle_upload(). require_once ABSPATH . 'wp-admin/includes/file.php'; $file = wp_handle_upload( $files['file'], $overrides ); if ( isset( $file['error'] ) ) { return new WP_Error( 'rest_upload_unknown_error', $file['error'], array( 'status' => 500 ) ); } return $file; } /** * Retrieves the supported media types. * * Media types are considered the MIME type category. * * @since 4.7.0 * * @return array Array of supported media types. */ protected function get_media_types() { $media_types = array(); foreach ( get_allowed_mime_types() as $mime_type ) { $parts = explode( '/', $mime_type ); if ( ! isset( $media_types[ $parts[0] ] ) ) { $media_types[ $parts[0] ] = array(); } $media_types[ $parts[0] ][] = $mime_type; } return $media_types; } /** * Determine if uploaded file exceeds space quota on multisite. * * Replicates check_upload_size(). * * @since 4.9.8 * * @param array $file $_FILES array for a given file. * @return true|WP_Error True if can upload, error for errors. */ protected function check_upload_size( $file ) { if ( ! is_multisite() ) { return true; } if ( get_site_option( 'upload_space_check_disabled' ) ) { return true; } $space_left = get_upload_space_available(); $file_size = filesize( $file['tmp_name'] ); if ( $space_left < $file_size ) { return new WP_Error( 'rest_upload_limited_space', /* translators: %s: Required disk space in kilobytes. */ sprintf( __( 'Not enough space to upload. %s KB needed.' ), number_format( ( $file_size - $space_left ) / KB_IN_BYTES ) ), array( 'status' => 400 ) ); } if ( $file_size > ( KB_IN_BYTES * get_site_option( 'fileupload_maxk', 1500 ) ) ) { return new WP_Error( 'rest_upload_file_too_big', /* translators: %s: Maximum allowed file size in kilobytes. */ sprintf( __( 'This file is too big. Files must be less than %s KB in size.' ), get_site_option( 'fileupload_maxk', 1500 ) ), array( 'status' => 400 ) ); } // Include multisite admin functions to get access to upload_is_user_over_quota(). require_once ABSPATH . 'wp-admin/includes/ms.php'; if ( upload_is_user_over_quota( false ) ) { return new WP_Error( 'rest_upload_user_quota_exceeded', __( 'You have used your space quota. Please delete files before uploading.' ), array( 'status' => 400 ) ); } return true; } /** * Gets the request args for the edit item route. * * @since 5.5.0 * * @return array */ protected function get_edit_media_item_args() { return array( 'src' => array( 'description' => __( 'URL to the edited image file.' ), 'type' => 'string', 'format' => 'uri', 'required' => true, ), 'modifiers' => array( 'description' => __( 'Array of image edits.' ), 'type' => 'array', 'minItems' => 1, 'items' => array( 'description' => __( 'Image edit.' ), 'type' => 'object', 'required' => array( 'type', 'args', ), 'oneOf' => array( array( 'title' => __( 'Rotation' ), 'properties' => array( 'type' => array( 'description' => __( 'Rotation type.' ), 'type' => 'string', 'enum' => array( 'rotate' ), ), 'args' => array( 'description' => __( 'Rotation arguments.' ), 'type' => 'object', 'required' => array( 'angle', ), 'properties' => array( 'angle' => array( 'description' => __( 'Angle to rotate clockwise in degrees.' ), 'type' => 'number', ), ), ), ), ), array( 'title' => __( 'Crop' ), 'properties' => array( 'type' => array( 'description' => __( 'Crop type.' ), 'type' => 'string', 'enum' => array( 'crop' ), ), 'args' => array( 'description' => __( 'Crop arguments.' ), 'type' => 'object', 'required' => array( 'left', 'top', 'width', 'height', ), 'properties' => array( 'left' => array( 'description' => __( 'Horizontal position from the left to begin the crop as a percentage of the image width.' ), 'type' => 'number', ), 'top' => array( 'description' => __( 'Vertical position from the top to begin the crop as a percentage of the image height.' ), 'type' => 'number', ), 'width' => array( 'description' => __( 'Width of the crop as a percentage of the image width.' ), 'type' => 'number', ), 'height' => array( 'description' => __( 'Height of the crop as a percentage of the image height.' ), 'type' => 'number', ), ), ), ), ), ), ), ), 'rotation' => array( 'description' => __( 'The amount to rotate the image clockwise in degrees. DEPRECATED: Use `modifiers` instead.' ), 'type' => 'integer', 'minimum' => 0, 'exclusiveMinimum' => true, 'maximum' => 360, 'exclusiveMaximum' => true, ), 'x' => array( 'description' => __( 'As a percentage of the image, the x position to start the crop from. DEPRECATED: Use `modifiers` instead.' ), 'type' => 'number', 'minimum' => 0, 'maximum' => 100, ), 'y' => array( 'description' => __( 'As a percentage of the image, the y position to start the crop from. DEPRECATED: Use `modifiers` instead.' ), 'type' => 'number', 'minimum' => 0, 'maximum' => 100, ), 'width' => array( 'description' => __( 'As a percentage of the image, the width to crop the image to. DEPRECATED: Use `modifiers` instead.' ), 'type' => 'number', 'minimum' => 0, 'maximum' => 100, ), 'height' => array( 'description' => __( 'As a percentage of the image, the height to crop the image to. DEPRECATED: Use `modifiers` instead.' ), 'type' => 'number', 'minimum' => 0, 'maximum' => 100, ), ); } } PKj l\@Rn))Arest-api/endpoints/class-wp-rest-pattern-directory-controller.phpnu[namespace = 'wp/v2'; $this->rest_base = 'pattern-directory'; } /** * Registers the necessary REST API routes. * * @since 5.8.0 */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base . '/patterns', array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Checks whether a given request has permission to view the local block pattern directory. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has permission, WP_Error object otherwise. */ public function get_items_permissions_check( $request ) { if ( current_user_can( 'edit_posts' ) ) { return true; } foreach ( get_post_types( array( 'show_in_rest' => true ), 'objects' ) as $post_type ) { if ( current_user_can( $post_type->cap->edit_posts ) ) { return true; } } return new WP_Error( 'rest_pattern_directory_cannot_view', __( 'Sorry, you are not allowed to browse the local block pattern directory.' ), array( 'status' => rest_authorization_required_code() ) ); } /** * Search and retrieve block patterns metadata * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_items( $request ) { /* * Include an unmodified `$wp_version`, so the API can craft a response that's tailored to * it. Some plugins modify the version in a misguided attempt to improve security by * obscuring the version, which can cause invalid requests. */ require ABSPATH . WPINC . '/version.php'; $query_args = array( 'locale' => get_user_locale(), 'wp-version' => $wp_version, ); $category_id = $request['category']; $keyword_id = $request['keyword']; $search_term = $request['search']; if ( $category_id ) { $query_args['pattern-categories'] = $category_id; } if ( $keyword_id ) { $query_args['pattern-keywords'] = $keyword_id; } if ( $search_term ) { $query_args['search'] = $search_term; } /* * Include a hash of the query args, so that different requests are stored in * separate caches. * * MD5 is chosen for its speed, low-collision rate, universal availability, and to stay * under the character limit for `_site_transient_timeout_{...}` keys. * * @link https://stackoverflow.com/questions/3665247/fastest-hash-for-non-cryptographic-uses */ $transient_key = 'wp_remote_block_patterns_' . md5( implode( '-', $query_args ) ); /* * Use network-wide transient to improve performance. The locale is the only site * configuration that affects the response, and it's included in the transient key. */ $raw_patterns = get_site_transient( $transient_key ); if ( ! $raw_patterns ) { $api_url = add_query_arg( array_map( 'rawurlencode', $query_args ), 'http://api.wordpress.org/patterns/1.0/' ); if ( wp_http_supports( array( 'ssl' ) ) ) { $api_url = set_url_scheme( $api_url, 'https' ); } /* * Default to a short TTL, to mitigate cache stampedes on high-traffic sites. * This assumes that most errors will be short-lived, e.g., packet loss that causes the * first request to fail, but a follow-up one will succeed. The value should be high * enough to avoid stampedes, but low enough to not interfere with users manually * re-trying a failed request. */ $cache_ttl = 5; $wporg_response = wp_remote_get( $api_url ); $raw_patterns = json_decode( wp_remote_retrieve_body( $wporg_response ) ); if ( is_wp_error( $wporg_response ) ) { $raw_patterns = $wporg_response; } elseif ( ! is_array( $raw_patterns ) ) { // HTTP request succeeded, but response data is invalid. $raw_patterns = new WP_Error( 'pattern_api_failed', sprintf( /* translators: %s: Support forums URL. */ __( 'An unexpected error occurred. Something may be wrong with WordPress.org or this server’s configuration. If you continue to have problems, please try the support forums.' ), __( 'https://wordpress.org/support/forums/' ) ), array( 'response' => wp_remote_retrieve_body( $wporg_response ), ) ); } else { // Response has valid data. $cache_ttl = HOUR_IN_SECONDS; } set_site_transient( $transient_key, $raw_patterns, $cache_ttl ); } if ( is_wp_error( $raw_patterns ) ) { $raw_patterns->add_data( array( 'status' => 500 ) ); return $raw_patterns; } $response = array(); if ( $raw_patterns ) { foreach ( $raw_patterns as $pattern ) { $response[] = $this->prepare_response_for_collection( $this->prepare_item_for_response( $pattern, $request ) ); } } return new WP_REST_Response( $response ); } /** * Prepare a raw block pattern before it gets output in a REST API response. * * @since 5.8.0 * @since 5.9.0 Renamed `$raw_pattern` to `$item` to match parent class for PHP 8 named parameter support. * * @param object $item Raw pattern from api.wordpress.org, before any changes. * @param WP_REST_Request $request Request object. * @return WP_REST_Response */ public function prepare_item_for_response( $item, $request ) { // Restores the more descriptive, specific name for use within this method. $raw_pattern = $item; $prepared_pattern = array( 'id' => absint( $raw_pattern->id ), 'title' => sanitize_text_field( $raw_pattern->title->rendered ), 'content' => wp_kses_post( $raw_pattern->pattern_content ), 'categories' => array_map( 'sanitize_title', $raw_pattern->category_slugs ), 'keywords' => array_map( 'sanitize_text_field', explode( ',', $raw_pattern->meta->wpop_keywords ) ), 'description' => sanitize_text_field( $raw_pattern->meta->wpop_description ), 'viewport_width' => absint( $raw_pattern->meta->wpop_viewport_width ), ); $prepared_pattern = $this->add_additional_fields_to_object( $prepared_pattern, $request ); $response = new WP_REST_Response( $prepared_pattern ); /** * Filters the REST API response for a block pattern. * * @since 5.8.0 * * @param WP_REST_Response $response The response object. * @param object $raw_pattern The unprepared block pattern. * @param WP_REST_Request $request The request object. */ return apply_filters( 'rest_prepare_block_pattern', $response, $raw_pattern, $request ); } /** * Retrieves the block pattern's schema, conforming to JSON Schema. * * @since 5.8.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $this->schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'pattern-directory-item', 'type' => 'object', 'properties' => array( 'id' => array( 'description' => __( 'The pattern ID.' ), 'type' => 'integer', 'minimum' => 1, 'context' => array( 'view', 'embed' ), ), 'title' => array( 'description' => __( 'The pattern title, in human readable format.' ), 'type' => 'string', 'minLength' => 1, 'context' => array( 'view', 'embed' ), ), 'content' => array( 'description' => __( 'The pattern content.' ), 'type' => 'string', 'minLength' => 1, 'context' => array( 'view', 'embed' ), ), 'categories' => array( 'description' => __( "The pattern's category slugs." ), 'type' => 'array', 'uniqueItems' => true, 'items' => array( 'type' => 'string' ), 'context' => array( 'view', 'embed' ), ), 'keywords' => array( 'description' => __( "The pattern's keywords." ), 'type' => 'array', 'uniqueItems' => true, 'items' => array( 'type' => 'string' ), 'context' => array( 'view', 'embed' ), ), 'description' => array( 'description' => __( 'A description of the pattern.' ), 'type' => 'string', 'minLength' => 1, 'context' => array( 'view', 'embed' ), ), 'viewport_width' => array( 'description' => __( 'The preferred width of the viewport when previewing a pattern, in pixels.' ), 'type' => 'integer', 'context' => array( 'view', 'embed' ), ), ), ); return $this->add_additional_fields_schema( $this->schema ); } /** * Retrieves the search parameters for the block pattern's collection. * * @since 5.8.0 * * @return array Collection parameters. */ public function get_collection_params() { $query_params = parent::get_collection_params(); // Pagination is not supported. unset( $query_params['page'] ); unset( $query_params['per_page'] ); $query_params['search']['minLength'] = 1; $query_params['context']['default'] = 'view'; $query_params['category'] = array( 'description' => __( 'Limit results to those matching a category ID.' ), 'type' => 'integer', 'minimum' => 1, ); $query_params['keyword'] = array( 'description' => __( 'Limit results to those matching a keyword ID.' ), 'type' => 'integer', 'minimum' => 1, ); /** * Filter collection parameters for the block pattern directory controller. * * @since 5.8.0 * * @param array $query_params JSON Schema-formatted collection parameters. */ return apply_filters( 'rest_pattern_directory_collection_params', $query_params ); } } PKj l\%O339rest-api/endpoints/class-wp-rest-autosaves-controller.phpnu[parent_post_type = $parent_post_type; $post_type_object = get_post_type_object( $parent_post_type ); $parent_controller = $post_type_object->get_rest_controller(); if ( ! $parent_controller ) { $parent_controller = new WP_REST_Posts_Controller( $parent_post_type ); } $this->parent_controller = $parent_controller; $this->revisions_controller = new WP_REST_Revisions_Controller( $parent_post_type ); $this->rest_base = 'autosaves'; $this->namespace = ! empty( $post_type_object->rest_namespace ) ? $post_type_object->rest_namespace : 'wp/v2'; $this->parent_base = ! empty( $post_type_object->rest_base ) ? $post_type_object->rest_base : $post_type_object->name; } /** * Registers the routes for autosaves. * * @since 5.0.0 * * @see register_rest_route() */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->parent_base . '/(?P[\d]+)/' . $this->rest_base, array( 'args' => array( 'parent' => array( 'description' => __( 'The ID for the parent of the autosave.' ), 'type' => 'integer', ), ), array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), array( 'methods' => WP_REST_Server::CREATABLE, 'callback' => array( $this, 'create_item' ), 'permission_callback' => array( $this, 'create_item_permissions_check' ), 'args' => $this->parent_controller->get_endpoint_args_for_item_schema( WP_REST_Server::EDITABLE ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->parent_base . '/(?P[\d]+)/' . $this->rest_base . '/(?P[\d]+)', array( 'args' => array( 'parent' => array( 'description' => __( 'The ID for the parent of the autosave.' ), 'type' => 'integer', ), 'id' => array( 'description' => __( 'The ID for the autosave.' ), 'type' => 'integer', ), ), array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => array( $this->revisions_controller, 'get_item_permissions_check' ), 'args' => array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Get the parent post. * * @since 5.0.0 * * @param int $parent_id Supplied ID. * @return WP_Post|WP_Error Post object if ID is valid, WP_Error otherwise. */ protected function get_parent( $parent_id ) { return $this->revisions_controller->get_parent( $parent_id ); } /** * Checks if a given request has access to get autosaves. * * @since 5.0.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_items_permissions_check( $request ) { $parent = $this->get_parent( $request['id'] ); if ( is_wp_error( $parent ) ) { return $parent; } if ( ! current_user_can( 'edit_post', $parent->ID ) ) { return new WP_Error( 'rest_cannot_read', __( 'Sorry, you are not allowed to view autosaves of this post.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Checks if a given request has access to create an autosave revision. * * Autosave revisions inherit permissions from the parent post, * check if the current user has permission to edit the post. * * @since 5.0.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to create the item, WP_Error object otherwise. */ public function create_item_permissions_check( $request ) { $id = $request->get_param( 'id' ); if ( empty( $id ) ) { return new WP_Error( 'rest_post_invalid_id', __( 'Invalid item ID.' ), array( 'status' => 404 ) ); } return $this->parent_controller->update_item_permissions_check( $request ); } /** * Creates, updates or deletes an autosave revision. * * @since 5.0.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function create_item( $request ) { if ( ! defined( 'DOING_AUTOSAVE' ) ) { define( 'DOING_AUTOSAVE', true ); } $post = get_post( $request['id'] ); if ( is_wp_error( $post ) ) { return $post; } $prepared_post = $this->parent_controller->prepare_item_for_database( $request ); $prepared_post->ID = $post->ID; $user_id = get_current_user_id(); if ( ( 'draft' === $post->post_status || 'auto-draft' === $post->post_status ) && $post->post_author == $user_id ) { // Draft posts for the same author: autosaving updates the post and does not create a revision. // Convert the post object to an array and add slashes, wp_update_post() expects escaped array. $autosave_id = wp_update_post( wp_slash( (array) $prepared_post ), true ); } else { // Non-draft posts: create or update the post autosave. $autosave_id = $this->create_post_autosave( (array) $prepared_post ); } if ( is_wp_error( $autosave_id ) ) { return $autosave_id; } $autosave = get_post( $autosave_id ); $request->set_param( 'context', 'edit' ); $response = $this->prepare_item_for_response( $autosave, $request ); $response = rest_ensure_response( $response ); return $response; } /** * Get the autosave, if the ID is valid. * * @since 5.0.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_Post|WP_Error Revision post object if ID is valid, WP_Error otherwise. */ public function get_item( $request ) { $parent_id = (int) $request->get_param( 'parent' ); if ( $parent_id <= 0 ) { return new WP_Error( 'rest_post_invalid_id', __( 'Invalid post parent ID.' ), array( 'status' => 404 ) ); } $autosave = wp_get_post_autosave( $parent_id ); if ( ! $autosave ) { return new WP_Error( 'rest_post_no_autosave', __( 'There is no autosave revision for this post.' ), array( 'status' => 404 ) ); } $response = $this->prepare_item_for_response( $autosave, $request ); return $response; } /** * Gets a collection of autosaves using wp_get_post_autosave. * * Contains the user's autosave, for empty if it doesn't exist. * * @since 5.0.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_items( $request ) { $parent = $this->get_parent( $request['id'] ); if ( is_wp_error( $parent ) ) { return $parent; } $response = array(); $parent_id = $parent->ID; $revisions = wp_get_post_revisions( $parent_id, array( 'check_enabled' => false ) ); foreach ( $revisions as $revision ) { if ( false !== strpos( $revision->post_name, "{$parent_id}-autosave" ) ) { $data = $this->prepare_item_for_response( $revision, $request ); $response[] = $this->prepare_response_for_collection( $data ); } } return rest_ensure_response( $response ); } /** * Retrieves the autosave's schema, conforming to JSON Schema. * * @since 5.0.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $schema = $this->revisions_controller->get_item_schema(); $schema['properties']['preview_link'] = array( 'description' => __( 'Preview link for the post.' ), 'type' => 'string', 'format' => 'uri', 'context' => array( 'edit' ), 'readonly' => true, ); $this->schema = $schema; return $this->add_additional_fields_schema( $this->schema ); } /** * Creates autosave for the specified post. * * From wp-admin/post.php. * * @since 5.0.0 * * @param array $post_data Associative array containing the post data. * @return mixed The autosave revision ID or WP_Error. */ public function create_post_autosave( $post_data ) { $post_id = (int) $post_data['ID']; $post = get_post( $post_id ); if ( is_wp_error( $post ) ) { return $post; } $user_id = get_current_user_id(); // Store one autosave per author. If there is already an autosave, overwrite it. $old_autosave = wp_get_post_autosave( $post_id, $user_id ); if ( $old_autosave ) { $new_autosave = _wp_post_revision_data( $post_data, true ); $new_autosave['ID'] = $old_autosave->ID; $new_autosave['post_author'] = $user_id; // If the new autosave has the same content as the post, delete the autosave. $autosave_is_different = false; foreach ( array_intersect( array_keys( $new_autosave ), array_keys( _wp_post_revision_fields( $post ) ) ) as $field ) { if ( normalize_whitespace( $new_autosave[ $field ] ) !== normalize_whitespace( $post->$field ) ) { $autosave_is_different = true; break; } } if ( ! $autosave_is_different ) { wp_delete_post_revision( $old_autosave->ID ); return new WP_Error( 'rest_autosave_no_changes', __( 'There is nothing to save. The autosave and the post content are the same.' ), array( 'status' => 400 ) ); } /** This filter is documented in wp-admin/post.php */ do_action( 'wp_creating_autosave', $new_autosave ); // wp_update_post() expects escaped array. return wp_update_post( wp_slash( $new_autosave ) ); } // Create the new autosave as a special post revision. return _wp_put_post_revision( $post_data, true ); } /** * Prepares the revision for the REST response. * * @since 5.0.0 * @since 5.9.0 Renamed `$post` to `$item` to match parent class for PHP 8 named parameter support. * * @param WP_Post $item Post revision object. * @param WP_REST_Request $request Request object. * @return WP_REST_Response Response object. */ public function prepare_item_for_response( $item, $request ) { // Restores the more descriptive, specific name for use within this method. $post = $item; $response = $this->revisions_controller->prepare_item_for_response( $post, $request ); $fields = $this->get_fields_for_response( $request ); if ( in_array( 'preview_link', $fields, true ) ) { $parent_id = wp_is_post_autosave( $post ); $preview_post_id = false === $parent_id ? $post->ID : $parent_id; $preview_query_args = array(); if ( false !== $parent_id ) { $preview_query_args['preview_id'] = $parent_id; $preview_query_args['preview_nonce'] = wp_create_nonce( 'post_preview_' . $parent_id ); } $response->data['preview_link'] = get_preview_post_link( $preview_post_id, $preview_query_args ); } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $response->data = $this->add_additional_fields_to_object( $response->data, $request ); $response->data = $this->filter_response_by_context( $response->data, $context ); /** * Filters a revision returned from the REST API. * * Allows modification of the revision right before it is returned. * * @since 5.0.0 * * @param WP_REST_Response $response The response object. * @param WP_Post $post The original revision object. * @param WP_REST_Request $request Request used to generate the response. */ return apply_filters( 'rest_prepare_autosave', $response, $post, $request ); } /** * Retrieves the query params for the autosaves collection. * * @since 5.0.0 * * @return array Collection parameters. */ public function get_collection_params() { return array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ); } } PKj l\:];P;P;rest-api/endpoints/class-wp-rest-url-details-controller.phpnu[namespace = 'wp-block-editor/v1'; $this->rest_base = 'url-details'; } /** * Registers the necessary REST API routes. * * @since 5.9.0 */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'parse_url_details' ), 'args' => array( 'url' => array( 'required' => true, 'description' => __( 'The URL to process.' ), 'validate_callback' => 'wp_http_validate_url', 'sanitize_callback' => 'esc_url_raw', 'type' => 'string', 'format' => 'uri', ), ), 'permission_callback' => array( $this, 'permissions_check' ), 'schema' => array( $this, 'get_public_item_schema' ), ), ) ); } /** * Retrieves the item's schema, conforming to JSON Schema. * * @since 5.9.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $this->schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'url-details', 'type' => 'object', 'properties' => array( 'title' => array( 'description' => sprintf( /* translators: %s: HTML title tag. */ __( 'The contents of the %s element from the URL.' ), '' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'icon' => array( 'description' => sprintf( /* translators: %s: HTML link tag. */ __( 'The favicon image link of the %s element from the URL.' ), '<link rel="icon">' ), 'type' => 'string', 'format' => 'uri', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'description' => array( 'description' => sprintf( /* translators: %s: HTML meta tag. */ __( 'The content of the %s element from the URL.' ), '<meta name="description">' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'image' => array( 'description' => sprintf( /* translators: 1: HTML meta tag, 2: HTML meta tag. */ __( 'The Open Graph image link of the %1$s or %2$s element from the URL.' ), '<meta property="og:image">', '<meta property="og:image:url">' ), 'type' => 'string', 'format' => 'uri', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), ), ); return $this->add_additional_fields_schema( $this->schema ); } /** * Retrieves the contents of the `<title>` tag from the HTML response. * * @since 5.9.0 * * @param WP_REST_REQUEST $request Full details about the request. * @return WP_REST_Response|WP_Error The parsed details as a response object. WP_Error if there are errors. */ public function parse_url_details( $request ) { $url = untrailingslashit( $request['url'] ); if ( empty( $url ) ) { return new WP_Error( 'rest_invalid_url', __( 'Invalid URL' ), array( 'status' => 404 ) ); } // Transient per URL. $cache_key = $this->build_cache_key_for_url( $url ); // Attempt to retrieve cached response. $cached_response = $this->get_cache( $cache_key ); if ( ! empty( $cached_response ) ) { $remote_url_response = $cached_response; } else { $remote_url_response = $this->get_remote_url( $url ); // Exit if we don't have a valid body or it's empty. if ( is_wp_error( $remote_url_response ) || empty( $remote_url_response ) ) { return $remote_url_response; } // Cache the valid response. $this->set_cache( $cache_key, $remote_url_response ); } $html_head = $this->get_document_head( $remote_url_response ); $meta_elements = $this->get_meta_with_content_elements( $html_head ); $data = $this->add_additional_fields_to_object( array( 'title' => $this->get_title( $html_head ), 'icon' => $this->get_icon( $html_head, $url ), 'description' => $this->get_description( $meta_elements ), 'image' => $this->get_image( $meta_elements, $url ), ), $request ); // Wrap the data in a response object. $response = rest_ensure_response( $data ); /** * Filters the URL data for the response. * * @since 5.9.0 * * @param WP_REST_Response $response The response object. * @param string $url The requested URL. * @param WP_REST_Request $request Request object. * @param string $remote_url_response HTTP response body from the remote URL. */ return apply_filters( 'rest_prepare_url_details', $response, $url, $request, $remote_url_response ); } /** * Checks whether a given request has permission to read remote urls. * * @since 5.9.0 * * @return WP_Error|bool True if the request has permission, else WP_Error. */ public function permissions_check() { if ( current_user_can( 'edit_posts' ) ) { return true; } foreach ( get_post_types( array( 'show_in_rest' => true ), 'objects' ) as $post_type ) { if ( current_user_can( $post_type->cap->edit_posts ) ) { return true; } } return new WP_Error( 'rest_cannot_view_url_details', __( 'Sorry, you are not allowed to process remote urls.' ), array( 'status' => rest_authorization_required_code() ) ); } /** * Retrieves the document title from a remote URL. * * @since 5.9.0 * * @param string $url The website URL whose HTML to access. * @return string|WP_Error The HTTP response from the remote URL on success. * WP_Error if no response or no content. */ private function get_remote_url( $url ) { /* * Provide a modified UA string to workaround web properties which block WordPress "Pingbacks". * Why? The UA string used for pingback requests contains `WordPress/` which is very similar * to that used as the default UA string by the WP HTTP API. Therefore requests from this * REST endpoint are being unintentionally blocked as they are misidentified as pingback requests. * By slightly modifying the UA string, but still retaining the "WordPress" identification (via "WP") * we are able to work around this issue. * Example UA string: `WP-URLDetails/5.9-alpha-51389 (+http://localhost:8888)`. */ $modified_user_agent = 'WP-URLDetails/' . get_bloginfo( 'version' ) . ' (+' . get_bloginfo( 'url' ) . ')'; $args = array( 'limit_response_size' => 150 * KB_IN_BYTES, 'user-agent' => $modified_user_agent, ); /** * Filters the HTTP request args for URL data retrieval. * * Can be used to adjust response size limit and other WP_Http::request args. * * @since 5.9.0 * * @param array $args Arguments used for the HTTP request. * @param string $url The attempted URL. */ $args = apply_filters( 'rest_url_details_http_request_args', $args, $url ); $response = wp_safe_remote_get( $url, $args ); if ( WP_Http::OK !== wp_remote_retrieve_response_code( $response ) ) { // Not saving the error response to cache since the error might be temporary. return new WP_Error( 'no_response', __( 'URL not found. Response returned a non-200 status code for this URL.' ), array( 'status' => WP_Http::NOT_FOUND ) ); } $remote_body = wp_remote_retrieve_body( $response ); if ( empty( $remote_body ) ) { return new WP_Error( 'no_content', __( 'Unable to retrieve body from response at this URL.' ), array( 'status' => WP_Http::NOT_FOUND ) ); } return $remote_body; } /** * Parses the `<title>` contents from the provided HTML. * * @since 5.9.0 * * @param string $html The HTML from the remote website at URL. * @return string The title tag contents on success. Empty string if not found. */ private function get_title( $html ) { $pattern = '#<title[^>]*>(.*?)<\s*/\s*title>#is'; preg_match( $pattern, $html, $match_title ); if ( empty( $match_title[1] ) || ! is_string( $match_title[1] ) ) { return ''; } $title = trim( $match_title[1] ); return $this->prepare_metadata_for_output( $title ); } /** * Parses the site icon from the provided HTML. * * @since 5.9.0 * * @param string $html The HTML from the remote website at URL. * @param string $url The target website URL. * @return string The icon URI on success. Empty string if not found. */ private function get_icon( $html, $url ) { // Grab the icon's link element. $pattern = '#<link\s[^>]*rel=(?:[\"\']??)\s*(?:icon|shortcut icon|icon shortcut)\s*(?:[\"\']??)[^>]*\/?>#isU'; preg_match( $pattern, $html, $element ); if ( empty( $element[0] ) || ! is_string( $element[0] ) ) { return ''; } $element = trim( $element[0] ); // Get the icon's href value. $pattern = '#href=([\"\']??)([^\" >]*?)\\1[^>]*#isU'; preg_match( $pattern, $element, $icon ); if ( empty( $icon[2] ) || ! is_string( $icon[2] ) ) { return ''; } $icon = trim( $icon[2] ); // If the icon is a data URL, return it. $parsed_icon = parse_url( $icon ); if ( isset( $parsed_icon['scheme'] ) && 'data' === $parsed_icon['scheme'] ) { return $icon; } // Attempt to convert relative URLs to absolute. if ( ! is_string( $url ) || '' === $url ) { return $icon; } $parsed_url = parse_url( $url ); if ( isset( $parsed_url['scheme'] ) && isset( $parsed_url['host'] ) ) { $root_url = $parsed_url['scheme'] . '://' . $parsed_url['host'] . '/'; $icon = WP_Http::make_absolute_url( $icon, $root_url ); } return $icon; } /** * Parses the meta description from the provided HTML. * * @since 5.9.0 * * @param array $meta_elements { * A multi-dimensional indexed array on success, else empty array. * * @type string[] 0 Meta elements with a content attribute. * @type string[] 1 Content attribute's opening quotation mark. * @type string[] 2 Content attribute's value for each meta element. * } * @return string The meta description contents on success. Empty string if not found. */ private function get_description( $meta_elements ) { // Bail out if there are no meta elements. if ( empty( $meta_elements[0] ) ) { return ''; } $description = $this->get_metadata_from_meta_element( $meta_elements, 'name', '(?:description|og:description)' ); // Bail out if description not found. if ( '' === $description ) { return ''; } return $this->prepare_metadata_for_output( $description ); } /** * Parses the Open Graph (OG) Image from the provided HTML. * * See: https://ogp.me/. * * @since 5.9.0 * * @param array $meta_elements { * A multi-dimensional indexed array on success, else empty array. * * @type string[] 0 Meta elements with a content attribute. * @type string[] 1 Content attribute's opening quotation mark. * @type string[] 2 Content attribute's value for each meta element. * } * @param string $url The target website URL. * @return string The OG image on success. Empty string if not found. */ private function get_image( $meta_elements, $url ) { $image = $this->get_metadata_from_meta_element( $meta_elements, 'property', '(?:og:image|og:image:url)' ); // Bail out if image not found. if ( '' === $image ) { return ''; } // Attempt to convert relative URLs to absolute. $parsed_url = parse_url( $url ); if ( isset( $parsed_url['scheme'] ) && isset( $parsed_url['host'] ) ) { $root_url = $parsed_url['scheme'] . '://' . $parsed_url['host'] . '/'; $image = WP_Http::make_absolute_url( $image, $root_url ); } return $image; } /** * Prepares the metadata by: * - stripping all HTML tags and tag entities. * - converting non-tag entities into characters. * * @since 5.9.0 * * @param string $metadata The metadata content to prepare. * @return string The prepared metadata. */ private function prepare_metadata_for_output( $metadata ) { $metadata = html_entity_decode( $metadata, ENT_QUOTES, get_bloginfo( 'charset' ) ); $metadata = wp_strip_all_tags( $metadata ); return $metadata; } /** * Utility function to build cache key for a given URL. * * @since 5.9.0 * * @param string $url The URL for which to build a cache key. * @return string The cache key. */ private function build_cache_key_for_url( $url ) { return 'g_url_details_response_' . md5( $url ); } /** * Utility function to retrieve a value from the cache at a given key. * * @since 5.9.0 * * @param string $key The cache key. * @return mixed The value from the cache. */ private function get_cache( $key ) { return get_site_transient( $key ); } /** * Utility function to cache a given data set at a given cache key. * * @since 5.9.0 * * @param string $key The cache key under which to store the value. * @param string $data The data to be stored at the given cache key. * @return bool True when transient set. False if not set. */ private function set_cache( $key, $data = '' ) { $ttl = HOUR_IN_SECONDS; /** * Filters the cache expiration. * * Can be used to adjust the time until expiration in seconds for the cache * of the data retrieved for the given URL. * * @since 5.9.0 * * @param int $ttl The time until cache expiration in seconds. */ $cache_expiration = apply_filters( 'rest_url_details_cache_expiration', $ttl ); return set_site_transient( $key, $data, $cache_expiration ); } /** * Retrieves the `<head>` section. * * @since 5.9.0 * * @param string $html The string of HTML to parse. * @return string The `<head>..</head>` section on success. Given `$html` if not found. */ private function get_document_head( $html ) { $head_html = $html; // Find the opening `<head>` tag. $head_start = strpos( $html, '<head' ); if ( false === $head_start ) { // Didn't find it. Return the original HTML. return $html; } // Find the closing `</head>` tag. $head_end = strpos( $head_html, '</head>' ); if ( false === $head_end ) { // Didn't find it. Find the opening `<body>` tag. $head_end = strpos( $head_html, '<body' ); // Didn't find it. Return the original HTML. if ( false === $head_end ) { return $html; } } // Extract the HTML from opening tag to the closing tag. Then add the closing tag. $head_html = substr( $head_html, $head_start, $head_end ); $head_html .= '</head>'; return $head_html; } /** * Gets all the `<meta>` elements that have a `content` attribute. * * @since 5.9.0 * * @param string $html The string of HTML to be parsed. * @return array { * A multi-dimensional indexed array on success, else empty array. * * @type string[] 0 Meta elements with a content attribute. * @type string[] 1 Content attribute's opening quotation mark. * @type string[] 2 Content attribute's value for each meta element. * } */ private function get_meta_with_content_elements( $html ) { /* * Parse all meta elements with a content attribute. * * Why first search for the content attribute rather than directly searching for name=description element? * tl;dr The content attribute's value will be truncated when it contains a > symbol. * * The content attribute's value (i.e. the description to get) can have HTML in it and be well-formed as * it's a string to the browser. Imagine what happens when attempting to match for the name=description * first. Hmm, if a > or /> symbol is in the content attribute's value, then it terminates the match * as the element's closing symbol. But wait, it's in the content attribute and is not the end of the * element. This is a limitation of using regex. It can't determine "wait a minute this is inside of quotation". * If this happens, what gets matched is not the entire element or all of the content. * * Why not search for the name=description and then content="(.*)"? * The attribute order could be opposite. Plus, additional attributes may exist including being between * the name and content attributes. * * Why not lookahead? * Lookahead is not constrained to stay within the element. The first <meta it finds may not include * the name or content, but rather could be from a different element downstream. */ $pattern = '#<meta\s' . /* * Alows for additional attributes before the content attribute. * Searches for anything other than > symbol. */ '[^>]*' . /* * Find the content attribute. When found, capture its value (.*). * * Allows for (a) single or double quotes and (b) whitespace in the value. * * Why capture the opening quotation mark, i.e. (["\']), and then backreference, * i.e \1, for the closing quotation mark? * To ensure the closing quotation mark matches the opening one. Why? Attribute values * can contain quotation marks, such as an apostrophe in the content. */ 'content=(["\']??)(.*)\1' . /* * Allows for additional attributes after the content attribute. * Searches for anything other than > symbol. */ '[^>]*' . /* * \/?> searches for the closing > symbol, which can be in either /> or > format. * # ends the pattern. */ '\/?>#' . /* * These are the options: * - i : case insensitive * - s : allows newline characters for the . match (needed for multiline elements) * - U means non-greedy matching */ 'isU'; preg_match_all( $pattern, $html, $elements ); return $elements; } /** * Gets the metadata from a target meta element. * * @since 5.9.0 * * @param array $meta_elements { * A multi-dimensional indexed array on success, else empty array. * * @type string[] 0 Meta elements with a content attribute. * @type string[] 1 Content attribute's opening quotation mark. * @type string[] 2 Content attribute's value for each meta element. * } * @param string $attr Attribute that identifies the element with the target metadata. * @param string $attr_value The attribute's value that identifies the element with the target metadata. * @return string The metadata on success. Empty string if not found. */ private function get_metadata_from_meta_element( $meta_elements, $attr, $attr_value ) { // Bail out if there are no meta elements. if ( empty( $meta_elements[0] ) ) { return ''; } $metadata = ''; $pattern = '#' . /* * Target this attribute and value to find the metadata element. * * Allows for (a) no, single, double quotes and (b) whitespace in the value. * * Why capture the opening quotation mark, i.e. (["\']), and then backreference, * i.e \1, for the closing quotation mark? * To ensure the closing quotation mark matches the opening one. Why? Attribute values * can contain quotation marks, such as an apostrophe in the content. */ $attr . '=([\"\']??)\s*' . $attr_value . '\s*\1' . /* * These are the options: * - i : case insensitive * - s : allows newline characters for the . match (needed for multiline elements) * - U means non-greedy matching */ '#isU'; // Find the metdata element. foreach ( $meta_elements[0] as $index => $element ) { preg_match( $pattern, $element, $match ); // This is not the metadata element. Skip it. if ( empty( $match ) ) { continue; } /* * Found the metadata element. * Get the metadata from its matching content array. */ if ( isset( $meta_elements[2][ $index ] ) && is_string( $meta_elements[2][ $index ] ) ) { $metadata = trim( $meta_elements[2][ $index ] ); } break; } return $metadata; } } PK�����j l\Q#��#��;��rest-api/endpoints/class-wp-rest-site-health-controller.phpnu�[��������<?php /** * REST API: WP_REST_Site_Health_Controller class * * @package WordPress * @subpackage REST_API * @since 5.6.0 */ /** * Core class for interacting with Site Health tests. * * @since 5.6.0 * * @see WP_REST_Controller */ class WP_REST_Site_Health_Controller extends WP_REST_Controller { /** * An instance of the site health class. * * @since 5.6.0 * * @var WP_Site_Health */ private $site_health; /** * Site Health controller constructor. * * @since 5.6.0 * * @param WP_Site_Health $site_health An instance of the site health class. */ public function __construct( $site_health ) { $this->namespace = 'wp-site-health/v1'; $this->rest_base = 'tests'; $this->site_health = $site_health; } /** * Registers API routes. * * @since 5.6.0 * * @see register_rest_route() */ public function register_routes() { register_rest_route( $this->namespace, sprintf( '/%s/%s', $this->rest_base, 'background-updates' ), array( array( 'methods' => 'GET', 'callback' => array( $this, 'test_background_updates' ), 'permission_callback' => function () { return $this->validate_request_permission( 'background_updates' ); }, ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, sprintf( '/%s/%s', $this->rest_base, 'loopback-requests' ), array( array( 'methods' => 'GET', 'callback' => array( $this, 'test_loopback_requests' ), 'permission_callback' => function () { return $this->validate_request_permission( 'loopback_requests' ); }, ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, sprintf( '/%s/%s', $this->rest_base, 'https-status' ), array( array( 'methods' => 'GET', 'callback' => array( $this, 'test_https_status' ), 'permission_callback' => function () { return $this->validate_request_permission( 'https_status' ); }, ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, sprintf( '/%s/%s', $this->rest_base, 'dotorg-communication' ), array( array( 'methods' => 'GET', 'callback' => array( $this, 'test_dotorg_communication' ), 'permission_callback' => function () { return $this->validate_request_permission( 'dotorg_communication' ); }, ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, sprintf( '/%s/%s', $this->rest_base, 'authorization-header' ), array( array( 'methods' => 'GET', 'callback' => array( $this, 'test_authorization_header' ), 'permission_callback' => function () { return $this->validate_request_permission( 'authorization_header' ); }, ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, sprintf( '/%s', 'directory-sizes' ), array( 'methods' => 'GET', 'callback' => array( $this, 'get_directory_sizes' ), 'permission_callback' => function() { return $this->validate_request_permission( 'debug_enabled' ) && ! is_multisite(); }, ) ); } /** * Validates if the current user can request this REST endpoint. * * @since 5.6.0 * * @param string $check The endpoint check being ran. * @return bool */ protected function validate_request_permission( $check ) { $default_capability = 'view_site_health_checks'; /** * Filters the capability needed to run a given Site Health check. * * @since 5.6.0 * * @param string $default_capability The default capability required for this check. * @param string $check The Site Health check being performed. */ $capability = apply_filters( "site_health_test_rest_capability_{$check}", $default_capability, $check ); return current_user_can( $capability ); } /** * Checks if background updates work as expected. * * @since 5.6.0 * * @return array */ public function test_background_updates() { $this->load_admin_textdomain(); return $this->site_health->get_test_background_updates(); } /** * Checks that the site can reach the WordPress.org API. * * @since 5.6.0 * * @return array */ public function test_dotorg_communication() { $this->load_admin_textdomain(); return $this->site_health->get_test_dotorg_communication(); } /** * Checks that loopbacks can be performed. * * @since 5.6.0 * * @return array */ public function test_loopback_requests() { $this->load_admin_textdomain(); return $this->site_health->get_test_loopback_requests(); } /** * Checks that the site's frontend can be accessed over HTTPS. * * @since 5.7.0 * * @return array */ public function test_https_status() { $this->load_admin_textdomain(); return $this->site_health->get_test_https_status(); } /** * Checks that the authorization header is valid. * * @since 5.6.0 * * @return array */ public function test_authorization_header() { $this->load_admin_textdomain(); return $this->site_health->get_test_authorization_header(); } /** * Gets the current directory sizes for this install. * * @since 5.6.0 * * @return array|WP_Error */ public function get_directory_sizes() { if ( ! class_exists( 'WP_Debug_Data' ) ) { require_once ABSPATH . 'wp-admin/includes/class-wp-debug-data.php'; } $this->load_admin_textdomain(); $sizes_data = WP_Debug_Data::get_sizes(); $all_sizes = array( 'raw' => 0 ); foreach ( $sizes_data as $name => $value ) { $name = sanitize_text_field( $name ); $data = array(); if ( isset( $value['size'] ) ) { if ( is_string( $value['size'] ) ) { $data['size'] = sanitize_text_field( $value['size'] ); } else { $data['size'] = (int) $value['size']; } } if ( isset( $value['debug'] ) ) { if ( is_string( $value['debug'] ) ) { $data['debug'] = sanitize_text_field( $value['debug'] ); } else { $data['debug'] = (int) $value['debug']; } } if ( ! empty( $value['raw'] ) ) { $data['raw'] = (int) $value['raw']; } $all_sizes[ $name ] = $data; } if ( isset( $all_sizes['total_size']['debug'] ) && 'not available' === $all_sizes['total_size']['debug'] ) { return new WP_Error( 'not_available', __( 'Directory sizes could not be returned.' ), array( 'status' => 500 ) ); } return $all_sizes; } /** * Loads the admin textdomain for Site Health tests. * * The {@see WP_Site_Health} class is defined in WP-Admin, while the REST API operates in a front-end context. * This means that the translations for Site Health won't be loaded by default in {@see load_default_textdomain()}. * * @since 5.6.0 */ protected function load_admin_textdomain() { // Accounts for inner REST API requests in the admin. if ( ! is_admin() ) { $locale = determine_locale(); load_textdomain( 'default', WP_LANG_DIR . "/admin-$locale.mo" ); } } /** * Gets the schema for each site health test. * * @since 5.6.0 * * @return array The test schema. */ public function get_item_schema() { if ( $this->schema ) { return $this->schema; } $this->schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'wp-site-health-test', 'type' => 'object', 'properties' => array( 'test' => array( 'type' => 'string', 'description' => __( 'The name of the test being run.' ), 'readonly' => true, ), 'label' => array( 'type' => 'string', 'description' => __( 'A label describing the test.' ), 'readonly' => true, ), 'status' => array( 'type' => 'string', 'description' => __( 'The status of the test.' ), 'enum' => array( 'good', 'recommended', 'critical' ), 'readonly' => true, ), 'badge' => array( 'type' => 'object', 'description' => __( 'The category this test is grouped in.' ), 'properties' => array( 'label' => array( 'type' => 'string', 'readonly' => true, ), 'color' => array( 'type' => 'string', 'enum' => array( 'blue', 'orange', 'red', 'green', 'purple', 'gray' ), 'readonly' => true, ), ), 'readonly' => true, ), 'description' => array( 'type' => 'string', 'description' => __( 'A more descriptive explanation of what the test looks for, and why it is important for the user.' ), 'readonly' => true, ), 'actions' => array( 'type' => 'string', 'description' => __( 'HTML containing an action to direct the user to where they can resolve the issue.' ), 'readonly' => true, ), ), ); return $this->schema; } } PK�����j l\t �� ��>��rest-api/endpoints/class-wp-rest-menu-locations-controller.phpnu�[��������<?php /** * REST API: WP_REST_Menu_Locations_Controller class * * @package WordPress * @subpackage REST_API * @since 5.9.0 */ /** * Core class used to access menu locations via the REST API. * * @since 5.9.0 * * @see WP_REST_Controller */ class WP_REST_Menu_Locations_Controller extends WP_REST_Controller { /** * Menu Locations Constructor. * * @since 5.9.0 */ public function __construct() { $this->namespace = 'wp/v2'; $this->rest_base = 'menu-locations'; } /** * Registers the routes for the objects of the controller. * * @since 5.9.0 * * @see register_rest_route() */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P<location>[\w-]+)', array( 'args' => array( 'location' => array( 'description' => __( 'An alphanumeric identifier for the menu location.' ), 'type' => 'string', ), ), array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), 'args' => array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Checks whether a given request has permission to read menu locations. * * @since 5.9.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_Error|bool True if the request has read access, WP_Error object otherwise. */ public function get_items_permissions_check( $request ) { if ( ! current_user_can( 'edit_theme_options' ) ) { return new WP_Error( 'rest_cannot_view', __( 'Sorry, you are not allowed to view menu locations.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Retrieves all menu locations, depending on user context. * * @since 5.9.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_Error|WP_REST_Response Response object on success, or WP_Error object on failure. */ public function get_items( $request ) { $data = array(); foreach ( get_registered_nav_menus() as $name => $description ) { $location = new stdClass(); $location->name = $name; $location->description = $description; $location = $this->prepare_item_for_response( $location, $request ); $data[ $name ] = $this->prepare_response_for_collection( $location ); } return rest_ensure_response( $data ); } /** * Checks if a given request has access to read a menu location. * * @since 5.9.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_Error|bool True if the request has read access for the item, WP_Error object otherwise. */ public function get_item_permissions_check( $request ) { if ( ! current_user_can( 'edit_theme_options' ) ) { return new WP_Error( 'rest_cannot_view', __( 'Sorry, you are not allowed to view menu locations.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Retrieves a specific menu location. * * @since 5.9.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_Error|WP_REST_Response Response object on success, or WP_Error object on failure. */ public function get_item( $request ) { $registered_menus = get_registered_nav_menus(); if ( ! array_key_exists( $request['location'], $registered_menus ) ) { return new WP_Error( 'rest_menu_location_invalid', __( 'Invalid menu location.' ), array( 'status' => 404 ) ); } $location = new stdClass(); $location->name = $request['location']; $location->description = $registered_menus[ $location->name ]; $data = $this->prepare_item_for_response( $location, $request ); return rest_ensure_response( $data ); } /** * Prepares a menu location object for serialization. * * @since 5.9.0 * * @param stdClass $item Post status data. * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response Menu location data. */ public function prepare_item_for_response( $item, $request ) { // Restores the more descriptive, specific name for use within this method. $location = $item; $locations = get_nav_menu_locations(); $menu = isset( $locations[ $location->name ] ) ? $locations[ $location->name ] : 0; $fields = $this->get_fields_for_response( $request ); $data = array(); if ( rest_is_field_included( 'name', $fields ) ) { $data['name'] = $location->name; } if ( rest_is_field_included( 'description', $fields ) ) { $data['description'] = $location->description; } if ( rest_is_field_included( 'menu', $fields ) ) { $data['menu'] = (int) $menu; } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->add_additional_fields_to_object( $data, $request ); $data = $this->filter_response_by_context( $data, $context ); $response = rest_ensure_response( $data ); $response->add_links( $this->prepare_links( $location ) ); /** * Filters menu location data returned from the REST API. * * @since 5.9.0 * * @param WP_REST_Response $response The response object. * @param object $location The original location object. * @param WP_REST_Request $request Request used to generate the response. */ return apply_filters( 'rest_prepare_menu_location', $response, $location, $request ); } /** * Retrieves the menu location's schema, conforming to JSON Schema. * * @since 5.9.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $this->schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'menu-location', 'type' => 'object', 'properties' => array( 'name' => array( 'description' => __( 'The name of the menu location.' ), 'type' => 'string', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'description' => array( 'description' => __( 'The description of the menu location.' ), 'type' => 'string', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'menu' => array( 'description' => __( 'The ID of the assigned menu.' ), 'type' => 'integer', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), ), ); return $this->add_additional_fields_schema( $this->schema ); } /** * Retrieves the query params for collections. * * @since 5.9.0 * * @return array Collection parameters. */ public function get_collection_params() { return array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ); } /** * Prepares links for the request. * * @since 5.9.0 * * @param stdClass $location Menu location. * @return array Links for the given menu location. */ protected function prepare_links( $location ) { $base = sprintf( '%s/%s', $this->namespace, $this->rest_base ); // Entity meta. $links = array( 'self' => array( 'href' => rest_url( trailingslashit( $base ) . $location->name ), ), 'collection' => array( 'href' => rest_url( $base ), ), ); $locations = get_nav_menu_locations(); $menu = isset( $locations[ $location->name ] ) ? $locations[ $location->name ] : 0; if ( $menu ) { $path = rest_get_route_for_term( $menu ); if ( $path ) { $url = rest_url( $path ); $links['https://api.w.org/menu'][] = array( 'href' => $url, 'embeddable' => true, ); } } return $links; } } PK�����j l\yyg��g��5��rest-api/endpoints/class-wp-rest-terms-controller.phpnu�[��������<?php /** * REST API: WP_REST_Terms_Controller class * * @package WordPress * @subpackage REST_API * @since 4.7.0 */ /** * Core class used to managed terms associated with a taxonomy via the REST API. * * @since 4.7.0 * * @see WP_REST_Controller */ class WP_REST_Terms_Controller extends WP_REST_Controller { /** * Taxonomy key. * * @since 4.7.0 * @var string */ protected $taxonomy; /** * Instance of a term meta fields object. * * @since 4.7.0 * @var WP_REST_Term_Meta_Fields */ protected $meta; /** * Column to have the terms be sorted by. * * @since 4.7.0 * @var string */ protected $sort_column; /** * Number of terms that were found. * * @since 4.7.0 * @var int */ protected $total_terms; /** * Whether the controller supports batching. * * @since 5.9.0 * @var array */ protected $allow_batch = array( 'v1' => true ); /** * Constructor. * * @since 4.7.0 * * @param string $taxonomy Taxonomy key. */ public function __construct( $taxonomy ) { $this->taxonomy = $taxonomy; $tax_obj = get_taxonomy( $taxonomy ); $this->rest_base = ! empty( $tax_obj->rest_base ) ? $tax_obj->rest_base : $tax_obj->name; $this->namespace = ! empty( $tax_obj->rest_namespace ) ? $tax_obj->rest_namespace : 'wp/v2'; $this->meta = new WP_REST_Term_Meta_Fields( $taxonomy ); } /** * Registers the routes for terms. * * @since 4.7.0 * * @see register_rest_route() */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), array( 'methods' => WP_REST_Server::CREATABLE, 'callback' => array( $this, 'create_item' ), 'permission_callback' => array( $this, 'create_item_permissions_check' ), 'args' => $this->get_endpoint_args_for_item_schema( WP_REST_Server::CREATABLE ), ), 'allow_batch' => $this->allow_batch, 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P<id>[\d]+)', array( 'args' => array( 'id' => array( 'description' => __( 'Unique identifier for the term.' ), 'type' => 'integer', ), ), array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), 'args' => array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ), ), array( 'methods' => WP_REST_Server::EDITABLE, 'callback' => array( $this, 'update_item' ), 'permission_callback' => array( $this, 'update_item_permissions_check' ), 'args' => $this->get_endpoint_args_for_item_schema( WP_REST_Server::EDITABLE ), ), array( 'methods' => WP_REST_Server::DELETABLE, 'callback' => array( $this, 'delete_item' ), 'permission_callback' => array( $this, 'delete_item_permissions_check' ), 'args' => array( 'force' => array( 'type' => 'boolean', 'default' => false, 'description' => __( 'Required to be true, as terms do not support trashing.' ), ), ), ), 'allow_batch' => $this->allow_batch, 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Checks if the terms for a post can be read. * * @since 6.0.3 * * @param WP_Post $post Post object. * @param WP_REST_Request $request Full details about the request. * @return bool Whether the terms for the post can be read. */ public function check_read_terms_permission_for_post( $post, $request ) { // If the requested post isn't associated with this taxonomy, deny access. if ( ! is_object_in_taxonomy( $post->post_type, $this->taxonomy ) ) { return false; } // Grant access if the post is publicly viewable. if ( is_post_publicly_viewable( $post ) ) { return true; } // Otherwise grant access if the post is readable by the logged in user. if ( current_user_can( 'read_post', $post->ID ) ) { return true; } // Otherwise, deny access. return false; } /** * Checks if a request has access to read terms in the specified taxonomy. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, otherwise false or WP_Error object. */ public function get_items_permissions_check( $request ) { $tax_obj = get_taxonomy( $this->taxonomy ); if ( ! $tax_obj || ! $this->check_is_taxonomy_allowed( $this->taxonomy ) ) { return false; } if ( 'edit' === $request['context'] && ! current_user_can( $tax_obj->cap->edit_terms ) ) { return new WP_Error( 'rest_forbidden_context', __( 'Sorry, you are not allowed to edit terms in this taxonomy.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( ! empty( $request['post'] ) ) { $post = get_post( $request['post'] ); if ( ! $post ) { return new WP_Error( 'rest_post_invalid_id', __( 'Invalid post ID.' ), array( 'status' => 400, ) ); } if ( ! $this->check_read_terms_permission_for_post( $post, $request ) ) { return new WP_Error( 'rest_forbidden_context', __( 'Sorry, you are not allowed to view terms for this post.' ), array( 'status' => rest_authorization_required_code(), ) ); } } return true; } /** * Retrieves terms associated with a taxonomy. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_items( $request ) { // Retrieve the list of registered collection query parameters. $registered = $this->get_collection_params(); /* * This array defines mappings between public API query parameters whose * values are accepted as-passed, and their internal WP_Query parameter * name equivalents (some are the same). Only values which are also * present in $registered will be set. */ $parameter_mappings = array( 'exclude' => 'exclude', 'include' => 'include', 'order' => 'order', 'orderby' => 'orderby', 'post' => 'post', 'hide_empty' => 'hide_empty', 'per_page' => 'number', 'search' => 'search', 'slug' => 'slug', ); $prepared_args = array( 'taxonomy' => $this->taxonomy ); /* * For each known parameter which is both registered and present in the request, * set the parameter's value on the query $prepared_args. */ foreach ( $parameter_mappings as $api_param => $wp_param ) { if ( isset( $registered[ $api_param ], $request[ $api_param ] ) ) { $prepared_args[ $wp_param ] = $request[ $api_param ]; } } if ( isset( $prepared_args['orderby'] ) && isset( $request['orderby'] ) ) { $orderby_mappings = array( 'include_slugs' => 'slug__in', ); if ( isset( $orderby_mappings[ $request['orderby'] ] ) ) { $prepared_args['orderby'] = $orderby_mappings[ $request['orderby'] ]; } } if ( isset( $registered['offset'] ) && ! empty( $request['offset'] ) ) { $prepared_args['offset'] = $request['offset']; } else { $prepared_args['offset'] = ( $request['page'] - 1 ) * $prepared_args['number']; } $taxonomy_obj = get_taxonomy( $this->taxonomy ); if ( $taxonomy_obj->hierarchical && isset( $registered['parent'], $request['parent'] ) ) { if ( 0 === $request['parent'] ) { // Only query top-level terms. $prepared_args['parent'] = 0; } else { if ( $request['parent'] ) { $prepared_args['parent'] = $request['parent']; } } } /** * Filters get_terms() arguments when querying terms via the REST API. * * The dynamic portion of the hook name, `$this->taxonomy`, refers to the taxonomy slug. * * Possible hook names include: * * - `rest_category_query` * - `rest_post_tag_query` * * Enables adding extra arguments or setting defaults for a terms * collection request. * * @since 4.7.0 * * @link https://developer.wordpress.org/reference/functions/get_terms/ * * @param array $prepared_args Array of arguments for get_terms(). * @param WP_REST_Request $request The REST API request. */ $prepared_args = apply_filters( "rest_{$this->taxonomy}_query", $prepared_args, $request ); if ( ! empty( $prepared_args['post'] ) ) { $query_result = wp_get_object_terms( $prepared_args['post'], $this->taxonomy, $prepared_args ); // Used when calling wp_count_terms() below. $prepared_args['object_ids'] = $prepared_args['post']; } else { $query_result = get_terms( $prepared_args ); } $count_args = $prepared_args; unset( $count_args['number'], $count_args['offset'] ); $total_terms = wp_count_terms( $count_args ); // wp_count_terms() can return a falsey value when the term has no children. if ( ! $total_terms ) { $total_terms = 0; } $response = array(); foreach ( $query_result as $term ) { if ( 'edit' === $request['context'] && ! current_user_can( 'edit_term', $term->term_id ) ) { continue; } $data = $this->prepare_item_for_response( $term, $request ); $response[] = $this->prepare_response_for_collection( $data ); } $response = rest_ensure_response( $response ); // Store pagination values for headers. $per_page = (int) $prepared_args['number']; $page = ceil( ( ( (int) $prepared_args['offset'] ) / $per_page ) + 1 ); $response->header( 'X-WP-Total', (int) $total_terms ); $max_pages = ceil( $total_terms / $per_page ); $response->header( 'X-WP-TotalPages', (int) $max_pages ); $base = add_query_arg( urlencode_deep( $request->get_query_params() ), rest_url( $this->namespace . '/' . $this->rest_base ) ); if ( $page > 1 ) { $prev_page = $page - 1; if ( $prev_page > $max_pages ) { $prev_page = $max_pages; } $prev_link = add_query_arg( 'page', $prev_page, $base ); $response->link_header( 'prev', $prev_link ); } if ( $max_pages > $page ) { $next_page = $page + 1; $next_link = add_query_arg( 'page', $next_page, $base ); $response->link_header( 'next', $next_link ); } return $response; } /** * Get the term, if the ID is valid. * * @since 4.7.2 * * @param int $id Supplied ID. * @return WP_Term|WP_Error Term object if ID is valid, WP_Error otherwise. */ protected function get_term( $id ) { $error = new WP_Error( 'rest_term_invalid', __( 'Term does not exist.' ), array( 'status' => 404 ) ); if ( ! $this->check_is_taxonomy_allowed( $this->taxonomy ) ) { return $error; } if ( (int) $id <= 0 ) { return $error; } $term = get_term( (int) $id, $this->taxonomy ); if ( empty( $term ) || $term->taxonomy !== $this->taxonomy ) { return $error; } return $term; } /** * Checks if a request has access to read or edit the specified term. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access for the item, otherwise false or WP_Error object. */ public function get_item_permissions_check( $request ) { $term = $this->get_term( $request['id'] ); if ( is_wp_error( $term ) ) { return $term; } if ( 'edit' === $request['context'] && ! current_user_can( 'edit_term', $term->term_id ) ) { return new WP_Error( 'rest_forbidden_context', __( 'Sorry, you are not allowed to edit this term.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Gets a single term from a taxonomy. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_item( $request ) { $term = $this->get_term( $request['id'] ); if ( is_wp_error( $term ) ) { return $term; } $response = $this->prepare_item_for_response( $term, $request ); return rest_ensure_response( $response ); } /** * Checks if a request has access to create a term. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to create items, false or WP_Error object otherwise. */ public function create_item_permissions_check( $request ) { if ( ! $this->check_is_taxonomy_allowed( $this->taxonomy ) ) { return false; } $taxonomy_obj = get_taxonomy( $this->taxonomy ); if ( ( is_taxonomy_hierarchical( $this->taxonomy ) && ! current_user_can( $taxonomy_obj->cap->edit_terms ) ) || ( ! is_taxonomy_hierarchical( $this->taxonomy ) && ! current_user_can( $taxonomy_obj->cap->assign_terms ) ) ) { return new WP_Error( 'rest_cannot_create', __( 'Sorry, you are not allowed to create terms in this taxonomy.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Creates a single term in a taxonomy. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function create_item( $request ) { if ( isset( $request['parent'] ) ) { if ( ! is_taxonomy_hierarchical( $this->taxonomy ) ) { return new WP_Error( 'rest_taxonomy_not_hierarchical', __( 'Cannot set parent term, taxonomy is not hierarchical.' ), array( 'status' => 400 ) ); } $parent = get_term( (int) $request['parent'], $this->taxonomy ); if ( ! $parent ) { return new WP_Error( 'rest_term_invalid', __( 'Parent term does not exist.' ), array( 'status' => 400 ) ); } } $prepared_term = $this->prepare_item_for_database( $request ); $term = wp_insert_term( wp_slash( $prepared_term->name ), $this->taxonomy, wp_slash( (array) $prepared_term ) ); if ( is_wp_error( $term ) ) { /* * If we're going to inform the client that the term already exists, * give them the identifier for future use. */ $term_id = $term->get_error_data( 'term_exists' ); if ( $term_id ) { $existing_term = get_term( $term_id, $this->taxonomy ); $term->add_data( $existing_term->term_id, 'term_exists' ); $term->add_data( array( 'status' => 400, 'term_id' => $term_id, ) ); } return $term; } $term = get_term( $term['term_id'], $this->taxonomy ); /** * Fires after a single term is created or updated via the REST API. * * The dynamic portion of the hook name, `$this->taxonomy`, refers to the taxonomy slug. * * Possible hook names include: * * - `rest_insert_category` * - `rest_insert_post_tag` * * @since 4.7.0 * * @param WP_Term $term Inserted or updated term object. * @param WP_REST_Request $request Request object. * @param bool $creating True when creating a term, false when updating. */ do_action( "rest_insert_{$this->taxonomy}", $term, $request, true ); $schema = $this->get_item_schema(); if ( ! empty( $schema['properties']['meta'] ) && isset( $request['meta'] ) ) { $meta_update = $this->meta->update_value( $request['meta'], $term->term_id ); if ( is_wp_error( $meta_update ) ) { return $meta_update; } } $fields_update = $this->update_additional_fields_for_object( $term, $request ); if ( is_wp_error( $fields_update ) ) { return $fields_update; } $request->set_param( 'context', 'edit' ); /** * Fires after a single term is completely created or updated via the REST API. * * The dynamic portion of the hook name, `$this->taxonomy`, refers to the taxonomy slug. * * Possible hook names include: * * - `rest_after_insert_category` * - `rest_after_insert_post_tag` * * @since 5.0.0 * * @param WP_Term $term Inserted or updated term object. * @param WP_REST_Request $request Request object. * @param bool $creating True when creating a term, false when updating. */ do_action( "rest_after_insert_{$this->taxonomy}", $term, $request, true ); $response = $this->prepare_item_for_response( $term, $request ); $response = rest_ensure_response( $response ); $response->set_status( 201 ); $response->header( 'Location', rest_url( $this->namespace . '/' . $this->rest_base . '/' . $term->term_id ) ); return $response; } /** * Checks if a request has access to update the specified term. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to update the item, false or WP_Error object otherwise. */ public function update_item_permissions_check( $request ) { $term = $this->get_term( $request['id'] ); if ( is_wp_error( $term ) ) { return $term; } if ( ! current_user_can( 'edit_term', $term->term_id ) ) { return new WP_Error( 'rest_cannot_update', __( 'Sorry, you are not allowed to edit this term.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Updates a single term from a taxonomy. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function update_item( $request ) { $term = $this->get_term( $request['id'] ); if ( is_wp_error( $term ) ) { return $term; } if ( isset( $request['parent'] ) ) { if ( ! is_taxonomy_hierarchical( $this->taxonomy ) ) { return new WP_Error( 'rest_taxonomy_not_hierarchical', __( 'Cannot set parent term, taxonomy is not hierarchical.' ), array( 'status' => 400 ) ); } $parent = get_term( (int) $request['parent'], $this->taxonomy ); if ( ! $parent ) { return new WP_Error( 'rest_term_invalid', __( 'Parent term does not exist.' ), array( 'status' => 400 ) ); } } $prepared_term = $this->prepare_item_for_database( $request ); // Only update the term if we have something to update. if ( ! empty( $prepared_term ) ) { $update = wp_update_term( $term->term_id, $term->taxonomy, wp_slash( (array) $prepared_term ) ); if ( is_wp_error( $update ) ) { return $update; } } $term = get_term( $term->term_id, $this->taxonomy ); /** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-terms-controller.php */ do_action( "rest_insert_{$this->taxonomy}", $term, $request, false ); $schema = $this->get_item_schema(); if ( ! empty( $schema['properties']['meta'] ) && isset( $request['meta'] ) ) { $meta_update = $this->meta->update_value( $request['meta'], $term->term_id ); if ( is_wp_error( $meta_update ) ) { return $meta_update; } } $fields_update = $this->update_additional_fields_for_object( $term, $request ); if ( is_wp_error( $fields_update ) ) { return $fields_update; } $request->set_param( 'context', 'edit' ); /** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-terms-controller.php */ do_action( "rest_after_insert_{$this->taxonomy}", $term, $request, false ); $response = $this->prepare_item_for_response( $term, $request ); return rest_ensure_response( $response ); } /** * Checks if a request has access to delete the specified term. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to delete the item, otherwise false or WP_Error object. */ public function delete_item_permissions_check( $request ) { $term = $this->get_term( $request['id'] ); if ( is_wp_error( $term ) ) { return $term; } if ( ! current_user_can( 'delete_term', $term->term_id ) ) { return new WP_Error( 'rest_cannot_delete', __( 'Sorry, you are not allowed to delete this term.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Deletes a single term from a taxonomy. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function delete_item( $request ) { $term = $this->get_term( $request['id'] ); if ( is_wp_error( $term ) ) { return $term; } $force = isset( $request['force'] ) ? (bool) $request['force'] : false; // We don't support trashing for terms. if ( ! $force ) { return new WP_Error( 'rest_trash_not_supported', /* translators: %s: force=true */ sprintf( __( "Terms do not support trashing. Set '%s' to delete." ), 'force=true' ), array( 'status' => 501 ) ); } $request->set_param( 'context', 'view' ); $previous = $this->prepare_item_for_response( $term, $request ); $retval = wp_delete_term( $term->term_id, $term->taxonomy ); if ( ! $retval ) { return new WP_Error( 'rest_cannot_delete', __( 'The term cannot be deleted.' ), array( 'status' => 500 ) ); } $response = new WP_REST_Response(); $response->set_data( array( 'deleted' => true, 'previous' => $previous->get_data(), ) ); /** * Fires after a single term is deleted via the REST API. * * The dynamic portion of the hook name, `$this->taxonomy`, refers to the taxonomy slug. * * Possible hook names include: * * - `rest_delete_category` * - `rest_delete_post_tag` * * @since 4.7.0 * * @param WP_Term $term The deleted term. * @param WP_REST_Response $response The response data. * @param WP_REST_Request $request The request sent to the API. */ do_action( "rest_delete_{$this->taxonomy}", $term, $response, $request ); return $response; } /** * Prepares a single term for create or update. * * @since 4.7.0 * * @param WP_REST_Request $request Request object. * @return object Term object. */ public function prepare_item_for_database( $request ) { $prepared_term = new stdClass; $schema = $this->get_item_schema(); if ( isset( $request['name'] ) && ! empty( $schema['properties']['name'] ) ) { $prepared_term->name = $request['name']; } if ( isset( $request['slug'] ) && ! empty( $schema['properties']['slug'] ) ) { $prepared_term->slug = $request['slug']; } if ( isset( $request['taxonomy'] ) && ! empty( $schema['properties']['taxonomy'] ) ) { $prepared_term->taxonomy = $request['taxonomy']; } if ( isset( $request['description'] ) && ! empty( $schema['properties']['description'] ) ) { $prepared_term->description = $request['description']; } if ( isset( $request['parent'] ) && ! empty( $schema['properties']['parent'] ) ) { $parent_term_id = 0; $requested_parent = (int) $request['parent']; if ( $requested_parent ) { $parent_term = get_term( $requested_parent, $this->taxonomy ); if ( $parent_term instanceof WP_Term ) { $parent_term_id = $parent_term->term_id; } } $prepared_term->parent = $parent_term_id; } /** * Filters term data before inserting term via the REST API. * * The dynamic portion of the hook name, `$this->taxonomy`, refers to the taxonomy slug. * * Possible hook names include: * * - `rest_pre_insert_category` * - `rest_pre_insert_post_tag` * * @since 4.7.0 * * @param object $prepared_term Term object. * @param WP_REST_Request $request Request object. */ return apply_filters( "rest_pre_insert_{$this->taxonomy}", $prepared_term, $request ); } /** * Prepares a single term output for response. * * @since 4.7.0 * * @param WP_Term $item Term object. * @param WP_REST_Request $request Request object. * @return WP_REST_Response Response object. */ public function prepare_item_for_response( $item, $request ) { $fields = $this->get_fields_for_response( $request ); $data = array(); if ( in_array( 'id', $fields, true ) ) { $data['id'] = (int) $item->term_id; } if ( in_array( 'count', $fields, true ) ) { $data['count'] = (int) $item->count; } if ( in_array( 'description', $fields, true ) ) { $data['description'] = $item->description; } if ( in_array( 'link', $fields, true ) ) { $data['link'] = get_term_link( $item ); } if ( in_array( 'name', $fields, true ) ) { $data['name'] = $item->name; } if ( in_array( 'slug', $fields, true ) ) { $data['slug'] = $item->slug; } if ( in_array( 'taxonomy', $fields, true ) ) { $data['taxonomy'] = $item->taxonomy; } if ( in_array( 'parent', $fields, true ) ) { $data['parent'] = (int) $item->parent; } if ( in_array( 'meta', $fields, true ) ) { $data['meta'] = $this->meta->get_value( $item->term_id, $request ); } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->add_additional_fields_to_object( $data, $request ); $data = $this->filter_response_by_context( $data, $context ); $response = rest_ensure_response( $data ); $response->add_links( $this->prepare_links( $item ) ); /** * Filters the term data for a REST API response. * * The dynamic portion of the hook name, `$this->taxonomy`, refers to the taxonomy slug. * * Possible hook names include: * * - `rest_prepare_category` * - `rest_prepare_post_tag` * * Allows modification of the term data right before it is returned. * * @since 4.7.0 * * @param WP_REST_Response $response The response object. * @param WP_Term $item The original term object. * @param WP_REST_Request $request Request used to generate the response. */ return apply_filters( "rest_prepare_{$this->taxonomy}", $response, $item, $request ); } /** * Prepares links for the request. * * @since 4.7.0 * * @param WP_Term $term Term object. * @return array Links for the given term. */ protected function prepare_links( $term ) { $base = $this->namespace . '/' . $this->rest_base; $links = array( 'self' => array( 'href' => rest_url( trailingslashit( $base ) . $term->term_id ), ), 'collection' => array( 'href' => rest_url( $base ), ), 'about' => array( 'href' => rest_url( sprintf( 'wp/v2/taxonomies/%s', $this->taxonomy ) ), ), ); if ( $term->parent ) { $parent_term = get_term( (int) $term->parent, $term->taxonomy ); if ( $parent_term ) { $links['up'] = array( 'href' => rest_url( trailingslashit( $base ) . $parent_term->term_id ), 'embeddable' => true, ); } } $taxonomy_obj = get_taxonomy( $term->taxonomy ); if ( empty( $taxonomy_obj->object_type ) ) { return $links; } $post_type_links = array(); foreach ( $taxonomy_obj->object_type as $type ) { $rest_path = rest_get_route_for_post_type_items( $type ); if ( empty( $rest_path ) ) { continue; } $post_type_links[] = array( 'href' => add_query_arg( $this->rest_base, $term->term_id, rest_url( $rest_path ) ), ); } if ( ! empty( $post_type_links ) ) { $links['https://api.w.org/post_type'] = $post_type_links; } return $links; } /** * Retrieves the term's schema, conforming to JSON Schema. * * @since 4.7.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'post_tag' === $this->taxonomy ? 'tag' : $this->taxonomy, 'type' => 'object', 'properties' => array( 'id' => array( 'description' => __( 'Unique identifier for the term.' ), 'type' => 'integer', 'context' => array( 'view', 'embed', 'edit' ), 'readonly' => true, ), 'count' => array( 'description' => __( 'Number of published posts for the term.' ), 'type' => 'integer', 'context' => array( 'view', 'edit' ), 'readonly' => true, ), 'description' => array( 'description' => __( 'HTML description of the term.' ), 'type' => 'string', 'context' => array( 'view', 'edit' ), ), 'link' => array( 'description' => __( 'URL of the term.' ), 'type' => 'string', 'format' => 'uri', 'context' => array( 'view', 'embed', 'edit' ), 'readonly' => true, ), 'name' => array( 'description' => __( 'HTML title for the term.' ), 'type' => 'string', 'context' => array( 'view', 'embed', 'edit' ), 'arg_options' => array( 'sanitize_callback' => 'sanitize_text_field', ), 'required' => true, ), 'slug' => array( 'description' => __( 'An alphanumeric identifier for the term unique to its type.' ), 'type' => 'string', 'context' => array( 'view', 'embed', 'edit' ), 'arg_options' => array( 'sanitize_callback' => array( $this, 'sanitize_slug' ), ), ), 'taxonomy' => array( 'description' => __( 'Type attribution for the term.' ), 'type' => 'string', 'enum' => array( $this->taxonomy ), 'context' => array( 'view', 'embed', 'edit' ), 'readonly' => true, ), ), ); $taxonomy = get_taxonomy( $this->taxonomy ); if ( $taxonomy->hierarchical ) { $schema['properties']['parent'] = array( 'description' => __( 'The parent term ID.' ), 'type' => 'integer', 'context' => array( 'view', 'edit' ), ); } $schema['properties']['meta'] = $this->meta->get_field_schema(); $this->schema = $schema; return $this->add_additional_fields_schema( $this->schema ); } /** * Retrieves the query params for collections. * * @since 4.7.0 * * @return array Collection parameters. */ public function get_collection_params() { $query_params = parent::get_collection_params(); $taxonomy = get_taxonomy( $this->taxonomy ); $query_params['context']['default'] = 'view'; $query_params['exclude'] = array( 'description' => __( 'Ensure result set excludes specific IDs.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), 'default' => array(), ); $query_params['include'] = array( 'description' => __( 'Limit result set to specific IDs.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), 'default' => array(), ); if ( ! $taxonomy->hierarchical ) { $query_params['offset'] = array( 'description' => __( 'Offset the result set by a specific number of items.' ), 'type' => 'integer', ); } $query_params['order'] = array( 'description' => __( 'Order sort attribute ascending or descending.' ), 'type' => 'string', 'default' => 'asc', 'enum' => array( 'asc', 'desc', ), ); $query_params['orderby'] = array( 'description' => __( 'Sort collection by term attribute.' ), 'type' => 'string', 'default' => 'name', 'enum' => array( 'id', 'include', 'name', 'slug', 'include_slugs', 'term_group', 'description', 'count', ), ); $query_params['hide_empty'] = array( 'description' => __( 'Whether to hide terms not assigned to any posts.' ), 'type' => 'boolean', 'default' => false, ); if ( $taxonomy->hierarchical ) { $query_params['parent'] = array( 'description' => __( 'Limit result set to terms assigned to a specific parent.' ), 'type' => 'integer', ); } $query_params['post'] = array( 'description' => __( 'Limit result set to terms assigned to a specific post.' ), 'type' => 'integer', 'default' => null, ); $query_params['slug'] = array( 'description' => __( 'Limit result set to terms with one or more specific slugs.' ), 'type' => 'array', 'items' => array( 'type' => 'string', ), ); /** * Filters collection parameters for the terms controller. * * The dynamic part of the filter `$this->taxonomy` refers to the taxonomy * slug for the controller. * * This filter registers the collection parameter, but does not map the * collection parameter to an internal WP_Term_Query parameter. Use the * `rest_{$this->taxonomy}_query` filter to set WP_Term_Query parameters. * * @since 4.7.0 * * @param array $query_params JSON Schema-formatted collection parameters. * @param WP_Taxonomy $taxonomy Taxonomy object. */ return apply_filters( "rest_{$this->taxonomy}_collection_params", $query_params, $taxonomy ); } /** * Checks that the taxonomy is valid. * * @since 4.7.0 * * @param string $taxonomy Taxonomy to check. * @return bool Whether the taxonomy is allowed for REST management. */ protected function check_is_taxonomy_allowed( $taxonomy ) { $taxonomy_obj = get_taxonomy( $taxonomy ); if ( $taxonomy_obj && ! empty( $taxonomy_obj->show_in_rest ) ) { return true; } return false; } } PK�����j l\Efof��f��7��rest-api/endpoints/class-wp-rest-widgets-controller.phpnu�[��������<?php /** * REST API: WP_REST_Widgets_Controller class * * @package WordPress * @subpackage REST_API * @since 5.8.0 */ /** * Core class to access widgets via the REST API. * * @since 5.8.0 * * @see WP_REST_Controller */ class WP_REST_Widgets_Controller extends WP_REST_Controller { /** * Tracks whether {@see retrieve_widgets()} has been called in the current request. * * @since 5.9.0 * @var bool */ protected $widgets_retrieved = false; /** * Whether the controller supports batching. * * @since 5.9.0 * @var array */ protected $allow_batch = array( 'v1' => true ); /** * Widgets controller constructor. * * @since 5.8.0 */ public function __construct() { $this->namespace = 'wp/v2'; $this->rest_base = 'widgets'; } /** * Registers the widget routes for the controller. * * @since 5.8.0 */ public function register_routes() { register_rest_route( $this->namespace, $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), array( 'methods' => WP_REST_Server::CREATABLE, 'callback' => array( $this, 'create_item' ), 'permission_callback' => array( $this, 'create_item_permissions_check' ), 'args' => $this->get_endpoint_args_for_item_schema(), ), 'allow_batch' => $this->allow_batch, 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, $this->rest_base . '/(?P<id>[\w\-]+)', array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), 'args' => array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ), ), array( 'methods' => WP_REST_Server::EDITABLE, 'callback' => array( $this, 'update_item' ), 'permission_callback' => array( $this, 'update_item_permissions_check' ), 'args' => $this->get_endpoint_args_for_item_schema( WP_REST_Server::EDITABLE ), ), array( 'methods' => WP_REST_Server::DELETABLE, 'callback' => array( $this, 'delete_item' ), 'permission_callback' => array( $this, 'delete_item_permissions_check' ), 'args' => array( 'force' => array( 'description' => __( 'Whether to force removal of the widget, or move it to the inactive sidebar.' ), 'type' => 'boolean', ), ), ), 'allow_batch' => $this->allow_batch, 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Checks if a given request has access to get widgets. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_items_permissions_check( $request ) { $this->retrieve_widgets(); if ( isset( $request['sidebar'] ) && $this->check_read_sidebar_permission( $request['sidebar'] ) ) { return true; } foreach ( wp_get_sidebars_widgets() as $sidebar_id => $widget_ids ) { if ( $this->check_read_sidebar_permission( $sidebar_id ) ) { return true; } } return $this->permissions_check( $request ); } /** * Retrieves a collection of widgets. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_items( $request ) { $this->retrieve_widgets(); $prepared = array(); $permissions_check = $this->permissions_check( $request ); foreach ( wp_get_sidebars_widgets() as $sidebar_id => $widget_ids ) { if ( isset( $request['sidebar'] ) && $sidebar_id !== $request['sidebar'] ) { continue; } if ( is_wp_error( $permissions_check ) && ! $this->check_read_sidebar_permission( $sidebar_id ) ) { continue; } foreach ( $widget_ids as $widget_id ) { $response = $this->prepare_item_for_response( compact( 'sidebar_id', 'widget_id' ), $request ); if ( ! is_wp_error( $response ) ) { $prepared[] = $this->prepare_response_for_collection( $response ); } } } return new WP_REST_Response( $prepared ); } /** * Checks if a given request has access to get a widget. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_item_permissions_check( $request ) { $this->retrieve_widgets(); $widget_id = $request['id']; $sidebar_id = wp_find_widgets_sidebar( $widget_id ); if ( $sidebar_id && $this->check_read_sidebar_permission( $sidebar_id ) ) { return true; } return $this->permissions_check( $request ); } /** * Checks if a sidebar can be read publicly. * * @since 5.9.0 * * @param string $sidebar_id The sidebar ID. * @return bool Whether the sidebar can be read. */ protected function check_read_sidebar_permission( $sidebar_id ) { $sidebar = wp_get_sidebar( $sidebar_id ); return ! empty( $sidebar['show_in_rest'] ); } /** * Gets an individual widget. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_item( $request ) { $this->retrieve_widgets(); $widget_id = $request['id']; $sidebar_id = wp_find_widgets_sidebar( $widget_id ); if ( is_null( $sidebar_id ) ) { return new WP_Error( 'rest_widget_not_found', __( 'No widget was found with that id.' ), array( 'status' => 404 ) ); } return $this->prepare_item_for_response( compact( 'widget_id', 'sidebar_id' ), $request ); } /** * Checks if a given request has access to create widgets. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function create_item_permissions_check( $request ) { return $this->permissions_check( $request ); } /** * Creates a widget. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function create_item( $request ) { $sidebar_id = $request['sidebar']; $widget_id = $this->save_widget( $request, $sidebar_id ); if ( is_wp_error( $widget_id ) ) { return $widget_id; } wp_assign_widget_to_sidebar( $widget_id, $sidebar_id ); $request['context'] = 'edit'; $response = $this->prepare_item_for_response( compact( 'sidebar_id', 'widget_id' ), $request ); if ( is_wp_error( $response ) ) { return $response; } $response->set_status( 201 ); return $response; } /** * Checks if a given request has access to update widgets. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function update_item_permissions_check( $request ) { return $this->permissions_check( $request ); } /** * Updates an existing widget. * * @since 5.8.0 * * @global WP_Widget_Factory $wp_widget_factory * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function update_item( $request ) { global $wp_widget_factory; /* * retrieve_widgets() contains logic to move "hidden" or "lost" widgets to the * wp_inactive_widgets sidebar based on the contents of the $sidebars_widgets global. * * When batch requests are processed, this global is not properly updated by previous * calls, resulting in widgets incorrectly being moved to the wp_inactive_widgets * sidebar. * * See https://core.trac.wordpress.org/ticket/53657. */ wp_get_sidebars_widgets(); $this->retrieve_widgets(); $widget_id = $request['id']; $sidebar_id = wp_find_widgets_sidebar( $widget_id ); // Allow sidebar to be unset or missing when widget is not a WP_Widget. $parsed_id = wp_parse_widget_id( $widget_id ); $widget_object = $wp_widget_factory->get_widget_object( $parsed_id['id_base'] ); if ( is_null( $sidebar_id ) && $widget_object ) { return new WP_Error( 'rest_widget_not_found', __( 'No widget was found with that id.' ), array( 'status' => 404 ) ); } if ( $request->has_param( 'instance' ) || $request->has_param( 'form_data' ) ) { $maybe_error = $this->save_widget( $request, $sidebar_id ); if ( is_wp_error( $maybe_error ) ) { return $maybe_error; } } if ( $request->has_param( 'sidebar' ) ) { if ( $sidebar_id !== $request['sidebar'] ) { $sidebar_id = $request['sidebar']; wp_assign_widget_to_sidebar( $widget_id, $sidebar_id ); } } $request['context'] = 'edit'; return $this->prepare_item_for_response( compact( 'widget_id', 'sidebar_id' ), $request ); } /** * Checks if a given request has access to delete widgets. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function delete_item_permissions_check( $request ) { return $this->permissions_check( $request ); } /** * Deletes a widget. * * @since 5.8.0 * * @global WP_Widget_Factory $wp_widget_factory * @global array $wp_registered_widget_updates The registered widget update functions. * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function delete_item( $request ) { global $wp_widget_factory, $wp_registered_widget_updates; /* * retrieve_widgets() contains logic to move "hidden" or "lost" widgets to the * wp_inactive_widgets sidebar based on the contents of the $sidebars_widgets global. * * When batch requests are processed, this global is not properly updated by previous * calls, resulting in widgets incorrectly being moved to the wp_inactive_widgets * sidebar. * * See https://core.trac.wordpress.org/ticket/53657. */ wp_get_sidebars_widgets(); $this->retrieve_widgets(); $widget_id = $request['id']; $sidebar_id = wp_find_widgets_sidebar( $widget_id ); if ( is_null( $sidebar_id ) ) { return new WP_Error( 'rest_widget_not_found', __( 'No widget was found with that id.' ), array( 'status' => 404 ) ); } $request['context'] = 'edit'; if ( $request['force'] ) { $response = $this->prepare_item_for_response( compact( 'widget_id', 'sidebar_id' ), $request ); $parsed_id = wp_parse_widget_id( $widget_id ); $id_base = $parsed_id['id_base']; $original_post = $_POST; $original_request = $_REQUEST; $_POST = array( 'sidebar' => $sidebar_id, "widget-$id_base" => array(), 'the-widget-id' => $widget_id, 'delete_widget' => '1', ); $_REQUEST = $_POST; /** This action is documented in wp-admin/widgets-form.php */ do_action( 'delete_widget', $widget_id, $sidebar_id, $id_base ); $callback = $wp_registered_widget_updates[ $id_base ]['callback']; $params = $wp_registered_widget_updates[ $id_base ]['params']; if ( is_callable( $callback ) ) { ob_start(); call_user_func_array( $callback, $params ); ob_end_clean(); } $_POST = $original_post; $_REQUEST = $original_request; $widget_object = $wp_widget_factory->get_widget_object( $id_base ); if ( $widget_object ) { /* * WP_Widget sets `updated = true` after an update to prevent more than one widget * from being saved per request. This isn't what we want in the REST API, though, * as we support batch requests. */ $widget_object->updated = false; } wp_assign_widget_to_sidebar( $widget_id, '' ); $response->set_data( array( 'deleted' => true, 'previous' => $response->get_data(), ) ); } else { wp_assign_widget_to_sidebar( $widget_id, 'wp_inactive_widgets' ); $response = $this->prepare_item_for_response( array( 'sidebar_id' => 'wp_inactive_widgets', 'widget_id' => $widget_id, ), $request ); } /** * Fires after a widget is deleted via the REST API. * * @since 5.8.0 * * @param string $widget_id ID of the widget marked for deletion. * @param string $sidebar_id ID of the sidebar the widget was deleted from. * @param WP_REST_Response|WP_Error $response The response data, or WP_Error object on failure. * @param WP_REST_Request $request The request sent to the API. */ do_action( 'rest_delete_widget', $widget_id, $sidebar_id, $response, $request ); return $response; } /** * Performs a permissions check for managing widgets. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error */ protected function permissions_check( $request ) { if ( ! current_user_can( 'edit_theme_options' ) ) { return new WP_Error( 'rest_cannot_manage_widgets', __( 'Sorry, you are not allowed to manage widgets on this site.' ), array( 'status' => rest_authorization_required_code(), ) ); } return true; } /** * Looks for "lost" widgets once per request. * * @since 5.9.0 * * @see retrieve_widgets() */ protected function retrieve_widgets() { if ( ! $this->widgets_retrieved ) { retrieve_widgets(); $this->widgets_retrieved = true; } } /** * Saves the widget in the request object. * * @since 5.8.0 * * @global WP_Widget_Factory $wp_widget_factory * @global array $wp_registered_widget_updates The registered widget update functions. * * @param WP_REST_Request $request Full details about the request. * @param string $sidebar_id ID of the sidebar the widget belongs to. * @return string|WP_Error The saved widget ID. */ protected function save_widget( $request, $sidebar_id ) { global $wp_widget_factory, $wp_registered_widget_updates; require_once ABSPATH . 'wp-admin/includes/widgets.php'; // For next_widget_id_number(). if ( isset( $request['id'] ) ) { // Saving an existing widget. $id = $request['id']; $parsed_id = wp_parse_widget_id( $id ); $id_base = $parsed_id['id_base']; $number = isset( $parsed_id['number'] ) ? $parsed_id['number'] : null; $widget_object = $wp_widget_factory->get_widget_object( $id_base ); $creating = false; } elseif ( $request['id_base'] ) { // Saving a new widget. $id_base = $request['id_base']; $widget_object = $wp_widget_factory->get_widget_object( $id_base ); $number = $widget_object ? next_widget_id_number( $id_base ) : null; $id = $widget_object ? $id_base . '-' . $number : $id_base; $creating = true; } else { return new WP_Error( 'rest_invalid_widget', __( 'Widget type (id_base) is required.' ), array( 'status' => 400 ) ); } if ( ! isset( $wp_registered_widget_updates[ $id_base ] ) ) { return new WP_Error( 'rest_invalid_widget', __( 'The provided widget type (id_base) cannot be updated.' ), array( 'status' => 400 ) ); } if ( isset( $request['instance'] ) ) { if ( ! $widget_object ) { return new WP_Error( 'rest_invalid_widget', __( 'Cannot set instance on a widget that does not extend WP_Widget.' ), array( 'status' => 400 ) ); } if ( isset( $request['instance']['raw'] ) ) { if ( empty( $widget_object->widget_options['show_instance_in_rest'] ) ) { return new WP_Error( 'rest_invalid_widget', __( 'Widget type does not support raw instances.' ), array( 'status' => 400 ) ); } $instance = $request['instance']['raw']; } elseif ( isset( $request['instance']['encoded'], $request['instance']['hash'] ) ) { $serialized_instance = base64_decode( $request['instance']['encoded'] ); if ( ! hash_equals( wp_hash( $serialized_instance ), $request['instance']['hash'] ) ) { return new WP_Error( 'rest_invalid_widget', __( 'The provided instance is malformed.' ), array( 'status' => 400 ) ); } $instance = unserialize( $serialized_instance ); } else { return new WP_Error( 'rest_invalid_widget', __( 'The provided instance is invalid. Must contain raw OR encoded and hash.' ), array( 'status' => 400 ) ); } $form_data = array( "widget-$id_base" => array( $number => $instance, ), 'sidebar' => $sidebar_id, ); } elseif ( isset( $request['form_data'] ) ) { $form_data = $request['form_data']; } else { $form_data = array(); } $original_post = $_POST; $original_request = $_REQUEST; foreach ( $form_data as $key => $value ) { $slashed_value = wp_slash( $value ); $_POST[ $key ] = $slashed_value; $_REQUEST[ $key ] = $slashed_value; } $callback = $wp_registered_widget_updates[ $id_base ]['callback']; $params = $wp_registered_widget_updates[ $id_base ]['params']; if ( is_callable( $callback ) ) { ob_start(); call_user_func_array( $callback, $params ); ob_end_clean(); } $_POST = $original_post; $_REQUEST = $original_request; if ( $widget_object ) { // Register any multi-widget that the update callback just created. $widget_object->_set( $number ); $widget_object->_register_one( $number ); /* * WP_Widget sets `updated = true` after an update to prevent more than one widget * from being saved per request. This isn't what we want in the REST API, though, * as we support batch requests. */ $widget_object->updated = false; } /** * Fires after a widget is created or updated via the REST API. * * @since 5.8.0 * * @param string $id ID of the widget being saved. * @param string $sidebar_id ID of the sidebar containing the widget being saved. * @param WP_REST_Request $request Request object. * @param bool $creating True when creating a widget, false when updating. */ do_action( 'rest_after_save_widget', $id, $sidebar_id, $request, $creating ); return $id; } /** * Prepares the widget for the REST response. * * @since 5.8.0 * * @global WP_Widget_Factory $wp_widget_factory * @global array $wp_registered_widgets The registered widgets. * * @param array $item An array containing a widget_id and sidebar_id. * @param WP_REST_Request $request Request object. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function prepare_item_for_response( $item, $request ) { global $wp_widget_factory, $wp_registered_widgets; $widget_id = $item['widget_id']; $sidebar_id = $item['sidebar_id']; if ( ! isset( $wp_registered_widgets[ $widget_id ] ) ) { return new WP_Error( 'rest_invalid_widget', __( 'The requested widget is invalid.' ), array( 'status' => 500 ) ); } $widget = $wp_registered_widgets[ $widget_id ]; $parsed_id = wp_parse_widget_id( $widget_id ); $fields = $this->get_fields_for_response( $request ); $prepared = array( 'id' => $widget_id, 'id_base' => $parsed_id['id_base'], 'sidebar' => $sidebar_id, 'rendered' => '', 'rendered_form' => null, 'instance' => null, ); if ( rest_is_field_included( 'rendered', $fields ) && 'wp_inactive_widgets' !== $sidebar_id ) { $prepared['rendered'] = trim( wp_render_widget( $widget_id, $sidebar_id ) ); } if ( rest_is_field_included( 'rendered_form', $fields ) ) { $rendered_form = wp_render_widget_control( $widget_id ); if ( ! is_null( $rendered_form ) ) { $prepared['rendered_form'] = trim( $rendered_form ); } } if ( rest_is_field_included( 'instance', $fields ) ) { $widget_object = $wp_widget_factory->get_widget_object( $parsed_id['id_base'] ); if ( $widget_object && isset( $parsed_id['number'] ) ) { $all_instances = $widget_object->get_settings(); $instance = $all_instances[ $parsed_id['number'] ]; $serialized_instance = serialize( $instance ); $prepared['instance']['encoded'] = base64_encode( $serialized_instance ); $prepared['instance']['hash'] = wp_hash( $serialized_instance ); if ( ! empty( $widget_object->widget_options['show_instance_in_rest'] ) ) { // Use new stdClass so that JSON result is {} and not []. $prepared['instance']['raw'] = empty( $instance ) ? new stdClass : $instance; } } } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $prepared = $this->add_additional_fields_to_object( $prepared, $request ); $prepared = $this->filter_response_by_context( $prepared, $context ); $response = rest_ensure_response( $prepared ); $response->add_links( $this->prepare_links( $prepared ) ); /** * Filters the REST API response for a widget. * * @since 5.8.0 * * @param WP_REST_Response|WP_Error $response The response object, or WP_Error object on failure. * @param array $widget The registered widget data. * @param WP_REST_Request $request Request used to generate the response. */ return apply_filters( 'rest_prepare_widget', $response, $widget, $request ); } /** * Prepares links for the widget. * * @since 5.8.0 * * @param array $prepared Widget. * @return array Links for the given widget. */ protected function prepare_links( $prepared ) { $id_base = ! empty( $prepared['id_base'] ) ? $prepared['id_base'] : $prepared['id']; return array( 'self' => array( 'href' => rest_url( sprintf( '%s/%s/%s', $this->namespace, $this->rest_base, $prepared['id'] ) ), ), 'collection' => array( 'href' => rest_url( sprintf( '%s/%s', $this->namespace, $this->rest_base ) ), ), 'about' => array( 'href' => rest_url( sprintf( 'wp/v2/widget-types/%s', $id_base ) ), 'embeddable' => true, ), 'https://api.w.org/sidebar' => array( 'href' => rest_url( sprintf( 'wp/v2/sidebars/%s/', $prepared['sidebar'] ) ), ), ); } /** * Gets the list of collection params. * * @since 5.8.0 * * @return array[] */ public function get_collection_params() { return array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), 'sidebar' => array( 'description' => __( 'The sidebar to return widgets for.' ), 'type' => 'string', ), ); } /** * Retrieves the widget's schema, conforming to JSON Schema. * * @since 5.8.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $this->schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'widget', 'type' => 'object', 'properties' => array( 'id' => array( 'description' => __( 'Unique identifier for the widget.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), ), 'id_base' => array( 'description' => __( 'The type of the widget. Corresponds to ID in widget-types endpoint.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), ), 'sidebar' => array( 'description' => __( 'The sidebar the widget belongs to.' ), 'type' => 'string', 'default' => 'wp_inactive_widgets', 'required' => true, 'context' => array( 'view', 'edit', 'embed' ), ), 'rendered' => array( 'description' => __( 'HTML representation of the widget.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'rendered_form' => array( 'description' => __( 'HTML representation of the widget admin form.' ), 'type' => 'string', 'context' => array( 'edit' ), 'readonly' => true, ), 'instance' => array( 'description' => __( 'Instance settings of the widget, if supported.' ), 'type' => 'object', 'context' => array( 'edit' ), 'default' => null, 'properties' => array( 'encoded' => array( 'description' => __( 'Base64 encoded representation of the instance settings.' ), 'type' => 'string', 'context' => array( 'edit' ), ), 'hash' => array( 'description' => __( 'Cryptographic hash of the instance settings.' ), 'type' => 'string', 'context' => array( 'edit' ), ), 'raw' => array( 'description' => __( 'Unencoded instance settings, if supported.' ), 'type' => 'object', 'context' => array( 'edit' ), ), ), ), 'form_data' => array( 'description' => __( 'URL-encoded form data from the widget admin form. Used to update a widget that does not support instance. Write only.' ), 'type' => 'string', 'context' => array(), 'arg_options' => array( 'sanitize_callback' => static function( $string ) { $array = array(); wp_parse_str( $string, $array ); return $array; }, ), ), ), ); return $this->add_additional_fields_schema( $this->schema ); } } PK�����j l\)��)��6��rest-api/endpoints/class-wp-rest-search-controller.phpnu�[��������<?php /** * REST API: WP_REST_Search_Controller class * * @package WordPress * @subpackage REST_API * @since 5.0.0 */ /** * Core class to search through all WordPress content via the REST API. * * @since 5.0.0 * * @see WP_REST_Controller */ class WP_REST_Search_Controller extends WP_REST_Controller { /** * ID property name. */ const PROP_ID = 'id'; /** * Title property name. */ const PROP_TITLE = 'title'; /** * URL property name. */ const PROP_URL = 'url'; /** * Type property name. */ const PROP_TYPE = 'type'; /** * Subtype property name. */ const PROP_SUBTYPE = 'subtype'; /** * Identifier for the 'any' type. */ const TYPE_ANY = 'any'; /** * Search handlers used by the controller. * * @since 5.0.0 * @var WP_REST_Search_Handler[] */ protected $search_handlers = array(); /** * Constructor. * * @since 5.0.0 * * @param array $search_handlers List of search handlers to use in the controller. Each search * handler instance must extend the `WP_REST_Search_Handler` class. */ public function __construct( array $search_handlers ) { $this->namespace = 'wp/v2'; $this->rest_base = 'search'; foreach ( $search_handlers as $search_handler ) { if ( ! $search_handler instanceof WP_REST_Search_Handler ) { _doing_it_wrong( __METHOD__, /* translators: %s: PHP class name. */ sprintf( __( 'REST search handlers must extend the %s class.' ), 'WP_REST_Search_Handler' ), '5.0.0' ); continue; } $this->search_handlers[ $search_handler->get_type() ] = $search_handler; } } /** * Registers the routes for the search controller. * * @since 5.0.0 * * @see register_rest_route() */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permission_check' ), 'args' => $this->get_collection_params(), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Checks if a given request has access to search content. * * @since 5.0.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has search access, WP_Error object otherwise. */ public function get_items_permission_check( $request ) { return true; } /** * Retrieves a collection of search results. * * @since 5.0.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_items( $request ) { $handler = $this->get_search_handler( $request ); if ( is_wp_error( $handler ) ) { return $handler; } $result = $handler->search_items( $request ); if ( ! isset( $result[ WP_REST_Search_Handler::RESULT_IDS ] ) || ! is_array( $result[ WP_REST_Search_Handler::RESULT_IDS ] ) || ! isset( $result[ WP_REST_Search_Handler::RESULT_TOTAL ] ) ) { return new WP_Error( 'rest_search_handler_error', __( 'Internal search handler error.' ), array( 'status' => 500 ) ); } $ids = $result[ WP_REST_Search_Handler::RESULT_IDS ]; $results = array(); foreach ( $ids as $id ) { $data = $this->prepare_item_for_response( $id, $request ); $results[] = $this->prepare_response_for_collection( $data ); } $total = (int) $result[ WP_REST_Search_Handler::RESULT_TOTAL ]; $page = (int) $request['page']; $per_page = (int) $request['per_page']; $max_pages = ceil( $total / $per_page ); if ( $page > $max_pages && $total > 0 ) { return new WP_Error( 'rest_search_invalid_page_number', __( 'The page number requested is larger than the number of pages available.' ), array( 'status' => 400 ) ); } $response = rest_ensure_response( $results ); $response->header( 'X-WP-Total', $total ); $response->header( 'X-WP-TotalPages', $max_pages ); $request_params = $request->get_query_params(); $base = add_query_arg( urlencode_deep( $request_params ), rest_url( sprintf( '%s/%s', $this->namespace, $this->rest_base ) ) ); if ( $page > 1 ) { $prev_link = add_query_arg( 'page', $page - 1, $base ); $response->link_header( 'prev', $prev_link ); } if ( $page < $max_pages ) { $next_link = add_query_arg( 'page', $page + 1, $base ); $response->link_header( 'next', $next_link ); } return $response; } /** * Prepares a single search result for response. * * @since 5.0.0 * @since 5.6.0 The `$id` parameter can accept a string. * @since 5.9.0 Renamed `$id` to `$item` to match parent class for PHP 8 named parameter support. * * @param int|string $item ID of the item to prepare. * @param WP_REST_Request $request Request object. * @return WP_REST_Response Response object. */ public function prepare_item_for_response( $item, $request ) { // Restores the more descriptive, specific name for use within this method. $item_id = $item; $handler = $this->get_search_handler( $request ); if ( is_wp_error( $handler ) ) { return new WP_REST_Response(); } $fields = $this->get_fields_for_response( $request ); $data = $handler->prepare_item( $item_id, $fields ); $data = $this->add_additional_fields_to_object( $data, $request ); $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->filter_response_by_context( $data, $context ); $response = rest_ensure_response( $data ); $links = $handler->prepare_item_links( $item_id ); $links['collection'] = array( 'href' => rest_url( sprintf( '%s/%s', $this->namespace, $this->rest_base ) ), ); $response->add_links( $links ); return $response; } /** * Retrieves the item schema, conforming to JSON Schema. * * @since 5.0.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $types = array(); $subtypes = array(); foreach ( $this->search_handlers as $search_handler ) { $types[] = $search_handler->get_type(); $subtypes = array_merge( $subtypes, $search_handler->get_subtypes() ); } $types = array_unique( $types ); $subtypes = array_unique( $subtypes ); $schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'search-result', 'type' => 'object', 'properties' => array( self::PROP_ID => array( 'description' => __( 'Unique identifier for the object.' ), 'type' => array( 'integer', 'string' ), 'context' => array( 'view', 'embed' ), 'readonly' => true, ), self::PROP_TITLE => array( 'description' => __( 'The title for the object.' ), 'type' => 'string', 'context' => array( 'view', 'embed' ), 'readonly' => true, ), self::PROP_URL => array( 'description' => __( 'URL to the object.' ), 'type' => 'string', 'format' => 'uri', 'context' => array( 'view', 'embed' ), 'readonly' => true, ), self::PROP_TYPE => array( 'description' => __( 'Object type.' ), 'type' => 'string', 'enum' => $types, 'context' => array( 'view', 'embed' ), 'readonly' => true, ), self::PROP_SUBTYPE => array( 'description' => __( 'Object subtype.' ), 'type' => 'string', 'enum' => $subtypes, 'context' => array( 'view', 'embed' ), 'readonly' => true, ), ), ); $this->schema = $schema; return $this->add_additional_fields_schema( $this->schema ); } /** * Retrieves the query params for the search results collection. * * @since 5.0.0 * * @return array Collection parameters. */ public function get_collection_params() { $types = array(); $subtypes = array(); foreach ( $this->search_handlers as $search_handler ) { $types[] = $search_handler->get_type(); $subtypes = array_merge( $subtypes, $search_handler->get_subtypes() ); } $types = array_unique( $types ); $subtypes = array_unique( $subtypes ); $query_params = parent::get_collection_params(); $query_params['context']['default'] = 'view'; $query_params[ self::PROP_TYPE ] = array( 'default' => $types[0], 'description' => __( 'Limit results to items of an object type.' ), 'type' => 'string', 'enum' => $types, ); $query_params[ self::PROP_SUBTYPE ] = array( 'default' => self::TYPE_ANY, 'description' => __( 'Limit results to items of one or more object subtypes.' ), 'type' => 'array', 'items' => array( 'enum' => array_merge( $subtypes, array( self::TYPE_ANY ) ), 'type' => 'string', ), 'sanitize_callback' => array( $this, 'sanitize_subtypes' ), ); return $query_params; } /** * Sanitizes the list of subtypes, to ensure only subtypes of the passed type are included. * * @since 5.0.0 * * @param string|array $subtypes One or more subtypes. * @param WP_REST_Request $request Full details about the request. * @param string $parameter Parameter name. * @return array|WP_Error List of valid subtypes, or WP_Error object on failure. */ public function sanitize_subtypes( $subtypes, $request, $parameter ) { $subtypes = wp_parse_slug_list( $subtypes ); $subtypes = rest_parse_request_arg( $subtypes, $request, $parameter ); if ( is_wp_error( $subtypes ) ) { return $subtypes; } // 'any' overrides any other subtype. if ( in_array( self::TYPE_ANY, $subtypes, true ) ) { return array( self::TYPE_ANY ); } $handler = $this->get_search_handler( $request ); if ( is_wp_error( $handler ) ) { return $handler; } return array_intersect( $subtypes, $handler->get_subtypes() ); } /** * Gets the search handler to handle the current request. * * @since 5.0.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Search_Handler|WP_Error Search handler for the request type, or WP_Error object on failure. */ protected function get_search_handler( $request ) { $type = $request->get_param( self::PROP_TYPE ); if ( ! $type || ! isset( $this->search_handlers[ $type ] ) ) { return new WP_Error( 'rest_search_invalid_type', __( 'Invalid type parameter.' ), array( 'status' => 400 ) ); } return $this->search_handlers[ $type ]; } } PK�����j l\ȩn��n��7��rest-api/endpoints/class-wp-rest-plugins-controller.phpnu�[��������<?php /** * REST API: WP_REST_Plugins_Controller class * * @package WordPress * @subpackage REST_API * @since 5.5.0 */ /** * Core class to access plugins via the REST API. * * @since 5.5.0 * * @see WP_REST_Controller */ class WP_REST_Plugins_Controller extends WP_REST_Controller { const PATTERN = '[^.\/]+(?:\/[^.\/]+)?'; /** * Plugins controller constructor. * * @since 5.5.0 */ public function __construct() { $this->namespace = 'wp/v2'; $this->rest_base = 'plugins'; } /** * Registers the routes for the plugins controller. * * @since 5.5.0 */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), array( 'methods' => WP_REST_Server::CREATABLE, 'callback' => array( $this, 'create_item' ), 'permission_callback' => array( $this, 'create_item_permissions_check' ), 'args' => array( 'slug' => array( 'type' => 'string', 'required' => true, 'description' => __( 'WordPress.org plugin directory slug.' ), 'pattern' => '[\w\-]+', ), 'status' => array( 'description' => __( 'The plugin activation status.' ), 'type' => 'string', 'enum' => is_multisite() ? array( 'inactive', 'active', 'network-active' ) : array( 'inactive', 'active' ), 'default' => 'inactive', ), ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P<plugin>' . self::PATTERN . ')', array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), ), array( 'methods' => WP_REST_Server::EDITABLE, 'callback' => array( $this, 'update_item' ), 'permission_callback' => array( $this, 'update_item_permissions_check' ), 'args' => $this->get_endpoint_args_for_item_schema( WP_REST_Server::EDITABLE ), ), array( 'methods' => WP_REST_Server::DELETABLE, 'callback' => array( $this, 'delete_item' ), 'permission_callback' => array( $this, 'delete_item_permissions_check' ), ), 'args' => array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), 'plugin' => array( 'type' => 'string', 'pattern' => self::PATTERN, 'validate_callback' => array( $this, 'validate_plugin_param' ), 'sanitize_callback' => array( $this, 'sanitize_plugin_param' ), ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Checks if a given request has access to get plugins. * * @since 5.5.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_items_permissions_check( $request ) { if ( ! current_user_can( 'activate_plugins' ) ) { return new WP_Error( 'rest_cannot_view_plugins', __( 'Sorry, you are not allowed to manage plugins for this site.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Retrieves a collection of plugins. * * @since 5.5.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_items( $request ) { require_once ABSPATH . 'wp-admin/includes/plugin.php'; $plugins = array(); foreach ( get_plugins() as $file => $data ) { if ( is_wp_error( $this->check_read_permission( $file ) ) ) { continue; } $data['_file'] = $file; if ( ! $this->does_plugin_match_request( $request, $data ) ) { continue; } $plugins[] = $this->prepare_response_for_collection( $this->prepare_item_for_response( $data, $request ) ); } return new WP_REST_Response( $plugins ); } /** * Checks if a given request has access to get a specific plugin. * * @since 5.5.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access for the item, WP_Error object otherwise. */ public function get_item_permissions_check( $request ) { if ( ! current_user_can( 'activate_plugins' ) ) { return new WP_Error( 'rest_cannot_view_plugin', __( 'Sorry, you are not allowed to manage plugins for this site.' ), array( 'status' => rest_authorization_required_code() ) ); } $can_read = $this->check_read_permission( $request['plugin'] ); if ( is_wp_error( $can_read ) ) { return $can_read; } return true; } /** * Retrieves one plugin from the site. * * @since 5.5.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_item( $request ) { require_once ABSPATH . 'wp-admin/includes/plugin.php'; $data = $this->get_plugin_data( $request['plugin'] ); if ( is_wp_error( $data ) ) { return $data; } return $this->prepare_item_for_response( $data, $request ); } /** * Checks if the given plugin can be viewed by the current user. * * On multisite, this hides non-active network only plugins if the user does not have permission * to manage network plugins. * * @since 5.5.0 * * @param string $plugin The plugin file to check. * @return true|WP_Error True if can read, a WP_Error instance otherwise. */ protected function check_read_permission( $plugin ) { require_once ABSPATH . 'wp-admin/includes/plugin.php'; if ( ! $this->is_plugin_installed( $plugin ) ) { return new WP_Error( 'rest_plugin_not_found', __( 'Plugin not found.' ), array( 'status' => 404 ) ); } if ( ! is_multisite() ) { return true; } if ( ! is_network_only_plugin( $plugin ) || is_plugin_active( $plugin ) || current_user_can( 'manage_network_plugins' ) ) { return true; } return new WP_Error( 'rest_cannot_view_plugin', __( 'Sorry, you are not allowed to manage this plugin.' ), array( 'status' => rest_authorization_required_code() ) ); } /** * Checks if a given request has access to upload plugins. * * @since 5.5.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to create items, WP_Error object otherwise. */ public function create_item_permissions_check( $request ) { if ( ! current_user_can( 'install_plugins' ) ) { return new WP_Error( 'rest_cannot_install_plugin', __( 'Sorry, you are not allowed to install plugins on this site.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( 'inactive' !== $request['status'] && ! current_user_can( 'activate_plugins' ) ) { return new WP_Error( 'rest_cannot_activate_plugin', __( 'Sorry, you are not allowed to activate plugins.' ), array( 'status' => rest_authorization_required_code(), ) ); } return true; } /** * Uploads a plugin and optionally activates it. * * @since 5.5.0 * * @global WP_Filesystem_Base $wp_filesystem WordPress filesystem subclass. * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function create_item( $request ) { global $wp_filesystem; require_once ABSPATH . 'wp-admin/includes/file.php'; require_once ABSPATH . 'wp-admin/includes/plugin.php'; require_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php'; require_once ABSPATH . 'wp-admin/includes/plugin-install.php'; $slug = $request['slug']; // Verify filesystem is accessible first. $filesystem_available = $this->is_filesystem_available(); if ( is_wp_error( $filesystem_available ) ) { return $filesystem_available; } $api = plugins_api( 'plugin_information', array( 'slug' => $slug, 'fields' => array( 'sections' => false, 'language_packs' => true, ), ) ); if ( is_wp_error( $api ) ) { if ( false !== strpos( $api->get_error_message(), 'Plugin not found.' ) ) { $api->add_data( array( 'status' => 404 ) ); } else { $api->add_data( array( 'status' => 500 ) ); } return $api; } $skin = new WP_Ajax_Upgrader_Skin(); $upgrader = new Plugin_Upgrader( $skin ); $result = $upgrader->install( $api->download_link ); if ( is_wp_error( $result ) ) { $result->add_data( array( 'status' => 500 ) ); return $result; } // This should be the same as $result above. if ( is_wp_error( $skin->result ) ) { $skin->result->add_data( array( 'status' => 500 ) ); return $skin->result; } if ( $skin->get_errors()->has_errors() ) { $error = $skin->get_errors(); $error->add_data( array( 'status' => 500 ) ); return $error; } if ( is_null( $result ) ) { // Pass through the error from WP_Filesystem if one was raised. if ( $wp_filesystem instanceof WP_Filesystem_Base && is_wp_error( $wp_filesystem->errors ) && $wp_filesystem->errors->has_errors() ) { return new WP_Error( 'unable_to_connect_to_filesystem', $wp_filesystem->errors->get_error_message(), array( 'status' => 500 ) ); } return new WP_Error( 'unable_to_connect_to_filesystem', __( 'Unable to connect to the filesystem. Please confirm your credentials.' ), array( 'status' => 500 ) ); } $file = $upgrader->plugin_info(); if ( ! $file ) { return new WP_Error( 'unable_to_determine_installed_plugin', __( 'Unable to determine what plugin was installed.' ), array( 'status' => 500 ) ); } if ( 'inactive' !== $request['status'] ) { $can_change_status = $this->plugin_status_permission_check( $file, $request['status'], 'inactive' ); if ( is_wp_error( $can_change_status ) ) { return $can_change_status; } $changed_status = $this->handle_plugin_status( $file, $request['status'], 'inactive' ); if ( is_wp_error( $changed_status ) ) { return $changed_status; } } // Install translations. $installed_locales = array_values( get_available_languages() ); /** This filter is documented in wp-includes/update.php */ $installed_locales = apply_filters( 'plugins_update_check_locales', $installed_locales ); $language_packs = array_map( static function( $item ) { return (object) $item; }, $api->language_packs ); $language_packs = array_filter( $language_packs, static function( $pack ) use ( $installed_locales ) { return in_array( $pack->language, $installed_locales, true ); } ); if ( $language_packs ) { $lp_upgrader = new Language_Pack_Upgrader( $skin ); // Install all applicable language packs for the plugin. $lp_upgrader->bulk_upgrade( $language_packs ); } $path = WP_PLUGIN_DIR . '/' . $file; $data = get_plugin_data( $path, false, false ); $data['_file'] = $file; $response = $this->prepare_item_for_response( $data, $request ); $response->set_status( 201 ); $response->header( 'Location', rest_url( sprintf( '%s/%s/%s', $this->namespace, $this->rest_base, substr( $file, 0, - 4 ) ) ) ); return $response; } /** * Checks if a given request has access to update a specific plugin. * * @since 5.5.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to update the item, WP_Error object otherwise. */ public function update_item_permissions_check( $request ) { require_once ABSPATH . 'wp-admin/includes/plugin.php'; if ( ! current_user_can( 'activate_plugins' ) ) { return new WP_Error( 'rest_cannot_manage_plugins', __( 'Sorry, you are not allowed to manage plugins for this site.' ), array( 'status' => rest_authorization_required_code() ) ); } $can_read = $this->check_read_permission( $request['plugin'] ); if ( is_wp_error( $can_read ) ) { return $can_read; } $status = $this->get_plugin_status( $request['plugin'] ); if ( $request['status'] && $status !== $request['status'] ) { $can_change_status = $this->plugin_status_permission_check( $request['plugin'], $request['status'], $status ); if ( is_wp_error( $can_change_status ) ) { return $can_change_status; } } return true; } /** * Updates one plugin. * * @since 5.5.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function update_item( $request ) { require_once ABSPATH . 'wp-admin/includes/plugin.php'; $data = $this->get_plugin_data( $request['plugin'] ); if ( is_wp_error( $data ) ) { return $data; } $status = $this->get_plugin_status( $request['plugin'] ); if ( $request['status'] && $status !== $request['status'] ) { $handled = $this->handle_plugin_status( $request['plugin'], $request['status'], $status ); if ( is_wp_error( $handled ) ) { return $handled; } } $this->update_additional_fields_for_object( $data, $request ); $request['context'] = 'edit'; return $this->prepare_item_for_response( $data, $request ); } /** * Checks if a given request has access to delete a specific plugin. * * @since 5.5.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to delete the item, WP_Error object otherwise. */ public function delete_item_permissions_check( $request ) { if ( ! current_user_can( 'activate_plugins' ) ) { return new WP_Error( 'rest_cannot_manage_plugins', __( 'Sorry, you are not allowed to manage plugins for this site.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( ! current_user_can( 'delete_plugins' ) ) { return new WP_Error( 'rest_cannot_manage_plugins', __( 'Sorry, you are not allowed to delete plugins for this site.' ), array( 'status' => rest_authorization_required_code() ) ); } $can_read = $this->check_read_permission( $request['plugin'] ); if ( is_wp_error( $can_read ) ) { return $can_read; } return true; } /** * Deletes one plugin from the site. * * @since 5.5.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function delete_item( $request ) { require_once ABSPATH . 'wp-admin/includes/file.php'; require_once ABSPATH . 'wp-admin/includes/plugin.php'; $data = $this->get_plugin_data( $request['plugin'] ); if ( is_wp_error( $data ) ) { return $data; } if ( is_plugin_active( $request['plugin'] ) ) { return new WP_Error( 'rest_cannot_delete_active_plugin', __( 'Cannot delete an active plugin. Please deactivate it first.' ), array( 'status' => 400 ) ); } $filesystem_available = $this->is_filesystem_available(); if ( is_wp_error( $filesystem_available ) ) { return $filesystem_available; } $prepared = $this->prepare_item_for_response( $data, $request ); $deleted = delete_plugins( array( $request['plugin'] ) ); if ( is_wp_error( $deleted ) ) { $deleted->add_data( array( 'status' => 500 ) ); return $deleted; } return new WP_REST_Response( array( 'deleted' => true, 'previous' => $prepared->get_data(), ) ); } /** * Prepares the plugin for the REST response. * * @since 5.5.0 * * @param mixed $item Unmarked up and untranslated plugin data from {@see get_plugin_data()}. * @param WP_REST_Request $request Request object. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function prepare_item_for_response( $item, $request ) { $item = _get_plugin_data_markup_translate( $item['_file'], $item, false ); $marked = _get_plugin_data_markup_translate( $item['_file'], $item, true ); $data = array( 'plugin' => substr( $item['_file'], 0, - 4 ), 'status' => $this->get_plugin_status( $item['_file'] ), 'name' => $item['Name'], 'plugin_uri' => $item['PluginURI'], 'author' => $item['Author'], 'author_uri' => $item['AuthorURI'], 'description' => array( 'raw' => $item['Description'], 'rendered' => $marked['Description'], ), 'version' => $item['Version'], 'network_only' => $item['Network'], 'requires_wp' => $item['RequiresWP'], 'requires_php' => $item['RequiresPHP'], 'textdomain' => $item['TextDomain'], ); $data = $this->add_additional_fields_to_object( $data, $request ); $response = new WP_REST_Response( $data ); $response->add_links( $this->prepare_links( $item ) ); /** * Filters plugin data for a REST API response. * * @since 5.5.0 * * @param WP_REST_Response $response The response object. * @param array $item The plugin item from {@see get_plugin_data()}. * @param WP_REST_Request $request The request object. */ return apply_filters( 'rest_prepare_plugin', $response, $item, $request ); } /** * Prepares links for the request. * * @since 5.5.0 * * @param array $item The plugin item. * @return array[] */ protected function prepare_links( $item ) { return array( 'self' => array( 'href' => rest_url( sprintf( '%s/%s/%s', $this->namespace, $this->rest_base, substr( $item['_file'], 0, - 4 ) ) ), ), ); } /** * Gets the plugin header data for a plugin. * * @since 5.5.0 * * @param string $plugin The plugin file to get data for. * @return array|WP_Error The plugin data, or a WP_Error if the plugin is not installed. */ protected function get_plugin_data( $plugin ) { $plugins = get_plugins(); if ( ! isset( $plugins[ $plugin ] ) ) { return new WP_Error( 'rest_plugin_not_found', __( 'Plugin not found.' ), array( 'status' => 404 ) ); } $data = $plugins[ $plugin ]; $data['_file'] = $plugin; return $data; } /** * Get's the activation status for a plugin. * * @since 5.5.0 * * @param string $plugin The plugin file to check. * @return string Either 'network-active', 'active' or 'inactive'. */ protected function get_plugin_status( $plugin ) { if ( is_plugin_active_for_network( $plugin ) ) { return 'network-active'; } if ( is_plugin_active( $plugin ) ) { return 'active'; } return 'inactive'; } /** * Handle updating a plugin's status. * * @since 5.5.0 * * @param string $plugin The plugin file to update. * @param string $new_status The plugin's new status. * @param string $current_status The plugin's current status. * @return true|WP_Error */ protected function plugin_status_permission_check( $plugin, $new_status, $current_status ) { if ( is_multisite() && ( 'network-active' === $current_status || 'network-active' === $new_status ) && ! current_user_can( 'manage_network_plugins' ) ) { return new WP_Error( 'rest_cannot_manage_network_plugins', __( 'Sorry, you are not allowed to manage network plugins.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( ( 'active' === $new_status || 'network-active' === $new_status ) && ! current_user_can( 'activate_plugin', $plugin ) ) { return new WP_Error( 'rest_cannot_activate_plugin', __( 'Sorry, you are not allowed to activate this plugin.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( 'inactive' === $new_status && ! current_user_can( 'deactivate_plugin', $plugin ) ) { return new WP_Error( 'rest_cannot_deactivate_plugin', __( 'Sorry, you are not allowed to deactivate this plugin.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Handle updating a plugin's status. * * @since 5.5.0 * * @param string $plugin The plugin file to update. * @param string $new_status The plugin's new status. * @param string $current_status The plugin's current status. * @return true|WP_Error */ protected function handle_plugin_status( $plugin, $new_status, $current_status ) { if ( 'inactive' === $new_status ) { deactivate_plugins( $plugin, false, 'network-active' === $current_status ); return true; } if ( 'active' === $new_status && 'network-active' === $current_status ) { return true; } $network_activate = 'network-active' === $new_status; if ( is_multisite() && ! $network_activate && is_network_only_plugin( $plugin ) ) { return new WP_Error( 'rest_network_only_plugin', __( 'Network only plugin must be network activated.' ), array( 'status' => 400 ) ); } $activated = activate_plugin( $plugin, '', $network_activate ); if ( is_wp_error( $activated ) ) { $activated->add_data( array( 'status' => 500 ) ); return $activated; } return true; } /** * Checks that the "plugin" parameter is a valid path. * * @since 5.5.0 * * @param string $file The plugin file parameter. * @return bool */ public function validate_plugin_param( $file ) { if ( ! is_string( $file ) || ! preg_match( '/' . self::PATTERN . '/u', $file ) ) { return false; } $validated = validate_file( plugin_basename( $file ) ); return 0 === $validated; } /** * Sanitizes the "plugin" parameter to be a proper plugin file with ".php" appended. * * @since 5.5.0 * * @param string $file The plugin file parameter. * @return string */ public function sanitize_plugin_param( $file ) { return plugin_basename( sanitize_text_field( $file . '.php' ) ); } /** * Checks if the plugin matches the requested parameters. * * @since 5.5.0 * * @param WP_REST_Request $request The request to require the plugin matches against. * @param array $item The plugin item. * @return bool */ protected function does_plugin_match_request( $request, $item ) { $search = $request['search']; if ( $search ) { $matched_search = false; foreach ( $item as $field ) { if ( is_string( $field ) && false !== strpos( strip_tags( $field ), $search ) ) { $matched_search = true; break; } } if ( ! $matched_search ) { return false; } } $status = $request['status']; if ( $status && ! in_array( $this->get_plugin_status( $item['_file'] ), $status, true ) ) { return false; } return true; } /** * Checks if the plugin is installed. * * @since 5.5.0 * * @param string $plugin The plugin file. * @return bool */ protected function is_plugin_installed( $plugin ) { return file_exists( WP_PLUGIN_DIR . '/' . $plugin ); } /** * Determine if the endpoints are available. * * Only the 'Direct' filesystem transport, and SSH/FTP when credentials are stored are supported at present. * * @since 5.5.0 * * @return true|WP_Error True if filesystem is available, WP_Error otherwise. */ protected function is_filesystem_available() { $filesystem_method = get_filesystem_method(); if ( 'direct' === $filesystem_method ) { return true; } ob_start(); $filesystem_credentials_are_stored = request_filesystem_credentials( self_admin_url() ); ob_end_clean(); if ( $filesystem_credentials_are_stored ) { return true; } return new WP_Error( 'fs_unavailable', __( 'The filesystem is currently unavailable for managing plugins.' ), array( 'status' => 500 ) ); } /** * Retrieves the plugin's schema, conforming to JSON Schema. * * @since 5.5.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $this->schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'plugin', 'type' => 'object', 'properties' => array( 'plugin' => array( 'description' => __( 'The plugin file.' ), 'type' => 'string', 'pattern' => self::PATTERN, 'readonly' => true, 'context' => array( 'view', 'edit', 'embed' ), ), 'status' => array( 'description' => __( 'The plugin activation status.' ), 'type' => 'string', 'enum' => is_multisite() ? array( 'inactive', 'active', 'network-active' ) : array( 'inactive', 'active' ), 'context' => array( 'view', 'edit', 'embed' ), ), 'name' => array( 'description' => __( 'The plugin name.' ), 'type' => 'string', 'readonly' => true, 'context' => array( 'view', 'edit', 'embed' ), ), 'plugin_uri' => array( 'description' => __( 'The plugin\'s website address.' ), 'type' => 'string', 'format' => 'uri', 'readonly' => true, 'context' => array( 'view', 'edit' ), ), 'author' => array( 'description' => __( 'The plugin author.' ), 'type' => 'object', 'readonly' => true, 'context' => array( 'view', 'edit' ), ), 'author_uri' => array( 'description' => __( 'Plugin author\'s website address.' ), 'type' => 'string', 'format' => 'uri', 'readonly' => true, 'context' => array( 'view', 'edit' ), ), 'description' => array( 'description' => __( 'The plugin description.' ), 'type' => 'object', 'readonly' => true, 'context' => array( 'view', 'edit' ), 'properties' => array( 'raw' => array( 'description' => __( 'The raw plugin description.' ), 'type' => 'string', ), 'rendered' => array( 'description' => __( 'The plugin description formatted for display.' ), 'type' => 'string', ), ), ), 'version' => array( 'description' => __( 'The plugin version number.' ), 'type' => 'string', 'readonly' => true, 'context' => array( 'view', 'edit' ), ), 'network_only' => array( 'description' => __( 'Whether the plugin can only be activated network-wide.' ), 'type' => 'boolean', 'readonly' => true, 'context' => array( 'view', 'edit', 'embed' ), ), 'requires_wp' => array( 'description' => __( 'Minimum required version of WordPress.' ), 'type' => 'string', 'readonly' => true, 'context' => array( 'view', 'edit', 'embed' ), ), 'requires_php' => array( 'description' => __( 'Minimum required version of PHP.' ), 'type' => 'string', 'readonly' => true, 'context' => array( 'view', 'edit', 'embed' ), ), 'textdomain' => array( 'description' => __( 'The plugin\'s text domain.' ), 'type' => 'string', 'readonly' => true, 'context' => array( 'view', 'edit' ), ), ), ); return $this->add_additional_fields_schema( $this->schema ); } /** * Retrieves the query params for the collections. * * @since 5.5.0 * * @return array Query parameters for the collection. */ public function get_collection_params() { $query_params = parent::get_collection_params(); $query_params['context']['default'] = 'view'; $query_params['status'] = array( 'description' => __( 'Limits results to plugins with the given status.' ), 'type' => 'array', 'items' => array( 'type' => 'string', 'enum' => is_multisite() ? array( 'inactive', 'active', 'network-active' ) : array( 'inactive', 'active' ), ), ); unset( $query_params['page'], $query_params['per_page'] ); return $query_params; } } PK�����j l\aK*��*��5��rest-api/endpoints/class-wp-rest-users-controller.phpnu�[��������<?php /** * REST API: WP_REST_Users_Controller class * * @package WordPress * @subpackage REST_API * @since 4.7.0 */ /** * Core class used to manage users via the REST API. * * @since 4.7.0 * * @see WP_REST_Controller */ class WP_REST_Users_Controller extends WP_REST_Controller { /** * Instance of a user meta fields object. * * @since 4.7.0 * @var WP_REST_User_Meta_Fields */ protected $meta; /** * Constructor. * * @since 4.7.0 */ public function __construct() { $this->namespace = 'wp/v2'; $this->rest_base = 'users'; $this->meta = new WP_REST_User_Meta_Fields(); } /** * Registers the routes for users. * * @since 4.7.0 * * @see register_rest_route() */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), array( 'methods' => WP_REST_Server::CREATABLE, 'callback' => array( $this, 'create_item' ), 'permission_callback' => array( $this, 'create_item_permissions_check' ), 'args' => $this->get_endpoint_args_for_item_schema( WP_REST_Server::CREATABLE ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P<id>[\d]+)', array( 'args' => array( 'id' => array( 'description' => __( 'Unique identifier for the user.' ), 'type' => 'integer', ), ), array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), 'args' => array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ), ), array( 'methods' => WP_REST_Server::EDITABLE, 'callback' => array( $this, 'update_item' ), 'permission_callback' => array( $this, 'update_item_permissions_check' ), 'args' => $this->get_endpoint_args_for_item_schema( WP_REST_Server::EDITABLE ), ), array( 'methods' => WP_REST_Server::DELETABLE, 'callback' => array( $this, 'delete_item' ), 'permission_callback' => array( $this, 'delete_item_permissions_check' ), 'args' => array( 'force' => array( 'type' => 'boolean', 'default' => false, 'description' => __( 'Required to be true, as users do not support trashing.' ), ), 'reassign' => array( 'type' => 'integer', 'description' => __( 'Reassign the deleted user\'s posts and links to this user ID.' ), 'required' => true, 'sanitize_callback' => array( $this, 'check_reassign' ), ), ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/me', array( array( 'methods' => WP_REST_Server::READABLE, 'permission_callback' => '__return_true', 'callback' => array( $this, 'get_current_item' ), 'args' => array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ), ), array( 'methods' => WP_REST_Server::EDITABLE, 'callback' => array( $this, 'update_current_item' ), 'permission_callback' => array( $this, 'update_current_item_permissions_check' ), 'args' => $this->get_endpoint_args_for_item_schema( WP_REST_Server::EDITABLE ), ), array( 'methods' => WP_REST_Server::DELETABLE, 'callback' => array( $this, 'delete_current_item' ), 'permission_callback' => array( $this, 'delete_current_item_permissions_check' ), 'args' => array( 'force' => array( 'type' => 'boolean', 'default' => false, 'description' => __( 'Required to be true, as users do not support trashing.' ), ), 'reassign' => array( 'type' => 'integer', 'description' => __( 'Reassign the deleted user\'s posts and links to this user ID.' ), 'required' => true, 'sanitize_callback' => array( $this, 'check_reassign' ), ), ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Checks for a valid value for the reassign parameter when deleting users. * * The value can be an integer, 'false', false, or ''. * * @since 4.7.0 * * @param int|bool $value The value passed to the reassign parameter. * @param WP_REST_Request $request Full details about the request. * @param string $param The parameter that is being sanitized. * @return int|bool|WP_Error */ public function check_reassign( $value, $request, $param ) { if ( is_numeric( $value ) ) { return $value; } if ( empty( $value ) || false === $value || 'false' === $value ) { return false; } return new WP_Error( 'rest_invalid_param', __( 'Invalid user parameter(s).' ), array( 'status' => 400 ) ); } /** * Permissions check for getting all users. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, otherwise WP_Error object. */ public function get_items_permissions_check( $request ) { // Check if roles is specified in GET request and if user can list users. if ( ! empty( $request['roles'] ) && ! current_user_can( 'list_users' ) ) { return new WP_Error( 'rest_user_cannot_view', __( 'Sorry, you are not allowed to filter users by role.' ), array( 'status' => rest_authorization_required_code() ) ); } // Check if capabilities is specified in GET request and if user can list users. if ( ! empty( $request['capabilities'] ) && ! current_user_can( 'list_users' ) ) { return new WP_Error( 'rest_user_cannot_view', __( 'Sorry, you are not allowed to filter users by capability.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( 'edit' === $request['context'] && ! current_user_can( 'list_users' ) ) { return new WP_Error( 'rest_forbidden_context', __( 'Sorry, you are not allowed to edit users.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( in_array( $request['orderby'], array( 'email', 'registered_date' ), true ) && ! current_user_can( 'list_users' ) ) { return new WP_Error( 'rest_forbidden_orderby', __( 'Sorry, you are not allowed to order users by this parameter.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( 'authors' === $request['who'] ) { $types = get_post_types( array( 'show_in_rest' => true ), 'objects' ); foreach ( $types as $type ) { if ( post_type_supports( $type->name, 'author' ) && current_user_can( $type->cap->edit_posts ) ) { return true; } } return new WP_Error( 'rest_forbidden_who', __( 'Sorry, you are not allowed to query users by this parameter.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Retrieves all users. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_items( $request ) { // Retrieve the list of registered collection query parameters. $registered = $this->get_collection_params(); /* * This array defines mappings between public API query parameters whose * values are accepted as-passed, and their internal WP_Query parameter * name equivalents (some are the same). Only values which are also * present in $registered will be set. */ $parameter_mappings = array( 'exclude' => 'exclude', 'include' => 'include', 'order' => 'order', 'per_page' => 'number', 'search' => 'search', 'roles' => 'role__in', 'capabilities' => 'capability__in', 'slug' => 'nicename__in', ); $prepared_args = array(); /* * For each known parameter which is both registered and present in the request, * set the parameter's value on the query $prepared_args. */ foreach ( $parameter_mappings as $api_param => $wp_param ) { if ( isset( $registered[ $api_param ], $request[ $api_param ] ) ) { $prepared_args[ $wp_param ] = $request[ $api_param ]; } } if ( isset( $registered['offset'] ) && ! empty( $request['offset'] ) ) { $prepared_args['offset'] = $request['offset']; } else { $prepared_args['offset'] = ( $request['page'] - 1 ) * $prepared_args['number']; } if ( isset( $registered['orderby'] ) ) { $orderby_possibles = array( 'id' => 'ID', 'include' => 'include', 'name' => 'display_name', 'registered_date' => 'registered', 'slug' => 'user_nicename', 'include_slugs' => 'nicename__in', 'email' => 'user_email', 'url' => 'user_url', ); $prepared_args['orderby'] = $orderby_possibles[ $request['orderby'] ]; } if ( isset( $registered['who'] ) && ! empty( $request['who'] ) && 'authors' === $request['who'] ) { $prepared_args['who'] = 'authors'; } elseif ( ! current_user_can( 'list_users' ) ) { $prepared_args['has_published_posts'] = get_post_types( array( 'show_in_rest' => true ), 'names' ); } if ( ! empty( $request['has_published_posts'] ) ) { $prepared_args['has_published_posts'] = ( true === $request['has_published_posts'] ) ? get_post_types( array( 'show_in_rest' => true ), 'names' ) : (array) $request['has_published_posts']; } if ( ! empty( $prepared_args['search'] ) ) { if ( ! current_user_can( 'list_users' ) ) { $prepared_args['search_columns'] = array( 'ID', 'user_login', 'user_nicename', 'display_name' ); } $prepared_args['search'] = '*' . $prepared_args['search'] . '*'; } /** * Filters WP_User_Query arguments when querying users via the REST API. * * @link https://developer.wordpress.org/reference/classes/wp_user_query/ * * @since 4.7.0 * * @param array $prepared_args Array of arguments for WP_User_Query. * @param WP_REST_Request $request The REST API request. */ $prepared_args = apply_filters( 'rest_user_query', $prepared_args, $request ); $query = new WP_User_Query( $prepared_args ); $users = array(); foreach ( $query->results as $user ) { if ( 'edit' === $request['context'] && ! current_user_can( 'edit_user', $user->ID ) ) { continue; } $data = $this->prepare_item_for_response( $user, $request ); $users[] = $this->prepare_response_for_collection( $data ); } $response = rest_ensure_response( $users ); // Store pagination values for headers then unset for count query. $per_page = (int) $prepared_args['number']; $page = ceil( ( ( (int) $prepared_args['offset'] ) / $per_page ) + 1 ); $prepared_args['fields'] = 'ID'; $total_users = $query->get_total(); if ( $total_users < 1 ) { // Out-of-bounds, run the query again without LIMIT for total count. unset( $prepared_args['number'], $prepared_args['offset'] ); $count_query = new WP_User_Query( $prepared_args ); $total_users = $count_query->get_total(); } $response->header( 'X-WP-Total', (int) $total_users ); $max_pages = ceil( $total_users / $per_page ); $response->header( 'X-WP-TotalPages', (int) $max_pages ); $base = add_query_arg( urlencode_deep( $request->get_query_params() ), rest_url( sprintf( '%s/%s', $this->namespace, $this->rest_base ) ) ); if ( $page > 1 ) { $prev_page = $page - 1; if ( $prev_page > $max_pages ) { $prev_page = $max_pages; } $prev_link = add_query_arg( 'page', $prev_page, $base ); $response->link_header( 'prev', $prev_link ); } if ( $max_pages > $page ) { $next_page = $page + 1; $next_link = add_query_arg( 'page', $next_page, $base ); $response->link_header( 'next', $next_link ); } return $response; } /** * Get the user, if the ID is valid. * * @since 4.7.2 * * @param int $id Supplied ID. * @return WP_User|WP_Error True if ID is valid, WP_Error otherwise. */ protected function get_user( $id ) { $error = new WP_Error( 'rest_user_invalid_id', __( 'Invalid user ID.' ), array( 'status' => 404 ) ); if ( (int) $id <= 0 ) { return $error; } $user = get_userdata( (int) $id ); if ( empty( $user ) || ! $user->exists() ) { return $error; } if ( is_multisite() && ! is_user_member_of_blog( $user->ID ) ) { return $error; } return $user; } /** * Checks if a given request has access to read a user. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access for the item, otherwise WP_Error object. */ public function get_item_permissions_check( $request ) { $user = $this->get_user( $request['id'] ); if ( is_wp_error( $user ) ) { return $user; } $types = get_post_types( array( 'show_in_rest' => true ), 'names' ); if ( get_current_user_id() === $user->ID ) { return true; } if ( 'edit' === $request['context'] && ! current_user_can( 'edit_user', $user->ID ) ) { return new WP_Error( 'rest_forbidden_context', __( 'Sorry, you are not allowed to edit this user.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( ! current_user_can( 'edit_user', $user->ID ) && ! current_user_can( 'list_users' ) && ! count_user_posts( $user->ID, $types ) ) { return new WP_Error( 'rest_user_cannot_view', __( 'Sorry, you are not allowed to list users.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Retrieves a single user. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_item( $request ) { $user = $this->get_user( $request['id'] ); if ( is_wp_error( $user ) ) { return $user; } $user = $this->prepare_item_for_response( $user, $request ); $response = rest_ensure_response( $user ); return $response; } /** * Retrieves the current user. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_current_item( $request ) { $current_user_id = get_current_user_id(); if ( empty( $current_user_id ) ) { return new WP_Error( 'rest_not_logged_in', __( 'You are not currently logged in.' ), array( 'status' => 401 ) ); } $user = wp_get_current_user(); $response = $this->prepare_item_for_response( $user, $request ); $response = rest_ensure_response( $response ); return $response; } /** * Checks if a given request has access create users. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to create items, WP_Error object otherwise. */ public function create_item_permissions_check( $request ) { if ( ! current_user_can( 'create_users' ) ) { return new WP_Error( 'rest_cannot_create_user', __( 'Sorry, you are not allowed to create new users.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Creates a single user. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function create_item( $request ) { if ( ! empty( $request['id'] ) ) { return new WP_Error( 'rest_user_exists', __( 'Cannot create existing user.' ), array( 'status' => 400 ) ); } $schema = $this->get_item_schema(); if ( ! empty( $request['roles'] ) && ! empty( $schema['properties']['roles'] ) ) { $check_permission = $this->check_role_update( $request['id'], $request['roles'] ); if ( is_wp_error( $check_permission ) ) { return $check_permission; } } $user = $this->prepare_item_for_database( $request ); if ( is_multisite() ) { $ret = wpmu_validate_user_signup( $user->user_login, $user->user_email ); if ( is_wp_error( $ret['errors'] ) && $ret['errors']->has_errors() ) { $error = new WP_Error( 'rest_invalid_param', __( 'Invalid user parameter(s).' ), array( 'status' => 400 ) ); foreach ( $ret['errors']->errors as $code => $messages ) { foreach ( $messages as $message ) { $error->add( $code, $message ); } $error_data = $error->get_error_data( $code ); if ( $error_data ) { $error->add_data( $error_data, $code ); } } return $error; } } if ( is_multisite() ) { $user_id = wpmu_create_user( $user->user_login, $user->user_pass, $user->user_email ); if ( ! $user_id ) { return new WP_Error( 'rest_user_create', __( 'Error creating new user.' ), array( 'status' => 500 ) ); } $user->ID = $user_id; $user_id = wp_update_user( wp_slash( (array) $user ) ); if ( is_wp_error( $user_id ) ) { return $user_id; } $result = add_user_to_blog( get_site()->id, $user_id, '' ); if ( is_wp_error( $result ) ) { return $result; } } else { $user_id = wp_insert_user( wp_slash( (array) $user ) ); if ( is_wp_error( $user_id ) ) { return $user_id; } } $user = get_user_by( 'id', $user_id ); /** * Fires immediately after a user is created or updated via the REST API. * * @since 4.7.0 * * @param WP_User $user Inserted or updated user object. * @param WP_REST_Request $request Request object. * @param bool $creating True when creating a user, false when updating. */ do_action( 'rest_insert_user', $user, $request, true ); if ( ! empty( $request['roles'] ) && ! empty( $schema['properties']['roles'] ) ) { array_map( array( $user, 'add_role' ), $request['roles'] ); } if ( ! empty( $schema['properties']['meta'] ) && isset( $request['meta'] ) ) { $meta_update = $this->meta->update_value( $request['meta'], $user_id ); if ( is_wp_error( $meta_update ) ) { return $meta_update; } } $user = get_user_by( 'id', $user_id ); $fields_update = $this->update_additional_fields_for_object( $user, $request ); if ( is_wp_error( $fields_update ) ) { return $fields_update; } $request->set_param( 'context', 'edit' ); /** * Fires after a user is completely created or updated via the REST API. * * @since 5.0.0 * * @param WP_User $user Inserted or updated user object. * @param WP_REST_Request $request Request object. * @param bool $creating True when creating a user, false when updating. */ do_action( 'rest_after_insert_user', $user, $request, true ); $response = $this->prepare_item_for_response( $user, $request ); $response = rest_ensure_response( $response ); $response->set_status( 201 ); $response->header( 'Location', rest_url( sprintf( '%s/%s/%d', $this->namespace, $this->rest_base, $user_id ) ) ); return $response; } /** * Checks if a given request has access to update a user. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to update the item, WP_Error object otherwise. */ public function update_item_permissions_check( $request ) { $user = $this->get_user( $request['id'] ); if ( is_wp_error( $user ) ) { return $user; } if ( ! empty( $request['roles'] ) ) { if ( ! current_user_can( 'promote_user', $user->ID ) ) { return new WP_Error( 'rest_cannot_edit_roles', __( 'Sorry, you are not allowed to edit roles of this user.' ), array( 'status' => rest_authorization_required_code() ) ); } $request_params = array_keys( $request->get_params() ); sort( $request_params ); // If only 'id' and 'roles' are specified (we are only trying to // edit roles), then only the 'promote_user' cap is required. if ( array( 'id', 'roles' ) === $request_params ) { return true; } } if ( ! current_user_can( 'edit_user', $user->ID ) ) { return new WP_Error( 'rest_cannot_edit', __( 'Sorry, you are not allowed to edit this user.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Updates a single user. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function update_item( $request ) { $user = $this->get_user( $request['id'] ); if ( is_wp_error( $user ) ) { return $user; } $id = $user->ID; if ( ! $user ) { return new WP_Error( 'rest_user_invalid_id', __( 'Invalid user ID.' ), array( 'status' => 404 ) ); } $owner_id = email_exists( $request['email'] ); if ( $owner_id && $owner_id !== $id ) { return new WP_Error( 'rest_user_invalid_email', __( 'Invalid email address.' ), array( 'status' => 400 ) ); } if ( ! empty( $request['username'] ) && $request['username'] !== $user->user_login ) { return new WP_Error( 'rest_user_invalid_argument', __( "Username isn't editable." ), array( 'status' => 400 ) ); } if ( ! empty( $request['slug'] ) && $request['slug'] !== $user->user_nicename && get_user_by( 'slug', $request['slug'] ) ) { return new WP_Error( 'rest_user_invalid_slug', __( 'Invalid slug.' ), array( 'status' => 400 ) ); } if ( ! empty( $request['roles'] ) ) { $check_permission = $this->check_role_update( $id, $request['roles'] ); if ( is_wp_error( $check_permission ) ) { return $check_permission; } } $user = $this->prepare_item_for_database( $request ); // Ensure we're operating on the same user we already checked. $user->ID = $id; $user_id = wp_update_user( wp_slash( (array) $user ) ); if ( is_wp_error( $user_id ) ) { return $user_id; } $user = get_user_by( 'id', $user_id ); /** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-users-controller.php */ do_action( 'rest_insert_user', $user, $request, false ); if ( ! empty( $request['roles'] ) ) { array_map( array( $user, 'add_role' ), $request['roles'] ); } $schema = $this->get_item_schema(); if ( ! empty( $schema['properties']['meta'] ) && isset( $request['meta'] ) ) { $meta_update = $this->meta->update_value( $request['meta'], $id ); if ( is_wp_error( $meta_update ) ) { return $meta_update; } } $user = get_user_by( 'id', $user_id ); $fields_update = $this->update_additional_fields_for_object( $user, $request ); if ( is_wp_error( $fields_update ) ) { return $fields_update; } $request->set_param( 'context', 'edit' ); /** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-users-controller.php */ do_action( 'rest_after_insert_user', $user, $request, false ); $response = $this->prepare_item_for_response( $user, $request ); $response = rest_ensure_response( $response ); return $response; } /** * Checks if a given request has access to update the current user. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to update the item, WP_Error object otherwise. */ public function update_current_item_permissions_check( $request ) { $request['id'] = get_current_user_id(); return $this->update_item_permissions_check( $request ); } /** * Updates the current user. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function update_current_item( $request ) { $request['id'] = get_current_user_id(); return $this->update_item( $request ); } /** * Checks if a given request has access delete a user. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to delete the item, WP_Error object otherwise. */ public function delete_item_permissions_check( $request ) { $user = $this->get_user( $request['id'] ); if ( is_wp_error( $user ) ) { return $user; } if ( ! current_user_can( 'delete_user', $user->ID ) ) { return new WP_Error( 'rest_user_cannot_delete', __( 'Sorry, you are not allowed to delete this user.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Deletes a single user. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function delete_item( $request ) { // We don't support delete requests in multisite. if ( is_multisite() ) { return new WP_Error( 'rest_cannot_delete', __( 'The user cannot be deleted.' ), array( 'status' => 501 ) ); } $user = $this->get_user( $request['id'] ); if ( is_wp_error( $user ) ) { return $user; } $id = $user->ID; $reassign = false === $request['reassign'] ? null : absint( $request['reassign'] ); $force = isset( $request['force'] ) ? (bool) $request['force'] : false; // We don't support trashing for users. if ( ! $force ) { return new WP_Error( 'rest_trash_not_supported', /* translators: %s: force=true */ sprintf( __( "Users do not support trashing. Set '%s' to delete." ), 'force=true' ), array( 'status' => 501 ) ); } if ( ! empty( $reassign ) ) { if ( $reassign === $id || ! get_userdata( $reassign ) ) { return new WP_Error( 'rest_user_invalid_reassign', __( 'Invalid user ID for reassignment.' ), array( 'status' => 400 ) ); } } $request->set_param( 'context', 'edit' ); $previous = $this->prepare_item_for_response( $user, $request ); // Include user admin functions to get access to wp_delete_user(). require_once ABSPATH . 'wp-admin/includes/user.php'; $result = wp_delete_user( $id, $reassign ); if ( ! $result ) { return new WP_Error( 'rest_cannot_delete', __( 'The user cannot be deleted.' ), array( 'status' => 500 ) ); } $response = new WP_REST_Response(); $response->set_data( array( 'deleted' => true, 'previous' => $previous->get_data(), ) ); /** * Fires immediately after a user is deleted via the REST API. * * @since 4.7.0 * * @param WP_User $user The user data. * @param WP_REST_Response $response The response returned from the API. * @param WP_REST_Request $request The request sent to the API. */ do_action( 'rest_delete_user', $user, $response, $request ); return $response; } /** * Checks if a given request has access to delete the current user. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to delete the item, WP_Error object otherwise. */ public function delete_current_item_permissions_check( $request ) { $request['id'] = get_current_user_id(); return $this->delete_item_permissions_check( $request ); } /** * Deletes the current user. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function delete_current_item( $request ) { $request['id'] = get_current_user_id(); return $this->delete_item( $request ); } /** * Prepares a single user output for response. * * @since 4.7.0 * @since 5.9.0 Renamed `$user` to `$item` to match parent class for PHP 8 named parameter support. * * @param WP_User $item User object. * @param WP_REST_Request $request Request object. * @return WP_REST_Response Response object. */ public function prepare_item_for_response( $item, $request ) { // Restores the more descriptive, specific name for use within this method. $user = $item; $data = array(); $fields = $this->get_fields_for_response( $request ); if ( in_array( 'id', $fields, true ) ) { $data['id'] = $user->ID; } if ( in_array( 'username', $fields, true ) ) { $data['username'] = $user->user_login; } if ( in_array( 'name', $fields, true ) ) { $data['name'] = $user->display_name; } if ( in_array( 'first_name', $fields, true ) ) { $data['first_name'] = $user->first_name; } if ( in_array( 'last_name', $fields, true ) ) { $data['last_name'] = $user->last_name; } if ( in_array( 'email', $fields, true ) ) { $data['email'] = $user->user_email; } if ( in_array( 'url', $fields, true ) ) { $data['url'] = $user->user_url; } if ( in_array( 'description', $fields, true ) ) { $data['description'] = $user->description; } if ( in_array( 'link', $fields, true ) ) { $data['link'] = get_author_posts_url( $user->ID, $user->user_nicename ); } if ( in_array( 'locale', $fields, true ) ) { $data['locale'] = get_user_locale( $user ); } if ( in_array( 'nickname', $fields, true ) ) { $data['nickname'] = $user->nickname; } if ( in_array( 'slug', $fields, true ) ) { $data['slug'] = $user->user_nicename; } if ( in_array( 'roles', $fields, true ) && ( current_user_can( 'list_users' ) || current_user_can( 'edit_user', $user->ID ) ) ) { // Defensively call array_values() to ensure an array is returned. $data['roles'] = array_values( $user->roles ); } if ( in_array( 'registered_date', $fields, true ) ) { $data['registered_date'] = gmdate( 'c', strtotime( $user->user_registered ) ); } if ( in_array( 'capabilities', $fields, true ) ) { $data['capabilities'] = (object) $user->allcaps; } if ( in_array( 'extra_capabilities', $fields, true ) ) { $data['extra_capabilities'] = (object) $user->caps; } if ( in_array( 'avatar_urls', $fields, true ) ) { $data['avatar_urls'] = rest_get_avatar_urls( $user ); } if ( in_array( 'meta', $fields, true ) ) { $data['meta'] = $this->meta->get_value( $user->ID, $request ); } $context = ! empty( $request['context'] ) ? $request['context'] : 'embed'; $data = $this->add_additional_fields_to_object( $data, $request ); $data = $this->filter_response_by_context( $data, $context ); // Wrap the data in a response object. $response = rest_ensure_response( $data ); $response->add_links( $this->prepare_links( $user ) ); /** * Filters user data returned from the REST API. * * @since 4.7.0 * * @param WP_REST_Response $response The response object. * @param WP_User $user User object used to create response. * @param WP_REST_Request $request Request object. */ return apply_filters( 'rest_prepare_user', $response, $user, $request ); } /** * Prepares links for the user request. * * @since 4.7.0 * * @param WP_User $user User object. * @return array Links for the given user. */ protected function prepare_links( $user ) { $links = array( 'self' => array( 'href' => rest_url( sprintf( '%s/%s/%d', $this->namespace, $this->rest_base, $user->ID ) ), ), 'collection' => array( 'href' => rest_url( sprintf( '%s/%s', $this->namespace, $this->rest_base ) ), ), ); return $links; } /** * Prepares a single user for creation or update. * * @since 4.7.0 * * @param WP_REST_Request $request Request object. * @return object User object. */ protected function prepare_item_for_database( $request ) { $prepared_user = new stdClass; $schema = $this->get_item_schema(); // Required arguments. if ( isset( $request['email'] ) && ! empty( $schema['properties']['email'] ) ) { $prepared_user->user_email = $request['email']; } if ( isset( $request['username'] ) && ! empty( $schema['properties']['username'] ) ) { $prepared_user->user_login = $request['username']; } if ( isset( $request['password'] ) && ! empty( $schema['properties']['password'] ) ) { $prepared_user->user_pass = $request['password']; } // Optional arguments. if ( isset( $request['id'] ) ) { $prepared_user->ID = absint( $request['id'] ); } if ( isset( $request['name'] ) && ! empty( $schema['properties']['name'] ) ) { $prepared_user->display_name = $request['name']; } if ( isset( $request['first_name'] ) && ! empty( $schema['properties']['first_name'] ) ) { $prepared_user->first_name = $request['first_name']; } if ( isset( $request['last_name'] ) && ! empty( $schema['properties']['last_name'] ) ) { $prepared_user->last_name = $request['last_name']; } if ( isset( $request['nickname'] ) && ! empty( $schema['properties']['nickname'] ) ) { $prepared_user->nickname = $request['nickname']; } if ( isset( $request['slug'] ) && ! empty( $schema['properties']['slug'] ) ) { $prepared_user->user_nicename = $request['slug']; } if ( isset( $request['description'] ) && ! empty( $schema['properties']['description'] ) ) { $prepared_user->description = $request['description']; } if ( isset( $request['url'] ) && ! empty( $schema['properties']['url'] ) ) { $prepared_user->user_url = $request['url']; } if ( isset( $request['locale'] ) && ! empty( $schema['properties']['locale'] ) ) { $prepared_user->locale = $request['locale']; } // Setting roles will be handled outside of this function. if ( isset( $request['roles'] ) ) { $prepared_user->role = false; } /** * Filters user data before insertion via the REST API. * * @since 4.7.0 * * @param object $prepared_user User object. * @param WP_REST_Request $request Request object. */ return apply_filters( 'rest_pre_insert_user', $prepared_user, $request ); } /** * Determines if the current user is allowed to make the desired roles change. * * @since 4.7.0 * * @global WP_Roles $wp_roles WordPress role management object. * * @param int $user_id User ID. * @param array $roles New user roles. * @return true|WP_Error True if the current user is allowed to make the role change, * otherwise a WP_Error object. */ protected function check_role_update( $user_id, $roles ) { global $wp_roles; foreach ( $roles as $role ) { if ( ! isset( $wp_roles->role_objects[ $role ] ) ) { return new WP_Error( 'rest_user_invalid_role', /* translators: %s: Role key. */ sprintf( __( 'The role %s does not exist.' ), $role ), array( 'status' => 400 ) ); } $potential_role = $wp_roles->role_objects[ $role ]; /* * Don't let anyone with 'edit_users' (admins) edit their own role to something without it. * Multisite super admins can freely edit their blog roles -- they possess all caps. */ if ( ! ( is_multisite() && current_user_can( 'manage_sites' ) ) && get_current_user_id() === $user_id && ! $potential_role->has_cap( 'edit_users' ) ) { return new WP_Error( 'rest_user_invalid_role', __( 'Sorry, you are not allowed to give users that role.' ), array( 'status' => rest_authorization_required_code() ) ); } // Include user admin functions to get access to get_editable_roles(). require_once ABSPATH . 'wp-admin/includes/user.php'; // The new role must be editable by the logged-in user. $editable_roles = get_editable_roles(); if ( empty( $editable_roles[ $role ] ) ) { return new WP_Error( 'rest_user_invalid_role', __( 'Sorry, you are not allowed to give users that role.' ), array( 'status' => 403 ) ); } } return true; } /** * Check a username for the REST API. * * Performs a couple of checks like edit_user() in wp-admin/includes/user.php. * * @since 4.7.0 * * @param string $value The username submitted in the request. * @param WP_REST_Request $request Full details about the request. * @param string $param The parameter name. * @return string|WP_Error The sanitized username, if valid, otherwise an error. */ public function check_username( $value, $request, $param ) { $username = (string) $value; if ( ! validate_username( $username ) ) { return new WP_Error( 'rest_user_invalid_username', __( 'This username is invalid because it uses illegal characters. Please enter a valid username.' ), array( 'status' => 400 ) ); } /** This filter is documented in wp-includes/user.php */ $illegal_logins = (array) apply_filters( 'illegal_user_logins', array() ); if ( in_array( strtolower( $username ), array_map( 'strtolower', $illegal_logins ), true ) ) { return new WP_Error( 'rest_user_invalid_username', __( 'Sorry, that username is not allowed.' ), array( 'status' => 400 ) ); } return $username; } /** * Check a user password for the REST API. * * Performs a couple of checks like edit_user() in wp-admin/includes/user.php. * * @since 4.7.0 * * @param string $value The password submitted in the request. * @param WP_REST_Request $request Full details about the request. * @param string $param The parameter name. * @return string|WP_Error The sanitized password, if valid, otherwise an error. */ public function check_user_password( $value, $request, $param ) { $password = (string) $value; if ( empty( $password ) ) { return new WP_Error( 'rest_user_invalid_password', __( 'Passwords cannot be empty.' ), array( 'status' => 400 ) ); } if ( false !== strpos( $password, '\\' ) ) { return new WP_Error( 'rest_user_invalid_password', sprintf( /* translators: %s: The '\' character. */ __( 'Passwords cannot contain the "%s" character.' ), '\\' ), array( 'status' => 400 ) ); } return $password; } /** * Retrieves the user's schema, conforming to JSON Schema. * * @since 4.7.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'user', 'type' => 'object', 'properties' => array( 'id' => array( 'description' => __( 'Unique identifier for the user.' ), 'type' => 'integer', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'username' => array( 'description' => __( 'Login name for the user.' ), 'type' => 'string', 'context' => array( 'edit' ), 'required' => true, 'arg_options' => array( 'sanitize_callback' => array( $this, 'check_username' ), ), ), 'name' => array( 'description' => __( 'Display name for the user.' ), 'type' => 'string', 'context' => array( 'embed', 'view', 'edit' ), 'arg_options' => array( 'sanitize_callback' => 'sanitize_text_field', ), ), 'first_name' => array( 'description' => __( 'First name for the user.' ), 'type' => 'string', 'context' => array( 'edit' ), 'arg_options' => array( 'sanitize_callback' => 'sanitize_text_field', ), ), 'last_name' => array( 'description' => __( 'Last name for the user.' ), 'type' => 'string', 'context' => array( 'edit' ), 'arg_options' => array( 'sanitize_callback' => 'sanitize_text_field', ), ), 'email' => array( 'description' => __( 'The email address for the user.' ), 'type' => 'string', 'format' => 'email', 'context' => array( 'edit' ), 'required' => true, ), 'url' => array( 'description' => __( 'URL of the user.' ), 'type' => 'string', 'format' => 'uri', 'context' => array( 'embed', 'view', 'edit' ), ), 'description' => array( 'description' => __( 'Description of the user.' ), 'type' => 'string', 'context' => array( 'embed', 'view', 'edit' ), ), 'link' => array( 'description' => __( 'Author URL of the user.' ), 'type' => 'string', 'format' => 'uri', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'locale' => array( 'description' => __( 'Locale for the user.' ), 'type' => 'string', 'enum' => array_merge( array( '', 'en_US' ), get_available_languages() ), 'context' => array( 'edit' ), ), 'nickname' => array( 'description' => __( 'The nickname for the user.' ), 'type' => 'string', 'context' => array( 'edit' ), 'arg_options' => array( 'sanitize_callback' => 'sanitize_text_field', ), ), 'slug' => array( 'description' => __( 'An alphanumeric identifier for the user.' ), 'type' => 'string', 'context' => array( 'embed', 'view', 'edit' ), 'arg_options' => array( 'sanitize_callback' => array( $this, 'sanitize_slug' ), ), ), 'registered_date' => array( 'description' => __( 'Registration date for the user.' ), 'type' => 'string', 'format' => 'date-time', 'context' => array( 'edit' ), 'readonly' => true, ), 'roles' => array( 'description' => __( 'Roles assigned to the user.' ), 'type' => 'array', 'items' => array( 'type' => 'string', ), 'context' => array( 'edit' ), ), 'password' => array( 'description' => __( 'Password for the user (never included).' ), 'type' => 'string', 'context' => array(), // Password is never displayed. 'required' => true, 'arg_options' => array( 'sanitize_callback' => array( $this, 'check_user_password' ), ), ), 'capabilities' => array( 'description' => __( 'All capabilities assigned to the user.' ), 'type' => 'object', 'context' => array( 'edit' ), 'readonly' => true, ), 'extra_capabilities' => array( 'description' => __( 'Any extra capabilities assigned to the user.' ), 'type' => 'object', 'context' => array( 'edit' ), 'readonly' => true, ), ), ); if ( get_option( 'show_avatars' ) ) { $avatar_properties = array(); $avatar_sizes = rest_get_avatar_sizes(); foreach ( $avatar_sizes as $size ) { $avatar_properties[ $size ] = array( /* translators: %d: Avatar image size in pixels. */ 'description' => sprintf( __( 'Avatar URL with image size of %d pixels.' ), $size ), 'type' => 'string', 'format' => 'uri', 'context' => array( 'embed', 'view', 'edit' ), ); } $schema['properties']['avatar_urls'] = array( 'description' => __( 'Avatar URLs for the user.' ), 'type' => 'object', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, 'properties' => $avatar_properties, ); } $schema['properties']['meta'] = $this->meta->get_field_schema(); $this->schema = $schema; return $this->add_additional_fields_schema( $this->schema ); } /** * Retrieves the query params for collections. * * @since 4.7.0 * * @return array Collection parameters. */ public function get_collection_params() { $query_params = parent::get_collection_params(); $query_params['context']['default'] = 'view'; $query_params['exclude'] = array( 'description' => __( 'Ensure result set excludes specific IDs.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), 'default' => array(), ); $query_params['include'] = array( 'description' => __( 'Limit result set to specific IDs.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), 'default' => array(), ); $query_params['offset'] = array( 'description' => __( 'Offset the result set by a specific number of items.' ), 'type' => 'integer', ); $query_params['order'] = array( 'default' => 'asc', 'description' => __( 'Order sort attribute ascending or descending.' ), 'enum' => array( 'asc', 'desc' ), 'type' => 'string', ); $query_params['orderby'] = array( 'default' => 'name', 'description' => __( 'Sort collection by user attribute.' ), 'enum' => array( 'id', 'include', 'name', 'registered_date', 'slug', 'include_slugs', 'email', 'url', ), 'type' => 'string', ); $query_params['slug'] = array( 'description' => __( 'Limit result set to users with one or more specific slugs.' ), 'type' => 'array', 'items' => array( 'type' => 'string', ), ); $query_params['roles'] = array( 'description' => __( 'Limit result set to users matching at least one specific role provided. Accepts csv list or single role.' ), 'type' => 'array', 'items' => array( 'type' => 'string', ), ); $query_params['capabilities'] = array( 'description' => __( 'Limit result set to users matching at least one specific capability provided. Accepts csv list or single capability.' ), 'type' => 'array', 'items' => array( 'type' => 'string', ), ); $query_params['who'] = array( 'description' => __( 'Limit result set to users who are considered authors.' ), 'type' => 'string', 'enum' => array( 'authors', ), ); $query_params['has_published_posts'] = array( 'description' => __( 'Limit result set to users who have published posts.' ), 'type' => array( 'boolean', 'array' ), 'items' => array( 'type' => 'string', 'enum' => get_post_types( array( 'show_in_rest' => true ), 'names' ), ), ); /** * Filters REST API collection parameters for the users controller. * * This filter registers the collection parameter, but does not map the * collection parameter to an internal WP_User_Query parameter. Use the * `rest_user_query` filter to set WP_User_Query arguments. * * @since 4.7.0 * * @param array $query_params JSON Schema-formatted collection parameters. */ return apply_filters( 'rest_user_collection_params', $query_params ); } } PK�����j l\i a�� a��9��rest-api/endpoints/class-wp-rest-revisions-controller.phpnu�[��������<?php /** * REST API: WP_REST_Revisions_Controller class * * @package WordPress * @subpackage REST_API * @since 4.7.0 */ /** * Core class used to access revisions via the REST API. * * @since 4.7.0 * * @see WP_REST_Controller */ class WP_REST_Revisions_Controller extends WP_REST_Controller { /** * Parent post type. * * @since 4.7.0 * @var string */ private $parent_post_type; /** * Parent controller. * * @since 4.7.0 * @var WP_REST_Controller */ private $parent_controller; /** * The base of the parent controller's route. * * @since 4.7.0 * @var string */ private $parent_base; /** * Constructor. * * @since 4.7.0 * * @param string $parent_post_type Post type of the parent. */ public function __construct( $parent_post_type ) { $this->parent_post_type = $parent_post_type; $this->rest_base = 'revisions'; $post_type_object = get_post_type_object( $parent_post_type ); $this->parent_base = ! empty( $post_type_object->rest_base ) ? $post_type_object->rest_base : $post_type_object->name; $this->namespace = ! empty( $post_type_object->rest_namespace ) ? $post_type_object->rest_namespace : 'wp/v2'; $this->parent_controller = $post_type_object->get_rest_controller(); if ( ! $this->parent_controller ) { $this->parent_controller = new WP_REST_Posts_Controller( $parent_post_type ); } } /** * Registers the routes for revisions based on post types supporting revisions. * * @since 4.7.0 * * @see register_rest_route() */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->parent_base . '/(?P<parent>[\d]+)/' . $this->rest_base, array( 'args' => array( 'parent' => array( 'description' => __( 'The ID for the parent of the revision.' ), 'type' => 'integer', ), ), array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->parent_base . '/(?P<parent>[\d]+)/' . $this->rest_base . '/(?P<id>[\d]+)', array( 'args' => array( 'parent' => array( 'description' => __( 'The ID for the parent of the revision.' ), 'type' => 'integer', ), 'id' => array( 'description' => __( 'Unique identifier for the revision.' ), 'type' => 'integer', ), ), array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), 'args' => array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ), ), array( 'methods' => WP_REST_Server::DELETABLE, 'callback' => array( $this, 'delete_item' ), 'permission_callback' => array( $this, 'delete_item_permissions_check' ), 'args' => array( 'force' => array( 'type' => 'boolean', 'default' => false, 'description' => __( 'Required to be true, as revisions do not support trashing.' ), ), ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Get the parent post, if the ID is valid. * * @since 4.7.2 * * @param int $parent Supplied ID. * @return WP_Post|WP_Error Post object if ID is valid, WP_Error otherwise. */ protected function get_parent( $parent ) { $error = new WP_Error( 'rest_post_invalid_parent', __( 'Invalid post parent ID.' ), array( 'status' => 404 ) ); if ( (int) $parent <= 0 ) { return $error; } $parent = get_post( (int) $parent ); if ( empty( $parent ) || empty( $parent->ID ) || $this->parent_post_type !== $parent->post_type ) { return $error; } return $parent; } /** * Checks if a given request has access to get revisions. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_items_permissions_check( $request ) { $parent = $this->get_parent( $request['parent'] ); if ( is_wp_error( $parent ) ) { return $parent; } if ( ! current_user_can( 'edit_post', $parent->ID ) ) { return new WP_Error( 'rest_cannot_read', __( 'Sorry, you are not allowed to view revisions of this post.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Get the revision, if the ID is valid. * * @since 4.7.2 * * @param int $id Supplied ID. * @return WP_Post|WP_Error Revision post object if ID is valid, WP_Error otherwise. */ protected function get_revision( $id ) { $error = new WP_Error( 'rest_post_invalid_id', __( 'Invalid revision ID.' ), array( 'status' => 404 ) ); if ( (int) $id <= 0 ) { return $error; } $revision = get_post( (int) $id ); if ( empty( $revision ) || empty( $revision->ID ) || 'revision' !== $revision->post_type ) { return $error; } return $revision; } /** * Gets a collection of revisions. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_items( $request ) { $parent = $this->get_parent( $request['parent'] ); if ( is_wp_error( $parent ) ) { return $parent; } // Ensure a search string is set in case the orderby is set to 'relevance'. if ( ! empty( $request['orderby'] ) && 'relevance' === $request['orderby'] && empty( $request['search'] ) ) { return new WP_Error( 'rest_no_search_term_defined', __( 'You need to define a search term to order by relevance.' ), array( 'status' => 400 ) ); } // Ensure an include parameter is set in case the orderby is set to 'include'. if ( ! empty( $request['orderby'] ) && 'include' === $request['orderby'] && empty( $request['include'] ) ) { return new WP_Error( 'rest_orderby_include_missing_include', __( 'You need to define an include parameter to order by include.' ), array( 'status' => 400 ) ); } if ( wp_revisions_enabled( $parent ) ) { $registered = $this->get_collection_params(); $args = array( 'post_parent' => $parent->ID, 'post_type' => 'revision', 'post_status' => 'inherit', 'posts_per_page' => -1, 'orderby' => 'date ID', 'order' => 'DESC', 'suppress_filters' => true, ); $parameter_mappings = array( 'exclude' => 'post__not_in', 'include' => 'post__in', 'offset' => 'offset', 'order' => 'order', 'orderby' => 'orderby', 'page' => 'paged', 'per_page' => 'posts_per_page', 'search' => 's', ); foreach ( $parameter_mappings as $api_param => $wp_param ) { if ( isset( $registered[ $api_param ], $request[ $api_param ] ) ) { $args[ $wp_param ] = $request[ $api_param ]; } } // For backward-compatibility, 'date' needs to resolve to 'date ID'. if ( isset( $args['orderby'] ) && 'date' === $args['orderby'] ) { $args['orderby'] = 'date ID'; } /** This filter is documented in wp-includes/rest-api/endpoints/class-wp-rest-posts-controller.php */ $args = apply_filters( 'rest_revision_query', $args, $request ); $query_args = $this->prepare_items_query( $args, $request ); $revisions_query = new WP_Query(); $revisions = $revisions_query->query( $query_args ); $offset = isset( $query_args['offset'] ) ? (int) $query_args['offset'] : 0; $page = (int) $query_args['paged']; $total_revisions = $revisions_query->found_posts; if ( $total_revisions < 1 ) { // Out-of-bounds, run the query again without LIMIT for total count. unset( $query_args['paged'], $query_args['offset'] ); $count_query = new WP_Query(); $count_query->query( $query_args ); $total_revisions = $count_query->found_posts; } if ( $revisions_query->query_vars['posts_per_page'] > 0 ) { $max_pages = ceil( $total_revisions / (int) $revisions_query->query_vars['posts_per_page'] ); } else { $max_pages = $total_revisions > 0 ? 1 : 0; } if ( $total_revisions > 0 ) { if ( $offset >= $total_revisions ) { return new WP_Error( 'rest_revision_invalid_offset_number', __( 'The offset number requested is larger than or equal to the number of available revisions.' ), array( 'status' => 400 ) ); } elseif ( ! $offset && $page > $max_pages ) { return new WP_Error( 'rest_revision_invalid_page_number', __( 'The page number requested is larger than the number of pages available.' ), array( 'status' => 400 ) ); } } } else { $revisions = array(); $total_revisions = 0; $max_pages = 0; $page = (int) $request['page']; } $response = array(); foreach ( $revisions as $revision ) { $data = $this->prepare_item_for_response( $revision, $request ); $response[] = $this->prepare_response_for_collection( $data ); } $response = rest_ensure_response( $response ); $response->header( 'X-WP-Total', (int) $total_revisions ); $response->header( 'X-WP-TotalPages', (int) $max_pages ); $request_params = $request->get_query_params(); $base = add_query_arg( urlencode_deep( $request_params ), rest_url( sprintf( '%s/%s/%d/%s', $this->namespace, $this->parent_base, $request['parent'], $this->rest_base ) ) ); if ( $page > 1 ) { $prev_page = $page - 1; if ( $prev_page > $max_pages ) { $prev_page = $max_pages; } $prev_link = add_query_arg( 'page', $prev_page, $base ); $response->link_header( 'prev', $prev_link ); } if ( $max_pages > $page ) { $next_page = $page + 1; $next_link = add_query_arg( 'page', $next_page, $base ); $response->link_header( 'next', $next_link ); } return $response; } /** * Checks if a given request has access to get a specific revision. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access for the item, WP_Error object otherwise. */ public function get_item_permissions_check( $request ) { return $this->get_items_permissions_check( $request ); } /** * Retrieves one revision from the collection. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_item( $request ) { $parent = $this->get_parent( $request['parent'] ); if ( is_wp_error( $parent ) ) { return $parent; } $revision = $this->get_revision( $request['id'] ); if ( is_wp_error( $revision ) ) { return $revision; } $response = $this->prepare_item_for_response( $revision, $request ); return rest_ensure_response( $response ); } /** * Checks if a given request has access to delete a revision. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has access to delete the item, WP_Error object otherwise. */ public function delete_item_permissions_check( $request ) { $parent = $this->get_parent( $request['parent'] ); if ( is_wp_error( $parent ) ) { return $parent; } $parent_post_type = get_post_type_object( $parent->post_type ); if ( ! current_user_can( 'delete_post', $parent->ID ) ) { return new WP_Error( 'rest_cannot_delete', __( 'Sorry, you are not allowed to delete revisions of this post.' ), array( 'status' => rest_authorization_required_code() ) ); } $revision = $this->get_revision( $request['id'] ); if ( is_wp_error( $revision ) ) { return $revision; } $response = $this->get_items_permissions_check( $request ); if ( ! $response || is_wp_error( $response ) ) { return $response; } if ( ! current_user_can( 'delete_post', $revision->ID ) ) { return new WP_Error( 'rest_cannot_delete', __( 'Sorry, you are not allowed to delete this revision.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Deletes a single revision. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function delete_item( $request ) { $revision = $this->get_revision( $request['id'] ); if ( is_wp_error( $revision ) ) { return $revision; } $force = isset( $request['force'] ) ? (bool) $request['force'] : false; // We don't support trashing for revisions. if ( ! $force ) { return new WP_Error( 'rest_trash_not_supported', /* translators: %s: force=true */ sprintf( __( "Revisions do not support trashing. Set '%s' to delete." ), 'force=true' ), array( 'status' => 501 ) ); } $previous = $this->prepare_item_for_response( $revision, $request ); $result = wp_delete_post( $request['id'], true ); /** * Fires after a revision is deleted via the REST API. * * @since 4.7.0 * * @param WP_Post|false|null $result The revision object (if it was deleted or moved to the Trash successfully) * or false or null (failure). If the revision was moved to the Trash, $result represents * its new state; if it was deleted, $result represents its state before deletion. * @param WP_REST_Request $request The request sent to the API. */ do_action( 'rest_delete_revision', $result, $request ); if ( ! $result ) { return new WP_Error( 'rest_cannot_delete', __( 'The post cannot be deleted.' ), array( 'status' => 500 ) ); } $response = new WP_REST_Response(); $response->set_data( array( 'deleted' => true, 'previous' => $previous->get_data(), ) ); return $response; } /** * Determines the allowed query_vars for a get_items() response and prepares * them for WP_Query. * * @since 5.0.0 * * @param array $prepared_args Optional. Prepared WP_Query arguments. Default empty array. * @param WP_REST_Request $request Optional. Full details about the request. * @return array Items query arguments. */ protected function prepare_items_query( $prepared_args = array(), $request = null ) { $query_args = array(); foreach ( $prepared_args as $key => $value ) { /** This filter is documented in wp-includes/rest-api/endpoints/class-wp-rest-posts-controller.php */ $query_args[ $key ] = apply_filters( "rest_query_var-{$key}", $value ); // phpcs:ignore WordPress.NamingConventions.ValidHookName.UseUnderscores } // Map to proper WP_Query orderby param. if ( isset( $query_args['orderby'] ) && isset( $request['orderby'] ) ) { $orderby_mappings = array( 'id' => 'ID', 'include' => 'post__in', 'slug' => 'post_name', 'include_slugs' => 'post_name__in', ); if ( isset( $orderby_mappings[ $request['orderby'] ] ) ) { $query_args['orderby'] = $orderby_mappings[ $request['orderby'] ]; } } return $query_args; } /** * Prepares the revision for the REST response. * * @since 4.7.0 * @since 5.9.0 Renamed `$post` to `$item` to match parent class for PHP 8 named parameter support. * * @param WP_Post $item Post revision object. * @param WP_REST_Request $request Request object. * @return WP_REST_Response Response object. */ public function prepare_item_for_response( $item, $request ) { // Restores the more descriptive, specific name for use within this method. $post = $item; $GLOBALS['post'] = $post; setup_postdata( $post ); $fields = $this->get_fields_for_response( $request ); $data = array(); if ( in_array( 'author', $fields, true ) ) { $data['author'] = (int) $post->post_author; } if ( in_array( 'date', $fields, true ) ) { $data['date'] = $this->prepare_date_response( $post->post_date_gmt, $post->post_date ); } if ( in_array( 'date_gmt', $fields, true ) ) { $data['date_gmt'] = $this->prepare_date_response( $post->post_date_gmt ); } if ( in_array( 'id', $fields, true ) ) { $data['id'] = $post->ID; } if ( in_array( 'modified', $fields, true ) ) { $data['modified'] = $this->prepare_date_response( $post->post_modified_gmt, $post->post_modified ); } if ( in_array( 'modified_gmt', $fields, true ) ) { $data['modified_gmt'] = $this->prepare_date_response( $post->post_modified_gmt ); } if ( in_array( 'parent', $fields, true ) ) { $data['parent'] = (int) $post->post_parent; } if ( in_array( 'slug', $fields, true ) ) { $data['slug'] = $post->post_name; } if ( in_array( 'guid', $fields, true ) ) { $data['guid'] = array( /** This filter is documented in wp-includes/post-template.php */ 'rendered' => apply_filters( 'get_the_guid', $post->guid, $post->ID ), 'raw' => $post->guid, ); } if ( in_array( 'title', $fields, true ) ) { $data['title'] = array( 'raw' => $post->post_title, 'rendered' => get_the_title( $post->ID ), ); } if ( in_array( 'content', $fields, true ) ) { $data['content'] = array( 'raw' => $post->post_content, /** This filter is documented in wp-includes/post-template.php */ 'rendered' => apply_filters( 'the_content', $post->post_content ), ); } if ( in_array( 'excerpt', $fields, true ) ) { $data['excerpt'] = array( 'raw' => $post->post_excerpt, 'rendered' => $this->prepare_excerpt_response( $post->post_excerpt, $post ), ); } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->add_additional_fields_to_object( $data, $request ); $data = $this->filter_response_by_context( $data, $context ); $response = rest_ensure_response( $data ); if ( ! empty( $data['parent'] ) ) { $response->add_link( 'parent', rest_url( sprintf( '%s/%s/%d', $this->namespace, $this->parent_base, $data['parent'] ) ) ); } /** * Filters a revision returned from the REST API. * * Allows modification of the revision right before it is returned. * * @since 4.7.0 * * @param WP_REST_Response $response The response object. * @param WP_Post $post The original revision object. * @param WP_REST_Request $request Request used to generate the response. */ return apply_filters( 'rest_prepare_revision', $response, $post, $request ); } /** * Checks the post_date_gmt or modified_gmt and prepare any post or * modified date for single post output. * * @since 4.7.0 * * @param string $date_gmt GMT publication time. * @param string|null $date Optional. Local publication time. Default null. * @return string|null ISO8601/RFC3339 formatted datetime, otherwise null. */ protected function prepare_date_response( $date_gmt, $date = null ) { if ( '0000-00-00 00:00:00' === $date_gmt ) { return null; } if ( isset( $date ) ) { return mysql_to_rfc3339( $date ); } return mysql_to_rfc3339( $date_gmt ); } /** * Retrieves the revision's schema, conforming to JSON Schema. * * @since 4.7.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => "{$this->parent_post_type}-revision", 'type' => 'object', // Base properties for every Revision. 'properties' => array( 'author' => array( 'description' => __( 'The ID for the author of the revision.' ), 'type' => 'integer', 'context' => array( 'view', 'edit', 'embed' ), ), 'date' => array( 'description' => __( "The date the revision was published, in the site's timezone." ), 'type' => 'string', 'format' => 'date-time', 'context' => array( 'view', 'edit', 'embed' ), ), 'date_gmt' => array( 'description' => __( 'The date the revision was published, as GMT.' ), 'type' => 'string', 'format' => 'date-time', 'context' => array( 'view', 'edit' ), ), 'guid' => array( 'description' => __( 'GUID for the revision, as it exists in the database.' ), 'type' => 'string', 'context' => array( 'view', 'edit' ), ), 'id' => array( 'description' => __( 'Unique identifier for the revision.' ), 'type' => 'integer', 'context' => array( 'view', 'edit', 'embed' ), ), 'modified' => array( 'description' => __( "The date the revision was last modified, in the site's timezone." ), 'type' => 'string', 'format' => 'date-time', 'context' => array( 'view', 'edit' ), ), 'modified_gmt' => array( 'description' => __( 'The date the revision was last modified, as GMT.' ), 'type' => 'string', 'format' => 'date-time', 'context' => array( 'view', 'edit' ), ), 'parent' => array( 'description' => __( 'The ID for the parent of the revision.' ), 'type' => 'integer', 'context' => array( 'view', 'edit', 'embed' ), ), 'slug' => array( 'description' => __( 'An alphanumeric identifier for the revision unique to its type.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), ), ), ); $parent_schema = $this->parent_controller->get_item_schema(); if ( ! empty( $parent_schema['properties']['title'] ) ) { $schema['properties']['title'] = $parent_schema['properties']['title']; } if ( ! empty( $parent_schema['properties']['content'] ) ) { $schema['properties']['content'] = $parent_schema['properties']['content']; } if ( ! empty( $parent_schema['properties']['excerpt'] ) ) { $schema['properties']['excerpt'] = $parent_schema['properties']['excerpt']; } if ( ! empty( $parent_schema['properties']['guid'] ) ) { $schema['properties']['guid'] = $parent_schema['properties']['guid']; } $this->schema = $schema; return $this->add_additional_fields_schema( $this->schema ); } /** * Retrieves the query params for collections. * * @since 4.7.0 * * @return array Collection parameters. */ public function get_collection_params() { $query_params = parent::get_collection_params(); $query_params['context']['default'] = 'view'; unset( $query_params['per_page']['default'] ); $query_params['exclude'] = array( 'description' => __( 'Ensure result set excludes specific IDs.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), 'default' => array(), ); $query_params['include'] = array( 'description' => __( 'Limit result set to specific IDs.' ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), 'default' => array(), ); $query_params['offset'] = array( 'description' => __( 'Offset the result set by a specific number of items.' ), 'type' => 'integer', ); $query_params['order'] = array( 'description' => __( 'Order sort attribute ascending or descending.' ), 'type' => 'string', 'default' => 'desc', 'enum' => array( 'asc', 'desc' ), ); $query_params['orderby'] = array( 'description' => __( 'Sort collection by object attribute.' ), 'type' => 'string', 'default' => 'date', 'enum' => array( 'date', 'id', 'include', 'relevance', 'slug', 'include_slugs', 'title', ), ); return $query_params; } /** * Checks the post excerpt and prepare it for single post output. * * @since 4.7.0 * * @param string $excerpt The post excerpt. * @param WP_Post $post Post revision object. * @return string Prepared excerpt or empty string. */ protected function prepare_excerpt_response( $excerpt, $post ) { /** This filter is documented in wp-includes/post-template.php */ $excerpt = apply_filters( 'the_excerpt', $excerpt, $post ); if ( empty( $excerpt ) ) { return ''; } return $excerpt; } } PK�����j l\e5l<��<��8��rest-api/endpoints/class-wp-rest-sidebars-controller.phpnu�[��������<?php /** * REST API: WP_REST_Sidebars_Controller class * * Original code from {@link https://github.com/martin-pettersson/wp-rest-api-sidebars Martin Pettersson (martin_pettersson@outlook.com)}. * * @package WordPress * @subpackage REST_API * @since 5.8.0 */ /** * Core class used to manage a site's sidebars. * * @since 5.8.0 * * @see WP_REST_Controller */ class WP_REST_Sidebars_Controller extends WP_REST_Controller { /** * Tracks whether {@see retrieve_widgets()} has been called in the current request. * * @since 5.9.0 * @var bool */ protected $widgets_retrieved = false; /** * Sidebars controller constructor. * * @since 5.8.0 */ public function __construct() { $this->namespace = 'wp/v2'; $this->rest_base = 'sidebars'; } /** * Registers the controllers routes. * * @since 5.8.0 */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P<id>[\w-]+)', array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), 'args' => array( 'id' => array( 'description' => __( 'The id of a registered sidebar' ), 'type' => 'string', ), 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ), ), array( 'methods' => WP_REST_Server::EDITABLE, 'callback' => array( $this, 'update_item' ), 'permission_callback' => array( $this, 'update_item_permissions_check' ), 'args' => $this->get_endpoint_args_for_item_schema( WP_REST_Server::EDITABLE ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Checks if a given request has access to get sidebars. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_items_permissions_check( $request ) { $this->retrieve_widgets(); foreach ( wp_get_sidebars_widgets() as $id => $widgets ) { $sidebar = $this->get_sidebar( $id ); if ( ! $sidebar ) { continue; } if ( $this->check_read_permission( $sidebar ) ) { return true; } } return $this->do_permissions_check(); } /** * Retrieves the list of sidebars (active or inactive). * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response Response object on success. */ public function get_items( $request ) { $this->retrieve_widgets(); $data = array(); $permissions_check = $this->do_permissions_check(); foreach ( wp_get_sidebars_widgets() as $id => $widgets ) { $sidebar = $this->get_sidebar( $id ); if ( ! $sidebar ) { continue; } if ( is_wp_error( $permissions_check ) && ! $this->check_read_permission( $sidebar ) ) { continue; } $data[] = $this->prepare_response_for_collection( $this->prepare_item_for_response( $sidebar, $request ) ); } return rest_ensure_response( $data ); } /** * Checks if a given request has access to get a single sidebar. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_item_permissions_check( $request ) { $this->retrieve_widgets(); $sidebar = $this->get_sidebar( $request['id'] ); if ( $sidebar && $this->check_read_permission( $sidebar ) ) { return true; } return $this->do_permissions_check(); } /** * Checks if a sidebar can be read publicly. * * @since 5.9.0 * * @param array $sidebar The registered sidebar configuration. * @return bool Whether the side can be read. */ protected function check_read_permission( $sidebar ) { return ! empty( $sidebar['show_in_rest'] ); } /** * Retrieves one sidebar from the collection. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_item( $request ) { $this->retrieve_widgets(); $sidebar = $this->get_sidebar( $request['id'] ); if ( ! $sidebar ) { return new WP_Error( 'rest_sidebar_not_found', __( 'No sidebar exists with that id.' ), array( 'status' => 404 ) ); } return $this->prepare_item_for_response( $sidebar, $request ); } /** * Checks if a given request has access to update sidebars. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function update_item_permissions_check( $request ) { return $this->do_permissions_check(); } /** * Updates a sidebar. * * @since 5.8.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response Response object on success, or WP_Error object on failure. */ public function update_item( $request ) { if ( isset( $request['widgets'] ) ) { $sidebars = wp_get_sidebars_widgets(); foreach ( $sidebars as $sidebar_id => $widgets ) { foreach ( $widgets as $i => $widget_id ) { // This automatically removes the passed widget IDs from any other sidebars in use. if ( $sidebar_id !== $request['id'] && in_array( $widget_id, $request['widgets'], true ) ) { unset( $sidebars[ $sidebar_id ][ $i ] ); } // This automatically removes omitted widget IDs to the inactive sidebar. if ( $sidebar_id === $request['id'] && ! in_array( $widget_id, $request['widgets'], true ) ) { $sidebars['wp_inactive_widgets'][] = $widget_id; } } } $sidebars[ $request['id'] ] = $request['widgets']; wp_set_sidebars_widgets( $sidebars ); } $request['context'] = 'edit'; $sidebar = $this->get_sidebar( $request['id'] ); /** * Fires after a sidebar is updated via the REST API. * * @since 5.8.0 * * @param array $sidebar The updated sidebar. * @param WP_REST_Request $request Request object. */ do_action( 'rest_save_sidebar', $sidebar, $request ); return $this->prepare_item_for_response( $sidebar, $request ); } /** * Checks if the user has permissions to make the request. * * @since 5.8.0 * * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ protected function do_permissions_check() { // Verify if the current user has edit_theme_options capability. // This capability is required to access the widgets screen. if ( ! current_user_can( 'edit_theme_options' ) ) { return new WP_Error( 'rest_cannot_manage_widgets', __( 'Sorry, you are not allowed to manage widgets on this site.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Retrieves the registered sidebar with the given id. * * @since 5.8.0 * * @param string|int $id ID of the sidebar. * @return array|null The discovered sidebar, or null if it is not registered. */ protected function get_sidebar( $id ) { return wp_get_sidebar( $id ); } /** * Looks for "lost" widgets once per request. * * @since 5.9.0 * * @see retrieve_widgets() */ protected function retrieve_widgets() { if ( ! $this->widgets_retrieved ) { retrieve_widgets(); $this->widgets_retrieved = true; } } /** * Prepares a single sidebar output for response. * * @since 5.8.0 * @since 5.9.0 Renamed `$raw_sidebar` to `$item` to match parent class for PHP 8 named parameter support. * * @global array $wp_registered_sidebars The registered sidebars. * @global array $wp_registered_widgets The registered widgets. * * @param array $item Sidebar instance. * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response Prepared response object. */ public function prepare_item_for_response( $item, $request ) { global $wp_registered_sidebars, $wp_registered_widgets; // Restores the more descriptive, specific name for use within this method. $raw_sidebar = $item; $id = $raw_sidebar['id']; $sidebar = array( 'id' => $id ); if ( isset( $wp_registered_sidebars[ $id ] ) ) { $registered_sidebar = $wp_registered_sidebars[ $id ]; $sidebar['status'] = 'active'; $sidebar['name'] = isset( $registered_sidebar['name'] ) ? $registered_sidebar['name'] : ''; $sidebar['description'] = isset( $registered_sidebar['description'] ) ? wp_sidebar_description( $id ) : ''; $sidebar['class'] = isset( $registered_sidebar['class'] ) ? $registered_sidebar['class'] : ''; $sidebar['before_widget'] = isset( $registered_sidebar['before_widget'] ) ? $registered_sidebar['before_widget'] : ''; $sidebar['after_widget'] = isset( $registered_sidebar['after_widget'] ) ? $registered_sidebar['after_widget'] : ''; $sidebar['before_title'] = isset( $registered_sidebar['before_title'] ) ? $registered_sidebar['before_title'] : ''; $sidebar['after_title'] = isset( $registered_sidebar['after_title'] ) ? $registered_sidebar['after_title'] : ''; } else { $sidebar['status'] = 'inactive'; $sidebar['name'] = $raw_sidebar['name']; $sidebar['description'] = ''; $sidebar['class'] = ''; } $fields = $this->get_fields_for_response( $request ); if ( rest_is_field_included( 'widgets', $fields ) ) { $sidebars = wp_get_sidebars_widgets(); $widgets = array_filter( isset( $sidebars[ $sidebar['id'] ] ) ? $sidebars[ $sidebar['id'] ] : array(), static function ( $widget_id ) use ( $wp_registered_widgets ) { return isset( $wp_registered_widgets[ $widget_id ] ); } ); $sidebar['widgets'] = array_values( $widgets ); } $schema = $this->get_item_schema(); $data = array(); foreach ( $schema['properties'] as $property_id => $property ) { if ( isset( $sidebar[ $property_id ] ) && true === rest_validate_value_from_schema( $sidebar[ $property_id ], $property ) ) { $data[ $property_id ] = $sidebar[ $property_id ]; } elseif ( isset( $property['default'] ) ) { $data[ $property_id ] = $property['default']; } } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->add_additional_fields_to_object( $data, $request ); $data = $this->filter_response_by_context( $data, $context ); $response = rest_ensure_response( $data ); $response->add_links( $this->prepare_links( $sidebar ) ); /** * Filters the REST API response for a sidebar. * * @since 5.8.0 * * @param WP_REST_Response $response The response object. * @param array $raw_sidebar The raw sidebar data. * @param WP_REST_Request $request The request object. */ return apply_filters( 'rest_prepare_sidebar', $response, $raw_sidebar, $request ); } /** * Prepares links for the sidebar. * * @since 5.8.0 * * @param array $sidebar Sidebar. * @return array Links for the given widget. */ protected function prepare_links( $sidebar ) { return array( 'collection' => array( 'href' => rest_url( sprintf( '%s/%s', $this->namespace, $this->rest_base ) ), ), 'self' => array( 'href' => rest_url( sprintf( '%s/%s/%s', $this->namespace, $this->rest_base, $sidebar['id'] ) ), ), 'https://api.w.org/widget' => array( 'href' => add_query_arg( 'sidebar', $sidebar['id'], rest_url( '/wp/v2/widgets' ) ), 'embeddable' => true, ), ); } /** * Retrieves the block type' schema, conforming to JSON Schema. * * @since 5.8.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'sidebar', 'type' => 'object', 'properties' => array( 'id' => array( 'description' => __( 'ID of sidebar.' ), 'type' => 'string', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'name' => array( 'description' => __( 'Unique name identifying the sidebar.' ), 'type' => 'string', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'description' => array( 'description' => __( 'Description of sidebar.' ), 'type' => 'string', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'class' => array( 'description' => __( 'Extra CSS class to assign to the sidebar in the Widgets interface.' ), 'type' => 'string', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'before_widget' => array( 'description' => __( 'HTML content to prepend to each widget\'s HTML output when assigned to this sidebar. Default is an opening list item element.' ), 'type' => 'string', 'default' => '', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'after_widget' => array( 'description' => __( 'HTML content to append to each widget\'s HTML output when assigned to this sidebar. Default is a closing list item element.' ), 'type' => 'string', 'default' => '', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'before_title' => array( 'description' => __( 'HTML content to prepend to the sidebar title when displayed. Default is an opening h2 element.' ), 'type' => 'string', 'default' => '', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'after_title' => array( 'description' => __( 'HTML content to append to the sidebar title when displayed. Default is a closing h2 element.' ), 'type' => 'string', 'default' => '', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'status' => array( 'description' => __( 'Status of sidebar.' ), 'type' => 'string', 'enum' => array( 'active', 'inactive' ), 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'widgets' => array( 'description' => __( 'Nested widgets.' ), 'type' => 'array', 'items' => array( 'type' => array( 'object', 'string' ), ), 'default' => array(), 'context' => array( 'embed', 'view', 'edit' ), ), ), ); $this->schema = $schema; return $this->add_additional_fields_schema( $this->schema ); } } PK�����j l\\w-��-��:��rest-api/endpoints/class-wp-rest-post-types-controller.phpnu�[��������<?php /** * REST API: WP_REST_Post_Types_Controller class * * @package WordPress * @subpackage REST_API * @since 4.7.0 */ /** * Core class to access post types via the REST API. * * @since 4.7.0 * * @see WP_REST_Controller */ class WP_REST_Post_Types_Controller extends WP_REST_Controller { /** * Constructor. * * @since 4.7.0 */ public function __construct() { $this->namespace = 'wp/v2'; $this->rest_base = 'types'; } /** * Registers the routes for post types. * * @since 4.7.0 * * @see register_rest_route() */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P<type>[\w-]+)', array( 'args' => array( 'type' => array( 'description' => __( 'An alphanumeric identifier for the post type.' ), 'type' => 'string', ), ), array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => '__return_true', 'args' => array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Checks whether a given request has permission to read types. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_items_permissions_check( $request ) { if ( 'edit' === $request['context'] ) { $types = get_post_types( array( 'show_in_rest' => true ), 'objects' ); foreach ( $types as $type ) { if ( current_user_can( $type->cap->edit_posts ) ) { return true; } } return new WP_Error( 'rest_cannot_view', __( 'Sorry, you are not allowed to edit posts in this post type.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Retrieves all public post types. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_items( $request ) { $data = array(); $types = get_post_types( array( 'show_in_rest' => true ), 'objects' ); foreach ( $types as $type ) { if ( 'edit' === $request['context'] && ! current_user_can( $type->cap->edit_posts ) ) { continue; } $post_type = $this->prepare_item_for_response( $type, $request ); $data[ $type->name ] = $this->prepare_response_for_collection( $post_type ); } return rest_ensure_response( $data ); } /** * Retrieves a specific post type. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_item( $request ) { $obj = get_post_type_object( $request['type'] ); if ( empty( $obj ) ) { return new WP_Error( 'rest_type_invalid', __( 'Invalid post type.' ), array( 'status' => 404 ) ); } if ( empty( $obj->show_in_rest ) ) { return new WP_Error( 'rest_cannot_read_type', __( 'Cannot view post type.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( 'edit' === $request['context'] && ! current_user_can( $obj->cap->edit_posts ) ) { return new WP_Error( 'rest_forbidden_context', __( 'Sorry, you are not allowed to edit posts in this post type.' ), array( 'status' => rest_authorization_required_code() ) ); } $data = $this->prepare_item_for_response( $obj, $request ); return rest_ensure_response( $data ); } /** * Prepares a post type object for serialization. * * @since 4.7.0 * @since 5.9.0 Renamed `$post_type` to `$item` to match parent class for PHP 8 named parameter support. * * @param WP_Post_Type $item Post type object. * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response Response object. */ public function prepare_item_for_response( $item, $request ) { // Restores the more descriptive, specific name for use within this method. $post_type = $item; $taxonomies = wp_list_filter( get_object_taxonomies( $post_type->name, 'objects' ), array( 'show_in_rest' => true ) ); $taxonomies = wp_list_pluck( $taxonomies, 'name' ); $base = ! empty( $post_type->rest_base ) ? $post_type->rest_base : $post_type->name; $namespace = ! empty( $post_type->rest_namespace ) ? $post_type->rest_namespace : 'wp/v2'; $supports = get_all_post_type_supports( $post_type->name ); $fields = $this->get_fields_for_response( $request ); $data = array(); if ( in_array( 'capabilities', $fields, true ) ) { $data['capabilities'] = $post_type->cap; } if ( in_array( 'description', $fields, true ) ) { $data['description'] = $post_type->description; } if ( in_array( 'hierarchical', $fields, true ) ) { $data['hierarchical'] = $post_type->hierarchical; } if ( in_array( 'visibility', $fields, true ) ) { $data['visibility'] = array( 'show_in_nav_menus' => (bool) $post_type->show_in_nav_menus, 'show_ui' => (bool) $post_type->show_ui, ); } if ( in_array( 'viewable', $fields, true ) ) { $data['viewable'] = is_post_type_viewable( $post_type ); } if ( in_array( 'labels', $fields, true ) ) { $data['labels'] = $post_type->labels; } if ( in_array( 'name', $fields, true ) ) { $data['name'] = $post_type->label; } if ( in_array( 'slug', $fields, true ) ) { $data['slug'] = $post_type->name; } if ( in_array( 'supports', $fields, true ) ) { $data['supports'] = $supports; } if ( in_array( 'taxonomies', $fields, true ) ) { $data['taxonomies'] = array_values( $taxonomies ); } if ( in_array( 'rest_base', $fields, true ) ) { $data['rest_base'] = $base; } if ( in_array( 'rest_namespace', $fields, true ) ) { $data['rest_namespace'] = $namespace; } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->add_additional_fields_to_object( $data, $request ); $data = $this->filter_response_by_context( $data, $context ); // Wrap the data in a response object. $response = rest_ensure_response( $data ); $response->add_links( array( 'collection' => array( 'href' => rest_url( sprintf( '%s/%s', $this->namespace, $this->rest_base ) ), ), 'https://api.w.org/items' => array( 'href' => rest_url( rest_get_route_for_post_type_items( $post_type->name ) ), ), ) ); /** * Filters a post type returned from the REST API. * * Allows modification of the post type data right before it is returned. * * @since 4.7.0 * * @param WP_REST_Response $response The response object. * @param WP_Post_Type $post_type The original post type object. * @param WP_REST_Request $request Request used to generate the response. */ return apply_filters( 'rest_prepare_post_type', $response, $post_type, $request ); } /** * Retrieves the post type's schema, conforming to JSON Schema. * * @since 4.7.0 * @since 4.8.0 The `supports` property was added. * @since 5.9.0 The `visibility` and `rest_namespace` properties were added. * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'type', 'type' => 'object', 'properties' => array( 'capabilities' => array( 'description' => __( 'All capabilities used by the post type.' ), 'type' => 'object', 'context' => array( 'edit' ), 'readonly' => true, ), 'description' => array( 'description' => __( 'A human-readable description of the post type.' ), 'type' => 'string', 'context' => array( 'view', 'edit' ), 'readonly' => true, ), 'hierarchical' => array( 'description' => __( 'Whether or not the post type should have children.' ), 'type' => 'boolean', 'context' => array( 'view', 'edit' ), 'readonly' => true, ), 'viewable' => array( 'description' => __( 'Whether or not the post type can be viewed.' ), 'type' => 'boolean', 'context' => array( 'edit' ), 'readonly' => true, ), 'labels' => array( 'description' => __( 'Human-readable labels for the post type for various contexts.' ), 'type' => 'object', 'context' => array( 'edit' ), 'readonly' => true, ), 'name' => array( 'description' => __( 'The title for the post type.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'slug' => array( 'description' => __( 'An alphanumeric identifier for the post type.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'supports' => array( 'description' => __( 'All features, supported by the post type.' ), 'type' => 'object', 'context' => array( 'edit' ), 'readonly' => true, ), 'taxonomies' => array( 'description' => __( 'Taxonomies associated with post type.' ), 'type' => 'array', 'items' => array( 'type' => 'string', ), 'context' => array( 'view', 'edit' ), 'readonly' => true, ), 'rest_base' => array( 'description' => __( 'REST base route for the post type.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'rest_namespace' => array( 'description' => __( 'REST route\'s namespace for the post type.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'visibility' => array( 'description' => __( 'The visibility settings for the post type.' ), 'type' => 'object', 'context' => array( 'edit' ), 'readonly' => true, 'properties' => array( 'show_ui' => array( 'description' => __( 'Whether to generate a default UI for managing this post type.' ), 'type' => 'boolean', ), 'show_in_nav_menus' => array( 'description' => __( 'Whether to make the post type is available for selection in navigation menus.' ), 'type' => 'boolean', ), ), ), ), ); $this->schema = $schema; return $this->add_additional_fields_schema( $this->schema ); } /** * Retrieves the query params for collections. * * @since 4.7.0 * * @return array Collection parameters. */ public function get_collection_params() { return array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ); } } PK�����j l\޴6 �� ��6��rest-api/endpoints/class-wp-rest-blocks-controller.phpnu�[��������<?php /** * Reusable blocks REST API: WP_REST_Blocks_Controller class * * @package WordPress * @subpackage REST_API * @since 5.0.0 */ /** * Controller which provides a REST endpoint for the editor to read, create, * edit and delete reusable blocks. Blocks are stored as posts with the wp_block * post type. * * @since 5.0.0 * * @see WP_REST_Posts_Controller * @see WP_REST_Controller */ class WP_REST_Blocks_Controller extends WP_REST_Posts_Controller { /** * Checks if a block can be read. * * @since 5.0.0 * * @param WP_Post $post Post object that backs the block. * @return bool Whether the block can be read. */ public function check_read_permission( $post ) { // By default the read_post capability is mapped to edit_posts. if ( ! current_user_can( 'read_post', $post->ID ) ) { return false; } return parent::check_read_permission( $post ); } /** * Filters a response based on the context defined in the schema. * * @since 5.0.0 * * @param array $data Response data to fiter. * @param string $context Context defined in the schema. * @return array Filtered response. */ public function filter_response_by_context( $data, $context ) { $data = parent::filter_response_by_context( $data, $context ); /* * Remove `title.rendered` and `content.rendered` from the response. It * doesn't make sense for a reusable block to have rendered content on its * own, since rendering a block requires it to be inside a post or a page. */ unset( $data['title']['rendered'] ); unset( $data['content']['rendered'] ); return $data; } /** * Retrieves the block's schema, conforming to JSON Schema. * * @since 5.0.0 * * @return array Item schema data. */ public function get_item_schema() { // Do not cache this schema because all properties are derived from parent controller. $schema = parent::get_item_schema(); /* * Allow all contexts to access `title.raw` and `content.raw`. Clients always * need the raw markup of a reusable block to do anything useful, e.g. parse * it or display it in an editor. */ $schema['properties']['title']['properties']['raw']['context'] = array( 'view', 'edit' ); $schema['properties']['content']['properties']['raw']['context'] = array( 'view', 'edit' ); /* * Remove `title.rendered` and `content.rendered` from the schema. It doesn’t * make sense for a reusable block to have rendered content on its own, since * rendering a block requires it to be inside a post or a page. */ unset( $schema['properties']['title']['properties']['rendered'] ); unset( $schema['properties']['content']['properties']['rendered'] ); return $schema; } } PK�����j l\ɟ18A��A��=��rest-api/endpoints/class-wp-rest-global-styles-controller.phpnu�[��������<?php /** * REST API: WP_REST_Global_Styles_Controller class * * @package WordPress * @subpackage REST_API * @since 5.9.0 */ /** * Base Global Styles REST API Controller. */ class WP_REST_Global_Styles_Controller extends WP_REST_Controller { /** * Post type. * * @since 5.9.0 * @var string */ protected $post_type; /** * Constructor. * @since 5.9.0 */ public function __construct() { $this->namespace = 'wp/v2'; $this->rest_base = 'global-styles'; $this->post_type = 'wp_global_styles'; } /** * Registers the controllers routes. * * @since 5.9.0 * * @return void */ public function register_routes() { // List themes global styles. register_rest_route( $this->namespace, // The route. sprintf( '/%s/themes/(?P<stylesheet>%s)', $this->rest_base, // Matches theme's directory: `/themes/<subdirectory>/<theme>/` or `/themes/<theme>/`. // Excludes invalid directory name characters: `/:<>*?"|`. '[^\/:<>\*\?"\|]+(?:\/[^\/:<>\*\?"\|]+)?' ), array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_theme_item' ), 'permission_callback' => array( $this, 'get_theme_item_permissions_check' ), 'args' => array( 'stylesheet' => array( 'description' => __( 'The theme identifier' ), 'type' => 'string', 'sanitize_callback' => array( $this, '_sanitize_global_styles_callback' ), ), ), ), ) ); // Lists/updates a single global style variation based on the given id. register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P<id>[\/\w-]+)', array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), 'args' => array( 'id' => array( 'description' => __( 'The id of a template' ), 'type' => 'string', 'sanitize_callback' => array( $this, '_sanitize_global_styles_callback' ), ), ), ), array( 'methods' => WP_REST_Server::EDITABLE, 'callback' => array( $this, 'update_item' ), 'permission_callback' => array( $this, 'update_item_permissions_check' ), 'args' => $this->get_endpoint_args_for_item_schema( WP_REST_Server::EDITABLE ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Sanitize the global styles ID or stylesheet to decode endpoint. * For example, `wp/v2/global-styles/twentytwentytwo%200.4.0` * would be decoded to `twentytwentytwo 0.4.0`. * * @since 5.9.0 * * @param string $id_or_stylesheet Global styles ID or stylesheet. * @return string Sanitized global styles ID or stylesheet. */ public function _sanitize_global_styles_callback( $id_or_stylesheet ) { return urldecode( $id_or_stylesheet ); } /** * Checks if a given request has access to read a single global style. * * @since 5.9.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_item_permissions_check( $request ) { $post = $this->get_post( $request['id'] ); if ( is_wp_error( $post ) ) { return $post; } if ( 'edit' === $request['context'] && $post && ! $this->check_update_permission( $post ) ) { return new WP_Error( 'rest_forbidden_context', __( 'Sorry, you are not allowed to edit this global style.' ), array( 'status' => rest_authorization_required_code() ) ); } if ( ! $this->check_read_permission( $post ) ) { return new WP_Error( 'rest_cannot_view', __( 'Sorry, you are not allowed to view this global style.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Checks if a global style can be read. * * @since 5.9.0 * * @param WP_Post $post Post object. * @return bool Whether the post can be read. */ protected function check_read_permission( $post ) { return current_user_can( 'read_post', $post->ID ); } /** * Returns the given global styles config. * * @since 5.9.0 * * @param WP_REST_Request $request The request instance. * * @return WP_REST_Response|WP_Error */ public function get_item( $request ) { $post = $this->get_post( $request['id'] ); if ( is_wp_error( $post ) ) { return $post; } return $this->prepare_item_for_response( $post, $request ); } /** * Checks if a given request has access to write a single global styles config. * * @since 5.9.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has write access for the item, WP_Error object otherwise. */ public function update_item_permissions_check( $request ) { $post = $this->get_post( $request['id'] ); if ( is_wp_error( $post ) ) { return $post; } if ( $post && ! $this->check_update_permission( $post ) ) { return new WP_Error( 'rest_cannot_edit', __( 'Sorry, you are not allowed to edit this global style.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Checks if a global style can be edited. * * @since 5.9.0 * * @param WP_Post $post Post object. * @return bool Whether the post can be edited. */ protected function check_update_permission( $post ) { return current_user_can( 'edit_post', $post->ID ); } /** * Updates a single global style config. * * @since 5.9.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function update_item( $request ) { $post_before = $this->get_post( $request['id'] ); if ( is_wp_error( $post_before ) ) { return $post_before; } $changes = $this->prepare_item_for_database( $request ); $result = wp_update_post( wp_slash( (array) $changes ), true, false ); if ( is_wp_error( $result ) ) { return $result; } $post = get_post( $request['id'] ); $fields_update = $this->update_additional_fields_for_object( $post, $request ); if ( is_wp_error( $fields_update ) ) { return $fields_update; } wp_after_insert_post( $post, true, $post_before ); $response = $this->prepare_item_for_response( $post, $request ); return rest_ensure_response( $response ); } /** * Prepares a single global styles config for update. * * @since 5.9.0 * * @param WP_REST_Request $request Request object. * @return stdClass Changes to pass to wp_update_post. */ protected function prepare_item_for_database( $request ) { $changes = new stdClass(); $changes->ID = $request['id']; $post = get_post( $request['id'] ); $existing_config = array(); if ( $post ) { $existing_config = json_decode( $post->post_content, true ); $json_decoding_error = json_last_error(); if ( JSON_ERROR_NONE !== $json_decoding_error || ! isset( $existing_config['isGlobalStylesUserThemeJSON'] ) || ! $existing_config['isGlobalStylesUserThemeJSON'] ) { $existing_config = array(); } } if ( isset( $request['styles'] ) || isset( $request['settings'] ) ) { $config = array(); if ( isset( $request['styles'] ) ) { $config['styles'] = $request['styles']; } elseif ( isset( $existing_config['styles'] ) ) { $config['styles'] = $existing_config['styles']; } if ( isset( $request['settings'] ) ) { $config['settings'] = $request['settings']; } elseif ( isset( $existing_config['settings'] ) ) { $config['settings'] = $existing_config['settings']; } $config['isGlobalStylesUserThemeJSON'] = true; $config['version'] = WP_Theme_JSON::LATEST_SCHEMA; $changes->post_content = wp_json_encode( $config ); } // Post title. if ( isset( $request['title'] ) ) { if ( is_string( $request['title'] ) ) { $changes->post_title = $request['title']; } elseif ( ! empty( $request['title']['raw'] ) ) { $changes->post_title = $request['title']['raw']; } } return $changes; } /** * Prepare a global styles config output for response. * * @since 5.9.0 * * @param WP_Post $post Global Styles post object. * @param WP_REST_Request $request Request object. * @return WP_REST_Response Response object. */ public function prepare_item_for_response( $post, $request ) { // phpcs:ignore VariableAnalysis.CodeAnalysis.VariableAnalysis.UnusedVariable $raw_config = json_decode( $post->post_content, true ); $is_global_styles_user_theme_json = isset( $raw_config['isGlobalStylesUserThemeJSON'] ) && true === $raw_config['isGlobalStylesUserThemeJSON']; $config = array(); if ( $is_global_styles_user_theme_json ) { $config = ( new WP_Theme_JSON( $raw_config, 'custom' ) )->get_raw_data(); } // Base fields for every post. $data = array(); $fields = $this->get_fields_for_response( $request ); if ( rest_is_field_included( 'id', $fields ) ) { $data['id'] = $post->ID; } if ( rest_is_field_included( 'title', $fields ) ) { $data['title'] = array(); } if ( rest_is_field_included( 'title.raw', $fields ) ) { $data['title']['raw'] = $post->post_title; } if ( rest_is_field_included( 'title.rendered', $fields ) ) { add_filter( 'protected_title_format', array( $this, 'protected_title_format' ) ); $data['title']['rendered'] = get_the_title( $post->ID ); remove_filter( 'protected_title_format', array( $this, 'protected_title_format' ) ); } if ( rest_is_field_included( 'settings', $fields ) ) { $data['settings'] = ! empty( $config['settings'] ) && $is_global_styles_user_theme_json ? $config['settings'] : new stdClass(); } if ( rest_is_field_included( 'styles', $fields ) ) { $data['styles'] = ! empty( $config['styles'] ) && $is_global_styles_user_theme_json ? $config['styles'] : new stdClass(); } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->add_additional_fields_to_object( $data, $request ); $data = $this->filter_response_by_context( $data, $context ); // Wrap the data in a response object. $response = rest_ensure_response( $data ); $links = $this->prepare_links( $post->ID ); $response->add_links( $links ); if ( ! empty( $links['self']['href'] ) ) { $actions = $this->get_available_actions(); $self = $links['self']['href']; foreach ( $actions as $rel ) { $response->add_link( $rel, $self ); } } return $response; } /** * Get the post, if the ID is valid. * * @since 5.9.0 * * @param int $id Supplied ID. * @return WP_Post|WP_Error Post object if ID is valid, WP_Error otherwise. */ protected function get_post( $id ) { $error = new WP_Error( 'rest_global_styles_not_found', __( 'No global styles config exist with that id.' ), array( 'status' => 404 ) ); $id = (int) $id; if ( $id <= 0 ) { return $error; } $post = get_post( $id ); if ( empty( $post ) || empty( $post->ID ) || $this->post_type !== $post->post_type ) { return $error; } return $post; } /** * Prepares links for the request. * * @since 5.9.0 * * @param integer $id ID. * @return array Links for the given post. */ protected function prepare_links( $id ) { $base = sprintf( '%s/%s', $this->namespace, $this->rest_base ); $links = array( 'self' => array( 'href' => rest_url( trailingslashit( $base ) . $id ), ), ); return $links; } /** * Get the link relations available for the post and current user. * * @since 5.9.0 * * @return array List of link relations. */ protected function get_available_actions() { $rels = array(); $post_type = get_post_type_object( $this->post_type ); if ( current_user_can( $post_type->cap->publish_posts ) ) { $rels[] = 'https://api.w.org/action-publish'; } return $rels; } /** * Overwrites the default protected title format. * * By default, WordPress will show password protected posts with a title of * "Protected: %s", as the REST API communicates the protected status of a post * in a machine readable format, we remove the "Protected: " prefix. * * @since 5.9.0 * * @return string Protected title format. */ public function protected_title_format() { return '%s'; } /** * Retrieves the query params for the global styles collection. * * @since 5.9.0 * * @return array Collection parameters. */ public function get_collection_params() { return array(); } /** * Retrieves the global styles type' schema, conforming to JSON Schema. * * @since 5.9.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => $this->post_type, 'type' => 'object', 'properties' => array( 'id' => array( 'description' => __( 'ID of global styles config.' ), 'type' => 'string', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'styles' => array( 'description' => __( 'Global styles.' ), 'type' => array( 'object' ), 'context' => array( 'view', 'edit' ), ), 'settings' => array( 'description' => __( 'Global settings.' ), 'type' => array( 'object' ), 'context' => array( 'view', 'edit' ), ), 'title' => array( 'description' => __( 'Title of the global styles variation.' ), 'type' => array( 'object', 'string' ), 'default' => '', 'context' => array( 'embed', 'view', 'edit' ), 'properties' => array( 'raw' => array( 'description' => __( 'Title for the global styles variation, as it exists in the database.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), ), 'rendered' => array( 'description' => __( 'HTML title for the post, transformed for display.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), ), ), ), ); $this->schema = $schema; return $this->add_additional_fields_schema( $this->schema ); } /** * Checks if a given request has access to read a single theme global styles config. * * @since 5.9.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access for the item, WP_Error object otherwise. */ public function get_theme_item_permissions_check( $request ) { // Verify if the current user has edit_theme_options capability. // This capability is required to edit/view/delete templates. if ( ! current_user_can( 'edit_theme_options' ) ) { return new WP_Error( 'rest_cannot_manage_global_styles', __( 'Sorry, you are not allowed to access the global styles on this site.' ), array( 'status' => rest_authorization_required_code(), ) ); } return true; } /** * Returns the given theme global styles config. * * @since 5.9.0 * * @param WP_REST_Request $request The request instance. * @return WP_REST_Response|WP_Error */ public function get_theme_item( $request ) { if ( wp_get_theme()->get_stylesheet() !== $request['stylesheet'] ) { // This endpoint only supports the active theme for now. return new WP_Error( 'rest_theme_not_found', __( 'Theme not found.' ), array( 'status' => 404 ) ); } $theme = WP_Theme_JSON_Resolver::get_merged_data( 'theme' ); $data = array(); $fields = $this->get_fields_for_response( $request ); if ( rest_is_field_included( 'settings', $fields ) ) { $data['settings'] = $theme->get_settings(); } if ( rest_is_field_included( 'styles', $fields ) ) { $raw_data = $theme->get_raw_data(); if ( isset( $raw_data['styles'] ) ) { $data['styles'] = $raw_data['styles']; } } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->add_additional_fields_to_object( $data, $request ); $data = $this->filter_response_by_context( $data, $context ); $response = rest_ensure_response( $data ); $links = array( 'self' => array( 'href' => rest_url( sprintf( '%s/%s/themes/%s', $this->namespace, $this->rest_base, $request['stylesheet'] ) ), ), ); $response->add_links( $links ); return $response; } } PK�����j l\3��3��:��rest-api/endpoints/class-wp-rest-taxonomies-controller.phpnu�[��������<?php /** * REST API: WP_REST_Taxonomies_Controller class * * @package WordPress * @subpackage REST_API * @since 4.7.0 */ /** * Core class used to manage taxonomies via the REST API. * * @since 4.7.0 * * @see WP_REST_Controller */ class WP_REST_Taxonomies_Controller extends WP_REST_Controller { /** * Constructor. * * @since 4.7.0 */ public function __construct() { $this->namespace = 'wp/v2'; $this->rest_base = 'taxonomies'; } /** * Registers the routes for taxonomies. * * @since 4.7.0 * * @see register_rest_route() */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P<taxonomy>[\w-]+)', array( 'args' => array( 'taxonomy' => array( 'description' => __( 'An alphanumeric identifier for the taxonomy.' ), 'type' => 'string', ), ), array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), 'args' => array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Checks whether a given request has permission to read taxonomies. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_items_permissions_check( $request ) { if ( 'edit' === $request['context'] ) { if ( ! empty( $request['type'] ) ) { $taxonomies = get_object_taxonomies( $request['type'], 'objects' ); } else { $taxonomies = get_taxonomies( '', 'objects' ); } foreach ( $taxonomies as $taxonomy ) { if ( ! empty( $taxonomy->show_in_rest ) && current_user_can( $taxonomy->cap->assign_terms ) ) { return true; } } return new WP_Error( 'rest_cannot_view', __( 'Sorry, you are not allowed to manage terms in this taxonomy.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Retrieves all public taxonomies. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response Response object on success, or WP_Error object on failure. */ public function get_items( $request ) { // Retrieve the list of registered collection query parameters. $registered = $this->get_collection_params(); if ( isset( $registered['type'] ) && ! empty( $request['type'] ) ) { $taxonomies = get_object_taxonomies( $request['type'], 'objects' ); } else { $taxonomies = get_taxonomies( '', 'objects' ); } $data = array(); foreach ( $taxonomies as $tax_type => $value ) { if ( empty( $value->show_in_rest ) || ( 'edit' === $request['context'] && ! current_user_can( $value->cap->assign_terms ) ) ) { continue; } $tax = $this->prepare_item_for_response( $value, $request ); $tax = $this->prepare_response_for_collection( $tax ); $data[ $tax_type ] = $tax; } if ( empty( $data ) ) { // Response should still be returned as a JSON object when it is empty. $data = (object) $data; } return rest_ensure_response( $data ); } /** * Checks if a given request has access to a taxonomy. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access for the item, otherwise false or WP_Error object. */ public function get_item_permissions_check( $request ) { $tax_obj = get_taxonomy( $request['taxonomy'] ); if ( $tax_obj ) { if ( empty( $tax_obj->show_in_rest ) ) { return false; } if ( 'edit' === $request['context'] && ! current_user_can( $tax_obj->cap->assign_terms ) ) { return new WP_Error( 'rest_forbidden_context', __( 'Sorry, you are not allowed to manage terms in this taxonomy.' ), array( 'status' => rest_authorization_required_code() ) ); } } return true; } /** * Retrieves a specific taxonomy. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_item( $request ) { $tax_obj = get_taxonomy( $request['taxonomy'] ); if ( empty( $tax_obj ) ) { return new WP_Error( 'rest_taxonomy_invalid', __( 'Invalid taxonomy.' ), array( 'status' => 404 ) ); } $data = $this->prepare_item_for_response( $tax_obj, $request ); return rest_ensure_response( $data ); } /** * Prepares a taxonomy object for serialization. * * @since 4.7.0 * @since 5.9.0 Renamed `$taxonomy` to `$item` to match parent class for PHP 8 named parameter support. * * @param WP_Taxonomy $item Taxonomy data. * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response Response object. */ public function prepare_item_for_response( $item, $request ) { // Restores the more descriptive, specific name for use within this method. $taxonomy = $item; $base = ! empty( $taxonomy->rest_base ) ? $taxonomy->rest_base : $taxonomy->name; $fields = $this->get_fields_for_response( $request ); $data = array(); if ( in_array( 'name', $fields, true ) ) { $data['name'] = $taxonomy->label; } if ( in_array( 'slug', $fields, true ) ) { $data['slug'] = $taxonomy->name; } if ( in_array( 'capabilities', $fields, true ) ) { $data['capabilities'] = $taxonomy->cap; } if ( in_array( 'description', $fields, true ) ) { $data['description'] = $taxonomy->description; } if ( in_array( 'labels', $fields, true ) ) { $data['labels'] = $taxonomy->labels; } if ( in_array( 'types', $fields, true ) ) { $data['types'] = array_values( $taxonomy->object_type ); } if ( in_array( 'show_cloud', $fields, true ) ) { $data['show_cloud'] = $taxonomy->show_tagcloud; } if ( in_array( 'hierarchical', $fields, true ) ) { $data['hierarchical'] = $taxonomy->hierarchical; } if ( in_array( 'rest_base', $fields, true ) ) { $data['rest_base'] = $base; } if ( in_array( 'rest_namespace', $fields, true ) ) { $data['rest_namespace'] = $taxonomy->rest_namespace; } if ( in_array( 'visibility', $fields, true ) ) { $data['visibility'] = array( 'public' => (bool) $taxonomy->public, 'publicly_queryable' => (bool) $taxonomy->publicly_queryable, 'show_admin_column' => (bool) $taxonomy->show_admin_column, 'show_in_nav_menus' => (bool) $taxonomy->show_in_nav_menus, 'show_in_quick_edit' => (bool) $taxonomy->show_in_quick_edit, 'show_ui' => (bool) $taxonomy->show_ui, ); } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->add_additional_fields_to_object( $data, $request ); $data = $this->filter_response_by_context( $data, $context ); // Wrap the data in a response object. $response = rest_ensure_response( $data ); $response->add_links( array( 'collection' => array( 'href' => rest_url( sprintf( '%s/%s', $this->namespace, $this->rest_base ) ), ), 'https://api.w.org/items' => array( 'href' => rest_url( rest_get_route_for_taxonomy_items( $taxonomy->name ) ), ), ) ); /** * Filters a taxonomy returned from the REST API. * * Allows modification of the taxonomy data right before it is returned. * * @since 4.7.0 * * @param WP_REST_Response $response The response object. * @param WP_Taxonomy $item The original taxonomy object. * @param WP_REST_Request $request Request used to generate the response. */ return apply_filters( 'rest_prepare_taxonomy', $response, $taxonomy, $request ); } /** * Retrieves the taxonomy's schema, conforming to JSON Schema. * * @since 4.7.0 * @since 5.0.0 The `visibility` property was added. * @since 5.9.0 The `rest_namespace` property was added. * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'taxonomy', 'type' => 'object', 'properties' => array( 'capabilities' => array( 'description' => __( 'All capabilities used by the taxonomy.' ), 'type' => 'object', 'context' => array( 'edit' ), 'readonly' => true, ), 'description' => array( 'description' => __( 'A human-readable description of the taxonomy.' ), 'type' => 'string', 'context' => array( 'view', 'edit' ), 'readonly' => true, ), 'hierarchical' => array( 'description' => __( 'Whether or not the taxonomy should have children.' ), 'type' => 'boolean', 'context' => array( 'view', 'edit' ), 'readonly' => true, ), 'labels' => array( 'description' => __( 'Human-readable labels for the taxonomy for various contexts.' ), 'type' => 'object', 'context' => array( 'edit' ), 'readonly' => true, ), 'name' => array( 'description' => __( 'The title for the taxonomy.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'slug' => array( 'description' => __( 'An alphanumeric identifier for the taxonomy.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'show_cloud' => array( 'description' => __( 'Whether or not the term cloud should be displayed.' ), 'type' => 'boolean', 'context' => array( 'edit' ), 'readonly' => true, ), 'types' => array( 'description' => __( 'Types associated with the taxonomy.' ), 'type' => 'array', 'items' => array( 'type' => 'string', ), 'context' => array( 'view', 'edit' ), 'readonly' => true, ), 'rest_base' => array( 'description' => __( 'REST base route for the taxonomy.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'rest_namespace' => array( 'description' => __( 'REST namespace route for the taxonomy.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), 'visibility' => array( 'description' => __( 'The visibility settings for the taxonomy.' ), 'type' => 'object', 'context' => array( 'edit' ), 'readonly' => true, 'properties' => array( 'public' => array( 'description' => __( 'Whether a taxonomy is intended for use publicly either via the admin interface or by front-end users.' ), 'type' => 'boolean', ), 'publicly_queryable' => array( 'description' => __( 'Whether the taxonomy is publicly queryable.' ), 'type' => 'boolean', ), 'show_ui' => array( 'description' => __( 'Whether to generate a default UI for managing this taxonomy.' ), 'type' => 'boolean', ), 'show_admin_column' => array( 'description' => __( 'Whether to allow automatic creation of taxonomy columns on associated post-types table.' ), 'type' => 'boolean', ), 'show_in_nav_menus' => array( 'description' => __( 'Whether to make the taxonomy available for selection in navigation menus.' ), 'type' => 'boolean', ), 'show_in_quick_edit' => array( 'description' => __( 'Whether to show the taxonomy in the quick/bulk edit panel.' ), 'type' => 'boolean', ), ), ), ), ); $this->schema = $schema; return $this->add_additional_fields_schema( $this->schema ); } /** * Retrieves the query params for collections. * * @since 4.7.0 * * @return array Collection parameters. */ public function get_collection_params() { $new_params = array(); $new_params['context'] = $this->get_context_param( array( 'default' => 'view' ) ); $new_params['type'] = array( 'description' => __( 'Limit results to taxonomies associated with a specific post type.' ), 'type' => 'string', ); return $new_params; } } PK�����j l\n����>��rest-api/endpoints/class-wp-rest-block-renderer-controller.phpnu�[��������<?php /** * Block Renderer REST API: WP_REST_Block_Renderer_Controller class * * @package WordPress * @subpackage REST_API * @since 5.0.0 */ /** * Controller which provides REST endpoint for rendering a block. * * @since 5.0.0 * * @see WP_REST_Controller */ class WP_REST_Block_Renderer_Controller extends WP_REST_Controller { /** * Constructs the controller. * * @since 5.0.0 */ public function __construct() { $this->namespace = 'wp/v2'; $this->rest_base = 'block-renderer'; } /** * Registers the necessary REST API routes, one for each dynamic block. * * @since 5.0.0 * * @see register_rest_route() */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P<name>[a-z0-9-]+/[a-z0-9-]+)', array( 'args' => array( 'name' => array( 'description' => __( 'Unique registered name for the block.' ), 'type' => 'string', ), ), array( 'methods' => array( WP_REST_Server::READABLE, WP_REST_Server::CREATABLE ), 'callback' => array( $this, 'get_item' ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), 'args' => array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), 'attributes' => array( 'description' => __( 'Attributes for the block.' ), 'type' => 'object', 'default' => array(), 'validate_callback' => static function ( $value, $request ) { $block = WP_Block_Type_Registry::get_instance()->get_registered( $request['name'] ); if ( ! $block ) { // This will get rejected in ::get_item(). return true; } $schema = array( 'type' => 'object', 'properties' => $block->get_attributes(), 'additionalProperties' => false, ); return rest_validate_value_from_schema( $value, $schema ); }, 'sanitize_callback' => static function ( $value, $request ) { $block = WP_Block_Type_Registry::get_instance()->get_registered( $request['name'] ); if ( ! $block ) { // This will get rejected in ::get_item(). return true; } $schema = array( 'type' => 'object', 'properties' => $block->get_attributes(), 'additionalProperties' => false, ); return rest_sanitize_value_from_schema( $value, $schema ); }, ), 'post_id' => array( 'description' => __( 'ID of the post context.' ), 'type' => 'integer', ), ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Checks if a given request has access to read blocks. * * @since 5.0.0 * * @global WP_Post $post Global post object. * * @param WP_REST_Request $request Request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_item_permissions_check( $request ) { global $post; $post_id = isset( $request['post_id'] ) ? (int) $request['post_id'] : 0; if ( $post_id > 0 ) { $post = get_post( $post_id ); if ( ! $post || ! current_user_can( 'edit_post', $post->ID ) ) { return new WP_Error( 'block_cannot_read', __( 'Sorry, you are not allowed to read blocks of this post.' ), array( 'status' => rest_authorization_required_code(), ) ); } } else { if ( ! current_user_can( 'edit_posts' ) ) { return new WP_Error( 'block_cannot_read', __( 'Sorry, you are not allowed to read blocks as this user.' ), array( 'status' => rest_authorization_required_code(), ) ); } } return true; } /** * Returns block output from block's registered render_callback. * * @since 5.0.0 * * @global WP_Post $post Global post object. * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_item( $request ) { global $post; $post_id = isset( $request['post_id'] ) ? (int) $request['post_id'] : 0; if ( $post_id > 0 ) { $post = get_post( $post_id ); // Set up postdata since this will be needed if post_id was set. setup_postdata( $post ); } $registry = WP_Block_Type_Registry::get_instance(); $registered = $registry->get_registered( $request['name'] ); if ( null === $registered || ! $registered->is_dynamic() ) { return new WP_Error( 'block_invalid', __( 'Invalid block.' ), array( 'status' => 404, ) ); } $attributes = $request->get_param( 'attributes' ); // Create an array representation simulating the output of parse_blocks. $block = array( 'blockName' => $request['name'], 'attrs' => $attributes, 'innerHTML' => '', 'innerContent' => array(), ); // Render using render_block to ensure all relevant filters are used. $data = array( 'rendered' => render_block( $block ), ); return rest_ensure_response( $data ); } /** * Retrieves block's output schema, conforming to JSON Schema. * * @since 5.0.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->schema; } $this->schema = array( '$schema' => 'http://json-schema.org/schema#', 'title' => 'rendered-block', 'type' => 'object', 'properties' => array( 'rendered' => array( 'description' => __( 'The rendered block.' ), 'type' => 'string', 'required' => true, 'context' => array( 'edit' ), ), ), ); return $this->schema; } } PK�����j l\bp&~��&~��:��rest-api/endpoints/class-wp-rest-menu-items-controller.phpnu�[��������<?php /** * REST API: WP_REST_Menu_Items_Controller class * * @package WordPress * @subpackage REST_API * @since 5.9.0 */ /** * Core class to access nav items via the REST API. * * @since 5.9.0 * * @see WP_REST_Posts_Controller */ class WP_REST_Menu_Items_Controller extends WP_REST_Posts_Controller { /** * Get the nav menu item, if the ID is valid. * * @since 5.9.0 * * @param int $id Supplied ID. * @return object|WP_Error Post object if ID is valid, WP_Error otherwise. */ protected function get_nav_menu_item( $id ) { $post = $this->get_post( $id ); if ( is_wp_error( $post ) ) { return $post; } return wp_setup_nav_menu_item( $post ); } /** * Checks if a given request has access to read menu items. * * @since 5.9.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_items_permissions_check( $request ) { $has_permission = parent::get_items_permissions_check( $request ); if ( true !== $has_permission ) { return $has_permission; } return $this->check_has_read_only_access( $request ); } /** * Checks if a given request has access to read a menu item if they have access to edit them. * * @since 5.9.0 * * @param WP_REST_Request $request Full details about the request. * @return bool|WP_Error True if the request has read access for the item, WP_Error object otherwise. */ public function get_item_permissions_check( $request ) { $permission_check = parent::get_item_permissions_check( $request ); if ( true !== $permission_check ) { return $permission_check; } return $this->check_has_read_only_access( $request ); } /** * Checks whether the current user has read permission for the endpoint. * * This allows for any user that can `edit_theme_options` or edit any REST API available post type. * * @since 5.9.0 * * @param WP_REST_Request $request Full details about the request. * @return bool|WP_Error Whether the current user has permission. */ protected function check_has_read_only_access( $request ) { if ( current_user_can( 'edit_theme_options' ) ) { return true; } if ( current_user_can( 'edit_posts' ) ) { return true; } foreach ( get_post_types( array( 'show_in_rest' => true ), 'objects' ) as $post_type ) { if ( current_user_can( $post_type->cap->edit_posts ) ) { return true; } } return new WP_Error( 'rest_cannot_view', __( 'Sorry, you are not allowed to view menu items.' ), array( 'status' => rest_authorization_required_code() ) ); } /** * Creates a single post. * * @since 5.9.0 * * @param WP_REST_Request $request Full details about the request. * * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function create_item( $request ) { if ( ! empty( $request['id'] ) ) { return new WP_Error( 'rest_post_exists', __( 'Cannot create existing post.' ), array( 'status' => 400 ) ); } $prepared_nav_item = $this->prepare_item_for_database( $request ); if ( is_wp_error( $prepared_nav_item ) ) { return $prepared_nav_item; } $prepared_nav_item = (array) $prepared_nav_item; $nav_menu_item_id = wp_update_nav_menu_item( $prepared_nav_item['menu-id'], $prepared_nav_item['menu-item-db-id'], wp_slash( $prepared_nav_item ), false ); if ( is_wp_error( $nav_menu_item_id ) ) { if ( 'db_insert_error' === $nav_menu_item_id->get_error_code() ) { $nav_menu_item_id->add_data( array( 'status' => 500 ) ); } else { $nav_menu_item_id->add_data( array( 'status' => 400 ) ); } return $nav_menu_item_id; } $nav_menu_item = $this->get_nav_menu_item( $nav_menu_item_id ); if ( is_wp_error( $nav_menu_item ) ) { $nav_menu_item->add_data( array( 'status' => 404 ) ); return $nav_menu_item; } /** * Fires after a single menu item is created or updated via the REST API. * * @since 5.9.0 * * @param object $nav_menu_item Inserted or updated menu item object. * @param WP_REST_Request $request Request object. * @param bool $creating True when creating a menu item, false when updating. */ do_action( 'rest_insert_nav_menu_item', $nav_menu_item, $request, true ); $schema = $this->get_item_schema(); if ( ! empty( $schema['properties']['meta'] ) && isset( $request['meta'] ) ) { $meta_update = $this->meta->update_value( $request['meta'], $nav_menu_item_id ); if ( is_wp_error( $meta_update ) ) { return $meta_update; } } $nav_menu_item = $this->get_nav_menu_item( $nav_menu_item_id ); $fields_update = $this->update_additional_fields_for_object( $nav_menu_item, $request ); if ( is_wp_error( $fields_update ) ) { return $fields_update; } $request->set_param( 'context', 'edit' ); /** * Fires after a single menu item is completely created or updated via the REST API. * * @since 5.9.0 * * @param object $nav_menu_item Inserted or updated menu item object. * @param WP_REST_Request $request Request object. * @param bool $creating True when creating a menu item, false when updating. */ do_action( 'rest_after_insert_nav_menu_item', $nav_menu_item, $request, true ); $post = get_post( $nav_menu_item_id ); wp_after_insert_post( $post, false, null ); $response = $this->prepare_item_for_response( $post, $request ); $response = rest_ensure_response( $response ); $response->set_status( 201 ); $response->header( 'Location', rest_url( sprintf( '%s/%s/%d', $this->namespace, $this->rest_base, $nav_menu_item_id ) ) ); return $response; } /** * Updates a single nav menu item. * * @since 5.9.0 * * @param WP_REST_Request $request Full details about the request. * * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function update_item( $request ) { $valid_check = $this->get_nav_menu_item( $request['id'] ); if ( is_wp_error( $valid_check ) ) { return $valid_check; } $post_before = get_post( $request['id'] ); $prepared_nav_item = $this->prepare_item_for_database( $request ); if ( is_wp_error( $prepared_nav_item ) ) { return $prepared_nav_item; } $prepared_nav_item = (array) $prepared_nav_item; $nav_menu_item_id = wp_update_nav_menu_item( $prepared_nav_item['menu-id'], $prepared_nav_item['menu-item-db-id'], wp_slash( $prepared_nav_item ), false ); if ( is_wp_error( $nav_menu_item_id ) ) { if ( 'db_update_error' === $nav_menu_item_id->get_error_code() ) { $nav_menu_item_id->add_data( array( 'status' => 500 ) ); } else { $nav_menu_item_id->add_data( array( 'status' => 400 ) ); } return $nav_menu_item_id; } $nav_menu_item = $this->get_nav_menu_item( $nav_menu_item_id ); if ( is_wp_error( $nav_menu_item ) ) { $nav_menu_item->add_data( array( 'status' => 404 ) ); return $nav_menu_item; } /** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-menu-items-controller.php */ do_action( 'rest_insert_nav_menu_item', $nav_menu_item, $request, false ); $schema = $this->get_item_schema(); if ( ! empty( $schema['properties']['meta'] ) && isset( $request['meta'] ) ) { $meta_update = $this->meta->update_value( $request['meta'], $nav_menu_item->ID ); if ( is_wp_error( $meta_update ) ) { return $meta_update; } } $post = get_post( $nav_menu_item_id ); $nav_menu_item = $this->get_nav_menu_item( $nav_menu_item_id ); $fields_update = $this->update_additional_fields_for_object( $nav_menu_item, $request ); if ( is_wp_error( $fields_update ) ) { return $fields_update; } $request->set_param( 'context', 'edit' ); /** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-menu-items-controller.php */ do_action( 'rest_after_insert_nav_menu_item', $nav_menu_item, $request, false ); wp_after_insert_post( $post, true, $post_before ); $response = $this->prepare_item_for_response( get_post( $nav_menu_item_id ), $request ); return rest_ensure_response( $response ); } /** * Deletes a single menu item. * * @since 5.9.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error True on success, or WP_Error object on failure. */ public function delete_item( $request ) { $menu_item = $this->get_nav_menu_item( $request['id'] ); if ( is_wp_error( $menu_item ) ) { return $menu_item; } // We don't support trashing for menu items. if ( ! $request['force'] ) { /* translators: %s: force=true */ return new WP_Error( 'rest_trash_not_supported', sprintf( __( "Menu items do not support trashing. Set '%s' to delete." ), 'force=true' ), array( 'status' => 501 ) ); } $previous = $this->prepare_item_for_response( get_post( $request['id'] ), $request ); $result = wp_delete_post( $request['id'], true ); if ( ! $result ) { return new WP_Error( 'rest_cannot_delete', __( 'The post cannot be deleted.' ), array( 'status' => 500 ) ); } $response = new WP_REST_Response(); $response->set_data( array( 'deleted' => true, 'previous' => $previous->get_data(), ) ); /** * Fires immediately after a single menu item is deleted via the REST API. * * @since 5.9.0 * * @param object $nav_menu_item Inserted or updated menu item object. * @param WP_REST_Response $response The response data. * @param WP_REST_Request $request Request object. */ do_action( 'rest_delete_nav_menu_item', $menu_item, $response, $request ); return $response; } /** * Prepares a single post for create or update. * * @since 5.9.0 * * @param WP_REST_Request $request Request object. * * @return object|WP_Error */ protected function prepare_item_for_database( $request ) { $menu_item_db_id = $request['id']; $menu_item_obj = $this->get_nav_menu_item( $menu_item_db_id ); // Need to persist the menu item data. See https://core.trac.wordpress.org/ticket/28138 if ( ! is_wp_error( $menu_item_obj ) ) { // Correct the menu position if this was the first item. See https://core.trac.wordpress.org/ticket/28140 $position = ( 0 === $menu_item_obj->menu_order ) ? 1 : $menu_item_obj->menu_order; $prepared_nav_item = array( 'menu-item-db-id' => $menu_item_db_id, 'menu-item-object-id' => $menu_item_obj->object_id, 'menu-item-object' => $menu_item_obj->object, 'menu-item-parent-id' => $menu_item_obj->menu_item_parent, 'menu-item-position' => $position, 'menu-item-type' => $menu_item_obj->type, 'menu-item-title' => $menu_item_obj->title, 'menu-item-url' => $menu_item_obj->url, 'menu-item-description' => $menu_item_obj->description, 'menu-item-attr-title' => $menu_item_obj->attr_title, 'menu-item-target' => $menu_item_obj->target, 'menu-item-classes' => $menu_item_obj->classes, // Stored in the database as a string. 'menu-item-xfn' => explode( ' ', $menu_item_obj->xfn ), 'menu-item-status' => $menu_item_obj->post_status, 'menu-id' => $this->get_menu_id( $menu_item_db_id ), ); } else { $prepared_nav_item = array( 'menu-id' => 0, 'menu-item-db-id' => 0, 'menu-item-object-id' => 0, 'menu-item-object' => '', 'menu-item-parent-id' => 0, 'menu-item-position' => 1, 'menu-item-type' => 'custom', 'menu-item-title' => '', 'menu-item-url' => '', 'menu-item-description' => '', 'menu-item-attr-title' => '', 'menu-item-target' => '', 'menu-item-classes' => array(), 'menu-item-xfn' => array(), 'menu-item-status' => 'publish', ); } $mapping = array( 'menu-item-db-id' => 'id', 'menu-item-object-id' => 'object_id', 'menu-item-object' => 'object', 'menu-item-parent-id' => 'parent', 'menu-item-position' => 'menu_order', 'menu-item-type' => 'type', 'menu-item-url' => 'url', 'menu-item-description' => 'description', 'menu-item-attr-title' => 'attr_title', 'menu-item-target' => 'target', 'menu-item-classes' => 'classes', 'menu-item-xfn' => 'xfn', 'menu-item-status' => 'status', ); $schema = $this->get_item_schema(); foreach ( $mapping as $original => $api_request ) { if ( isset( $request[ $api_request ] ) ) { $prepared_nav_item[ $original ] = $request[ $api_request ]; } } $taxonomy = get_taxonomy( 'nav_menu' ); $base = ! empty( $taxonomy->rest_base ) ? $taxonomy->rest_base : $taxonomy->name; // If menus submitted, cast to int. if ( ! empty( $request[ $base ] ) ) { $prepared_nav_item['menu-id'] = absint( $request[ $base ] ); } // Nav menu title. if ( ! empty( $schema['properties']['title'] ) && isset( $request['title'] ) ) { if ( is_string( $request['title'] ) ) { $prepared_nav_item['menu-item-title'] = $request['title']; } elseif ( ! empty( $request['title']['raw'] ) ) { $prepared_nav_item['menu-item-title'] = $request['title']['raw']; } } $error = new WP_Error(); // Check if object id exists before saving. if ( ! $prepared_nav_item['menu-item-object'] ) { // If taxonomy, check if term exists. if ( 'taxonomy' === $prepared_nav_item['menu-item-type'] ) { $original = get_term( absint( $prepared_nav_item['menu-item-object-id'] ) ); if ( empty( $original ) || is_wp_error( $original ) ) { $error->add( 'rest_term_invalid_id', __( 'Invalid term ID.' ), array( 'status' => 400 ) ); } else { $prepared_nav_item['menu-item-object'] = get_term_field( 'taxonomy', $original ); } // If post, check if post object exists. } elseif ( 'post_type' === $prepared_nav_item['menu-item-type'] ) { $original = get_post( absint( $prepared_nav_item['menu-item-object-id'] ) ); if ( empty( $original ) ) { $error->add( 'rest_post_invalid_id', __( 'Invalid post ID.' ), array( 'status' => 400 ) ); } else { $prepared_nav_item['menu-item-object'] = get_post_type( $original ); } } } // If post type archive, check if post type exists. if ( 'post_type_archive' === $prepared_nav_item['menu-item-type'] ) { $post_type = $prepared_nav_item['menu-item-object'] ? $prepared_nav_item['menu-item-object'] : false; $original = get_post_type_object( $post_type ); if ( ! $original ) { $error->add( 'rest_post_invalid_type', __( 'Invalid post type.' ), array( 'status' => 400 ) ); } } // Check if menu item is type custom, then title and url are required. if ( 'custom' === $prepared_nav_item['menu-item-type'] ) { if ( '' === $prepared_nav_item['menu-item-title'] ) { $error->add( 'rest_title_required', __( 'The title is required when using a custom menu item type.' ), array( 'status' => 400 ) ); } if ( empty( $prepared_nav_item['menu-item-url'] ) ) { $error->add( 'rest_url_required', __( 'The url is required when using a custom menu item type.' ), array( 'status' => 400 ) ); } } if ( $error->has_errors() ) { return $error; } // The xfn and classes properties are arrays, but passed to wp_update_nav_menu_item as a string. foreach ( array( 'menu-item-xfn', 'menu-item-classes' ) as $key ) { $prepared_nav_item[ $key ] = implode( ' ', $prepared_nav_item[ $key ] ); } // Only draft / publish are valid post status for menu items. if ( 'publish' !== $prepared_nav_item['menu-item-status'] ) { $prepared_nav_item['menu-item-status'] = 'draft'; } $prepared_nav_item = (object) $prepared_nav_item; /** * Filters a menu item before it is inserted via the REST API. * * @since 5.9.0 * * @param object $prepared_nav_item An object representing a single menu item prepared * for inserting or updating the database. * @param WP_REST_Request $request Request object. */ return apply_filters( 'rest_pre_insert_nav_menu_item', $prepared_nav_item, $request ); } /** * Prepares a single post output for response. * * @since 5.9.0 * * @param WP_Post $item Post object. * @param WP_REST_Request $request Request object. * @return WP_REST_Response Response object. */ public function prepare_item_for_response( $item, $request ) { // Base fields for every post. $fields = $this->get_fields_for_response( $request ); $menu_item = $this->get_nav_menu_item( $item->ID ); $data = array(); if ( rest_is_field_included( 'id', $fields ) ) { $data['id'] = $menu_item->ID; } if ( rest_is_field_included( 'title', $fields ) ) { $data['title'] = array(); } if ( rest_is_field_included( 'title.raw', $fields ) ) { $data['title']['raw'] = $menu_item->title; } if ( rest_is_field_included( 'title.rendered', $fields ) ) { add_filter( 'protected_title_format', array( $this, 'protected_title_format' ) ); /** This filter is documented in wp-includes/post-template.php */ $title = apply_filters( 'the_title', $menu_item->title, $menu_item->ID ); $data['title']['rendered'] = $title; remove_filter( 'protected_title_format', array( $this, 'protected_title_format' ) ); } if ( rest_is_field_included( 'status', $fields ) ) { $data['status'] = $menu_item->post_status; } if ( rest_is_field_included( 'url', $fields ) ) { $data['url'] = $menu_item->url; } if ( rest_is_field_included( 'attr_title', $fields ) ) { // Same as post_excerpt. $data['attr_title'] = $menu_item->attr_title; } if ( rest_is_field_included( 'description', $fields ) ) { // Same as post_content. $data['description'] = $menu_item->description; } if ( rest_is_field_included( 'type', $fields ) ) { $data['type'] = $menu_item->type; } if ( rest_is_field_included( 'type_label', $fields ) ) { $data['type_label'] = $menu_item->type_label; } if ( rest_is_field_included( 'object', $fields ) ) { $data['object'] = $menu_item->object; } if ( rest_is_field_included( 'object_id', $fields ) ) { // It is stored as a string, but should be exposed as an integer. $data['object_id'] = absint( $menu_item->object_id ); } if ( rest_is_field_included( 'parent', $fields ) ) { // Same as post_parent, exposed as an integer. $data['parent'] = (int) $menu_item->menu_item_parent; } if ( rest_is_field_included( 'menu_order', $fields ) ) { // Same as post_parent, exposed as an integer. $data['menu_order'] = (int) $menu_item->menu_order; } if ( rest_is_field_included( 'target', $fields ) ) { $data['target'] = $menu_item->target; } if ( rest_is_field_included( 'classes', $fields ) ) { $data['classes'] = (array) $menu_item->classes; } if ( rest_is_field_included( 'xfn', $fields ) ) { $data['xfn'] = array_map( 'sanitize_html_class', explode( ' ', $menu_item->xfn ) ); } if ( rest_is_field_included( 'invalid', $fields ) ) { $data['invalid'] = (bool) $menu_item->_invalid; } if ( rest_is_field_included( 'meta', $fields ) ) { $data['meta'] = $this->meta->get_value( $menu_item->ID, $request ); } $taxonomies = wp_list_filter( get_object_taxonomies( $this->post_type, 'objects' ), array( 'show_in_rest' => true ) ); foreach ( $taxonomies as $taxonomy ) { $base = ! empty( $taxonomy->rest_base ) ? $taxonomy->rest_base : $taxonomy->name; if ( rest_is_field_included( $base, $fields ) ) { $terms = get_the_terms( $item, $taxonomy->name ); if ( ! is_array( $terms ) ) { continue; } $term_ids = $terms ? array_values( wp_list_pluck( $terms, 'term_id' ) ) : array(); if ( 'nav_menu' === $taxonomy->name ) { $data[ $base ] = $term_ids ? array_shift( $term_ids ) : 0; } else { $data[ $base ] = $term_ids; } } } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->add_additional_fields_to_object( $data, $request ); $data = $this->filter_response_by_context( $data, $context ); // Wrap the data in a response object. $response = rest_ensure_response( $data ); $links = $this->prepare_links( $item ); $response->add_links( $links ); if ( ! empty( $links['self']['href'] ) ) { $actions = $this->get_available_actions( $item, $request ); $self = $links['self']['href']; foreach ( $actions as $rel ) { $response->add_link( $rel, $self ); } } /** * Filters the menu item data for a REST API response. * * @since 5.9.0 * * @param WP_REST_Response $response The response object. * @param object $menu_item Menu item setup by {@see wp_setup_nav_menu_item()}. * @param WP_REST_Request $request Request object. */ return apply_filters( 'rest_prepare_nav_menu_item', $response, $menu_item, $request ); } /** * Prepares links for the request. * * @since 5.9.0 * * @param WP_Post $post Post object. * @return array Links for the given post. */ protected function prepare_links( $post ) { $links = parent::prepare_links( $post ); $menu_item = $this->get_nav_menu_item( $post->ID ); if ( empty( $menu_item->object_id ) ) { return $links; } $path = ''; $type = ''; $key = $menu_item->type; if ( 'post_type' === $menu_item->type ) { $path = rest_get_route_for_post( $menu_item->object_id ); $type = get_post_type( $menu_item->object_id ); } elseif ( 'taxonomy' === $menu_item->type ) { $path = rest_get_route_for_term( $menu_item->object_id ); $type = get_term_field( 'taxonomy', $menu_item->object_id ); } if ( $path && $type ) { $links['https://api.w.org/menu-item-object'][] = array( 'href' => rest_url( $path ), $key => $type, 'embeddable' => true, ); } return $links; } /** * Retrieve Link Description Objects that should be added to the Schema for the posts collection. * * @since 5.9.0 * * @return array */ protected function get_schema_links() { $links = parent::get_schema_links(); $href = rest_url( "{$this->namespace}/{$this->rest_base}/{id}" ); $links[] = array( 'rel' => 'https://api.w.org/menu-item-object', 'title' => __( 'Get linked object.' ), 'href' => $href, 'targetSchema' => array( 'type' => 'object', 'properties' => array( 'object' => array( 'type' => 'integer', ), ), ), ); return $links; } /** * Retrieves the term's schema, conforming to JSON Schema. * * @since 5.9.0 * * @return array Item schema data. */ public function get_item_schema() { $schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => $this->post_type, 'type' => 'object', ); $schema['properties']['title'] = array( 'description' => __( 'The title for the object.' ), 'type' => array( 'string', 'object' ), 'context' => array( 'view', 'edit', 'embed' ), 'properties' => array( 'raw' => array( 'description' => __( 'Title for the object, as it exists in the database.' ), 'type' => 'string', 'context' => array( 'edit' ), ), 'rendered' => array( 'description' => __( 'HTML title for the object, transformed for display.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ), ), ); $schema['properties']['id'] = array( 'description' => __( 'Unique identifier for the object.' ), 'type' => 'integer', 'default' => 0, 'minimum' => 0, 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ); $schema['properties']['type_label'] = array( 'description' => __( 'Name of type.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'readonly' => true, ); $schema['properties']['type'] = array( 'description' => __( 'The family of objects originally represented, such as "post_type" or "taxonomy".' ), 'type' => 'string', 'enum' => array( 'taxonomy', 'post_type', 'post_type_archive', 'custom' ), 'context' => array( 'view', 'edit', 'embed' ), 'default' => 'custom', ); $schema['properties']['status'] = array( 'description' => __( 'A named status for the object.' ), 'type' => 'string', 'enum' => array_keys( get_post_stati( array( 'internal' => false ) ) ), 'default' => 'publish', 'context' => array( 'view', 'edit', 'embed' ), ); $schema['properties']['parent'] = array( 'description' => __( 'The ID for the parent of the object.' ), 'type' => 'integer', 'minimum' => 0, 'default' => 0, 'context' => array( 'view', 'edit', 'embed' ), ); $schema['properties']['attr_title'] = array( 'description' => __( 'Text for the title attribute of the link element for this menu item.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'arg_options' => array( 'sanitize_callback' => 'sanitize_text_field', ), ); $schema['properties']['classes'] = array( 'description' => __( 'Class names for the link element of this menu item.' ), 'type' => 'array', 'items' => array( 'type' => 'string', ), 'context' => array( 'view', 'edit', 'embed' ), 'arg_options' => array( 'sanitize_callback' => function ( $value ) { return array_map( 'sanitize_html_class', wp_parse_list( $value ) ); }, ), ); $schema['properties']['description'] = array( 'description' => __( 'The description of this menu item.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'arg_options' => array( 'sanitize_callback' => 'sanitize_text_field', ), ); $schema['properties']['menu_order'] = array( 'description' => __( 'The DB ID of the nav_menu_item that is this item\'s menu parent, if any, otherwise 0.' ), 'context' => array( 'view', 'edit', 'embed' ), 'type' => 'integer', 'minimum' => 1, 'default' => 1, ); $schema['properties']['object'] = array( 'description' => __( 'The type of object originally represented, such as "category", "post", or "attachment".' ), 'context' => array( 'view', 'edit', 'embed' ), 'type' => 'string', 'arg_options' => array( 'sanitize_callback' => 'sanitize_key', ), ); $schema['properties']['object_id'] = array( 'description' => __( 'The database ID of the original object this menu item represents, for example the ID for posts or the term_id for categories.' ), 'context' => array( 'view', 'edit', 'embed' ), 'type' => 'integer', 'minimum' => 0, 'default' => 0, ); $schema['properties']['target'] = array( 'description' => __( 'The target attribute of the link element for this menu item.' ), 'type' => 'string', 'context' => array( 'view', 'edit', 'embed' ), 'enum' => array( '_blank', '', ), ); $schema['properties']['type_label'] = array( 'description' => __( 'The singular label used to describe this type of menu item.' ), 'context' => array( 'view', 'edit', 'embed' ), 'type' => 'string', 'readonly' => true, ); $schema['properties']['url'] = array( 'description' => __( 'The URL to which this menu item points.' ), 'type' => 'string', 'format' => 'uri', 'context' => array( 'view', 'edit', 'embed' ), 'arg_options' => array( 'validate_callback' => static function ( $url ) { if ( '' === $url ) { return true; } if ( esc_url_raw( $url ) ) { return true; } return new WP_Error( 'rest_invalid_url', __( 'Invalid URL.' ) ); }, ), ); $schema['properties']['xfn'] = array( 'description' => __( 'The XFN relationship expressed in the link of this menu item.' ), 'type' => 'array', 'items' => array( 'type' => 'string', ), 'context' => array( 'view', 'edit', 'embed' ), 'arg_options' => array( 'sanitize_callback' => function ( $value ) { return array_map( 'sanitize_html_class', wp_parse_list( $value ) ); }, ), ); $schema['properties']['invalid'] = array( 'description' => __( 'Whether the menu item represents an object that no longer exists.' ), 'context' => array( 'view', 'edit', 'embed' ), 'type' => 'boolean', 'readonly' => true, ); $taxonomies = wp_list_filter( get_object_taxonomies( $this->post_type, 'objects' ), array( 'show_in_rest' => true ) ); foreach ( $taxonomies as $taxonomy ) { $base = ! empty( $taxonomy->rest_base ) ? $taxonomy->rest_base : $taxonomy->name; $schema['properties'][ $base ] = array( /* translators: %s: taxonomy name */ 'description' => sprintf( __( 'The terms assigned to the object in the %s taxonomy.' ), $taxonomy->name ), 'type' => 'array', 'items' => array( 'type' => 'integer', ), 'context' => array( 'view', 'edit' ), ); if ( 'nav_menu' === $taxonomy->name ) { $schema['properties'][ $base ]['type'] = 'integer'; unset( $schema['properties'][ $base ]['items'] ); } } $schema['properties']['meta'] = $this->meta->get_field_schema(); $schema_links = $this->get_schema_links(); if ( $schema_links ) { $schema['links'] = $schema_links; } return $this->add_additional_fields_schema( $schema ); } /** * Retrieves the query params for the posts collection. * * @since 5.9.0 * * @return array Collection parameters. */ public function get_collection_params() { $query_params = parent::get_collection_params(); $query_params['menu_order'] = array( 'description' => __( 'Limit result set to posts with a specific menu_order value.' ), 'type' => 'integer', ); $query_params['order'] = array( 'description' => __( 'Order sort attribute ascending or descending.' ), 'type' => 'string', 'default' => 'asc', 'enum' => array( 'asc', 'desc' ), ); $query_params['orderby'] = array( 'description' => __( 'Sort collection by object attribute.' ), 'type' => 'string', 'default' => 'menu_order', 'enum' => array( 'author', 'date', 'id', 'include', 'modified', 'parent', 'relevance', 'slug', 'include_slugs', 'title', 'menu_order', ), ); // Change default to 100 items. $query_params['per_page']['default'] = 100; return $query_params; } /** * Determines the allowed query_vars for a get_items() response and prepares * them for WP_Query. * * @since 5.9.0 * * @param array $prepared_args Optional. Prepared WP_Query arguments. Default empty array. * @param WP_REST_Request $request Optional. Full details about the request. * @return array Items query arguments. */ protected function prepare_items_query( $prepared_args = array(), $request = null ) { $query_args = parent::prepare_items_query( $prepared_args, $request ); // Map to proper WP_Query orderby param. if ( isset( $query_args['orderby'], $request['orderby'] ) ) { $orderby_mappings = array( 'id' => 'ID', 'include' => 'post__in', 'slug' => 'post_name', 'include_slugs' => 'post_name__in', 'menu_order' => 'menu_order', ); if ( isset( $orderby_mappings[ $request['orderby'] ] ) ) { $query_args['orderby'] = $orderby_mappings[ $request['orderby'] ]; } } return $query_args; } /** * Gets the id of the menu that the given menu item belongs to. * * @since 5.9.0 * * @param int $menu_item_id Menu item id. * @return int */ protected function get_menu_id( $menu_item_id ) { $menu_ids = wp_get_post_terms( $menu_item_id, 'nav_menu', array( 'fields' => 'ids' ) ); $menu_id = 0; if ( $menu_ids && ! is_wp_error( $menu_ids ) ) { $menu_id = array_shift( $menu_ids ); } return $menu_id; } } PK�����j l\[/bQ��bQ��;��rest-api/endpoints/class-wp-rest-block-types-controller.phpnu�[��������<?php /** * REST API: WP_REST_Block_Types_Controller class * * @package WordPress * @subpackage REST_API * @since 5.5.0 */ /** * Core class used to access block types via the REST API. * * @since 5.5.0 * * @see WP_REST_Controller */ class WP_REST_Block_Types_Controller extends WP_REST_Controller { /** * Instance of WP_Block_Type_Registry. * * @since 5.5.0 * @var WP_Block_Type_Registry */ protected $block_registry; /** * Instance of WP_Block_Styles_Registry. * * @since 5.5.0 * @var WP_Block_Styles_Registry */ protected $style_registry; /** * Constructor. * * @since 5.5.0 */ public function __construct() { $this->namespace = 'wp/v2'; $this->rest_base = 'block-types'; $this->block_registry = WP_Block_Type_Registry::get_instance(); $this->style_registry = WP_Block_Styles_Registry::get_instance(); } /** * Registers the routes for block types. * * @since 5.5.0 * * @see register_rest_route() */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P<namespace>[a-zA-Z0-9_-]+)', array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P<namespace>[a-zA-Z0-9_-]+)/(?P<name>[a-zA-Z0-9_-]+)', array( 'args' => array( 'name' => array( 'description' => __( 'Block name.' ), 'type' => 'string', ), 'namespace' => array( 'description' => __( 'Block namespace.' ), 'type' => 'string', ), ), array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), 'args' => array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Checks whether a given request has permission to read post block types. * * @since 5.5.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_items_permissions_check( $request ) { return $this->check_read_permission(); } /** * Retrieves all post block types, depending on user context. * * @since 5.5.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_items( $request ) { $data = array(); $block_types = $this->block_registry->get_all_registered(); // Retrieve the list of registered collection query parameters. $registered = $this->get_collection_params(); $namespace = ''; if ( isset( $registered['namespace'] ) && ! empty( $request['namespace'] ) ) { $namespace = $request['namespace']; } foreach ( $block_types as $slug => $obj ) { if ( $namespace ) { list ( $block_namespace ) = explode( '/', $obj->name ); if ( $namespace !== $block_namespace ) { continue; } } $block_type = $this->prepare_item_for_response( $obj, $request ); $data[] = $this->prepare_response_for_collection( $block_type ); } return rest_ensure_response( $data ); } /** * Checks if a given request has access to read a block type. * * @since 5.5.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access for the item, WP_Error object otherwise. */ public function get_item_permissions_check( $request ) { $check = $this->check_read_permission(); if ( is_wp_error( $check ) ) { return $check; } $block_name = sprintf( '%s/%s', $request['namespace'], $request['name'] ); $block_type = $this->get_block( $block_name ); if ( is_wp_error( $block_type ) ) { return $block_type; } return true; } /** * Checks whether a given block type should be visible. * * @since 5.5.0 * * @return true|WP_Error True if the block type is visible, WP_Error otherwise. */ protected function check_read_permission() { if ( current_user_can( 'edit_posts' ) ) { return true; } foreach ( get_post_types( array( 'show_in_rest' => true ), 'objects' ) as $post_type ) { if ( current_user_can( $post_type->cap->edit_posts ) ) { return true; } } return new WP_Error( 'rest_block_type_cannot_view', __( 'Sorry, you are not allowed to manage block types.' ), array( 'status' => rest_authorization_required_code() ) ); } /** * Get the block, if the name is valid. * * @since 5.5.0 * * @param string $name Block name. * @return WP_Block_Type|WP_Error Block type object if name is valid, WP_Error otherwise. */ protected function get_block( $name ) { $block_type = $this->block_registry->get_registered( $name ); if ( empty( $block_type ) ) { return new WP_Error( 'rest_block_type_invalid', __( 'Invalid block type.' ), array( 'status' => 404 ) ); } return $block_type; } /** * Retrieves a specific block type. * * @since 5.5.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_item( $request ) { $block_name = sprintf( '%s/%s', $request['namespace'], $request['name'] ); $block_type = $this->get_block( $block_name ); if ( is_wp_error( $block_type ) ) { return $block_type; } $data = $this->prepare_item_for_response( $block_type, $request ); return rest_ensure_response( $data ); } /** * Prepares a block type object for serialization. * * @since 5.5.0 * @since 5.9.0 Renamed `$block_type` to `$item` to match parent class for PHP 8 named parameter support. * * @param WP_Block_Type $item Block type data. * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response Block type data. */ public function prepare_item_for_response( $item, $request ) { // Restores the more descriptive, specific name for use within this method. $block_type = $item; $fields = $this->get_fields_for_response( $request ); $data = array(); if ( rest_is_field_included( 'attributes', $fields ) ) { $data['attributes'] = $block_type->get_attributes(); } if ( rest_is_field_included( 'is_dynamic', $fields ) ) { $data['is_dynamic'] = $block_type->is_dynamic(); } $schema = $this->get_item_schema(); $extra_fields = array( 'api_version', 'name', 'title', 'description', 'icon', 'category', 'keywords', 'parent', 'provides_context', 'uses_context', 'supports', 'styles', 'textdomain', 'example', 'editor_script', 'script', 'view_script', 'editor_style', 'style', 'variations', ); foreach ( $extra_fields as $extra_field ) { if ( rest_is_field_included( $extra_field, $fields ) ) { if ( isset( $block_type->$extra_field ) ) { $field = $block_type->$extra_field; } elseif ( array_key_exists( 'default', $schema['properties'][ $extra_field ] ) ) { $field = $schema['properties'][ $extra_field ]['default']; } else { $field = ''; } $data[ $extra_field ] = rest_sanitize_value_from_schema( $field, $schema['properties'][ $extra_field ] ); } } if ( rest_is_field_included( 'styles', $fields ) ) { $styles = $this->style_registry->get_registered_styles_for_block( $block_type->name ); $styles = array_values( $styles ); $data['styles'] = wp_parse_args( $styles, $data['styles'] ); $data['styles'] = array_filter( $data['styles'] ); } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->add_additional_fields_to_object( $data, $request ); $data = $this->filter_response_by_context( $data, $context ); $response = rest_ensure_response( $data ); $response->add_links( $this->prepare_links( $block_type ) ); /** * Filters a block type returned from the REST API. * * Allows modification of the block type data right before it is returned. * * @since 5.5.0 * * @param WP_REST_Response $response The response object. * @param WP_Block_Type $block_type The original block type object. * @param WP_REST_Request $request Request used to generate the response. */ return apply_filters( 'rest_prepare_block_type', $response, $block_type, $request ); } /** * Prepares links for the request. * * @since 5.5.0 * * @param WP_Block_Type $block_type Block type data. * @return array Links for the given block type. */ protected function prepare_links( $block_type ) { list( $namespace ) = explode( '/', $block_type->name ); $links = array( 'collection' => array( 'href' => rest_url( sprintf( '%s/%s', $this->namespace, $this->rest_base ) ), ), 'self' => array( 'href' => rest_url( sprintf( '%s/%s/%s', $this->namespace, $this->rest_base, $block_type->name ) ), ), 'up' => array( 'href' => rest_url( sprintf( '%s/%s/%s', $this->namespace, $this->rest_base, $namespace ) ), ), ); if ( $block_type->is_dynamic() ) { $links['https://api.w.org/render-block'] = array( 'href' => add_query_arg( 'context', 'edit', rest_url( sprintf( '%s/%s/%s', 'wp/v2', 'block-renderer', $block_type->name ) ) ), ); } return $links; } /** * Retrieves the block type' schema, conforming to JSON Schema. * * @since 5.5.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } // rest_validate_value_from_schema doesn't understand $refs, pull out reused definitions for readability. $inner_blocks_definition = array( 'description' => __( 'The list of inner blocks used in the example.' ), 'type' => 'array', 'items' => array( 'type' => 'object', 'properties' => array( 'name' => array( 'description' => __( 'The name of the inner block.' ), 'type' => 'string', ), 'attributes' => array( 'description' => __( 'The attributes of the inner block.' ), 'type' => 'object', ), 'innerBlocks' => array( 'description' => __( "A list of the inner block's own inner blocks. This is a recursive definition following the parent innerBlocks schema." ), 'type' => 'array', ), ), ), ); $example_definition = array( 'description' => __( 'Block example.' ), 'type' => array( 'object', 'null' ), 'default' => null, 'properties' => array( 'attributes' => array( 'description' => __( 'The attributes used in the example.' ), 'type' => 'object', ), 'innerBlocks' => $inner_blocks_definition, ), 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ); $keywords_definition = array( 'description' => __( 'Block keywords.' ), 'type' => 'array', 'items' => array( 'type' => 'string', ), 'default' => array(), 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ); $icon_definition = array( 'description' => __( 'Icon of block type.' ), 'type' => array( 'string', 'null' ), 'default' => null, 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ); $category_definition = array( 'description' => __( 'Block category.' ), 'type' => array( 'string', 'null' ), 'default' => null, 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ); $schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'block-type', 'type' => 'object', 'properties' => array( 'api_version' => array( 'description' => __( 'Version of block API.' ), 'type' => 'integer', 'default' => 1, 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'title' => array( 'description' => __( 'Title of block type.' ), 'type' => 'string', 'default' => '', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'name' => array( 'description' => __( 'Unique name identifying the block type.' ), 'type' => 'string', 'default' => '', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'description' => array( 'description' => __( 'Description of block type.' ), 'type' => 'string', 'default' => '', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'icon' => $icon_definition, 'attributes' => array( 'description' => __( 'Block attributes.' ), 'type' => array( 'object', 'null' ), 'properties' => array(), 'default' => null, 'additionalProperties' => array( 'type' => 'object', ), 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'provides_context' => array( 'description' => __( 'Context provided by blocks of this type.' ), 'type' => 'object', 'properties' => array(), 'additionalProperties' => array( 'type' => 'string', ), 'default' => array(), 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'uses_context' => array( 'description' => __( 'Context values inherited by blocks of this type.' ), 'type' => 'array', 'default' => array(), 'items' => array( 'type' => 'string', ), 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'supports' => array( 'description' => __( 'Block supports.' ), 'type' => 'object', 'default' => array(), 'properties' => array(), 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'category' => $category_definition, 'is_dynamic' => array( 'description' => __( 'Is the block dynamically rendered.' ), 'type' => 'boolean', 'default' => false, 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'editor_script' => array( 'description' => __( 'Editor script handle.' ), 'type' => array( 'string', 'null' ), 'default' => null, 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'script' => array( 'description' => __( 'Public facing and editor script handle.' ), 'type' => array( 'string', 'null' ), 'default' => null, 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'view_script' => array( 'description' => __( 'Public facing script handle.' ), 'type' => array( 'string', 'null' ), 'default' => null, 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'editor_style' => array( 'description' => __( 'Editor style handle.' ), 'type' => array( 'string', 'null' ), 'default' => null, 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'style' => array( 'description' => __( 'Public facing and editor style handle.' ), 'type' => array( 'string', 'null' ), 'default' => null, 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'styles' => array( 'description' => __( 'Block style variations.' ), 'type' => 'array', 'items' => array( 'type' => 'object', 'properties' => array( 'name' => array( 'description' => __( 'Unique name identifying the style.' ), 'type' => 'string', 'required' => true, ), 'label' => array( 'description' => __( 'The human-readable label for the style.' ), 'type' => 'string', ), 'inline_style' => array( 'description' => __( 'Inline CSS code that registers the CSS class required for the style.' ), 'type' => 'string', ), 'style_handle' => array( 'description' => __( 'Contains the handle that defines the block style.' ), 'type' => 'string', ), ), ), 'default' => array(), 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'variations' => array( 'description' => __( 'Block variations.' ), 'type' => 'array', 'items' => array( 'type' => 'object', 'properties' => array( 'name' => array( 'description' => __( 'The unique and machine-readable name.' ), 'type' => 'string', 'required' => true, ), 'title' => array( 'description' => __( 'A human-readable variation title.' ), 'type' => 'string', 'required' => true, ), 'description' => array( 'description' => __( 'A detailed variation description.' ), 'type' => 'string', 'required' => false, ), 'category' => $category_definition, 'icon' => $icon_definition, 'isDefault' => array( 'description' => __( 'Indicates whether the current variation is the default one.' ), 'type' => 'boolean', 'required' => false, 'default' => false, ), 'attributes' => array( 'description' => __( 'The initial values for attributes.' ), 'type' => 'object', ), 'innerBlocks' => $inner_blocks_definition, 'example' => $example_definition, 'scope' => array( 'description' => __( 'The list of scopes where the variation is applicable. When not provided, it assumes all available scopes.' ), 'type' => array( 'array', 'null' ), 'default' => null, 'items' => array( 'type' => 'string', 'enum' => array( 'block', 'inserter', 'transform' ), ), 'readonly' => true, ), 'keywords' => $keywords_definition, ), ), 'readonly' => true, 'context' => array( 'embed', 'view', 'edit' ), 'default' => null, ), 'textdomain' => array( 'description' => __( 'Public text domain.' ), 'type' => array( 'string', 'null' ), 'default' => null, 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'parent' => array( 'description' => __( 'Parent blocks.' ), 'type' => array( 'array', 'null' ), 'items' => array( 'type' => 'string', ), 'default' => null, 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'keywords' => $keywords_definition, 'example' => $example_definition, ), ); $this->schema = $schema; return $this->add_additional_fields_schema( $this->schema ); } /** * Retrieves the query params for collections. * * @since 5.5.0 * * @return array Collection parameters. */ public function get_collection_params() { return array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), 'namespace' => array( 'description' => __( 'Block namespace.' ), 'type' => 'string', ), ); } } PK�����j l\�sN(��N(��=��rest-api/endpoints/class-wp-rest-post-statuses-controller.phpnu�[��������<?php /** * REST API: WP_REST_Post_Statuses_Controller class * * @package WordPress * @subpackage REST_API * @since 4.7.0 */ /** * Core class used to access post statuses via the REST API. * * @since 4.7.0 * * @see WP_REST_Controller */ class WP_REST_Post_Statuses_Controller extends WP_REST_Controller { /** * Constructor. * * @since 4.7.0 */ public function __construct() { $this->namespace = 'wp/v2'; $this->rest_base = 'statuses'; } /** * Registers the routes for post statuses. * * @since 4.7.0 * * @see register_rest_route() */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/(?P<status>[\w-]+)', array( 'args' => array( 'status' => array( 'description' => __( 'An alphanumeric identifier for the status.' ), 'type' => 'string', ), ), array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), 'args' => array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Checks whether a given request has permission to read post statuses. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access, WP_Error object otherwise. */ public function get_items_permissions_check( $request ) { if ( 'edit' === $request['context'] ) { $types = get_post_types( array( 'show_in_rest' => true ), 'objects' ); foreach ( $types as $type ) { if ( current_user_can( $type->cap->edit_posts ) ) { return true; } } return new WP_Error( 'rest_cannot_view', __( 'Sorry, you are not allowed to manage post statuses.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Retrieves all post statuses, depending on user context. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_items( $request ) { $data = array(); $statuses = get_post_stati( array( 'internal' => false ), 'object' ); $statuses['trash'] = get_post_status_object( 'trash' ); foreach ( $statuses as $slug => $obj ) { $ret = $this->check_read_permission( $obj ); if ( ! $ret ) { continue; } $status = $this->prepare_item_for_response( $obj, $request ); $data[ $obj->name ] = $this->prepare_response_for_collection( $status ); } return rest_ensure_response( $data ); } /** * Checks if a given request has access to read a post status. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return true|WP_Error True if the request has read access for the item, WP_Error object otherwise. */ public function get_item_permissions_check( $request ) { $status = get_post_status_object( $request['status'] ); if ( empty( $status ) ) { return new WP_Error( 'rest_status_invalid', __( 'Invalid status.' ), array( 'status' => 404 ) ); } $check = $this->check_read_permission( $status ); if ( ! $check ) { return new WP_Error( 'rest_cannot_read_status', __( 'Cannot view status.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Checks whether a given post status should be visible. * * @since 4.7.0 * * @param object $status Post status. * @return bool True if the post status is visible, otherwise false. */ protected function check_read_permission( $status ) { if ( true === $status->public ) { return true; } if ( false === $status->internal || 'trash' === $status->name ) { $types = get_post_types( array( 'show_in_rest' => true ), 'objects' ); foreach ( $types as $type ) { if ( current_user_can( $type->cap->edit_posts ) ) { return true; } } } return false; } /** * Retrieves a specific post status. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response|WP_Error Response object on success, or WP_Error object on failure. */ public function get_item( $request ) { $obj = get_post_status_object( $request['status'] ); if ( empty( $obj ) ) { return new WP_Error( 'rest_status_invalid', __( 'Invalid status.' ), array( 'status' => 404 ) ); } $data = $this->prepare_item_for_response( $obj, $request ); return rest_ensure_response( $data ); } /** * Prepares a post status object for serialization. * * @since 4.7.0 * @since 5.9.0 Renamed `$status` to `$item` to match parent class for PHP 8 named parameter support. * * @param stdClass $item Post status data. * @param WP_REST_Request $request Full details about the request. * @return WP_REST_Response Post status data. */ public function prepare_item_for_response( $item, $request ) { // Restores the more descriptive, specific name for use within this method. $status = $item; $fields = $this->get_fields_for_response( $request ); $data = array(); if ( in_array( 'name', $fields, true ) ) { $data['name'] = $status->label; } if ( in_array( 'private', $fields, true ) ) { $data['private'] = (bool) $status->private; } if ( in_array( 'protected', $fields, true ) ) { $data['protected'] = (bool) $status->protected; } if ( in_array( 'public', $fields, true ) ) { $data['public'] = (bool) $status->public; } if ( in_array( 'queryable', $fields, true ) ) { $data['queryable'] = (bool) $status->publicly_queryable; } if ( in_array( 'show_in_list', $fields, true ) ) { $data['show_in_list'] = (bool) $status->show_in_admin_all_list; } if ( in_array( 'slug', $fields, true ) ) { $data['slug'] = $status->name; } if ( in_array( 'date_floating', $fields, true ) ) { $data['date_floating'] = $status->date_floating; } $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->add_additional_fields_to_object( $data, $request ); $data = $this->filter_response_by_context( $data, $context ); $response = rest_ensure_response( $data ); $rest_url = rest_url( rest_get_route_for_post_type_items( 'post' ) ); if ( 'publish' === $status->name ) { $response->add_link( 'archives', $rest_url ); } else { $response->add_link( 'archives', add_query_arg( 'status', $status->name, $rest_url ) ); } /** * Filters a post status returned from the REST API. * * Allows modification of the status data right before it is returned. * * @since 4.7.0 * * @param WP_REST_Response $response The response object. * @param object $status The original post status object. * @param WP_REST_Request $request Request used to generate the response. */ return apply_filters( 'rest_prepare_status', $response, $status, $request ); } /** * Retrieves the post status' schema, conforming to JSON Schema. * * @since 4.7.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'status', 'type' => 'object', 'properties' => array( 'name' => array( 'description' => __( 'The title for the status.' ), 'type' => 'string', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'private' => array( 'description' => __( 'Whether posts with this status should be private.' ), 'type' => 'boolean', 'context' => array( 'edit' ), 'readonly' => true, ), 'protected' => array( 'description' => __( 'Whether posts with this status should be protected.' ), 'type' => 'boolean', 'context' => array( 'edit' ), 'readonly' => true, ), 'public' => array( 'description' => __( 'Whether posts of this status should be shown in the front end of the site.' ), 'type' => 'boolean', 'context' => array( 'view', 'edit' ), 'readonly' => true, ), 'queryable' => array( 'description' => __( 'Whether posts with this status should be publicly-queryable.' ), 'type' => 'boolean', 'context' => array( 'view', 'edit' ), 'readonly' => true, ), 'show_in_list' => array( 'description' => __( 'Whether to include posts in the edit listing for their post type.' ), 'type' => 'boolean', 'context' => array( 'edit' ), 'readonly' => true, ), 'slug' => array( 'description' => __( 'An alphanumeric identifier for the status.' ), 'type' => 'string', 'context' => array( 'embed', 'view', 'edit' ), 'readonly' => true, ), 'date_floating' => array( 'description' => __( 'Whether posts of this status may have floating published dates.' ), 'type' => 'boolean', 'context' => array( 'view', 'edit' ), 'readonly' => true, ), ), ); $this->schema = $schema; return $this->add_additional_fields_schema( $this->schema ); } /** * Retrieves the query params for collections. * * @since 4.7.0 * * @return array Collection parameters. */ public function get_collection_params() { return array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ); } } PK�����j l\#gӠ����@��rest-api/endpoints/class-wp-rest-edit-site-export-controller.phpnu�[��������<?php /** * REST API: WP_REST_Edit_Site_Export_Controller class * * @package WordPress * @subpackage REST_API */ /** * Controller which provides REST endpoint for exporting current templates * and template parts. * * @since 5.9.0 * * @see WP_REST_Controller */ class WP_REST_Edit_Site_Export_Controller extends WP_REST_Controller { /** * Constructor. * * @since 5.9.0 */ public function __construct() { $this->namespace = 'wp-block-editor/v1'; $this->rest_base = 'export'; } /** * Registers the site export route. * * @since 5.9.0 */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'export' ), 'permission_callback' => array( $this, 'permissions_check' ), ), ) ); } /** * Checks whether a given request has permission to export. * * @since 5.9.0 * * @return WP_Error|true True if the request has access, or WP_Error object. */ public function permissions_check() { if ( ! current_user_can( 'edit_theme_options' ) ) { return new WP_Error( 'rest_cannot_export_templates', __( 'Sorry, you are not allowed to export templates and template parts.' ), array( 'status' => rest_authorization_required_code() ) ); } return true; } /** * Output a ZIP file with an export of the current templates * and template parts from the site editor, and close the connection. * * @since 5.9.0 * * @return WP_Error|void */ public function export() { // Generate the export file. $filename = wp_generate_block_templates_export_file(); if ( is_wp_error( $filename ) ) { $filename->add_data( array( 'status' => 500 ) ); return $filename; } header( 'Content-Type: application/zip' ); header( 'Content-Disposition: attachment; filename=edit-site-export.zip' ); header( 'Content-Length: ' . filesize( $filename ) ); flush(); readfile( $filename ); unlink( $filename ); exit; } } PK�����j l\m.p(��(��8��rest-api/endpoints/class-wp-rest-settings-controller.phpnu�[��������<?php /** * REST API: WP_REST_Settings_Controller class * * @package WordPress * @subpackage REST_API * @since 4.7.0 */ /** * Core class used to manage a site's settings via the REST API. * * @since 4.7.0 * * @see WP_REST_Controller */ class WP_REST_Settings_Controller extends WP_REST_Controller { /** * Constructor. * * @since 4.7.0 */ public function __construct() { $this->namespace = 'wp/v2'; $this->rest_base = 'settings'; } /** * Registers the routes for the site's settings. * * @since 4.7.0 * * @see register_rest_route() */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_item' ), 'args' => array(), 'permission_callback' => array( $this, 'get_item_permissions_check' ), ), array( 'methods' => WP_REST_Server::EDITABLE, 'callback' => array( $this, 'update_item' ), 'args' => $this->get_endpoint_args_for_item_schema( WP_REST_Server::EDITABLE ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } /** * Checks if a given request has access to read and manage settings. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return bool True if the request has read access for the item, otherwise false. */ public function get_item_permissions_check( $request ) { return current_user_can( 'manage_options' ); } /** * Retrieves the settings. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return array|WP_Error Array on success, or WP_Error object on failure. */ public function get_item( $request ) { $options = $this->get_registered_options(); $response = array(); foreach ( $options as $name => $args ) { /** * Filters the value of a setting recognized by the REST API. * * Allow hijacking the setting value and overriding the built-in behavior by returning a * non-null value. The returned value will be presented as the setting value instead. * * @since 4.7.0 * * @param mixed $result Value to use for the requested setting. Can be a scalar * matching the registered schema for the setting, or null to * follow the default get_option() behavior. * @param string $name Setting name (as shown in REST API responses). * @param array $args Arguments passed to register_setting() for this setting. */ $response[ $name ] = apply_filters( 'rest_pre_get_setting', null, $name, $args ); if ( is_null( $response[ $name ] ) ) { // Default to a null value as "null" in the response means "not set". $response[ $name ] = get_option( $args['option_name'], $args['schema']['default'] ); } /* * Because get_option() is lossy, we have to * cast values to the type they are registered with. */ $response[ $name ] = $this->prepare_value( $response[ $name ], $args['schema'] ); } return $response; } /** * Prepares a value for output based off a schema array. * * @since 4.7.0 * * @param mixed $value Value to prepare. * @param array $schema Schema to match. * @return mixed The prepared value. */ protected function prepare_value( $value, $schema ) { /* * If the value is not valid by the schema, set the value to null. * Null values are specifically non-destructive, so this will not cause * overwriting the current invalid value to null. */ if ( is_wp_error( rest_validate_value_from_schema( $value, $schema ) ) ) { return null; } return rest_sanitize_value_from_schema( $value, $schema ); } /** * Updates settings for the settings object. * * @since 4.7.0 * * @param WP_REST_Request $request Full details about the request. * @return array|WP_Error Array on success, or error object on failure. */ public function update_item( $request ) { $options = $this->get_registered_options(); $params = $request->get_params(); foreach ( $options as $name => $args ) { if ( ! array_key_exists( $name, $params ) ) { continue; } /** * Filters whether to preempt a setting value update via the REST API. * * Allows hijacking the setting update logic and overriding the built-in behavior by * returning true. * * @since 4.7.0 * * @param bool $result Whether to override the default behavior for updating the * value of a setting. * @param string $name Setting name (as shown in REST API responses). * @param mixed $value Updated setting value. * @param array $args Arguments passed to register_setting() for this setting. */ $updated = apply_filters( 'rest_pre_update_setting', false, $name, $request[ $name ], $args ); if ( $updated ) { continue; } /* * A null value for an option would have the same effect as * deleting the option from the database, and relying on the * default value. */ if ( is_null( $request[ $name ] ) ) { /* * A null value is returned in the response for any option * that has a non-scalar value. * * To protect clients from accidentally including the null * values from a response object in a request, we do not allow * options with values that don't pass validation to be updated to null. * Without this added protection a client could mistakenly * delete all options that have invalid values from the * database. */ if ( is_wp_error( rest_validate_value_from_schema( get_option( $args['option_name'], false ), $args['schema'] ) ) ) { return new WP_Error( 'rest_invalid_stored_value', /* translators: %s: Property name. */ sprintf( __( 'The %s property has an invalid stored value, and cannot be updated to null.' ), $name ), array( 'status' => 500 ) ); } delete_option( $args['option_name'] ); } else { update_option( $args['option_name'], $request[ $name ] ); } } return $this->get_item( $request ); } /** * Retrieves all of the registered options for the Settings API. * * @since 4.7.0 * * @return array Array of registered options. */ protected function get_registered_options() { $rest_options = array(); foreach ( get_registered_settings() as $name => $args ) { if ( empty( $args['show_in_rest'] ) ) { continue; } $rest_args = array(); if ( is_array( $args['show_in_rest'] ) ) { $rest_args = $args['show_in_rest']; } $defaults = array( 'name' => ! empty( $rest_args['name'] ) ? $rest_args['name'] : $name, 'schema' => array(), ); $rest_args = array_merge( $defaults, $rest_args ); $default_schema = array( 'type' => empty( $args['type'] ) ? null : $args['type'], 'description' => empty( $args['description'] ) ? '' : $args['description'], 'default' => isset( $args['default'] ) ? $args['default'] : null, ); $rest_args['schema'] = array_merge( $default_schema, $rest_args['schema'] ); $rest_args['option_name'] = $name; // Skip over settings that don't have a defined type in the schema. if ( empty( $rest_args['schema']['type'] ) ) { continue; } /* * Allow the supported types for settings, as we don't want invalid types * to be updated with arbitrary values that we can't do decent sanitizing for. */ if ( ! in_array( $rest_args['schema']['type'], array( 'number', 'integer', 'string', 'boolean', 'array', 'object' ), true ) ) { continue; } $rest_args['schema'] = $this->set_additional_properties_to_false( $rest_args['schema'] ); $rest_options[ $rest_args['name'] ] = $rest_args; } return $rest_options; } /** * Retrieves the site setting schema, conforming to JSON Schema. * * @since 4.7.0 * * @return array Item schema data. */ public function get_item_schema() { if ( $this->schema ) { return $this->add_additional_fields_schema( $this->schema ); } $options = $this->get_registered_options(); $schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'settings', 'type' => 'object', 'properties' => array(), ); foreach ( $options as $option_name => $option ) { $schema['properties'][ $option_name ] = $option['schema']; $schema['properties'][ $option_name ]['arg_options'] = array( 'sanitize_callback' => array( $this, 'sanitize_callback' ), ); } $this->schema = $schema; return $this->add_additional_fields_schema( $this->schema ); } /** * Custom sanitize callback used for all options to allow the use of 'null'. * * By default, the schema of settings will throw an error if a value is set to * `null` as it's not a valid value for something like "type => string". We * provide a wrapper sanitizer to allow the use of `null`. * * @since 4.7.0 * * @param mixed $value The value for the setting. * @param WP_REST_Request $request The request object. * @param string $param The parameter name. * @return mixed|WP_Error */ public function sanitize_callback( $value, $request, $param ) { if ( is_null( $value ) ) { return $value; } return rest_parse_request_arg( $value, $request, $param ); } /** * Recursively add additionalProperties = false to all objects in a schema. * * This is need to restrict properties of objects in settings values to only * registered items, as the REST API will allow additional properties by * default. * * @since 4.9.0 * * @param array $schema The schema array. * @return array */ protected function set_additional_properties_to_false( $schema ) { switch ( $schema['type'] ) { case 'object': foreach ( $schema['properties'] as $key => $child_schema ) { $schema['properties'][ $key ] = $this->set_additional_properties_to_false( $child_schema ); } $schema['additionalProperties'] = false; break; case 'array': $schema['items'] = $this->set_additional_properties_to_false( $schema['items'] ); break; } return $schema; } } PK�����j l\`&����2��rest-api/fields/class-wp-rest-post-meta-fields.phpnu�[��������<?php /** * REST API: WP_REST_Post_Meta_Fields class * * @package WordPress * @subpackage REST_API * @since 4.7.0 */ /** * Core class used to manage meta values for posts via the REST API. * * @since 4.7.0 * * @see WP_REST_Meta_Fields */ class WP_REST_Post_Meta_Fields extends WP_REST_Meta_Fields { /** * Post type to register fields for. * * @since 4.7.0 * @var string */ protected $post_type; /** * Constructor. * * @since 4.7.0 * * @param string $post_type Post type to register fields for. */ public function __construct( $post_type ) { $this->post_type = $post_type; } /** * Retrieves the post meta type. * * @since 4.7.0 * * @return string The meta type. */ protected function get_meta_type() { return 'post'; } /** * Retrieves the post meta subtype. * * @since 4.9.8 * * @return string Subtype for the meta type, or empty string if no specific subtype. */ protected function get_meta_subtype() { return $this->post_type; } /** * Retrieves the type for register_rest_field(). * * @since 4.7.0 * * @see register_rest_field() * * @return string The REST field type. */ public function get_rest_field_type() { return $this->post_type; } } PK�����j l\sF��F��-��rest-api/fields/class-wp-rest-meta-fields.phpnu�[��������<?php /** * REST API: WP_REST_Meta_Fields class * * @package WordPress * @subpackage REST_API * @since 4.7.0 */ /** * Core class to manage meta values for an object via the REST API. * * @since 4.7.0 */ abstract class WP_REST_Meta_Fields { /** * Retrieves the object meta type. * * @since 4.7.0 * * @return string One of 'post', 'comment', 'term', 'user', or anything * else supported by `_get_meta_table()`. */ abstract protected function get_meta_type(); /** * Retrieves the object meta subtype. * * @since 4.9.8 * * @return string Subtype for the meta type, or empty string if no specific subtype. */ protected function get_meta_subtype() { return ''; } /** * Retrieves the object type for register_rest_field(). * * @since 4.7.0 * * @return string The REST field type, such as post type name, taxonomy name, 'comment', or `user`. */ abstract protected function get_rest_field_type(); /** * Registers the meta field. * * @since 4.7.0 * @deprecated 5.6.0 * * @see register_rest_field() */ public function register_field() { _deprecated_function( __METHOD__, '5.6.0' ); register_rest_field( $this->get_rest_field_type(), 'meta', array( 'get_callback' => array( $this, 'get_value' ), 'update_callback' => array( $this, 'update_value' ), 'schema' => $this->get_field_schema(), ) ); } /** * Retrieves the meta field value. * * @since 4.7.0 * * @param int $object_id Object ID to fetch meta for. * @param WP_REST_Request $request Full details about the request. * @return array Array containing the meta values keyed by name. */ public function get_value( $object_id, $request ) { $fields = $this->get_registered_fields(); $response = array(); foreach ( $fields as $meta_key => $args ) { $name = $args['name']; $all_values = get_metadata( $this->get_meta_type(), $object_id, $meta_key, false ); if ( $args['single'] ) { if ( empty( $all_values ) ) { $value = $args['schema']['default']; } else { $value = $all_values[0]; } $value = $this->prepare_value_for_response( $value, $request, $args ); } else { $value = array(); if ( is_array( $all_values ) ) { foreach ( $all_values as $row ) { $value[] = $this->prepare_value_for_response( $row, $request, $args ); } } } $response[ $name ] = $value; } return $response; } /** * Prepares a meta value for a response. * * This is required because some native types cannot be stored correctly * in the database, such as booleans. We need to cast back to the relevant * type before passing back to JSON. * * @since 4.7.0 * * @param mixed $value Meta value to prepare. * @param WP_REST_Request $request Current request object. * @param array $args Options for the field. * @return mixed Prepared value. */ protected function prepare_value_for_response( $value, $request, $args ) { if ( ! empty( $args['prepare_callback'] ) ) { $value = call_user_func( $args['prepare_callback'], $value, $request, $args ); } return $value; } /** * Updates meta values. * * @since 4.7.0 * * @param array $meta Array of meta parsed from the request. * @param int $object_id Object ID to fetch meta for. * @return null|WP_Error Null on success, WP_Error object on failure. */ public function update_value( $meta, $object_id ) { $fields = $this->get_registered_fields(); foreach ( $fields as $meta_key => $args ) { $name = $args['name']; if ( ! array_key_exists( $name, $meta ) ) { continue; } $value = $meta[ $name ]; /* * A null value means reset the field, which is essentially deleting it * from the database and then relying on the default value. * * Non-single meta can also be removed by passing an empty array. */ if ( is_null( $value ) || ( array() === $value && ! $args['single'] ) ) { $args = $this->get_registered_fields()[ $meta_key ]; if ( $args['single'] ) { $current = get_metadata( $this->get_meta_type(), $object_id, $meta_key, true ); if ( is_wp_error( rest_validate_value_from_schema( $current, $args['schema'] ) ) ) { return new WP_Error( 'rest_invalid_stored_value', /* translators: %s: Custom field key. */ sprintf( __( 'The %s property has an invalid stored value, and cannot be updated to null.' ), $name ), array( 'status' => 500 ) ); } } $result = $this->delete_meta_value( $object_id, $meta_key, $name ); if ( is_wp_error( $result ) ) { return $result; } continue; } if ( ! $args['single'] && is_array( $value ) && count( array_filter( $value, 'is_null' ) ) ) { return new WP_Error( 'rest_invalid_stored_value', /* translators: %s: Custom field key. */ sprintf( __( 'The %s property has an invalid stored value, and cannot be updated to null.' ), $name ), array( 'status' => 500 ) ); } $is_valid = rest_validate_value_from_schema( $value, $args['schema'], 'meta.' . $name ); if ( is_wp_error( $is_valid ) ) { $is_valid->add_data( array( 'status' => 400 ) ); return $is_valid; } $value = rest_sanitize_value_from_schema( $value, $args['schema'] ); if ( $args['single'] ) { $result = $this->update_meta_value( $object_id, $meta_key, $name, $value ); } else { $result = $this->update_multi_meta_value( $object_id, $meta_key, $name, $value ); } if ( is_wp_error( $result ) ) { return $result; } } return null; } /** * Deletes a meta value for an object. * * @since 4.7.0 * * @param int $object_id Object ID the field belongs to. * @param string $meta_key Key for the field. * @param string $name Name for the field that is exposed in the REST API. * @return true|WP_Error True if meta field is deleted, WP_Error otherwise. */ protected function delete_meta_value( $object_id, $meta_key, $name ) { $meta_type = $this->get_meta_type(); if ( ! current_user_can( "delete_{$meta_type}_meta", $object_id, $meta_key ) ) { return new WP_Error( 'rest_cannot_delete', /* translators: %s: Custom field key. */ sprintf( __( 'Sorry, you are not allowed to edit the %s custom field.' ), $name ), array( 'key' => $name, 'status' => rest_authorization_required_code(), ) ); } if ( null === get_metadata_raw( $meta_type, $object_id, wp_slash( $meta_key ) ) ) { return true; } if ( ! delete_metadata( $meta_type, $object_id, wp_slash( $meta_key ) ) ) { return new WP_Error( 'rest_meta_database_error', __( 'Could not delete meta value from database.' ), array( 'key' => $name, 'status' => WP_Http::INTERNAL_SERVER_ERROR, ) ); } return true; } /** * Updates multiple meta values for an object. * * Alters the list of values in the database to match the list of provided values. * * @since 4.7.0 * * @param int $object_id Object ID to update. * @param string $meta_key Key for the custom field. * @param string $name Name for the field that is exposed in the REST API. * @param array $values List of values to update to. * @return true|WP_Error True if meta fields are updated, WP_Error otherwise. */ protected function update_multi_meta_value( $object_id, $meta_key, $name, $values ) { $meta_type = $this->get_meta_type(); if ( ! current_user_can( "edit_{$meta_type}_meta", $object_id, $meta_key ) ) { return new WP_Error( 'rest_cannot_update', /* translators: %s: Custom field key. */ sprintf( __( 'Sorry, you are not allowed to edit the %s custom field.' ), $name ), array( 'key' => $name, 'status' => rest_authorization_required_code(), ) ); } $current_values = get_metadata( $meta_type, $object_id, $meta_key, false ); $subtype = get_object_subtype( $meta_type, $object_id ); if ( ! is_array( $current_values ) ) { $current_values = array(); } $to_remove = $current_values; $to_add = $values; foreach ( $to_add as $add_key => $value ) { $remove_keys = array_keys( array_filter( $current_values, function ( $stored_value ) use ( $meta_key, $subtype, $value ) { return $this->is_meta_value_same_as_stored_value( $meta_key, $subtype, $stored_value, $value ); } ) ); if ( empty( $remove_keys ) ) { continue; } if ( count( $remove_keys ) > 1 ) { // To remove, we need to remove first, then add, so don't touch. continue; } $remove_key = $remove_keys[0]; unset( $to_remove[ $remove_key ] ); unset( $to_add[ $add_key ] ); } /* * `delete_metadata` removes _all_ instances of the value, so only call once. Otherwise, * `delete_metadata` will return false for subsequent calls of the same value. * Use serialization to produce a predictable string that can be used by array_unique. */ $to_remove = array_map( 'maybe_unserialize', array_unique( array_map( 'maybe_serialize', $to_remove ) ) ); foreach ( $to_remove as $value ) { if ( ! delete_metadata( $meta_type, $object_id, wp_slash( $meta_key ), wp_slash( $value ) ) ) { return new WP_Error( 'rest_meta_database_error', /* translators: %s: Custom field key. */ sprintf( __( 'Could not update the meta value of %s in database.' ), $meta_key ), array( 'key' => $name, 'status' => WP_Http::INTERNAL_SERVER_ERROR, ) ); } } foreach ( $to_add as $value ) { if ( ! add_metadata( $meta_type, $object_id, wp_slash( $meta_key ), wp_slash( $value ) ) ) { return new WP_Error( 'rest_meta_database_error', /* translators: %s: Custom field key. */ sprintf( __( 'Could not update the meta value of %s in database.' ), $meta_key ), array( 'key' => $name, 'status' => WP_Http::INTERNAL_SERVER_ERROR, ) ); } } return true; } /** * Updates a meta value for an object. * * @since 4.7.0 * * @param int $object_id Object ID to update. * @param string $meta_key Key for the custom field. * @param string $name Name for the field that is exposed in the REST API. * @param mixed $value Updated value. * @return true|WP_Error True if the meta field was updated, WP_Error otherwise. */ protected function update_meta_value( $object_id, $meta_key, $name, $value ) { $meta_type = $this->get_meta_type(); if ( ! current_user_can( "edit_{$meta_type}_meta", $object_id, $meta_key ) ) { return new WP_Error( 'rest_cannot_update', /* translators: %s: Custom field key. */ sprintf( __( 'Sorry, you are not allowed to edit the %s custom field.' ), $name ), array( 'key' => $name, 'status' => rest_authorization_required_code(), ) ); } // Do the exact same check for a duplicate value as in update_metadata() to avoid update_metadata() returning false. $old_value = get_metadata( $meta_type, $object_id, $meta_key ); $subtype = get_object_subtype( $meta_type, $object_id ); if ( is_array( $old_value ) && 1 === count( $old_value ) && $this->is_meta_value_same_as_stored_value( $meta_key, $subtype, $old_value[0], $value ) ) { return true; } if ( ! update_metadata( $meta_type, $object_id, wp_slash( $meta_key ), wp_slash( $value ) ) ) { return new WP_Error( 'rest_meta_database_error', /* translators: %s: Custom field key. */ sprintf( __( 'Could not update the meta value of %s in database.' ), $meta_key ), array( 'key' => $name, 'status' => WP_Http::INTERNAL_SERVER_ERROR, ) ); } return true; } /** * Checks if the user provided value is equivalent to a stored value for the given meta key. * * @since 5.5.0 * * @param string $meta_key The meta key being checked. * @param string $subtype The object subtype. * @param mixed $stored_value The currently stored value retrieved from get_metadata(). * @param mixed $user_value The value provided by the user. * @return bool */ protected function is_meta_value_same_as_stored_value( $meta_key, $subtype, $stored_value, $user_value ) { $args = $this->get_registered_fields()[ $meta_key ]; $sanitized = sanitize_meta( $meta_key, $user_value, $this->get_meta_type(), $subtype ); if ( in_array( $args['type'], array( 'string', 'number', 'integer', 'boolean' ), true ) ) { // The return value of get_metadata will always be a string for scalar types. $sanitized = (string) $sanitized; } return $sanitized === $stored_value; } /** * Retrieves all the registered meta fields. * * @since 4.7.0 * * @return array Registered fields. */ protected function get_registered_fields() { $registered = array(); $meta_type = $this->get_meta_type(); $meta_subtype = $this->get_meta_subtype(); $meta_keys = get_registered_meta_keys( $meta_type ); if ( ! empty( $meta_subtype ) ) { $meta_keys = array_merge( $meta_keys, get_registered_meta_keys( $meta_type, $meta_subtype ) ); } foreach ( $meta_keys as $name => $args ) { if ( empty( $args['show_in_rest'] ) ) { continue; } $rest_args = array(); if ( is_array( $args['show_in_rest'] ) ) { $rest_args = $args['show_in_rest']; } $default_args = array( 'name' => $name, 'single' => $args['single'], 'type' => ! empty( $args['type'] ) ? $args['type'] : null, 'schema' => array(), 'prepare_callback' => array( $this, 'prepare_value' ), ); $default_schema = array( 'type' => $default_args['type'], 'description' => empty( $args['description'] ) ? '' : $args['description'], 'default' => isset( $args['default'] ) ? $args['default'] : null, ); $rest_args = array_merge( $default_args, $rest_args ); $rest_args['schema'] = array_merge( $default_schema, $rest_args['schema'] ); $type = ! empty( $rest_args['type'] ) ? $rest_args['type'] : null; $type = ! empty( $rest_args['schema']['type'] ) ? $rest_args['schema']['type'] : $type; if ( null === $rest_args['schema']['default'] ) { $rest_args['schema']['default'] = static::get_empty_value_for_type( $type ); } $rest_args['schema'] = rest_default_additional_properties_to_false( $rest_args['schema'] ); if ( ! in_array( $type, array( 'string', 'boolean', 'integer', 'number', 'array', 'object' ), true ) ) { continue; } if ( empty( $rest_args['single'] ) ) { $rest_args['schema'] = array( 'type' => 'array', 'items' => $rest_args['schema'], ); } $registered[ $name ] = $rest_args; } return $registered; } /** * Retrieves the object's meta schema, conforming to JSON Schema. * * @since 4.7.0 * * @return array Field schema data. */ public function get_field_schema() { $fields = $this->get_registered_fields(); $schema = array( 'description' => __( 'Meta fields.' ), 'type' => 'object', 'context' => array( 'view', 'edit' ), 'properties' => array(), 'arg_options' => array( 'sanitize_callback' => null, 'validate_callback' => array( $this, 'check_meta_is_array' ), ), ); foreach ( $fields as $args ) { $schema['properties'][ $args['name'] ] = $args['schema']; } return $schema; } /** * Prepares a meta value for output. * * Default preparation for meta fields. Override by passing the * `prepare_callback` in your `show_in_rest` options. * * @since 4.7.0 * * @param mixed $value Meta value from the database. * @param WP_REST_Request $request Request object. * @param array $args REST-specific options for the meta key. * @return mixed Value prepared for output. If a non-JsonSerializable object, null. */ public static function prepare_value( $value, $request, $args ) { if ( $args['single'] ) { $schema = $args['schema']; } else { $schema = $args['schema']['items']; } if ( '' === $value && in_array( $schema['type'], array( 'boolean', 'integer', 'number' ), true ) ) { $value = static::get_empty_value_for_type( $schema['type'] ); } if ( is_wp_error( rest_validate_value_from_schema( $value, $schema ) ) ) { return null; } return rest_sanitize_value_from_schema( $value, $schema ); } /** * Check the 'meta' value of a request is an associative array. * * @since 4.7.0 * * @param mixed $value The meta value submitted in the request. * @param WP_REST_Request $request Full details about the request. * @param string $param The parameter name. * @return array|false The meta array, if valid, false otherwise. */ public function check_meta_is_array( $value, $request, $param ) { if ( ! is_array( $value ) ) { return false; } return $value; } /** * Recursively add additionalProperties = false to all objects in a schema if no additionalProperties setting * is specified. * * This is needed to restrict properties of objects in meta values to only * registered items, as the REST API will allow additional properties by * default. * * @since 5.3.0 * @deprecated 5.6.0 Use rest_default_additional_properties_to_false() instead. * * @param array $schema The schema array. * @return array */ protected function default_additional_properties_to_false( $schema ) { _deprecated_function( __METHOD__, '5.6.0', 'rest_default_additional_properties_to_false()' ); return rest_default_additional_properties_to_false( $schema ); } /** * Gets the empty value for a schema type. * * @since 5.3.0 * * @param string $type The schema type. * @return mixed */ protected static function get_empty_value_for_type( $type ) { switch ( $type ) { case 'string': return ''; case 'boolean': return false; case 'integer': return 0; case 'number': return 0.0; case 'array': case 'object': return array(); default: return null; } } } PK�����j l\����5��rest-api/fields/class-wp-rest-comment-meta-fields.phpnu�[��������<?php /** * REST API: WP_REST_Comment_Meta_Fields class * * @package WordPress * @subpackage REST_API * @since 4.7.0 */ /** * Core class to manage comment meta via the REST API. * * @since 4.7.0 * * @see WP_REST_Meta_Fields */ class WP_REST_Comment_Meta_Fields extends WP_REST_Meta_Fields { /** * Retrieves the comment type for comment meta. * * @since 4.7.0 * * @return string The meta type. */ protected function get_meta_type() { return 'comment'; } /** * Retrieves the comment meta subtype. * * @since 4.9.8 * * @return string 'comment' There are no subtypes. */ protected function get_meta_subtype() { return 'comment'; } /** * Retrieves the type for register_rest_field() in the context of comments. * * @since 4.7.0 * * @return string The REST field type. */ public function get_rest_field_type() { return 'comment'; } } PK�����j l\x-,����2��rest-api/fields/class-wp-rest-term-meta-fields.phpnu�[��������<?php /** * REST API: WP_REST_Term_Meta_Fields class * * @package WordPress * @subpackage REST_API * @since 4.7.0 */ /** * Core class used to manage meta values for terms via the REST API. * * @since 4.7.0 * * @see WP_REST_Meta_Fields */ class WP_REST_Term_Meta_Fields extends WP_REST_Meta_Fields { /** * Taxonomy to register fields for. * * @since 4.7.0 * @var string */ protected $taxonomy; /** * Constructor. * * @since 4.7.0 * * @param string $taxonomy Taxonomy to register fields for. */ public function __construct( $taxonomy ) { $this->taxonomy = $taxonomy; } /** * Retrieves the term meta type. * * @since 4.7.0 * * @return string The meta type. */ protected function get_meta_type() { return 'term'; } /** * Retrieves the term meta subtype. * * @since 4.9.8 * * @return string Subtype for the meta type, or empty string if no specific subtype. */ protected function get_meta_subtype() { return $this->taxonomy; } /** * Retrieves the type for register_rest_field(). * * @since 4.7.0 * * @return string The REST field type. */ public function get_rest_field_type() { return 'post_tag' === $this->taxonomy ? 'tag' : $this->taxonomy; } } PK�����j l\rX��X��2��rest-api/fields/class-wp-rest-user-meta-fields.phpnu�[��������<?php /** * REST API: WP_REST_User_Meta_Fields class * * @package WordPress * @subpackage REST_API * @since 4.7.0 */ /** * Core class used to manage meta values for users via the REST API. * * @since 4.7.0 * * @see WP_REST_Meta_Fields */ class WP_REST_User_Meta_Fields extends WP_REST_Meta_Fields { /** * Retrieves the user meta type. * * @since 4.7.0 * * @return string The user meta type. */ protected function get_meta_type() { return 'user'; } /** * Retrieves the user meta subtype. * * @since 4.9.8 * * @return string 'user' There are no subtypes. */ protected function get_meta_subtype() { return 'user'; } /** * Retrieves the type for register_rest_field(). * * @since 4.7.0 * * @return string The user REST field type. */ public function get_rest_field_type() { return 'user'; } } PK�����j l\H4e��e��"��rest-api/class-wp-rest-request.phpnu�[��������<?php /** * REST API: WP_REST_Request class * * @package WordPress * @subpackage REST_API * @since 4.4.0 */ /** * Core class used to implement a REST request object. * * Contains data from the request, to be passed to the callback. * * Note: This implements ArrayAccess, and acts as an array of parameters when * used in that manner. It does not use ArrayObject (as we cannot rely on SPL), * so be aware it may have non-array behaviour in some cases. * * Note: When using features provided by ArrayAccess, be aware that WordPress deliberately * does not distinguish between arguments of the same name for different request methods. * For instance, in a request with `GET id=1` and `POST id=2`, `$request['id']` will equal * 2 (`POST`) not 1 (`GET`). For more precision between request methods, use * WP_REST_Request::get_body_params(), WP_REST_Request::get_url_params(), etc. * * @since 4.4.0 * * @link https://www.php.net/manual/en/class.arrayaccess.php */ class WP_REST_Request implements ArrayAccess { /** * HTTP method. * * @since 4.4.0 * @var string */ protected $method = ''; /** * Parameters passed to the request. * * These typically come from the `$_GET`, `$_POST` and `$_FILES` * superglobals when being created from the global scope. * * @since 4.4.0 * @var array Contains GET, POST and FILES keys mapping to arrays of data. */ protected $params; /** * HTTP headers for the request. * * @since 4.4.0 * @var array Map of key to value. Key is always lowercase, as per HTTP specification. */ protected $headers = array(); /** * Body data. * * @since 4.4.0 * @var string Binary data from the request. */ protected $body = null; /** * Route matched for the request. * * @since 4.4.0 * @var string */ protected $route; /** * Attributes (options) for the route that was matched. * * This is the options array used when the route was registered, typically * containing the callback as well as the valid methods for the route. * * @since 4.4.0 * @var array Attributes for the request. */ protected $attributes = array(); /** * Used to determine if the JSON data has been parsed yet. * * Allows lazy-parsing of JSON data where possible. * * @since 4.4.0 * @var bool */ protected $parsed_json = false; /** * Used to determine if the body data has been parsed yet. * * @since 4.4.0 * @var bool */ protected $parsed_body = false; /** * Constructor. * * @since 4.4.0 * * @param string $method Optional. Request method. Default empty. * @param string $route Optional. Request route. Default empty. * @param array $attributes Optional. Request attributes. Default empty array. */ public function __construct( $method = '', $route = '', $attributes = array() ) { $this->params = array( 'URL' => array(), 'GET' => array(), 'POST' => array(), 'FILES' => array(), // See parse_json_params. 'JSON' => null, 'defaults' => array(), ); $this->set_method( $method ); $this->set_route( $route ); $this->set_attributes( $attributes ); } /** * Retrieves the HTTP method for the request. * * @since 4.4.0 * * @return string HTTP method. */ public function get_method() { return $this->method; } /** * Sets HTTP method for the request. * * @since 4.4.0 * * @param string $method HTTP method. */ public function set_method( $method ) { $this->method = strtoupper( $method ); } /** * Retrieves all headers from the request. * * @since 4.4.0 * * @return array Map of key to value. Key is always lowercase, as per HTTP specification. */ public function get_headers() { return $this->headers; } /** * Canonicalizes the header name. * * Ensures that header names are always treated the same regardless of * source. Header names are always case insensitive. * * Note that we treat `-` (dashes) and `_` (underscores) as the same * character, as per header parsing rules in both Apache and nginx. * * @link https://stackoverflow.com/q/18185366 * @link https://www.nginx.com/resources/wiki/start/topics/tutorials/config_pitfalls/#missing-disappearing-http-headers * @link https://nginx.org/en/docs/http/ngx_http_core_module.html#underscores_in_headers * * @since 4.4.0 * * @param string $key Header name. * @return string Canonicalized name. */ public static function canonicalize_header_name( $key ) { $key = strtolower( $key ); $key = str_replace( '-', '_', $key ); return $key; } /** * Retrieves the given header from the request. * * If the header has multiple values, they will be concatenated with a comma * as per the HTTP specification. Be aware that some non-compliant headers * (notably cookie headers) cannot be joined this way. * * @since 4.4.0 * * @param string $key Header name, will be canonicalized to lowercase. * @return string|null String value if set, null otherwise. */ public function get_header( $key ) { $key = $this->canonicalize_header_name( $key ); if ( ! isset( $this->headers[ $key ] ) ) { return null; } return implode( ',', $this->headers[ $key ] ); } /** * Retrieves header values from the request. * * @since 4.4.0 * * @param string $key Header name, will be canonicalized to lowercase. * @return array|null List of string values if set, null otherwise. */ public function get_header_as_array( $key ) { $key = $this->canonicalize_header_name( $key ); if ( ! isset( $this->headers[ $key ] ) ) { return null; } return $this->headers[ $key ]; } /** * Sets the header on request. * * @since 4.4.0 * * @param string $key Header name. * @param string $value Header value, or list of values. */ public function set_header( $key, $value ) { $key = $this->canonicalize_header_name( $key ); $value = (array) $value; $this->headers[ $key ] = $value; } /** * Appends a header value for the given header. * * @since 4.4.0 * * @param string $key Header name. * @param string $value Header value, or list of values. */ public function add_header( $key, $value ) { $key = $this->canonicalize_header_name( $key ); $value = (array) $value; if ( ! isset( $this->headers[ $key ] ) ) { $this->headers[ $key ] = array(); } $this->headers[ $key ] = array_merge( $this->headers[ $key ], $value ); } /** * Removes all values for a header. * * @since 4.4.0 * * @param string $key Header name. */ public function remove_header( $key ) { $key = $this->canonicalize_header_name( $key ); unset( $this->headers[ $key ] ); } /** * Sets headers on the request. * * @since 4.4.0 * * @param array $headers Map of header name to value. * @param bool $override If true, replace the request's headers. Otherwise, merge with existing. */ public function set_headers( $headers, $override = true ) { if ( true === $override ) { $this->headers = array(); } foreach ( $headers as $key => $value ) { $this->set_header( $key, $value ); } } /** * Retrieves the content-type of the request. * * @since 4.4.0 * * @return array|null Map containing 'value' and 'parameters' keys * or null when no valid content-type header was * available. */ public function get_content_type() { $value = $this->get_header( 'content-type' ); if ( empty( $value ) ) { return null; } $parameters = ''; if ( strpos( $value, ';' ) ) { list( $value, $parameters ) = explode( ';', $value, 2 ); } $value = strtolower( $value ); if ( false === strpos( $value, '/' ) ) { return null; } // Parse type and subtype out. list( $type, $subtype ) = explode( '/', $value, 2 ); $data = compact( 'value', 'type', 'subtype', 'parameters' ); $data = array_map( 'trim', $data ); return $data; } /** * Checks if the request has specified a JSON content-type. * * @since 5.6.0 * * @return bool True if the content-type header is JSON. */ public function is_json_content_type() { $content_type = $this->get_content_type(); return isset( $content_type['value'] ) && wp_is_json_media_type( $content_type['value'] ); } /** * Retrieves the parameter priority order. * * Used when checking parameters in WP_REST_Request::get_param(). * * @since 4.4.0 * * @return string[] Array of types to check, in order of priority. */ protected function get_parameter_order() { $order = array(); if ( $this->is_json_content_type() ) { $order[] = 'JSON'; } $this->parse_json_params(); // Ensure we parse the body data. $body = $this->get_body(); if ( 'POST' !== $this->method && ! empty( $body ) ) { $this->parse_body_params(); } $accepts_body_data = array( 'POST', 'PUT', 'PATCH', 'DELETE' ); if ( in_array( $this->method, $accepts_body_data, true ) ) { $order[] = 'POST'; } $order[] = 'GET'; $order[] = 'URL'; $order[] = 'defaults'; /** * Filters the parameter priority order for a REST API request. * * The order affects which parameters are checked when using WP_REST_Request::get_param() * and family. This acts similarly to PHP's `request_order` setting. * * @since 4.4.0 * * @param string[] $order Array of types to check, in order of priority. * @param WP_REST_Request $request The request object. */ return apply_filters( 'rest_request_parameter_order', $order, $this ); } /** * Retrieves a parameter from the request. * * @since 4.4.0 * * @param string $key Parameter name. * @return mixed|null Value if set, null otherwise. */ public function get_param( $key ) { $order = $this->get_parameter_order(); foreach ( $order as $type ) { // Determine if we have the parameter for this type. if ( isset( $this->params[ $type ][ $key ] ) ) { return $this->params[ $type ][ $key ]; } } return null; } /** * Checks if a parameter exists in the request. * * This allows distinguishing between an omitted parameter, * and a parameter specifically set to null. * * @since 5.3.0 * * @param string $key Parameter name. * @return bool True if a param exists for the given key. */ public function has_param( $key ) { $order = $this->get_parameter_order(); foreach ( $order as $type ) { if ( is_array( $this->params[ $type ] ) && array_key_exists( $key, $this->params[ $type ] ) ) { return true; } } return false; } /** * Sets a parameter on the request. * * If the given parameter key exists in any parameter type an update will take place, * otherwise a new param will be created in the first parameter type (respecting * get_parameter_order()). * * @since 4.4.0 * * @param string $key Parameter name. * @param mixed $value Parameter value. */ public function set_param( $key, $value ) { $order = $this->get_parameter_order(); $found_key = false; foreach ( $order as $type ) { if ( 'defaults' !== $type && is_array( $this->params[ $type ] ) && array_key_exists( $key, $this->params[ $type ] ) ) { $this->params[ $type ][ $key ] = $value; $found_key = true; } } if ( ! $found_key ) { $this->params[ $order[0] ][ $key ] = $value; } } /** * Retrieves merged parameters from the request. * * The equivalent of get_param(), but returns all parameters for the request. * Handles merging all the available values into a single array. * * @since 4.4.0 * * @return array Map of key to value. */ public function get_params() { $order = $this->get_parameter_order(); $order = array_reverse( $order, true ); $params = array(); foreach ( $order as $type ) { // array_merge() / the "+" operator will mess up // numeric keys, so instead do a manual foreach. foreach ( (array) $this->params[ $type ] as $key => $value ) { $params[ $key ] = $value; } } return $params; } /** * Retrieves parameters from the route itself. * * These are parsed from the URL using the regex. * * @since 4.4.0 * * @return array Parameter map of key to value. */ public function get_url_params() { return $this->params['URL']; } /** * Sets parameters from the route. * * Typically, this is set after parsing the URL. * * @since 4.4.0 * * @param array $params Parameter map of key to value. */ public function set_url_params( $params ) { $this->params['URL'] = $params; } /** * Retrieves parameters from the query string. * * These are the parameters you'd typically find in `$_GET`. * * @since 4.4.0 * * @return array Parameter map of key to value */ public function get_query_params() { return $this->params['GET']; } /** * Sets parameters from the query string. * * Typically, this is set from `$_GET`. * * @since 4.4.0 * * @param array $params Parameter map of key to value. */ public function set_query_params( $params ) { $this->params['GET'] = $params; } /** * Retrieves parameters from the body. * * These are the parameters you'd typically find in `$_POST`. * * @since 4.4.0 * * @return array Parameter map of key to value. */ public function get_body_params() { return $this->params['POST']; } /** * Sets parameters from the body. * * Typically, this is set from `$_POST`. * * @since 4.4.0 * * @param array $params Parameter map of key to value. */ public function set_body_params( $params ) { $this->params['POST'] = $params; } /** * Retrieves multipart file parameters from the body. * * These are the parameters you'd typically find in `$_FILES`. * * @since 4.4.0 * * @return array Parameter map of key to value */ public function get_file_params() { return $this->params['FILES']; } /** * Sets multipart file parameters from the body. * * Typically, this is set from `$_FILES`. * * @since 4.4.0 * * @param array $params Parameter map of key to value. */ public function set_file_params( $params ) { $this->params['FILES'] = $params; } /** * Retrieves the default parameters. * * These are the parameters set in the route registration. * * @since 4.4.0 * * @return array Parameter map of key to value */ public function get_default_params() { return $this->params['defaults']; } /** * Sets default parameters. * * These are the parameters set in the route registration. * * @since 4.4.0 * * @param array $params Parameter map of key to value. */ public function set_default_params( $params ) { $this->params['defaults'] = $params; } /** * Retrieves the request body content. * * @since 4.4.0 * * @return string Binary data from the request body. */ public function get_body() { return $this->body; } /** * Sets body content. * * @since 4.4.0 * * @param string $data Binary data from the request body. */ public function set_body( $data ) { $this->body = $data; // Enable lazy parsing. $this->parsed_json = false; $this->parsed_body = false; $this->params['JSON'] = null; } /** * Retrieves the parameters from a JSON-formatted body. * * @since 4.4.0 * * @return array Parameter map of key to value. */ public function get_json_params() { // Ensure the parameters have been parsed out. $this->parse_json_params(); return $this->params['JSON']; } /** * Parses the JSON parameters. * * Avoids parsing the JSON data until we need to access it. * * @since 4.4.0 * @since 4.7.0 Returns error instance if value cannot be decoded. * @return true|WP_Error True if the JSON data was passed or no JSON data was provided, WP_Error if invalid JSON was passed. */ protected function parse_json_params() { if ( $this->parsed_json ) { return true; } $this->parsed_json = true; // Check that we actually got JSON. if ( ! $this->is_json_content_type() ) { return true; } $body = $this->get_body(); if ( empty( $body ) ) { return true; } $params = json_decode( $body, true ); /* * Check for a parsing error. */ if ( null === $params && JSON_ERROR_NONE !== json_last_error() ) { // Ensure subsequent calls receive error instance. $this->parsed_json = false; $error_data = array( 'status' => WP_Http::BAD_REQUEST, 'json_error_code' => json_last_error(), 'json_error_message' => json_last_error_msg(), ); return new WP_Error( 'rest_invalid_json', __( 'Invalid JSON body passed.' ), $error_data ); } $this->params['JSON'] = $params; return true; } /** * Parses the request body parameters. * * Parses out URL-encoded bodies for request methods that aren't supported * natively by PHP. In PHP 5.x, only POST has these parsed automatically. * * @since 4.4.0 */ protected function parse_body_params() { if ( $this->parsed_body ) { return; } $this->parsed_body = true; /* * Check that we got URL-encoded. Treat a missing content-type as * URL-encoded for maximum compatibility. */ $content_type = $this->get_content_type(); if ( ! empty( $content_type ) && 'application/x-www-form-urlencoded' !== $content_type['value'] ) { return; } parse_str( $this->get_body(), $params ); /* * Add to the POST parameters stored internally. If a user has already * set these manually (via `set_body_params`), don't override them. */ $this->params['POST'] = array_merge( $params, $this->params['POST'] ); } /** * Retrieves the route that matched the request. * * @since 4.4.0 * * @return string Route matching regex. */ public function get_route() { return $this->route; } /** * Sets the route that matched the request. * * @since 4.4.0 * * @param string $route Route matching regex. */ public function set_route( $route ) { $this->route = $route; } /** * Retrieves the attributes for the request. * * These are the options for the route that was matched. * * @since 4.4.0 * * @return array Attributes for the request. */ public function get_attributes() { return $this->attributes; } /** * Sets the attributes for the request. * * @since 4.4.0 * * @param array $attributes Attributes for the request. */ public function set_attributes( $attributes ) { $this->attributes = $attributes; } /** * Sanitizes (where possible) the params on the request. * * This is primarily based off the sanitize_callback param on each registered * argument. * * @since 4.4.0 * * @return true|WP_Error True if parameters were sanitized, WP_Error if an error occurred during sanitization. */ public function sanitize_params() { $attributes = $this->get_attributes(); // No arguments set, skip sanitizing. if ( empty( $attributes['args'] ) ) { return true; } $order = $this->get_parameter_order(); $invalid_params = array(); $invalid_details = array(); foreach ( $order as $type ) { if ( empty( $this->params[ $type ] ) ) { continue; } foreach ( $this->params[ $type ] as $key => $value ) { if ( ! isset( $attributes['args'][ $key ] ) ) { continue; } $param_args = $attributes['args'][ $key ]; // If the arg has a type but no sanitize_callback attribute, default to rest_parse_request_arg. if ( ! array_key_exists( 'sanitize_callback', $param_args ) && ! empty( $param_args['type'] ) ) { $param_args['sanitize_callback'] = 'rest_parse_request_arg'; } // If there's still no sanitize_callback, nothing to do here. if ( empty( $param_args['sanitize_callback'] ) ) { continue; } /** @var mixed|WP_Error $sanitized_value */ $sanitized_value = call_user_func( $param_args['sanitize_callback'], $value, $this, $key ); if ( is_wp_error( $sanitized_value ) ) { $invalid_params[ $key ] = implode( ' ', $sanitized_value->get_error_messages() ); $invalid_details[ $key ] = rest_convert_error_to_response( $sanitized_value )->get_data(); } else { $this->params[ $type ][ $key ] = $sanitized_value; } } } if ( $invalid_params ) { return new WP_Error( 'rest_invalid_param', /* translators: %s: List of invalid parameters. */ sprintf( __( 'Invalid parameter(s): %s' ), implode( ', ', array_keys( $invalid_params ) ) ), array( 'status' => 400, 'params' => $invalid_params, 'details' => $invalid_details, ) ); } return true; } /** * Checks whether this request is valid according to its attributes. * * @since 4.4.0 * * @return true|WP_Error True if there are no parameters to validate or if all pass validation, * WP_Error if required parameters are missing. */ public function has_valid_params() { // If JSON data was passed, check for errors. $json_error = $this->parse_json_params(); if ( is_wp_error( $json_error ) ) { return $json_error; } $attributes = $this->get_attributes(); $required = array(); $args = empty( $attributes['args'] ) ? array() : $attributes['args']; foreach ( $args as $key => $arg ) { $param = $this->get_param( $key ); if ( isset( $arg['required'] ) && true === $arg['required'] && null === $param ) { $required[] = $key; } } if ( ! empty( $required ) ) { return new WP_Error( 'rest_missing_callback_param', /* translators: %s: List of required parameters. */ sprintf( __( 'Missing parameter(s): %s' ), implode( ', ', $required ) ), array( 'status' => 400, 'params' => $required, ) ); } /* * Check the validation callbacks for each registered arg. * * This is done after required checking as required checking is cheaper. */ $invalid_params = array(); $invalid_details = array(); foreach ( $args as $key => $arg ) { $param = $this->get_param( $key ); if ( null !== $param && ! empty( $arg['validate_callback'] ) ) { /** @var bool|\WP_Error $valid_check */ $valid_check = call_user_func( $arg['validate_callback'], $param, $this, $key ); if ( false === $valid_check ) { $invalid_params[ $key ] = __( 'Invalid parameter.' ); } if ( is_wp_error( $valid_check ) ) { $invalid_params[ $key ] = implode( ' ', $valid_check->get_error_messages() ); $invalid_details[ $key ] = rest_convert_error_to_response( $valid_check )->get_data(); } } } if ( $invalid_params ) { return new WP_Error( 'rest_invalid_param', /* translators: %s: List of invalid parameters. */ sprintf( __( 'Invalid parameter(s): %s' ), implode( ', ', array_keys( $invalid_params ) ) ), array( 'status' => 400, 'params' => $invalid_params, 'details' => $invalid_details, ) ); } if ( isset( $attributes['validate_callback'] ) ) { $valid_check = call_user_func( $attributes['validate_callback'], $this ); if ( is_wp_error( $valid_check ) ) { return $valid_check; } if ( false === $valid_check ) { // A WP_Error instance is preferred, but false is supported for parity with the per-arg validate_callback. return new WP_Error( 'rest_invalid_params', __( 'Invalid parameters.' ), array( 'status' => 400 ) ); } } return true; } /** * Checks if a parameter is set. * * @since 4.4.0 * * @param string $offset Parameter name. * @return bool Whether the parameter is set. */ #[ReturnTypeWillChange] public function offsetExists( $offset ) { $order = $this->get_parameter_order(); foreach ( $order as $type ) { if ( isset( $this->params[ $type ][ $offset ] ) ) { return true; } } return false; } /** * Retrieves a parameter from the request. * * @since 4.4.0 * * @param string $offset Parameter name. * @return mixed|null Value if set, null otherwise. */ #[ReturnTypeWillChange] public function offsetGet( $offset ) { return $this->get_param( $offset ); } /** * Sets a parameter on the request. * * @since 4.4.0 * * @param string $offset Parameter name. * @param mixed $value Parameter value. */ #[ReturnTypeWillChange] public function offsetSet( $offset, $value ) { $this->set_param( $offset, $value ); } /** * Removes a parameter from the request. * * @since 4.4.0 * * @param string $offset Parameter name. */ #[ReturnTypeWillChange] public function offsetUnset( $offset ) { $order = $this->get_parameter_order(); // Remove the offset from every group. foreach ( $order as $type ) { unset( $this->params[ $type ][ $offset ] ); } } /** * Retrieves a WP_REST_Request object from a full URL. * * @since 4.5.0 * * @param string $url URL with protocol, domain, path and query args. * @return WP_REST_Request|false WP_REST_Request object on success, false on failure. */ public static function from_url( $url ) { $bits = parse_url( $url ); $query_params = array(); if ( ! empty( $bits['query'] ) ) { wp_parse_str( $bits['query'], $query_params ); } $api_root = rest_url(); if ( get_option( 'permalink_structure' ) && 0 === strpos( $url, $api_root ) ) { // Pretty permalinks on, and URL is under the API root. $api_url_part = substr( $url, strlen( untrailingslashit( $api_root ) ) ); $route = parse_url( $api_url_part, PHP_URL_PATH ); } elseif ( ! empty( $query_params['rest_route'] ) ) { // ?rest_route=... set directly. $route = $query_params['rest_route']; unset( $query_params['rest_route'] ); } $request = false; if ( ! empty( $route ) ) { $request = new WP_REST_Request( 'GET', $route ); $request->set_query_params( $query_params ); } /** * Filters the REST API request generated from a URL. * * @since 4.5.0 * * @param WP_REST_Request|false $request Generated request object, or false if URL * could not be parsed. * @param string $url URL the request was generated from. */ return apply_filters( 'rest_request_from_url', $request, $url ); } } PK�����j l\V����0��rest-api/search/class-wp-rest-search-handler.phpnu�[��������<?php /** * REST API: WP_REST_Search_Handler class * * @package WordPress * @subpackage REST_API * @since 5.0.0 */ /** * Core base class representing a search handler for an object type in the REST API. * * @since 5.0.0 */ abstract class WP_REST_Search_Handler { /** * Field containing the IDs in the search result. */ const RESULT_IDS = 'ids'; /** * Field containing the total count in the search result. */ const RESULT_TOTAL = 'total'; /** * Object type managed by this search handler. * * @since 5.0.0 * @var string */ protected $type = ''; /** * Object subtypes managed by this search handler. * * @since 5.0.0 * @var array */ protected $subtypes = array(); /** * Gets the object type managed by this search handler. * * @since 5.0.0 * * @return string Object type identifier. */ public function get_type() { return $this->type; } /** * Gets the object subtypes managed by this search handler. * * @since 5.0.0 * * @return array Array of object subtype identifiers. */ public function get_subtypes() { return $this->subtypes; } /** * Searches the object type content for a given search request. * * @since 5.0.0 * * @param WP_REST_Request $request Full REST request. * @return array Associative array containing an `WP_REST_Search_Handler::RESULT_IDS` containing * an array of found IDs and `WP_REST_Search_Handler::RESULT_TOTAL` containing the * total count for the matching search results. */ abstract public function search_items( WP_REST_Request $request ); /** * Prepares the search result for a given ID. * * @since 5.0.0 * @since 5.6.0 The `$id` parameter can accept a string. * * @param int|string $id Item ID. * @param array $fields Fields to include for the item. * @return array Associative array containing all fields for the item. */ abstract public function prepare_item( $id, array $fields ); /** * Prepares links for the search result of a given ID. * * @since 5.0.0 * @since 5.6.0 The `$id` parameter can accept a string. * * @param int|string $id Item ID. * @return array Links for the given item. */ abstract public function prepare_item_links( $id ); } PK�����j l\`����5��rest-api/search/class-wp-rest-term-search-handler.phpnu�[��������<?php /** * REST API: WP_REST_Term_Search_Handler class * * @package WordPress * @subpackage REST_API * @since 5.6.0 */ /** * Core class representing a search handler for terms in the REST API. * * @since 5.6.0 * * @see WP_REST_Search_Handler */ class WP_REST_Term_Search_Handler extends WP_REST_Search_Handler { /** * Constructor. * * @since 5.6.0 */ public function __construct() { $this->type = 'term'; $this->subtypes = array_values( get_taxonomies( array( 'public' => true, 'show_in_rest' => true, ), 'names' ) ); } /** * Searches the object type content for a given search request. * * @since 5.6.0 * * @param WP_REST_Request $request Full REST request. * @return array Associative array containing an `WP_REST_Search_Handler::RESULT_IDS` containing * an array of found IDs and `WP_REST_Search_Handler::RESULT_TOTAL` containing the * total count for the matching search results. */ public function search_items( WP_REST_Request $request ) { $taxonomies = $request[ WP_REST_Search_Controller::PROP_SUBTYPE ]; if ( in_array( WP_REST_Search_Controller::TYPE_ANY, $taxonomies, true ) ) { $taxonomies = $this->subtypes; } $page = (int) $request['page']; $per_page = (int) $request['per_page']; $query_args = array( 'taxonomy' => $taxonomies, 'hide_empty' => false, 'offset' => ( $page - 1 ) * $per_page, 'number' => $per_page, ); if ( ! empty( $request['search'] ) ) { $query_args['search'] = $request['search']; } /** * Filters the query arguments for a REST API search request. * * Enables adding extra arguments or setting defaults for a term search request. * * @since 5.6.0 * * @param array $query_args Key value array of query var to query value. * @param WP_REST_Request $request The request used. */ $query_args = apply_filters( 'rest_term_search_query', $query_args, $request ); $query = new WP_Term_Query(); $found_terms = $query->query( $query_args ); $found_ids = wp_list_pluck( $found_terms, 'term_id' ); unset( $query_args['offset'], $query_args['number'] ); $total = wp_count_terms( $query_args ); // wp_count_terms() can return a falsey value when the term has no children. if ( ! $total ) { $total = 0; } return array( self::RESULT_IDS => $found_ids, self::RESULT_TOTAL => $total, ); } /** * Prepares the search result for a given ID. * * @since 5.6.0 * * @param int $id Item ID. * @param array $fields Fields to include for the item. * @return array Associative array containing all fields for the item. */ public function prepare_item( $id, array $fields ) { $term = get_term( $id ); $data = array(); if ( in_array( WP_REST_Search_Controller::PROP_ID, $fields, true ) ) { $data[ WP_REST_Search_Controller::PROP_ID ] = (int) $id; } if ( in_array( WP_REST_Search_Controller::PROP_TITLE, $fields, true ) ) { $data[ WP_REST_Search_Controller::PROP_TITLE ] = $term->name; } if ( in_array( WP_REST_Search_Controller::PROP_URL, $fields, true ) ) { $data[ WP_REST_Search_Controller::PROP_URL ] = get_term_link( $id ); } if ( in_array( WP_REST_Search_Controller::PROP_TYPE, $fields, true ) ) { $data[ WP_REST_Search_Controller::PROP_TYPE ] = $term->taxonomy; } return $data; } /** * Prepares links for the search result of a given ID. * * @since 5.6.0 * * @param int $id Item ID. * @return array Links for the given item. */ public function prepare_item_links( $id ) { $term = get_term( $id ); $links = array(); $item_route = rest_get_route_for_term( $term ); if ( $item_route ) { $links['self'] = array( 'href' => rest_url( $item_route ), 'embeddable' => true, ); } $links['about'] = array( 'href' => rest_url( sprintf( 'wp/v2/taxonomies/%s', $term->taxonomy ) ), ); return $links; } } PK�����j l\h`����<��rest-api/search/class-wp-rest-post-format-search-handler.phpnu�[��������<?php /** * REST API: WP_REST_Post_Format_Search_Handler class * * @package WordPress * @subpackage REST_API * @since 5.6.0 */ /** * Core class representing a search handler for post formats in the REST API. * * @since 5.6.0 * * @see WP_REST_Search_Handler */ class WP_REST_Post_Format_Search_Handler extends WP_REST_Search_Handler { /** * Constructor. * * @since 5.6.0 */ public function __construct() { $this->type = 'post-format'; } /** * Searches the object type content for a given search request. * * @since 5.6.0 * * @param WP_REST_Request $request Full REST request. * @return array Associative array containing an `WP_REST_Search_Handler::RESULT_IDS` containing * an array of found IDs and `WP_REST_Search_Handler::RESULT_TOTAL` containing the * total count for the matching search results. */ public function search_items( WP_REST_Request $request ) { $format_strings = get_post_format_strings(); $format_slugs = array_keys( $format_strings ); $query_args = array(); if ( ! empty( $request['search'] ) ) { $query_args['search'] = $request['search']; } /** * Filters the query arguments for a REST API search request. * * Enables adding extra arguments or setting defaults for a post format search request. * * @since 5.6.0 * * @param array $query_args Key value array of query var to query value. * @param WP_REST_Request $request The request used. */ $query_args = apply_filters( 'rest_post_format_search_query', $query_args, $request ); $found_ids = array(); foreach ( $format_slugs as $index => $format_slug ) { if ( ! empty( $query_args['search'] ) ) { $format_string = get_post_format_string( $format_slug ); $format_slug_match = stripos( $format_slug, $query_args['search'] ) !== false; $format_string_match = stripos( $format_string, $query_args['search'] ) !== false; if ( ! $format_slug_match && ! $format_string_match ) { continue; } } $format_link = get_post_format_link( $format_slug ); if ( $format_link ) { $found_ids[] = $format_slug; } } $page = (int) $request['page']; $per_page = (int) $request['per_page']; return array( self::RESULT_IDS => array_slice( $found_ids, ( $page - 1 ) * $per_page, $per_page ), self::RESULT_TOTAL => count( $found_ids ), ); } /** * Prepares the search result for a given ID. * * @since 5.6.0 * * @param string $id Item ID, the post format slug. * @param array $fields Fields to include for the item. * @return array Associative array containing all fields for the item. */ public function prepare_item( $id, array $fields ) { $data = array(); if ( in_array( WP_REST_Search_Controller::PROP_ID, $fields, true ) ) { $data[ WP_REST_Search_Controller::PROP_ID ] = $id; } if ( in_array( WP_REST_Search_Controller::PROP_TITLE, $fields, true ) ) { $data[ WP_REST_Search_Controller::PROP_TITLE ] = get_post_format_string( $id ); } if ( in_array( WP_REST_Search_Controller::PROP_URL, $fields, true ) ) { $data[ WP_REST_Search_Controller::PROP_URL ] = get_post_format_link( $id ); } if ( in_array( WP_REST_Search_Controller::PROP_TYPE, $fields, true ) ) { $data[ WP_REST_Search_Controller::PROP_TYPE ] = $this->type; } return $data; } /** * Prepares links for the search result. * * @since 5.6.0 * * @param string $id Item ID, the post format slug. * @return array Links for the given item. */ public function prepare_item_links( $id ) { return array(); } } PK�����j l\[����5��rest-api/search/class-wp-rest-post-search-handler.phpnu�[��������<?php /** * REST API: WP_REST_Post_Search_Handler class * * @package WordPress * @subpackage REST_API * @since 5.0.0 */ /** * Core class representing a search handler for posts in the REST API. * * @since 5.0.0 * * @see WP_REST_Search_Handler */ class WP_REST_Post_Search_Handler extends WP_REST_Search_Handler { /** * Constructor. * * @since 5.0.0 */ public function __construct() { $this->type = 'post'; // Support all public post types except attachments. $this->subtypes = array_diff( array_values( get_post_types( array( 'public' => true, 'show_in_rest' => true, ), 'names' ) ), array( 'attachment' ) ); } /** * Searches the object type content for a given search request. * * @since 5.0.0 * * @param WP_REST_Request $request Full REST request. * @return array Associative array containing an `WP_REST_Search_Handler::RESULT_IDS` containing * an array of found IDs and `WP_REST_Search_Handler::RESULT_TOTAL` containing the * total count for the matching search results. */ public function search_items( WP_REST_Request $request ) { // Get the post types to search for the current request. $post_types = $request[ WP_REST_Search_Controller::PROP_SUBTYPE ]; if ( in_array( WP_REST_Search_Controller::TYPE_ANY, $post_types, true ) ) { $post_types = $this->subtypes; } $query_args = array( 'post_type' => $post_types, 'post_status' => 'publish', 'paged' => (int) $request['page'], 'posts_per_page' => (int) $request['per_page'], 'ignore_sticky_posts' => true, 'fields' => 'ids', ); if ( ! empty( $request['search'] ) ) { $query_args['s'] = $request['search']; } /** * Filters the query arguments for a REST API search request. * * Enables adding extra arguments or setting defaults for a post search request. * * @since 5.1.0 * * @param array $query_args Key value array of query var to query value. * @param WP_REST_Request $request The request used. */ $query_args = apply_filters( 'rest_post_search_query', $query_args, $request ); $query = new WP_Query(); $found_ids = $query->query( $query_args ); $total = $query->found_posts; return array( self::RESULT_IDS => $found_ids, self::RESULT_TOTAL => $total, ); } /** * Prepares the search result for a given ID. * * @since 5.0.0 * * @param int $id Item ID. * @param array $fields Fields to include for the item. * @return array Associative array containing all fields for the item. */ public function prepare_item( $id, array $fields ) { $post = get_post( $id ); $data = array(); if ( in_array( WP_REST_Search_Controller::PROP_ID, $fields, true ) ) { $data[ WP_REST_Search_Controller::PROP_ID ] = (int) $post->ID; } if ( in_array( WP_REST_Search_Controller::PROP_TITLE, $fields, true ) ) { if ( post_type_supports( $post->post_type, 'title' ) ) { add_filter( 'protected_title_format', array( $this, 'protected_title_format' ) ); $data[ WP_REST_Search_Controller::PROP_TITLE ] = get_the_title( $post->ID ); remove_filter( 'protected_title_format', array( $this, 'protected_title_format' ) ); } else { $data[ WP_REST_Search_Controller::PROP_TITLE ] = ''; } } if ( in_array( WP_REST_Search_Controller::PROP_URL, $fields, true ) ) { $data[ WP_REST_Search_Controller::PROP_URL ] = get_permalink( $post->ID ); } if ( in_array( WP_REST_Search_Controller::PROP_TYPE, $fields, true ) ) { $data[ WP_REST_Search_Controller::PROP_TYPE ] = $this->type; } if ( in_array( WP_REST_Search_Controller::PROP_SUBTYPE, $fields, true ) ) { $data[ WP_REST_Search_Controller::PROP_SUBTYPE ] = $post->post_type; } return $data; } /** * Prepares links for the search result of a given ID. * * @since 5.0.0 * * @param int $id Item ID. * @return array Links for the given item. */ public function prepare_item_links( $id ) { $post = get_post( $id ); $links = array(); $item_route = rest_get_route_for_post( $post ); if ( ! empty( $item_route ) ) { $links['self'] = array( 'href' => rest_url( $item_route ), 'embeddable' => true, ); } $links['about'] = array( 'href' => rest_url( 'wp/v2/types/' . $post->post_type ), ); return $links; } /** * Overwrites the default protected title format. * * By default, WordPress will show password protected posts with a title of * "Protected: %s". As the REST API communicates the protected status of a post * in a machine readable format, we remove the "Protected: " prefix. * * @since 5.0.0 * * @return string Protected title format. */ public function protected_title_format() { return '%s'; } /** * Attempts to detect the route to access a single item. * * @since 5.0.0 * @deprecated 5.5.0 Use rest_get_route_for_post() * @see rest_get_route_for_post() * * @param WP_Post $post Post object. * @return string REST route relative to the REST base URI, or empty string if unknown. */ protected function detect_rest_item_route( $post ) { _deprecated_function( __METHOD__, '5.5.0', 'rest_get_route_for_post()' ); return rest_get_route_for_post( $post ); } } PK�����j l\^Q����#��rest-api/class-wp-rest-response.phpnu�[��������<?php /** * REST API: WP_REST_Response class * * @package WordPress * @subpackage REST_API * @since 4.4.0 */ /** * Core class used to implement a REST response object. * * @since 4.4.0 * * @see WP_HTTP_Response */ class WP_REST_Response extends WP_HTTP_Response { /** * Links related to the response. * * @since 4.4.0 * @var array */ protected $links = array(); /** * The route that was to create the response. * * @since 4.4.0 * @var string */ protected $matched_route = ''; /** * The handler that was used to create the response. * * @since 4.4.0 * @var null|array */ protected $matched_handler = null; /** * Adds a link to the response. * * @internal The $rel parameter is first, as this looks nicer when sending multiple. * * @since 4.4.0 * * @link https://tools.ietf.org/html/rfc5988 * @link https://www.iana.org/assignments/link-relations/link-relations.xml * * @param string $rel Link relation. Either an IANA registered type, * or an absolute URL. * @param string $href Target URI for the link. * @param array $attributes Optional. Link parameters to send along with the URL. Default empty array. */ public function add_link( $rel, $href, $attributes = array() ) { if ( empty( $this->links[ $rel ] ) ) { $this->links[ $rel ] = array(); } if ( isset( $attributes['href'] ) ) { // Remove the href attribute, as it's used for the main URL. unset( $attributes['href'] ); } $this->links[ $rel ][] = array( 'href' => $href, 'attributes' => $attributes, ); } /** * Removes a link from the response. * * @since 4.4.0 * * @param string $rel Link relation. Either an IANA registered type, or an absolute URL. * @param string $href Optional. Only remove links for the relation matching the given href. * Default null. */ public function remove_link( $rel, $href = null ) { if ( ! isset( $this->links[ $rel ] ) ) { return; } if ( $href ) { $this->links[ $rel ] = wp_list_filter( $this->links[ $rel ], array( 'href' => $href ), 'NOT' ); } else { $this->links[ $rel ] = array(); } if ( ! $this->links[ $rel ] ) { unset( $this->links[ $rel ] ); } } /** * Adds multiple links to the response. * * Link data should be an associative array with link relation as the key. * The value can either be an associative array of link attributes * (including `href` with the URL for the response), or a list of these * associative arrays. * * @since 4.4.0 * * @param array $links Map of link relation to list of links. */ public function add_links( $links ) { foreach ( $links as $rel => $set ) { // If it's a single link, wrap with an array for consistent handling. if ( isset( $set['href'] ) ) { $set = array( $set ); } foreach ( $set as $attributes ) { $this->add_link( $rel, $attributes['href'], $attributes ); } } } /** * Retrieves links for the response. * * @since 4.4.0 * * @return array List of links. */ public function get_links() { return $this->links; } /** * Sets a single link header. * * @internal The $rel parameter is first, as this looks nicer when sending multiple. * * @since 4.4.0 * * @link https://tools.ietf.org/html/rfc5988 * @link https://www.iana.org/assignments/link-relations/link-relations.xml * * @param string $rel Link relation. Either an IANA registered type, or an absolute URL. * @param string $link Target IRI for the link. * @param array $other Optional. Other parameters to send, as an assocative array. * Default empty array. */ public function link_header( $rel, $link, $other = array() ) { $header = '<' . $link . '>; rel="' . $rel . '"'; foreach ( $other as $key => $value ) { if ( 'title' === $key ) { $value = '"' . $value . '"'; } $header .= '; ' . $key . '=' . $value; } $this->header( 'Link', $header, false ); } /** * Retrieves the route that was used. * * @since 4.4.0 * * @return string The matched route. */ public function get_matched_route() { return $this->matched_route; } /** * Sets the route (regex for path) that caused the response. * * @since 4.4.0 * * @param string $route Route name. */ public function set_matched_route( $route ) { $this->matched_route = $route; } /** * Retrieves the handler that was used to generate the response. * * @since 4.4.0 * * @return null|array The handler that was used to create the response. */ public function get_matched_handler() { return $this->matched_handler; } /** * Sets the handler that was responsible for generating the response. * * @since 4.4.0 * * @param array $handler The matched handler. */ public function set_matched_handler( $handler ) { $this->matched_handler = $handler; } /** * Checks if the response is an error, i.e. >= 400 response code. * * @since 4.4.0 * * @return bool Whether the response is an error. */ public function is_error() { return $this->get_status() >= 400; } /** * Retrieves a WP_Error object from the response. * * @since 4.4.0 * * @return WP_Error|null WP_Error or null on not an errored response. */ public function as_error() { if ( ! $this->is_error() ) { return null; } $error = new WP_Error; if ( is_array( $this->get_data() ) ) { $data = $this->get_data(); $error->add( $data['code'], $data['message'], $data['data'] ); if ( ! empty( $data['additional_errors'] ) ) { foreach ( $data['additional_errors'] as $err ) { $error->add( $err['code'], $err['message'], $err['data'] ); } } } else { $error->add( $this->get_status(), '', array( 'status' => $this->get_status() ) ); } return $error; } /** * Retrieves the CURIEs (compact URIs) used for relations. * * @since 4.5.0 * * @return array Compact URIs. */ public function get_curies() { $curies = array( array( 'name' => 'wp', 'href' => 'https://api.w.org/{rel}', 'templated' => true, ), ); /** * Filters extra CURIEs available on REST API responses. * * CURIEs allow a shortened version of URI relations. This allows a more * usable form for custom relations than using the full URI. These work * similarly to how XML namespaces work. * * Registered CURIES need to specify a name and URI template. This will * automatically transform URI relations into their shortened version. * The shortened relation follows the format `{name}:{rel}`. `{rel}` in * the URI template will be replaced with the `{rel}` part of the * shortened relation. * * For example, a CURIE with name `example` and URI template * `http://w.org/{rel}` would transform a `http://w.org/term` relation * into `example:term`. * * Well-behaved clients should expand and normalise these back to their * full URI relation, however some naive clients may not resolve these * correctly, so adding new CURIEs may break backward compatibility. * * @since 4.5.0 * * @param array $additional Additional CURIEs to register with the REST API. */ $additional = apply_filters( 'rest_response_link_curies', array() ); return array_merge( $curies, $additional ); } } PK�����j l\Lv��v����class-requests.phpnu�[��������<?php /** * Requests for PHP * * Inspired by Requests for Python. * * Based on concepts from SimplePie_File, RequestCore and WP_Http. * * @package Requests */ /** * Requests for PHP * * Inspired by Requests for Python. * * Based on concepts from SimplePie_File, RequestCore and WP_Http. * * @package Requests */ class Requests { /** * POST method * * @var string */ const POST = 'POST'; /** * PUT method * * @var string */ const PUT = 'PUT'; /** * GET method * * @var string */ const GET = 'GET'; /** * HEAD method * * @var string */ const HEAD = 'HEAD'; /** * DELETE method * * @var string */ const DELETE = 'DELETE'; /** * OPTIONS method * * @var string */ const OPTIONS = 'OPTIONS'; /** * TRACE method * * @var string */ const TRACE = 'TRACE'; /** * PATCH method * * @link https://tools.ietf.org/html/rfc5789 * @var string */ const PATCH = 'PATCH'; /** * Default size of buffer size to read streams * * @var integer */ const BUFFER_SIZE = 1160; /** * Current version of Requests * * @var string */ const VERSION = '1.8.1'; /** * Registered transport classes * * @var array */ protected static $transports = array(); /** * Selected transport name * * Use {@see get_transport()} instead * * @var array */ public static $transport = array(); /** * Default certificate path. * * @see Requests::get_certificate_path() * @see Requests::set_certificate_path() * * @var string */ protected static $certificate_path; /** * This is a static class, do not instantiate it * * @codeCoverageIgnore */ private function __construct() {} /** * Autoloader for Requests * * Register this with {@see register_autoloader()} if you'd like to avoid * having to create your own. * * (You can also use `spl_autoload_register` directly if you'd prefer.) * * @codeCoverageIgnore * * @param string $class Class name to load */ public static function autoloader($class) { // Check that the class starts with "Requests" if (strpos($class, 'Requests') !== 0) { return; } $file = str_replace('_', '/', $class); if (file_exists(dirname(__FILE__) . '/' . $file . '.php')) { require_once dirname(__FILE__) . '/' . $file . '.php'; } } /** * Register the built-in autoloader * * @codeCoverageIgnore */ public static function register_autoloader() { spl_autoload_register(array('Requests', 'autoloader')); } /** * Register a transport * * @param string $transport Transport class to add, must support the Requests_Transport interface */ public static function add_transport($transport) { if (empty(self::$transports)) { self::$transports = array( 'Requests_Transport_cURL', 'Requests_Transport_fsockopen', ); } self::$transports = array_merge(self::$transports, array($transport)); } /** * Get a working transport * * @throws Requests_Exception If no valid transport is found (`notransport`) * @return Requests_Transport */ protected static function get_transport($capabilities = array()) { // Caching code, don't bother testing coverage // @codeCoverageIgnoreStart // array of capabilities as a string to be used as an array key ksort($capabilities); $cap_string = serialize($capabilities); // Don't search for a transport if it's already been done for these $capabilities if (isset(self::$transport[$cap_string]) && self::$transport[$cap_string] !== null) { $class = self::$transport[$cap_string]; return new $class(); } // @codeCoverageIgnoreEnd if (empty(self::$transports)) { self::$transports = array( 'Requests_Transport_cURL', 'Requests_Transport_fsockopen', ); } // Find us a working transport foreach (self::$transports as $class) { if (!class_exists($class)) { continue; } $result = call_user_func(array($class, 'test'), $capabilities); if ($result) { self::$transport[$cap_string] = $class; break; } } if (self::$transport[$cap_string] === null) { throw new Requests_Exception('No working transports found', 'notransport', self::$transports); } $class = self::$transport[$cap_string]; return new $class(); } /**#@+ * @see request() * @param string $url * @param array $headers * @param array $options * @return Requests_Response */ /** * Send a GET request */ public static function get($url, $headers = array(), $options = array()) { return self::request($url, $headers, null, self::GET, $options); } /** * Send a HEAD request */ public static function head($url, $headers = array(), $options = array()) { return self::request($url, $headers, null, self::HEAD, $options); } /** * Send a DELETE request */ public static function delete($url, $headers = array(), $options = array()) { return self::request($url, $headers, null, self::DELETE, $options); } /** * Send a TRACE request */ public static function trace($url, $headers = array(), $options = array()) { return self::request($url, $headers, null, self::TRACE, $options); } /**#@-*/ /**#@+ * @see request() * @param string $url * @param array $headers * @param array $data * @param array $options * @return Requests_Response */ /** * Send a POST request */ public static function post($url, $headers = array(), $data = array(), $options = array()) { return self::request($url, $headers, $data, self::POST, $options); } /** * Send a PUT request */ public static function put($url, $headers = array(), $data = array(), $options = array()) { return self::request($url, $headers, $data, self::PUT, $options); } /** * Send an OPTIONS request */ public static function options($url, $headers = array(), $data = array(), $options = array()) { return self::request($url, $headers, $data, self::OPTIONS, $options); } /** * Send a PATCH request * * Note: Unlike {@see post} and {@see put}, `$headers` is required, as the * specification recommends that should send an ETag * * @link https://tools.ietf.org/html/rfc5789 */ public static function patch($url, $headers, $data = array(), $options = array()) { return self::request($url, $headers, $data, self::PATCH, $options); } /**#@-*/ /** * Main interface for HTTP requests * * This method initiates a request and sends it via a transport before * parsing. * * The `$options` parameter takes an associative array with the following * options: * * - `timeout`: How long should we wait for a response? * Note: for cURL, a minimum of 1 second applies, as DNS resolution * operates at second-resolution only. * (float, seconds with a millisecond precision, default: 10, example: 0.01) * - `connect_timeout`: How long should we wait while trying to connect? * (float, seconds with a millisecond precision, default: 10, example: 0.01) * - `useragent`: Useragent to send to the server * (string, default: php-requests/$version) * - `follow_redirects`: Should we follow 3xx redirects? * (boolean, default: true) * - `redirects`: How many times should we redirect before erroring? * (integer, default: 10) * - `blocking`: Should we block processing on this request? * (boolean, default: true) * - `filename`: File to stream the body to instead. * (string|boolean, default: false) * - `auth`: Authentication handler or array of user/password details to use * for Basic authentication * (Requests_Auth|array|boolean, default: false) * - `proxy`: Proxy details to use for proxy by-passing and authentication * (Requests_Proxy|array|string|boolean, default: false) * - `max_bytes`: Limit for the response body size. * (integer|boolean, default: false) * - `idn`: Enable IDN parsing * (boolean, default: true) * - `transport`: Custom transport. Either a class name, or a * transport object. Defaults to the first working transport from * {@see getTransport()} * (string|Requests_Transport, default: {@see getTransport()}) * - `hooks`: Hooks handler. * (Requests_Hooker, default: new Requests_Hooks()) * - `verify`: Should we verify SSL certificates? Allows passing in a custom * certificate file as a string. (Using true uses the system-wide root * certificate store instead, but this may have different behaviour * across transports.) * (string|boolean, default: library/Requests/Transport/cacert.pem) * - `verifyname`: Should we verify the common name in the SSL certificate? * (boolean, default: true) * - `data_format`: How should we send the `$data` parameter? * (string, one of 'query' or 'body', default: 'query' for * HEAD/GET/DELETE, 'body' for POST/PUT/OPTIONS/PATCH) * * @throws Requests_Exception On invalid URLs (`nonhttp`) * * @param string $url URL to request * @param array $headers Extra headers to send with the request * @param array|null $data Data to send either as a query string for GET/HEAD requests, or in the body for POST requests * @param string $type HTTP request type (use Requests constants) * @param array $options Options for the request (see description for more information) * @return Requests_Response */ public static function request($url, $headers = array(), $data = array(), $type = self::GET, $options = array()) { if (empty($options['type'])) { $options['type'] = $type; } $options = array_merge(self::get_default_options(), $options); self::set_defaults($url, $headers, $data, $type, $options); $options['hooks']->dispatch('requests.before_request', array(&$url, &$headers, &$data, &$type, &$options)); if (!empty($options['transport'])) { $transport = $options['transport']; if (is_string($options['transport'])) { $transport = new $transport(); } } else { $need_ssl = (stripos($url, 'https://') === 0); $capabilities = array('ssl' => $need_ssl); $transport = self::get_transport($capabilities); } $response = $transport->request($url, $headers, $data, $options); $options['hooks']->dispatch('requests.before_parse', array(&$response, $url, $headers, $data, $type, $options)); return self::parse_response($response, $url, $headers, $data, $options); } /** * Send multiple HTTP requests simultaneously * * The `$requests` parameter takes an associative or indexed array of * request fields. The key of each request can be used to match up the * request with the returned data, or with the request passed into your * `multiple.request.complete` callback. * * The request fields value is an associative array with the following keys: * * - `url`: Request URL Same as the `$url` parameter to * {@see Requests::request} * (string, required) * - `headers`: Associative array of header fields. Same as the `$headers` * parameter to {@see Requests::request} * (array, default: `array()`) * - `data`: Associative array of data fields or a string. Same as the * `$data` parameter to {@see Requests::request} * (array|string, default: `array()`) * - `type`: HTTP request type (use Requests constants). Same as the `$type` * parameter to {@see Requests::request} * (string, default: `Requests::GET`) * - `cookies`: Associative array of cookie name to value, or cookie jar. * (array|Requests_Cookie_Jar) * * If the `$options` parameter is specified, individual requests will * inherit options from it. This can be used to use a single hooking system, * or set all the types to `Requests::POST`, for example. * * In addition, the `$options` parameter takes the following global options: * * - `complete`: A callback for when a request is complete. Takes two * parameters, a Requests_Response/Requests_Exception reference, and the * ID from the request array (Note: this can also be overridden on a * per-request basis, although that's a little silly) * (callback) * * @param array $requests Requests data (see description for more information) * @param array $options Global and default options (see {@see Requests::request}) * @return array Responses (either Requests_Response or a Requests_Exception object) */ public static function request_multiple($requests, $options = array()) { $options = array_merge(self::get_default_options(true), $options); if (!empty($options['hooks'])) { $options['hooks']->register('transport.internal.parse_response', array('Requests', 'parse_multiple')); if (!empty($options['complete'])) { $options['hooks']->register('multiple.request.complete', $options['complete']); } } foreach ($requests as $id => &$request) { if (!isset($request['headers'])) { $request['headers'] = array(); } if (!isset($request['data'])) { $request['data'] = array(); } if (!isset($request['type'])) { $request['type'] = self::GET; } if (!isset($request['options'])) { $request['options'] = $options; $request['options']['type'] = $request['type']; } else { if (empty($request['options']['type'])) { $request['options']['type'] = $request['type']; } $request['options'] = array_merge($options, $request['options']); } self::set_defaults($request['url'], $request['headers'], $request['data'], $request['type'], $request['options']); // Ensure we only hook in once if ($request['options']['hooks'] !== $options['hooks']) { $request['options']['hooks']->register('transport.internal.parse_response', array('Requests', 'parse_multiple')); if (!empty($request['options']['complete'])) { $request['options']['hooks']->register('multiple.request.complete', $request['options']['complete']); } } } unset($request); if (!empty($options['transport'])) { $transport = $options['transport']; if (is_string($options['transport'])) { $transport = new $transport(); } } else { $transport = self::get_transport(); } $responses = $transport->request_multiple($requests, $options); foreach ($responses as $id => &$response) { // If our hook got messed with somehow, ensure we end up with the // correct response if (is_string($response)) { $request = $requests[$id]; self::parse_multiple($response, $request); $request['options']['hooks']->dispatch('multiple.request.complete', array(&$response, $id)); } } return $responses; } /** * Get the default options * * @see Requests::request() for values returned by this method * @param boolean $multirequest Is this a multirequest? * @return array Default option values */ protected static function get_default_options($multirequest = false) { $defaults = array( 'timeout' => 10, 'connect_timeout' => 10, 'useragent' => 'php-requests/' . self::VERSION, 'protocol_version' => 1.1, 'redirected' => 0, 'redirects' => 10, 'follow_redirects' => true, 'blocking' => true, 'type' => self::GET, 'filename' => false, 'auth' => false, 'proxy' => false, 'cookies' => false, 'max_bytes' => false, 'idn' => true, 'hooks' => null, 'transport' => null, 'verify' => self::get_certificate_path(), 'verifyname' => true, ); if ($multirequest !== false) { $defaults['complete'] = null; } return $defaults; } /** * Get default certificate path. * * @return string Default certificate path. */ public static function get_certificate_path() { if (!empty(self::$certificate_path)) { return self::$certificate_path; } return dirname(__FILE__) . '/Requests/Transport/cacert.pem'; } /** * Set default certificate path. * * @param string $path Certificate path, pointing to a PEM file. */ public static function set_certificate_path($path) { self::$certificate_path = $path; } /** * Set the default values * * @param string $url URL to request * @param array $headers Extra headers to send with the request * @param array|null $data Data to send either as a query string for GET/HEAD requests, or in the body for POST requests * @param string $type HTTP request type * @param array $options Options for the request * @return array $options */ protected static function set_defaults(&$url, &$headers, &$data, &$type, &$options) { if (!preg_match('/^http(s)?:\/\//i', $url, $matches)) { throw new Requests_Exception('Only HTTP(S) requests are handled.', 'nonhttp', $url); } if (empty($options['hooks'])) { $options['hooks'] = new Requests_Hooks(); } if (is_array($options['auth'])) { $options['auth'] = new Requests_Auth_Basic($options['auth']); } if ($options['auth'] !== false) { $options['auth']->register($options['hooks']); } if (is_string($options['proxy']) || is_array($options['proxy'])) { $options['proxy'] = new Requests_Proxy_HTTP($options['proxy']); } if ($options['proxy'] !== false) { $options['proxy']->register($options['hooks']); } if (is_array($options['cookies'])) { $options['cookies'] = new Requests_Cookie_Jar($options['cookies']); } elseif (empty($options['cookies'])) { $options['cookies'] = new Requests_Cookie_Jar(); } if ($options['cookies'] !== false) { $options['cookies']->register($options['hooks']); } if ($options['idn'] !== false) { $iri = new Requests_IRI($url); $iri->host = Requests_IDNAEncoder::encode($iri->ihost); $url = $iri->uri; } // Massage the type to ensure we support it. $type = strtoupper($type); if (!isset($options['data_format'])) { if (in_array($type, array(self::HEAD, self::GET, self::DELETE), true)) { $options['data_format'] = 'query'; } else { $options['data_format'] = 'body'; } } } /** * HTTP response parser * * @throws Requests_Exception On missing head/body separator (`requests.no_crlf_separator`) * @throws Requests_Exception On missing head/body separator (`noversion`) * @throws Requests_Exception On missing head/body separator (`toomanyredirects`) * * @param string $headers Full response text including headers and body * @param string $url Original request URL * @param array $req_headers Original $headers array passed to {@link request()}, in case we need to follow redirects * @param array $req_data Original $data array passed to {@link request()}, in case we need to follow redirects * @param array $options Original $options array passed to {@link request()}, in case we need to follow redirects * @return Requests_Response */ protected static function parse_response($headers, $url, $req_headers, $req_data, $options) { $return = new Requests_Response(); if (!$options['blocking']) { return $return; } $return->raw = $headers; $return->url = (string) $url; $return->body = ''; if (!$options['filename']) { $pos = strpos($headers, "\r\n\r\n"); if ($pos === false) { // Crap! throw new Requests_Exception('Missing header/body separator', 'requests.no_crlf_separator'); } $headers = substr($return->raw, 0, $pos); // Headers will always be separated from the body by two new lines - `\n\r\n\r`. $body = substr($return->raw, $pos + 4); if (!empty($body)) { $return->body = $body; } } // Pretend CRLF = LF for compatibility (RFC 2616, section 19.3) $headers = str_replace("\r\n", "\n", $headers); // Unfold headers (replace [CRLF] 1*( SP | HT ) with SP) as per RFC 2616 (section 2.2) $headers = preg_replace('/\n[ \t]/', ' ', $headers); $headers = explode("\n", $headers); preg_match('#^HTTP/(1\.\d)[ \t]+(\d+)#i', array_shift($headers), $matches); if (empty($matches)) { throw new Requests_Exception('Response could not be parsed', 'noversion', $headers); } $return->protocol_version = (float) $matches[1]; $return->status_code = (int) $matches[2]; if ($return->status_code >= 200 && $return->status_code < 300) { $return->success = true; } foreach ($headers as $header) { list($key, $value) = explode(':', $header, 2); $value = trim($value); preg_replace('#(\s+)#i', ' ', $value); $return->headers[$key] = $value; } if (isset($return->headers['transfer-encoding'])) { $return->body = self::decode_chunked($return->body); unset($return->headers['transfer-encoding']); } if (isset($return->headers['content-encoding'])) { $return->body = self::decompress($return->body); } //fsockopen and cURL compatibility if (isset($return->headers['connection'])) { unset($return->headers['connection']); } $options['hooks']->dispatch('requests.before_redirect_check', array(&$return, $req_headers, $req_data, $options)); if ($return->is_redirect() && $options['follow_redirects'] === true) { if (isset($return->headers['location']) && $options['redirected'] < $options['redirects']) { if ($return->status_code === 303) { $options['type'] = self::GET; } $options['redirected']++; $location = $return->headers['location']; if (strpos($location, 'http://') !== 0 && strpos($location, 'https://') !== 0) { // relative redirect, for compatibility make it absolute $location = Requests_IRI::absolutize($url, $location); $location = $location->uri; } $hook_args = array( &$location, &$req_headers, &$req_data, &$options, $return, ); $options['hooks']->dispatch('requests.before_redirect', $hook_args); $redirected = self::request($location, $req_headers, $req_data, $options['type'], $options); $redirected->history[] = $return; return $redirected; } elseif ($options['redirected'] >= $options['redirects']) { throw new Requests_Exception('Too many redirects', 'toomanyredirects', $return); } } $return->redirects = $options['redirected']; $options['hooks']->dispatch('requests.after_request', array(&$return, $req_headers, $req_data, $options)); return $return; } /** * Callback for `transport.internal.parse_response` * * Internal use only. Converts a raw HTTP response to a Requests_Response * while still executing a multiple request. * * @param string $response Full response text including headers and body (will be overwritten with Response instance) * @param array $request Request data as passed into {@see Requests::request_multiple()} * @return null `$response` is either set to a Requests_Response instance, or a Requests_Exception object */ public static function parse_multiple(&$response, $request) { try { $url = $request['url']; $headers = $request['headers']; $data = $request['data']; $options = $request['options']; $response = self::parse_response($response, $url, $headers, $data, $options); } catch (Requests_Exception $e) { $response = $e; } } /** * Decoded a chunked body as per RFC 2616 * * @see https://tools.ietf.org/html/rfc2616#section-3.6.1 * @param string $data Chunked body * @return string Decoded body */ protected static function decode_chunked($data) { if (!preg_match('/^([0-9a-f]+)(?:;(?:[\w-]*)(?:=(?:(?:[\w-]*)*|"(?:[^\r\n])*"))?)*\r\n/i', trim($data))) { return $data; } $decoded = ''; $encoded = $data; while (true) { $is_chunked = (bool) preg_match('/^([0-9a-f]+)(?:;(?:[\w-]*)(?:=(?:(?:[\w-]*)*|"(?:[^\r\n])*"))?)*\r\n/i', $encoded, $matches); if (!$is_chunked) { // Looks like it's not chunked after all return $data; } $length = hexdec(trim($matches[1])); if ($length === 0) { // Ignore trailer headers return $decoded; } $chunk_length = strlen($matches[0]); $decoded .= substr($encoded, $chunk_length, $length); $encoded = substr($encoded, $chunk_length + $length + 2); if (trim($encoded) === '0' || empty($encoded)) { return $decoded; } } // We'll never actually get down here // @codeCoverageIgnoreStart } // @codeCoverageIgnoreEnd /** * Convert a key => value array to a 'key: value' array for headers * * @param array $array Dictionary of header values * @return array List of headers */ public static function flatten($array) { $return = array(); foreach ($array as $key => $value) { $return[] = sprintf('%s: %s', $key, $value); } return $return; } /** * Convert a key => value array to a 'key: value' array for headers * * @codeCoverageIgnore * @deprecated Misspelling of {@see Requests::flatten} * @param array $array Dictionary of header values * @return array List of headers */ public static function flattern($array) { return self::flatten($array); } /** * Decompress an encoded body * * Implements gzip, compress and deflate. Guesses which it is by attempting * to decode. * * @param string $data Compressed data in one of the above formats * @return string Decompressed string */ public static function decompress($data) { if (substr($data, 0, 2) !== "\x1f\x8b" && substr($data, 0, 2) !== "\x78\x9c") { // Not actually compressed. Probably cURL ruining this for us. return $data; } if (function_exists('gzdecode')) { // phpcs:ignore PHPCompatibility.FunctionUse.NewFunctions.gzdecodeFound -- Wrapped in function_exists() for PHP 5.2. $decoded = @gzdecode($data); if ($decoded !== false) { return $decoded; } } if (function_exists('gzinflate')) { $decoded = @gzinflate($data); if ($decoded !== false) { return $decoded; } } $decoded = self::compatible_gzinflate($data); if ($decoded !== false) { return $decoded; } if (function_exists('gzuncompress')) { $decoded = @gzuncompress($data); if ($decoded !== false) { return $decoded; } } return $data; } /** * Decompression of deflated string while staying compatible with the majority of servers. * * Certain Servers will return deflated data with headers which PHP's gzinflate() * function cannot handle out of the box. The following function has been created from * various snippets on the gzinflate() PHP documentation. * * Warning: Magic numbers within. Due to the potential different formats that the compressed * data may be returned in, some "magic offsets" are needed to ensure proper decompression * takes place. For a simple progmatic way to determine the magic offset in use, see: * https://core.trac.wordpress.org/ticket/18273 * * @since 2.8.1 * @link https://core.trac.wordpress.org/ticket/18273 * @link https://secure.php.net/manual/en/function.gzinflate.php#70875 * @link https://secure.php.net/manual/en/function.gzinflate.php#77336 * * @param string $gz_data String to decompress. * @return string|bool False on failure. */ public static function compatible_gzinflate($gz_data) { // Compressed data might contain a full zlib header, if so strip it for // gzinflate() if (substr($gz_data, 0, 3) === "\x1f\x8b\x08") { $i = 10; $flg = ord(substr($gz_data, 3, 1)); if ($flg > 0) { if ($flg & 4) { list($xlen) = unpack('v', substr($gz_data, $i, 2)); $i += 2 + $xlen; } if ($flg & 8) { $i = strpos($gz_data, "\0", $i) + 1; } if ($flg & 16) { $i = strpos($gz_data, "\0", $i) + 1; } if ($flg & 2) { $i += 2; } } $decompressed = self::compatible_gzinflate(substr($gz_data, $i)); if ($decompressed !== false) { return $decompressed; } } // If the data is Huffman Encoded, we must first strip the leading 2 // byte Huffman marker for gzinflate() // The response is Huffman coded by many compressors such as // java.util.zip.Deflater, Ruby’s Zlib::Deflate, and .NET's // System.IO.Compression.DeflateStream. // // See https://decompres.blogspot.com/ for a quick explanation of this // data type $huffman_encoded = false; // low nibble of first byte should be 0x08 list(, $first_nibble) = unpack('h', $gz_data); // First 2 bytes should be divisible by 0x1F list(, $first_two_bytes) = unpack('n', $gz_data); if ($first_nibble === 0x08 && ($first_two_bytes % 0x1F) === 0) { $huffman_encoded = true; } if ($huffman_encoded) { $decompressed = @gzinflate(substr($gz_data, 2)); if ($decompressed !== false) { return $decompressed; } } if (substr($gz_data, 0, 4) === "\x50\x4b\x03\x04") { // ZIP file format header // Offset 6: 2 bytes, General-purpose field // Offset 26: 2 bytes, filename length // Offset 28: 2 bytes, optional field length // Offset 30: Filename field, followed by optional field, followed // immediately by data list(, $general_purpose_flag) = unpack('v', substr($gz_data, 6, 2)); // If the file has been compressed on the fly, 0x08 bit is set of // the general purpose field. We can use this to differentiate // between a compressed document, and a ZIP file $zip_compressed_on_the_fly = ((0x08 & $general_purpose_flag) === 0x08); if (!$zip_compressed_on_the_fly) { // Don't attempt to decode a compressed zip file return $gz_data; } // Determine the first byte of data, based on the above ZIP header // offsets: $first_file_start = array_sum(unpack('v2', substr($gz_data, 26, 4))); $decompressed = @gzinflate(substr($gz_data, 30 + $first_file_start)); if ($decompressed !== false) { return $decompressed; } return false; } // Finally fall back to straight gzinflate $decompressed = @gzinflate($gz_data); if ($decompressed !== false) { return $decompressed; } // Fallback for all above failing, not expected, but included for // debugging and preventing regressions and to track stats $decompressed = @gzinflate(substr($gz_data, 2)); if ($decompressed !== false) { return $decompressed; } return false; } public static function match_domain($host, $reference) { // Check for a direct match if ($host === $reference) { return true; } // Calculate the valid wildcard match if the host is not an IP address // Also validates that the host has 3 parts or more, as per Firefox's // ruleset. $parts = explode('.', $host); if (ip2long($host) === false && count($parts) >= 3) { $parts[0] = '*'; $wildcard = implode('.', $parts); if ($wildcard === $reference) { return true; } } return false; } } PK�����j l\m}Nj��Nj�� ��query.phpnu�[��������<?php /** * WordPress Query API * * The query API attempts to get which part of WordPress the user is on. It * also provides functionality for getting URL query information. * * @link https://developer.wordpress.org/themes/basics/the-loop/ More information on The Loop. * * @package WordPress * @subpackage Query */ /** * Retrieves the value of a query variable in the WP_Query class. * * @since 1.5.0 * @since 3.9.0 The `$default` argument was introduced. * * @global WP_Query $wp_query WordPress Query object. * * @param string $var The variable key to retrieve. * @param mixed $default Optional. Value to return if the query variable is not set. Default empty. * @return mixed Contents of the query variable. */ function get_query_var( $var, $default = '' ) { global $wp_query; return $wp_query->get( $var, $default ); } /** * Retrieves the currently queried object. * * Wrapper for WP_Query::get_queried_object(). * * @since 3.1.0 * * @global WP_Query $wp_query WordPress Query object. * * @return WP_Term|WP_Post_Type|WP_Post|WP_User|null The queried object. */ function get_queried_object() { global $wp_query; return $wp_query->get_queried_object(); } /** * Retrieves the ID of the currently queried object. * * Wrapper for WP_Query::get_queried_object_id(). * * @since 3.1.0 * * @global WP_Query $wp_query WordPress Query object. * * @return int ID of the queried object. */ function get_queried_object_id() { global $wp_query; return $wp_query->get_queried_object_id(); } /** * Sets the value of a query variable in the WP_Query class. * * @since 2.2.0 * * @global WP_Query $wp_query WordPress Query object. * * @param string $var Query variable key. * @param mixed $value Query variable value. */ function set_query_var( $var, $value ) { global $wp_query; $wp_query->set( $var, $value ); } /** * Sets up The Loop with query parameters. * * Note: This function will completely override the main query and isn't intended for use * by plugins or themes. Its overly-simplistic approach to modifying the main query can be * problematic and should be avoided wherever possible. In most cases, there are better, * more performant options for modifying the main query such as via the {@see 'pre_get_posts'} * action within WP_Query. * * This must not be used within the WordPress Loop. * * @since 1.5.0 * * @global WP_Query $wp_query WordPress Query object. * * @param array|string $query Array or string of WP_Query arguments. * @return WP_Post[]|int[] Array of post objects or post IDs. */ function query_posts( $query ) { $GLOBALS['wp_query'] = new WP_Query(); return $GLOBALS['wp_query']->query( $query ); } /** * Destroys the previous query and sets up a new query. * * This should be used after query_posts() and before another query_posts(). * This will remove obscure bugs that occur when the previous WP_Query object * is not destroyed properly before another is set up. * * @since 2.3.0 * * @global WP_Query $wp_query WordPress Query object. * @global WP_Query $wp_the_query Copy of the global WP_Query instance created during wp_reset_query(). */ function wp_reset_query() { $GLOBALS['wp_query'] = $GLOBALS['wp_the_query']; wp_reset_postdata(); } /** * After looping through a separate query, this function restores * the $post global to the current post in the main query. * * @since 3.0.0 * * @global WP_Query $wp_query WordPress Query object. */ function wp_reset_postdata() { global $wp_query; if ( isset( $wp_query ) ) { $wp_query->reset_postdata(); } } /* * Query type checks. */ /** * Determines whether the query is for an existing archive page. * * Archive pages include category, tag, author, date, custom post type, * and custom taxonomy based archives. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 1.5.0 * * @see is_category() * @see is_tag() * @see is_author() * @see is_date() * @see is_post_type_archive() * @see is_tax() * @global WP_Query $wp_query WordPress Query object. * * @return bool Whether the query is for an existing archive page. */ function is_archive() { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_archive(); } /** * Determines whether the query is for an existing post type archive page. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 3.1.0 * * @global WP_Query $wp_query WordPress Query object. * * @param string|string[] $post_types Optional. Post type or array of posts types * to check against. Default empty. * @return bool Whether the query is for an existing post type archive page. */ function is_post_type_archive( $post_types = '' ) { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_post_type_archive( $post_types ); } /** * Determines whether the query is for an existing attachment page. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 2.0.0 * * @global WP_Query $wp_query WordPress Query object. * * @param int|string|int[]|string[] $attachment Optional. Attachment ID, title, slug, or array of such * to check against. Default empty. * @return bool Whether the query is for an existing attachment page. */ function is_attachment( $attachment = '' ) { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_attachment( $attachment ); } /** * Determines whether the query is for an existing author archive page. * * If the $author parameter is specified, this function will additionally * check if the query is for one of the authors specified. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 1.5.0 * * @global WP_Query $wp_query WordPress Query object. * * @param int|string|int[]|string[] $author Optional. User ID, nickname, nicename, or array of such * to check against. Default empty. * @return bool Whether the query is for an existing author archive page. */ function is_author( $author = '' ) { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_author( $author ); } /** * Determines whether the query is for an existing category archive page. * * If the $category parameter is specified, this function will additionally * check if the query is for one of the categories specified. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 1.5.0 * * @global WP_Query $wp_query WordPress Query object. * * @param int|string|int[]|string[] $category Optional. Category ID, name, slug, or array of such * to check against. Default empty. * @return bool Whether the query is for an existing category archive page. */ function is_category( $category = '' ) { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_category( $category ); } /** * Determines whether the query is for an existing tag archive page. * * If the $tag parameter is specified, this function will additionally * check if the query is for one of the tags specified. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 2.3.0 * * @global WP_Query $wp_query WordPress Query object. * * @param int|string|int[]|string[] $tag Optional. Tag ID, name, slug, or array of such * to check against. Default empty. * @return bool Whether the query is for an existing tag archive page. */ function is_tag( $tag = '' ) { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_tag( $tag ); } /** * Determines whether the query is for an existing custom taxonomy archive page. * * If the $taxonomy parameter is specified, this function will additionally * check if the query is for that specific $taxonomy. * * If the $term parameter is specified in addition to the $taxonomy parameter, * this function will additionally check if the query is for one of the terms * specified. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 2.5.0 * * @global WP_Query $wp_query WordPress Query object. * * @param string|string[] $taxonomy Optional. Taxonomy slug or slugs to check against. * Default empty. * @param int|string|int[]|string[] $term Optional. Term ID, name, slug, or array of such * to check against. Default empty. * @return bool Whether the query is for an existing custom taxonomy archive page. * True for custom taxonomy archive pages, false for built-in taxonomies * (category and tag archives). */ function is_tax( $taxonomy = '', $term = '' ) { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_tax( $taxonomy, $term ); } /** * Determines whether the query is for an existing date archive. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 1.5.0 * * @global WP_Query $wp_query WordPress Query object. * * @return bool Whether the query is for an existing date archive. */ function is_date() { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_date(); } /** * Determines whether the query is for an existing day archive. * * A conditional check to test whether the page is a date-based archive page displaying posts for the current day. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 1.5.0 * * @global WP_Query $wp_query WordPress Query object. * * @return bool Whether the query is for an existing day archive. */ function is_day() { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_day(); } /** * Determines whether the query is for a feed. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 1.5.0 * * @global WP_Query $wp_query WordPress Query object. * * @param string|string[] $feeds Optional. Feed type or array of feed types * to check against. Default empty. * @return bool Whether the query is for a feed. */ function is_feed( $feeds = '' ) { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_feed( $feeds ); } /** * Is the query for a comments feed? * * @since 3.0.0 * * @global WP_Query $wp_query WordPress Query object. * * @return bool Whether the query is for a comments feed. */ function is_comment_feed() { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_comment_feed(); } /** * Determines whether the query is for the front page of the site. * * This is for what is displayed at your site's main URL. * * Depends on the site's "Front page displays" Reading Settings 'show_on_front' and 'page_on_front'. * * If you set a static page for the front page of your site, this function will return * true when viewing that page. * * Otherwise the same as @see is_home() * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 2.5.0 * * @global WP_Query $wp_query WordPress Query object. * * @return bool Whether the query is for the front page of the site. */ function is_front_page() { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_front_page(); } /** * Determines whether the query is for the blog homepage. * * The blog homepage is the page that shows the time-based blog content of the site. * * is_home() is dependent on the site's "Front page displays" Reading Settings 'show_on_front' * and 'page_for_posts'. * * If a static page is set for the front page of the site, this function will return true only * on the page you set as the "Posts page". * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 1.5.0 * * @see is_front_page() * @global WP_Query $wp_query WordPress Query object. * * @return bool Whether the query is for the blog homepage. */ function is_home() { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_home(); } /** * Determines whether the query is for the Privacy Policy page. * * The Privacy Policy page is the page that shows the Privacy Policy content of the site. * * is_privacy_policy() is dependent on the site's "Change your Privacy Policy page" Privacy Settings 'wp_page_for_privacy_policy'. * * This function will return true only on the page you set as the "Privacy Policy page". * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 5.2.0 * * @global WP_Query $wp_query WordPress Query object. * * @return bool Whether the query is for the Privacy Policy page. */ function is_privacy_policy() { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_privacy_policy(); } /** * Determines whether the query is for an existing month archive. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 1.5.0 * * @global WP_Query $wp_query WordPress Query object. * * @return bool Whether the query is for an existing month archive. */ function is_month() { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_month(); } /** * Determines whether the query is for an existing single page. * * If the $page parameter is specified, this function will additionally * check if the query is for one of the pages specified. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 1.5.0 * * @see is_single() * @see is_singular() * @global WP_Query $wp_query WordPress Query object. * * @param int|string|int[]|string[] $page Optional. Page ID, title, slug, or array of such * to check against. Default empty. * @return bool Whether the query is for an existing single page. */ function is_page( $page = '' ) { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_page( $page ); } /** * Determines whether the query is for a paged result and not for the first page. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 1.5.0 * * @global WP_Query $wp_query WordPress Query object. * * @return bool Whether the query is for a paged result. */ function is_paged() { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_paged(); } /** * Determines whether the query is for a post or page preview. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 2.0.0 * * @global WP_Query $wp_query WordPress Query object. * * @return bool Whether the query is for a post or page preview. */ function is_preview() { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_preview(); } /** * Is the query for the robots.txt file? * * @since 2.1.0 * * @global WP_Query $wp_query WordPress Query object. * * @return bool Whether the query is for the robots.txt file. */ function is_robots() { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_robots(); } /** * Is the query for the favicon.ico file? * * @since 5.4.0 * * @global WP_Query $wp_query WordPress Query object. * * @return bool Whether the query is for the favicon.ico file. */ function is_favicon() { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_favicon(); } /** * Determines whether the query is for a search. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 1.5.0 * * @global WP_Query $wp_query WordPress Query object. * * @return bool Whether the query is for a search. */ function is_search() { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_search(); } /** * Determines whether the query is for an existing single post. * * Works for any post type, except attachments and pages * * If the $post parameter is specified, this function will additionally * check if the query is for one of the Posts specified. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 1.5.0 * * @see is_page() * @see is_singular() * @global WP_Query $wp_query WordPress Query object. * * @param int|string|int[]|string[] $post Optional. Post ID, title, slug, or array of such * to check against. Default empty. * @return bool Whether the query is for an existing single post. */ function is_single( $post = '' ) { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_single( $post ); } /** * Determines whether the query is for an existing single post of any post type * (post, attachment, page, custom post types). * * If the $post_types parameter is specified, this function will additionally * check if the query is for one of the Posts Types specified. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 1.5.0 * * @see is_page() * @see is_single() * @global WP_Query $wp_query WordPress Query object. * * @param string|string[] $post_types Optional. Post type or array of post types * to check against. Default empty. * @return bool Whether the query is for an existing single post * or any of the given post types. */ function is_singular( $post_types = '' ) { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_singular( $post_types ); } /** * Determines whether the query is for a specific time. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 1.5.0 * * @global WP_Query $wp_query WordPress Query object. * * @return bool Whether the query is for a specific time. */ function is_time() { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_time(); } /** * Determines whether the query is for a trackback endpoint call. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 1.5.0 * * @global WP_Query $wp_query WordPress Query object. * * @return bool Whether the query is for a trackback endpoint call. */ function is_trackback() { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_trackback(); } /** * Determines whether the query is for an existing year archive. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 1.5.0 * * @global WP_Query $wp_query WordPress Query object. * * @return bool Whether the query is for an existing year archive. */ function is_year() { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_year(); } /** * Determines whether the query has resulted in a 404 (returns no results). * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 1.5.0 * * @global WP_Query $wp_query WordPress Query object. * * @return bool Whether the query is a 404 error. */ function is_404() { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_404(); } /** * Is the query for an embedded post? * * @since 4.4.0 * * @global WP_Query $wp_query WordPress Query object. * * @return bool Whether the query is for an embedded post. */ function is_embed() { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_embed(); } /** * Determines whether the query is the main query. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 3.3.0 * * @global WP_Query $wp_query WordPress Query object. * * @return bool Whether the query is the main query. */ function is_main_query() { global $wp_query; if ( 'pre_get_posts' === current_filter() ) { _doing_it_wrong( __FUNCTION__, sprintf( /* translators: 1: pre_get_posts, 2: WP_Query->is_main_query(), 3: is_main_query(), 4: Documentation URL. */ __( 'In %1$s, use the %2$s method, not the %3$s function. See %4$s.' ), '<code>pre_get_posts</code>', '<code>WP_Query->is_main_query()</code>', '<code>is_main_query()</code>', __( 'https://developer.wordpress.org/reference/functions/is_main_query/' ) ), '3.7.0' ); } return $wp_query->is_main_query(); } /* * The Loop. Post loop control. */ /** * Determines whether current WordPress query has posts to loop over. * * @since 1.5.0 * * @global WP_Query $wp_query WordPress Query object. * * @return bool True if posts are available, false if end of the loop. */ function have_posts() { global $wp_query; return $wp_query->have_posts(); } /** * Determines whether the caller is in the Loop. * * For more information on this and similar theme functions, check out * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ * Conditional Tags} article in the Theme Developer Handbook. * * @since 2.0.0 * * @global WP_Query $wp_query WordPress Query object. * * @return bool True if caller is within loop, false if loop hasn't started or ended. */ function in_the_loop() { global $wp_query; return $wp_query->in_the_loop; } /** * Rewind the loop posts. * * @since 1.5.0 * * @global WP_Query $wp_query WordPress Query object. */ function rewind_posts() { global $wp_query; $wp_query->rewind_posts(); } /** * Iterate the post index in the loop. * * @since 1.5.0 * * @global WP_Query $wp_query WordPress Query object. */ function the_post() { global $wp_query; $wp_query->the_post(); } /* * Comments loop. */ /** * Determines whether current WordPress query has comments to loop over. * * @since 2.2.0 * * @global WP_Query $wp_query WordPress Query object. * * @return bool True if comments are available, false if no more comments. */ function have_comments() { global $wp_query; return $wp_query->have_comments(); } /** * Iterate comment index in the comment loop. * * @since 2.2.0 * * @global WP_Query $wp_query WordPress Query object. * * @return null */ function the_comment() { global $wp_query; return $wp_query->the_comment(); } /** * Redirect old slugs to the correct permalink. * * Attempts to find the current slug from the past slugs. * * @since 2.1.0 */ function wp_old_slug_redirect() { if ( is_404() && '' !== get_query_var( 'name' ) ) { // Guess the current post type based on the query vars. if ( get_query_var( 'post_type' ) ) { $post_type = get_query_var( 'post_type' ); } elseif ( get_query_var( 'attachment' ) ) { $post_type = 'attachment'; } elseif ( get_query_var( 'pagename' ) ) { $post_type = 'page'; } else { $post_type = 'post'; } if ( is_array( $post_type ) ) { if ( count( $post_type ) > 1 ) { return; } $post_type = reset( $post_type ); } // Do not attempt redirect for hierarchical post types. if ( is_post_type_hierarchical( $post_type ) ) { return; } $id = _find_post_by_old_slug( $post_type ); if ( ! $id ) { $id = _find_post_by_old_date( $post_type ); } /** * Filters the old slug redirect post ID. * * @since 4.9.3 * * @param int $id The redirect post ID. */ $id = apply_filters( 'old_slug_redirect_post_id', $id ); if ( ! $id ) { return; } $link = get_permalink( $id ); if ( get_query_var( 'paged' ) > 1 ) { $link = user_trailingslashit( trailingslashit( $link ) . 'page/' . get_query_var( 'paged' ) ); } elseif ( is_embed() ) { $link = user_trailingslashit( trailingslashit( $link ) . 'embed' ); } /** * Filters the old slug redirect URL. * * @since 4.4.0 * * @param string $link The redirect URL. */ $link = apply_filters( 'old_slug_redirect_url', $link ); if ( ! $link ) { return; } wp_redirect( $link, 301 ); // Permanent redirect. exit; } } /** * Find the post ID for redirecting an old slug. * * @since 4.9.3 * @access private * * @see wp_old_slug_redirect() * @global wpdb $wpdb WordPress database abstraction object. * * @param string $post_type The current post type based on the query vars. * @return int The Post ID. */ function _find_post_by_old_slug( $post_type ) { global $wpdb; $query = $wpdb->prepare( "SELECT post_id FROM $wpdb->postmeta, $wpdb->posts WHERE ID = post_id AND post_type = %s AND meta_key = '_wp_old_slug' AND meta_value = %s", $post_type, get_query_var( 'name' ) ); // If year, monthnum, or day have been specified, make our query more precise // just in case there are multiple identical _wp_old_slug values. if ( get_query_var( 'year' ) ) { $query .= $wpdb->prepare( ' AND YEAR(post_date) = %d', get_query_var( 'year' ) ); } if ( get_query_var( 'monthnum' ) ) { $query .= $wpdb->prepare( ' AND MONTH(post_date) = %d', get_query_var( 'monthnum' ) ); } if ( get_query_var( 'day' ) ) { $query .= $wpdb->prepare( ' AND DAYOFMONTH(post_date) = %d', get_query_var( 'day' ) ); } $id = (int) $wpdb->get_var( $query ); return $id; } /** * Find the post ID for redirecting an old date. * * @since 4.9.3 * @access private * * @see wp_old_slug_redirect() * @global wpdb $wpdb WordPress database abstraction object. * * @param string $post_type The current post type based on the query vars. * @return int The Post ID. */ function _find_post_by_old_date( $post_type ) { global $wpdb; $date_query = ''; if ( get_query_var( 'year' ) ) { $date_query .= $wpdb->prepare( ' AND YEAR(pm_date.meta_value) = %d', get_query_var( 'year' ) ); } if ( get_query_var( 'monthnum' ) ) { $date_query .= $wpdb->prepare( ' AND MONTH(pm_date.meta_value) = %d', get_query_var( 'monthnum' ) ); } if ( get_query_var( 'day' ) ) { $date_query .= $wpdb->prepare( ' AND DAYOFMONTH(pm_date.meta_value) = %d', get_query_var( 'day' ) ); } $id = 0; if ( $date_query ) { $id = (int) $wpdb->get_var( $wpdb->prepare( "SELECT post_id FROM $wpdb->postmeta AS pm_date, $wpdb->posts WHERE ID = post_id AND post_type = %s AND meta_key = '_wp_old_date' AND post_name = %s" . $date_query, $post_type, get_query_var( 'name' ) ) ); if ( ! $id ) { // Check to see if an old slug matches the old date. $id = (int) $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM $wpdb->posts, $wpdb->postmeta AS pm_slug, $wpdb->postmeta AS pm_date WHERE ID = pm_slug.post_id AND ID = pm_date.post_id AND post_type = %s AND pm_slug.meta_key = '_wp_old_slug' AND pm_slug.meta_value = %s AND pm_date.meta_key = '_wp_old_date'" . $date_query, $post_type, get_query_var( 'name' ) ) ); } } return $id; } /** * Set up global post data. * * @since 1.5.0 * @since 4.4.0 Added the ability to pass a post ID to `$post`. * * @global WP_Query $wp_query WordPress Query object. * * @param WP_Post|object|int $post WP_Post instance or Post ID/object. * @return bool True when finished. */ function setup_postdata( $post ) { global $wp_query; if ( ! empty( $wp_query ) && $wp_query instanceof WP_Query ) { return $wp_query->setup_postdata( $post ); } return false; } /** * Generates post data. * * @since 5.2.0 * * @global WP_Query $wp_query WordPress Query object. * * @param WP_Post|object|int $post WP_Post instance or Post ID/object. * @return array|false Elements of post, or false on failure. */ function generate_postdata( $post ) { global $wp_query; if ( ! empty( $wp_query ) && $wp_query instanceof WP_Query ) { return $wp_query->generate_postdata( $post ); } return false; } PK�����j l\#,P��P����template-canvas.phpnu�[��������<?php /** * Template canvas file to render the current 'wp_template'. * * @package WordPress */ /* * Get the template HTML. * This needs to run before <head> so that blocks can add scripts and styles in wp_head(). */ $template_html = get_the_block_template_html(); ?><!DOCTYPE html> <html <?php language_attributes(); ?>> <head> <meta charset="<?php bloginfo( 'charset' ); ?>" /> <?php wp_head(); ?> </head> <body <?php body_class(); ?>> <?php wp_body_open(); ?> <?php echo $template_html; // phpcs:ignore WordPress.Security.EscapeOutput ?> <?php wp_footer(); ?> </body> </html> PK�����j l\P6@8��@8�� ��class-wp-theme-json-resolver.phpnu�[��������<?php /** * WP_Theme_JSON_Resolver class * * @package WordPress * @subpackage Theme * @since 5.8.0 */ /** * Class that abstracts the processing of the different data sources * for site-level config and offers an API to work with them. * * This class is for internal core usage and is not supposed to be used by extenders (plugins and/or themes). * This is a low-level API that may need to do breaking changes. Please, * use get_global_settings, get_global_styles, and get_global_stylesheet instead. * * @access private */ class WP_Theme_JSON_Resolver { /** * Container for data coming from core. * * @since 5.8.0 * @var WP_Theme_JSON */ protected static $core = null; /** * Container for data coming from the theme. * * @since 5.8.0 * @var WP_Theme_JSON */ protected static $theme = null; /** * Whether or not the theme supports theme.json. * * @since 5.8.0 * @var bool */ protected static $theme_has_support = null; /** * Container for data coming from the user. * * @since 5.9.0 * @var WP_Theme_JSON */ protected static $user = null; /** * Stores the ID of the custom post type * that holds the user data. * * @since 5.9.0 * @var int */ protected static $user_custom_post_type_id = null; /** * Container to keep loaded i18n schema for `theme.json`. * * @since 5.8.0 As `$theme_json_i18n`. * @since 5.9.0 Renamed from `$theme_json_i18n` to `$i18n_schema`. * @var array */ protected static $i18n_schema = null; /** * Processes a file that adheres to the theme.json schema * and returns an array with its contents, or a void array if none found. * * @since 5.8.0 * * @param string $file_path Path to file. Empty if no file. * @return array Contents that adhere to the theme.json schema. */ protected static function read_json_file( $file_path ) { $config = array(); if ( $file_path ) { $decoded_file = wp_json_file_decode( $file_path, array( 'associative' => true ) ); if ( is_array( $decoded_file ) ) { $config = $decoded_file; } } return $config; } /** * Returns a data structure used in theme.json translation. * * @since 5.8.0 * @deprecated 5.9.0 * * @return array An array of theme.json fields that are translatable and the keys that are translatable. */ public static function get_fields_to_translate() { _deprecated_function( __METHOD__, '5.9.0' ); return array(); } /** * Given a theme.json structure modifies it in place to update certain values * by its translated strings according to the language set by the user. * * @since 5.8.0 * * @param array $theme_json The theme.json to translate. * @param string $domain Optional. Text domain. Unique identifier for retrieving translated strings. * Default 'default'. * @return array Returns the modified $theme_json_structure. */ protected static function translate( $theme_json, $domain = 'default' ) { if ( null === static::$i18n_schema ) { $i18n_schema = wp_json_file_decode( __DIR__ . '/theme-i18n.json' ); static::$i18n_schema = null === $i18n_schema ? array() : $i18n_schema; } return translate_settings_using_i18n_schema( static::$i18n_schema, $theme_json, $domain ); } /** * Return core's origin config. * * @since 5.8.0 * * @return WP_Theme_JSON Entity that holds core data. */ public static function get_core_data() { if ( null !== static::$core ) { return static::$core; } $config = static::read_json_file( __DIR__ . '/theme.json' ); $config = static::translate( $config ); static::$core = new WP_Theme_JSON( $config, 'default' ); return static::$core; } /** * Returns the theme's data. * * Data from theme.json will be backfilled from existing * theme supports, if any. Note that if the same data * is present in theme.json and in theme supports, * the theme.json takes precendence. * * @since 5.8.0 * @since 5.9.0 Theme supports have been inlined and the `$theme_support_data` argument removed. * * @param array $deprecated Deprecated. Not used. * @return WP_Theme_JSON Entity that holds theme data. */ public static function get_theme_data( $deprecated = array() ) { if ( ! empty( $deprecated ) ) { _deprecated_argument( __METHOD__, '5.9.0' ); } if ( null === static::$theme ) { $theme_json_data = static::read_json_file( static::get_file_path_from_theme( 'theme.json' ) ); $theme_json_data = static::translate( $theme_json_data, wp_get_theme()->get( 'TextDomain' ) ); static::$theme = new WP_Theme_JSON( $theme_json_data ); if ( wp_get_theme()->parent() ) { // Get parent theme.json. $parent_theme_json_data = static::read_json_file( static::get_file_path_from_theme( 'theme.json', true ) ); $parent_theme_json_data = static::translate( $parent_theme_json_data, wp_get_theme()->parent()->get( 'TextDomain' ) ); $parent_theme = new WP_Theme_JSON( $parent_theme_json_data ); // Merge the child theme.json into the parent theme.json. // The child theme takes precedence over the parent. $parent_theme->merge( static::$theme ); static::$theme = $parent_theme; } } /* * We want the presets and settings declared in theme.json * to override the ones declared via theme supports. * So we take theme supports, transform it to theme.json shape * and merge the static::$theme upon that. */ $theme_support_data = WP_Theme_JSON::get_from_editor_settings( get_default_block_editor_settings() ); if ( ! static::theme_has_support() ) { if ( ! isset( $theme_support_data['settings']['color'] ) ) { $theme_support_data['settings']['color'] = array(); } $default_palette = false; if ( current_theme_supports( 'default-color-palette' ) ) { $default_palette = true; } if ( ! isset( $theme_support_data['settings']['color']['palette'] ) ) { // If the theme does not have any palette, we still want to show the core one. $default_palette = true; } $theme_support_data['settings']['color']['defaultPalette'] = $default_palette; $default_gradients = false; if ( current_theme_supports( 'default-gradient-presets' ) ) { $default_gradients = true; } if ( ! isset( $theme_support_data['settings']['color']['gradients'] ) ) { // If the theme does not have any gradients, we still want to show the core ones. $default_gradients = true; } $theme_support_data['settings']['color']['defaultGradients'] = $default_gradients; } $with_theme_supports = new WP_Theme_JSON( $theme_support_data ); $with_theme_supports->merge( static::$theme ); return $with_theme_supports; } /** * Returns the custom post type that contains the user's origin config * for the current theme or a void array if none are found. * * This can also create and return a new draft custom post type. * * @since 5.9.0 * * @param WP_Theme $theme The theme object. If empty, it * defaults to the current theme. * @param bool $create_post Optional. Whether a new custom post * type should be created if none are * found. Default false. * @param array $post_status_filter Optional. Filter custom post type by * post status. Default `array( 'publish' )`, * so it only fetches published posts. * @return array Custom Post Type for the user's origin config. */ public static function get_user_data_from_wp_global_styles( $theme, $create_post = false, $post_status_filter = array( 'publish' ) ) { if ( ! $theme instanceof WP_Theme ) { $theme = wp_get_theme(); } $user_cpt = array(); $post_type_filter = 'wp_global_styles'; $args = array( 'numberposts' => 1, 'orderby' => 'date', 'order' => 'desc', 'post_type' => $post_type_filter, 'post_status' => $post_status_filter, 'tax_query' => array( array( 'taxonomy' => 'wp_theme', 'field' => 'name', 'terms' => $theme->get_stylesheet(), ), ), ); $cache_key = sprintf( 'wp_global_styles_%s', md5( serialize( $args ) ) ); $post_id = wp_cache_get( $cache_key ); if ( (int) $post_id > 0 ) { return get_post( $post_id, ARRAY_A ); } // Special case: '-1' is a results not found. if ( -1 === $post_id && ! $create_post ) { return $user_cpt; } $recent_posts = wp_get_recent_posts( $args ); if ( is_array( $recent_posts ) && ( count( $recent_posts ) === 1 ) ) { $user_cpt = $recent_posts[0]; } elseif ( $create_post ) { $cpt_post_id = wp_insert_post( array( 'post_content' => '{"version": ' . WP_Theme_JSON::LATEST_SCHEMA . ', "isGlobalStylesUserThemeJSON": true }', 'post_status' => 'publish', 'post_title' => 'Custom Styles', 'post_type' => $post_type_filter, 'post_name' => 'wp-global-styles-' . urlencode( wp_get_theme()->get_stylesheet() ), 'tax_input' => array( 'wp_theme' => array( wp_get_theme()->get_stylesheet() ), ), ), true ); $user_cpt = get_post( $cpt_post_id, ARRAY_A ); } $cache_expiration = $user_cpt ? DAY_IN_SECONDS : HOUR_IN_SECONDS; wp_cache_set( $cache_key, $user_cpt ? $user_cpt['ID'] : -1, '', $cache_expiration ); return $user_cpt; } /** * Returns the user's origin config. * * @since 5.9.0 * * @return WP_Theme_JSON Entity that holds styles for user data. */ public static function get_user_data() { if ( null !== static::$user ) { return static::$user; } $config = array(); $user_cpt = static::get_user_data_from_wp_global_styles( wp_get_theme() ); if ( array_key_exists( 'post_content', $user_cpt ) ) { $decoded_data = json_decode( $user_cpt['post_content'], true ); $json_decoding_error = json_last_error(); if ( JSON_ERROR_NONE !== $json_decoding_error ) { trigger_error( 'Error when decoding a theme.json schema for user data. ' . json_last_error_msg() ); return new WP_Theme_JSON( $config, 'custom' ); } // Very important to verify that the flag isGlobalStylesUserThemeJSON is true. // If it's not true then the content was not escaped and is not safe. if ( is_array( $decoded_data ) && isset( $decoded_data['isGlobalStylesUserThemeJSON'] ) && $decoded_data['isGlobalStylesUserThemeJSON'] ) { unset( $decoded_data['isGlobalStylesUserThemeJSON'] ); $config = $decoded_data; } } static::$user = new WP_Theme_JSON( $config, 'custom' ); return static::$user; } /** * Returns the data merged from multiple origins. * * There are three sources of data (origins) for a site: * default, theme, and custom. The custom's has higher priority * than the theme's, and the theme's higher than default's. * * Unlike the getters {@link get_core_data}, * {@link get_theme_data}, and {@link get_user_data}, * this method returns data after it has been merged * with the previous origins. This means that if the same piece of data * is declared in different origins (user, theme, and core), * the last origin overrides the previous. * * For example, if the user has set a background color * for the paragraph block, and the theme has done it as well, * the user preference wins. * * @since 5.8.0 * @since 5.9.0 Added user data, removed the `$settings` parameter, * added the `$origin` parameter. * * @param string $origin Optional. To what level should we merge data. * Valid values are 'theme' or 'custom'. Default 'custom'. * @return WP_Theme_JSON */ public static function get_merged_data( $origin = 'custom' ) { if ( is_array( $origin ) ) { _deprecated_argument( __FUNCTION__, '5.9.0' ); } $result = new WP_Theme_JSON(); $result->merge( static::get_core_data() ); $result->merge( static::get_theme_data() ); if ( 'custom' === $origin ) { $result->merge( static::get_user_data() ); } return $result; } /** * Returns the ID of the custom post type * that stores user data. * * @since 5.9.0 * * @return integer|null */ public static function get_user_global_styles_post_id() { if ( null !== static::$user_custom_post_type_id ) { return static::$user_custom_post_type_id; } $user_cpt = static::get_user_data_from_wp_global_styles( wp_get_theme(), true ); if ( array_key_exists( 'ID', $user_cpt ) ) { static::$user_custom_post_type_id = $user_cpt['ID']; } return static::$user_custom_post_type_id; } /** * Whether the current theme has a theme.json file. * * @since 5.8.0 * @since 5.9.0 Added a check in the parent theme. * * @return bool */ public static function theme_has_support() { if ( ! isset( static::$theme_has_support ) ) { static::$theme_has_support = ( is_readable( static::get_file_path_from_theme( 'theme.json' ) ) || is_readable( static::get_file_path_from_theme( 'theme.json', true ) ) ); } return static::$theme_has_support; } /** * Builds the path to the given file and checks that it is readable. * * If it isn't, returns an empty string, otherwise returns the whole file path. * * @since 5.8.0 * @since 5.9.0 Adapted to work with child themes, added the `$template` argument. * * @param string $file_name Name of the file. * @param bool $template Optional. Use template theme directory. Default false. * @return string The whole file path or empty if the file doesn't exist. */ protected static function get_file_path_from_theme( $file_name, $template = false ) { $path = $template ? get_template_directory() : get_stylesheet_directory(); $candidate = $path . '/' . $file_name; return is_readable( $candidate ) ? $candidate : ''; } /** * Cleans the cached data so it can be recalculated. * * @since 5.8.0 * @since 5.9.0 Added the `$user`, `$user_custom_post_type_id`, * and `$i18n_schema` variables to reset. */ public static function clean_cached_data() { static::$core = null; static::$theme = null; static::$user = null; static::$user_custom_post_type_id = null; static::$theme_has_support = null; static::$i18n_schema = null; } } PK�����j l\UE������class-wp-theme.phpnu�[��������<?php /** * WP_Theme Class * * @package WordPress * @subpackage Theme * @since 3.4.0 */ final class WP_Theme implements ArrayAccess { /** * Whether the theme has been marked as updateable. * * @since 4.4.0 * @var bool * * @see WP_MS_Themes_List_Table */ public $update = false; /** * Headers for style.css files. * * @since 3.4.0 * @since 5.4.0 Added `Requires at least` and `Requires PHP` headers. * @var array */ private static $file_headers = array( 'Name' => 'Theme Name', 'ThemeURI' => 'Theme URI', 'Description' => 'Description', 'Author' => 'Author', 'AuthorURI' => 'Author URI', 'Version' => 'Version', 'Template' => 'Template', 'Status' => 'Status', 'Tags' => 'Tags', 'TextDomain' => 'Text Domain', 'DomainPath' => 'Domain Path', 'RequiresWP' => 'Requires at least', 'RequiresPHP' => 'Requires PHP', ); /** * Default themes. * * @since 3.4.0 * @since 3.5.0 Added the Twenty Twelve theme. * @since 3.6.0 Added the Twenty Thirteen theme. * @since 3.8.0 Added the Twenty Fourteen theme. * @since 4.1.0 Added the Twenty Fifteen theme. * @since 4.4.0 Added the Twenty Sixteen theme. * @since 4.7.0 Added the Twenty Seventeen theme. * @since 5.0.0 Added the Twenty Nineteen theme. * @since 5.3.0 Added the Twenty Twenty theme. * @since 5.6.0 Added the Twenty Twenty-One theme. * @var array */ private static $default_themes = array( 'classic' => 'WordPress Classic', 'default' => 'WordPress Default', 'twentyten' => 'Twenty Ten', 'twentyeleven' => 'Twenty Eleven', 'twentytwelve' => 'Twenty Twelve', 'twentythirteen' => 'Twenty Thirteen', 'twentyfourteen' => 'Twenty Fourteen', 'twentyfifteen' => 'Twenty Fifteen', 'twentysixteen' => 'Twenty Sixteen', 'twentyseventeen' => 'Twenty Seventeen', 'twentynineteen' => 'Twenty Nineteen', 'twentytwenty' => 'Twenty Twenty', 'twentytwentyone' => 'Twenty Twenty-One', 'twentytwentytwo' => 'Twenty Twenty-Two', ); /** * Renamed theme tags. * * @since 3.8.0 * @var array */ private static $tag_map = array( 'fixed-width' => 'fixed-layout', 'flexible-width' => 'fluid-layout', ); /** * Absolute path to the theme root, usually wp-content/themes * * @since 3.4.0 * @var string */ private $theme_root; /** * Header data from the theme's style.css file. * * @since 3.4.0 * @var array */ private $headers = array(); /** * Header data from the theme's style.css file after being sanitized. * * @since 3.4.0 * @var array */ private $headers_sanitized; /** * Header name from the theme's style.css after being translated. * * Cached due to sorting functions running over the translated name. * * @since 3.4.0 * @var string */ private $name_translated; /** * Errors encountered when initializing the theme. * * @since 3.4.0 * @var WP_Error */ private $errors; /** * The directory name of the theme's files, inside the theme root. * * In the case of a child theme, this is directory name of the child theme. * Otherwise, 'stylesheet' is the same as 'template'. * * @since 3.4.0 * @var string */ private $stylesheet; /** * The directory name of the theme's files, inside the theme root. * * In the case of a child theme, this is the directory name of the parent theme. * Otherwise, 'template' is the same as 'stylesheet'. * * @since 3.4.0 * @var string */ private $template; /** * A reference to the parent theme, in the case of a child theme. * * @since 3.4.0 * @var WP_Theme */ private $parent; /** * URL to the theme root, usually an absolute URL to wp-content/themes * * @since 3.4.0 * @var string */ private $theme_root_uri; /** * Flag for whether the theme's textdomain is loaded. * * @since 3.4.0 * @var bool */ private $textdomain_loaded; /** * Stores an md5 hash of the theme root, to function as the cache key. * * @since 3.4.0 * @var string */ private $cache_hash; /** * Flag for whether the themes cache bucket should be persistently cached. * * Default is false. Can be set with the {@see 'wp_cache_themes_persistently'} filter. * * @since 3.4.0 * @var bool */ private static $persistently_cache; /** * Expiration time for the themes cache bucket. * * By default the bucket is not cached, so this value is useless. * * @since 3.4.0 * @var bool */ private static $cache_expiration = 1800; /** * Constructor for WP_Theme. * * @since 3.4.0 * * @global array $wp_theme_directories * * @param string $theme_dir Directory of the theme within the theme_root. * @param string $theme_root Theme root. * @param WP_Theme|null $_child If this theme is a parent theme, the child may be passed for validation purposes. */ public function __construct( $theme_dir, $theme_root, $_child = null ) { global $wp_theme_directories; // Initialize caching on first run. if ( ! isset( self::$persistently_cache ) ) { /** This action is documented in wp-includes/theme.php */ self::$persistently_cache = apply_filters( 'wp_cache_themes_persistently', false, 'WP_Theme' ); if ( self::$persistently_cache ) { wp_cache_add_global_groups( 'themes' ); if ( is_int( self::$persistently_cache ) ) { self::$cache_expiration = self::$persistently_cache; } } else { wp_cache_add_non_persistent_groups( 'themes' ); } } $this->theme_root = $theme_root; $this->stylesheet = $theme_dir; // Correct a situation where the theme is 'some-directory/some-theme' but 'some-directory' was passed in as part of the theme root instead. if ( ! in_array( $theme_root, (array) $wp_theme_directories, true ) && in_array( dirname( $theme_root ), (array) $wp_theme_directories, true ) ) { $this->stylesheet = basename( $this->theme_root ) . '/' . $this->stylesheet; $this->theme_root = dirname( $theme_root ); } $this->cache_hash = md5( $this->theme_root . '/' . $this->stylesheet ); $theme_file = $this->stylesheet . '/style.css'; $cache = $this->cache_get( 'theme' ); if ( is_array( $cache ) ) { foreach ( array( 'errors', 'headers', 'template' ) as $key ) { if ( isset( $cache[ $key ] ) ) { $this->$key = $cache[ $key ]; } } if ( $this->errors ) { return; } if ( isset( $cache['theme_root_template'] ) ) { $theme_root_template = $cache['theme_root_template']; } } elseif ( ! file_exists( $this->theme_root . '/' . $theme_file ) ) { $this->headers['Name'] = $this->stylesheet; if ( ! file_exists( $this->theme_root . '/' . $this->stylesheet ) ) { $this->errors = new WP_Error( 'theme_not_found', sprintf( /* translators: %s: Theme directory name. */ __( 'The theme directory "%s" does not exist.' ), esc_html( $this->stylesheet ) ) ); } else { $this->errors = new WP_Error( 'theme_no_stylesheet', __( 'Stylesheet is missing.' ) ); } $this->template = $this->stylesheet; $this->cache_add( 'theme', array( 'headers' => $this->headers, 'errors' => $this->errors, 'stylesheet' => $this->stylesheet, 'template' => $this->template, ) ); if ( ! file_exists( $this->theme_root ) ) { // Don't cache this one. $this->errors->add( 'theme_root_missing', __( 'Error: The themes directory is either empty or doesn’t exist. Please check your installation.' ) ); } return; } elseif ( ! is_readable( $this->theme_root . '/' . $theme_file ) ) { $this->headers['Name'] = $this->stylesheet; $this->errors = new WP_Error( 'theme_stylesheet_not_readable', __( 'Stylesheet is not readable.' ) ); $this->template = $this->stylesheet; $this->cache_add( 'theme', array( 'headers' => $this->headers, 'errors' => $this->errors, 'stylesheet' => $this->stylesheet, 'template' => $this->template, ) ); return; } else { $this->headers = get_file_data( $this->theme_root . '/' . $theme_file, self::$file_headers, 'theme' ); // Default themes always trump their pretenders. // Properly identify default themes that are inside a directory within wp-content/themes. $default_theme_slug = array_search( $this->headers['Name'], self::$default_themes, true ); if ( $default_theme_slug ) { if ( basename( $this->stylesheet ) != $default_theme_slug ) { $this->headers['Name'] .= '/' . $this->stylesheet; } } } if ( ! $this->template && $this->stylesheet === $this->headers['Template'] ) { $this->errors = new WP_Error( 'theme_child_invalid', sprintf( /* translators: %s: Template. */ __( 'The theme defines itself as its parent theme. Please check the %s header.' ), '<code>Template</code>' ) ); $this->cache_add( 'theme', array( 'headers' => $this->headers, 'errors' => $this->errors, 'stylesheet' => $this->stylesheet, ) ); return; } // (If template is set from cache [and there are no errors], we know it's good.) if ( ! $this->template ) { $this->template = $this->headers['Template']; } if ( ! $this->template ) { $this->template = $this->stylesheet; if ( ! file_exists( $this->theme_root . '/' . $this->stylesheet . '/index.php' ) ) { $error_message = sprintf( /* translators: 1: index.php, 2: Documentation URL, 3: style.css */ __( 'Template is missing. Standalone themes need to have a %1$s template file. <a href="%2$s">Child themes</a> need to have a Template header in the %3$s stylesheet.' ), '<code>index.php</code>', __( 'https://developer.wordpress.org/themes/advanced-topics/child-themes/' ), '<code>style.css</code>' ); $this->errors = new WP_Error( 'theme_no_index', $error_message ); $this->cache_add( 'theme', array( 'headers' => $this->headers, 'errors' => $this->errors, 'stylesheet' => $this->stylesheet, 'template' => $this->template, ) ); return; } } // If we got our data from cache, we can assume that 'template' is pointing to the right place. if ( ! is_array( $cache ) && $this->template != $this->stylesheet && ! file_exists( $this->theme_root . '/' . $this->template . '/index.php' ) ) { // If we're in a directory of themes inside /themes, look for the parent nearby. // wp-content/themes/directory-of-themes/* $parent_dir = dirname( $this->stylesheet ); $directories = search_theme_directories(); if ( '.' !== $parent_dir && file_exists( $this->theme_root . '/' . $parent_dir . '/' . $this->template . '/index.php' ) ) { $this->template = $parent_dir . '/' . $this->template; } elseif ( $directories && isset( $directories[ $this->template ] ) ) { // Look for the template in the search_theme_directories() results, in case it is in another theme root. // We don't look into directories of themes, just the theme root. $theme_root_template = $directories[ $this->template ]['theme_root']; } else { // Parent theme is missing. $this->errors = new WP_Error( 'theme_no_parent', sprintf( /* translators: %s: Theme directory name. */ __( 'The parent theme is missing. Please install the "%s" parent theme.' ), esc_html( $this->template ) ) ); $this->cache_add( 'theme', array( 'headers' => $this->headers, 'errors' => $this->errors, 'stylesheet' => $this->stylesheet, 'template' => $this->template, ) ); $this->parent = new WP_Theme( $this->template, $this->theme_root, $this ); return; } } // Set the parent, if we're a child theme. if ( $this->template != $this->stylesheet ) { // If we are a parent, then there is a problem. Only two generations allowed! Cancel things out. if ( $_child instanceof WP_Theme && $_child->template == $this->stylesheet ) { $_child->parent = null; $_child->errors = new WP_Error( 'theme_parent_invalid', sprintf( /* translators: %s: Theme directory name. */ __( 'The "%s" theme is not a valid parent theme.' ), esc_html( $_child->template ) ) ); $_child->cache_add( 'theme', array( 'headers' => $_child->headers, 'errors' => $_child->errors, 'stylesheet' => $_child->stylesheet, 'template' => $_child->template, ) ); // The two themes actually reference each other with the Template header. if ( $_child->stylesheet == $this->template ) { $this->errors = new WP_Error( 'theme_parent_invalid', sprintf( /* translators: %s: Theme directory name. */ __( 'The "%s" theme is not a valid parent theme.' ), esc_html( $this->template ) ) ); $this->cache_add( 'theme', array( 'headers' => $this->headers, 'errors' => $this->errors, 'stylesheet' => $this->stylesheet, 'template' => $this->template, ) ); } return; } // Set the parent. Pass the current instance so we can do the crazy checks above and assess errors. $this->parent = new WP_Theme( $this->template, isset( $theme_root_template ) ? $theme_root_template : $this->theme_root, $this ); } if ( wp_paused_themes()->get( $this->stylesheet ) && ( ! is_wp_error( $this->errors ) || ! isset( $this->errors->errors['theme_paused'] ) ) ) { $this->errors = new WP_Error( 'theme_paused', __( 'This theme failed to load properly and was paused within the admin backend.' ) ); } // We're good. If we didn't retrieve from cache, set it. if ( ! is_array( $cache ) ) { $cache = array( 'headers' => $this->headers, 'errors' => $this->errors, 'stylesheet' => $this->stylesheet, 'template' => $this->template, ); // If the parent theme is in another root, we'll want to cache this. Avoids an entire branch of filesystem calls above. if ( isset( $theme_root_template ) ) { $cache['theme_root_template'] = $theme_root_template; } $this->cache_add( 'theme', $cache ); } } /** * When converting the object to a string, the theme name is returned. * * @since 3.4.0 * * @return string Theme name, ready for display (translated) */ public function __toString() { return (string) $this->display( 'Name' ); } /** * __isset() magic method for properties formerly returned by current_theme_info() * * @since 3.4.0 * * @param string $offset Property to check if set. * @return bool Whether the given property is set. */ public function __isset( $offset ) { static $properties = array( 'name', 'title', 'version', 'parent_theme', 'template_dir', 'stylesheet_dir', 'template', 'stylesheet', 'screenshot', 'description', 'author', 'tags', 'theme_root', 'theme_root_uri', ); return in_array( $offset, $properties, true ); } /** * __get() magic method for properties formerly returned by current_theme_info() * * @since 3.4.0 * * @param string $offset Property to get. * @return mixed Property value. */ public function __get( $offset ) { switch ( $offset ) { case 'name': case 'title': return $this->get( 'Name' ); case 'version': return $this->get( 'Version' ); case 'parent_theme': return $this->parent() ? $this->parent()->get( 'Name' ) : ''; case 'template_dir': return $this->get_template_directory(); case 'stylesheet_dir': return $this->get_stylesheet_directory(); case 'template': return $this->get_template(); case 'stylesheet': return $this->get_stylesheet(); case 'screenshot': return $this->get_screenshot( 'relative' ); // 'author' and 'description' did not previously return translated data. case 'description': return $this->display( 'Description' ); case 'author': return $this->display( 'Author' ); case 'tags': return $this->get( 'Tags' ); case 'theme_root': return $this->get_theme_root(); case 'theme_root_uri': return $this->get_theme_root_uri(); // For cases where the array was converted to an object. default: return $this->offsetGet( $offset ); } } /** * Method to implement ArrayAccess for keys formerly returned by get_themes() * * @since 3.4.0 * * @param mixed $offset * @param mixed $value */ #[ReturnTypeWillChange] public function offsetSet( $offset, $value ) {} /** * Method to implement ArrayAccess for keys formerly returned by get_themes() * * @since 3.4.0 * * @param mixed $offset */ #[ReturnTypeWillChange] public function offsetUnset( $offset ) {} /** * Method to implement ArrayAccess for keys formerly returned by get_themes() * * @since 3.4.0 * * @param mixed $offset * @return bool */ #[ReturnTypeWillChange] public function offsetExists( $offset ) { static $keys = array( 'Name', 'Version', 'Status', 'Title', 'Author', 'Author Name', 'Author URI', 'Description', 'Template', 'Stylesheet', 'Template Files', 'Stylesheet Files', 'Template Dir', 'Stylesheet Dir', 'Screenshot', 'Tags', 'Theme Root', 'Theme Root URI', 'Parent Theme', ); return in_array( $offset, $keys, true ); } /** * Method to implement ArrayAccess for keys formerly returned by get_themes(). * * Author, Author Name, Author URI, and Description did not previously return * translated data. We are doing so now as it is safe to do. However, as * Name and Title could have been used as the key for get_themes(), both remain * untranslated for back compatibility. This means that ['Name'] is not ideal, * and care should be taken to use `$theme::display( 'Name' )` to get a properly * translated header. * * @since 3.4.0 * * @param mixed $offset * @return mixed */ #[ReturnTypeWillChange] public function offsetGet( $offset ) { switch ( $offset ) { case 'Name': case 'Title': /* * See note above about using translated data. get() is not ideal. * It is only for backward compatibility. Use display(). */ return $this->get( 'Name' ); case 'Author': return $this->display( 'Author' ); case 'Author Name': return $this->display( 'Author', false ); case 'Author URI': return $this->display( 'AuthorURI' ); case 'Description': return $this->display( 'Description' ); case 'Version': case 'Status': return $this->get( $offset ); case 'Template': return $this->get_template(); case 'Stylesheet': return $this->get_stylesheet(); case 'Template Files': return $this->get_files( 'php', 1, true ); case 'Stylesheet Files': return $this->get_files( 'css', 0, false ); case 'Template Dir': return $this->get_template_directory(); case 'Stylesheet Dir': return $this->get_stylesheet_directory(); case 'Screenshot': return $this->get_screenshot( 'relative' ); case 'Tags': return $this->get( 'Tags' ); case 'Theme Root': return $this->get_theme_root(); case 'Theme Root URI': return $this->get_theme_root_uri(); case 'Parent Theme': return $this->parent() ? $this->parent()->get( 'Name' ) : ''; default: return null; } } /** * Returns errors property. * * @since 3.4.0 * * @return WP_Error|false WP_Error if there are errors, or false. */ public function errors() { return is_wp_error( $this->errors ) ? $this->errors : false; } /** * Whether the theme exists. * * A theme with errors exists. A theme with the error of 'theme_not_found', * meaning that the theme's directory was not found, does not exist. * * @since 3.4.0 * * @return bool Whether the theme exists. */ public function exists() { return ! ( $this->errors() && in_array( 'theme_not_found', $this->errors()->get_error_codes(), true ) ); } /** * Returns reference to the parent theme. * * @since 3.4.0 * * @return WP_Theme|false Parent theme, or false if the current theme is not a child theme. */ public function parent() { return isset( $this->parent ) ? $this->parent : false; } /** * Perform reinitialization tasks. * * Prevents a callback from being injected during unserialization of an object. * * @return void */ public function __wakeup() { if ( $this->parent && ! $this->parent instanceof self ) { throw new UnexpectedValueException(); } if ( $this->headers && ! is_array( $this->headers ) ) { throw new UnexpectedValueException(); } foreach ( $this->headers as $value ) { if ( ! is_string( $value ) ) { throw new UnexpectedValueException(); } } $this->headers_sanitized = array(); } /** * Adds theme data to cache. * * Cache entries keyed by the theme and the type of data. * * @since 3.4.0 * * @param string $key Type of data to store (theme, screenshot, headers, post_templates) * @param array|string $data Data to store * @return bool Return value from wp_cache_add() */ private function cache_add( $key, $data ) { return wp_cache_add( $key . '-' . $this->cache_hash, $data, 'themes', self::$cache_expiration ); } /** * Gets theme data from cache. * * Cache entries are keyed by the theme and the type of data. * * @since 3.4.0 * * @param string $key Type of data to retrieve (theme, screenshot, headers, post_templates) * @return mixed Retrieved data */ private function cache_get( $key ) { return wp_cache_get( $key . '-' . $this->cache_hash, 'themes' ); } /** * Clears the cache for the theme. * * @since 3.4.0 */ public function cache_delete() { foreach ( array( 'theme', 'screenshot', 'headers', 'post_templates' ) as $key ) { wp_cache_delete( $key . '-' . $this->cache_hash, 'themes' ); } $this->template = null; $this->textdomain_loaded = null; $this->theme_root_uri = null; $this->parent = null; $this->errors = null; $this->headers_sanitized = null; $this->name_translated = null; $this->headers = array(); $this->__construct( $this->stylesheet, $this->theme_root ); } /** * Get a raw, unformatted theme header. * * The header is sanitized, but is not translated, and is not marked up for display. * To get a theme header for display, use the display() method. * * Use the get_template() method, not the 'Template' header, for finding the template. * The 'Template' header is only good for what was written in the style.css, while * get_template() takes into account where WordPress actually located the theme and * whether it is actually valid. * * @since 3.4.0 * * @param string $header Theme header. Name, Description, Author, Version, ThemeURI, AuthorURI, Status, Tags. * @return string|array|false String or array (for Tags header) on success, false on failure. */ public function get( $header ) { if ( ! isset( $this->headers[ $header ] ) ) { return false; } if ( ! isset( $this->headers_sanitized ) ) { $this->headers_sanitized = $this->cache_get( 'headers' ); if ( ! is_array( $this->headers_sanitized ) ) { $this->headers_sanitized = array(); } } if ( isset( $this->headers_sanitized[ $header ] ) ) { return $this->headers_sanitized[ $header ]; } // If themes are a persistent group, sanitize everything and cache it. One cache add is better than many cache sets. if ( self::$persistently_cache ) { foreach ( array_keys( $this->headers ) as $_header ) { $this->headers_sanitized[ $_header ] = $this->sanitize_header( $_header, $this->headers[ $_header ] ); } $this->cache_add( 'headers', $this->headers_sanitized ); } else { $this->headers_sanitized[ $header ] = $this->sanitize_header( $header, $this->headers[ $header ] ); } return $this->headers_sanitized[ $header ]; } /** * Gets a theme header, formatted and translated for display. * * @since 3.4.0 * * @param string $header Theme header. Name, Description, Author, Version, ThemeURI, AuthorURI, Status, Tags. * @param bool $markup Optional. Whether to mark up the header. Defaults to true. * @param bool $translate Optional. Whether to translate the header. Defaults to true. * @return string|array|false Processed header. An array for Tags if `$markup` is false, string otherwise. * False on failure. */ public function display( $header, $markup = true, $translate = true ) { $value = $this->get( $header ); if ( false === $value ) { return false; } if ( $translate && ( empty( $value ) || ! $this->load_textdomain() ) ) { $translate = false; } if ( $translate ) { $value = $this->translate_header( $header, $value ); } if ( $markup ) { $value = $this->markup_header( $header, $value, $translate ); } return $value; } /** * Sanitize a theme header. * * @since 3.4.0 * @since 5.4.0 Added support for `Requires at least` and `Requires PHP` headers. * * @param string $header Theme header. Accepts 'Name', 'Description', 'Author', 'Version', * 'ThemeURI', 'AuthorURI', 'Status', 'Tags', 'RequiresWP', 'RequiresPHP'. * @param string $value Value to sanitize. * @return string|array An array for Tags header, string otherwise. */ private function sanitize_header( $header, $value ) { switch ( $header ) { case 'Status': if ( ! $value ) { $value = 'publish'; break; } // Fall through otherwise. case 'Name': static $header_tags = array( 'abbr' => array( 'title' => true ), 'acronym' => array( 'title' => true ), 'code' => true, 'em' => true, 'strong' => true, ); $value = wp_kses( $value, $header_tags ); break; case 'Author': // There shouldn't be anchor tags in Author, but some themes like to be challenging. case 'Description': static $header_tags_with_a = array( 'a' => array( 'href' => true, 'title' => true, ), 'abbr' => array( 'title' => true ), 'acronym' => array( 'title' => true ), 'code' => true, 'em' => true, 'strong' => true, ); $value = wp_kses( $value, $header_tags_with_a ); break; case 'ThemeURI': case 'AuthorURI': $value = esc_url_raw( $value ); break; case 'Tags': $value = array_filter( array_map( 'trim', explode( ',', strip_tags( $value ) ) ) ); break; case 'Version': case 'RequiresWP': case 'RequiresPHP': $value = strip_tags( $value ); break; } return $value; } /** * Mark up a theme header. * * @since 3.4.0 * * @param string $header Theme header. Name, Description, Author, Version, ThemeURI, AuthorURI, Status, Tags. * @param string|array $value Value to mark up. An array for Tags header, string otherwise. * @param string $translate Whether the header has been translated. * @return string Value, marked up. */ private function markup_header( $header, $value, $translate ) { switch ( $header ) { case 'Name': if ( empty( $value ) ) { $value = esc_html( $this->get_stylesheet() ); } break; case 'Description': $value = wptexturize( $value ); break; case 'Author': if ( $this->get( 'AuthorURI' ) ) { $value = sprintf( '<a href="%1$s">%2$s</a>', $this->display( 'AuthorURI', true, $translate ), $value ); } elseif ( ! $value ) { $value = __( 'Anonymous' ); } break; case 'Tags': static $comma = null; if ( ! isset( $comma ) ) { /* translators: Used between list items, there is a space after the comma. */ $comma = __( ', ' ); } $value = implode( $comma, $value ); break; case 'ThemeURI': case 'AuthorURI': $value = esc_url( $value ); break; } return $value; } /** * Translate a theme header. * * @since 3.4.0 * * @param string $header Theme header. Name, Description, Author, Version, ThemeURI, AuthorURI, Status, Tags. * @param string|array $value Value to translate. An array for Tags header, string otherwise. * @return string|array Translated value. An array for Tags header, string otherwise. */ private function translate_header( $header, $value ) { switch ( $header ) { case 'Name': // Cached for sorting reasons. if ( isset( $this->name_translated ) ) { return $this->name_translated; } // phpcs:ignore WordPress.WP.I18n.LowLevelTranslationFunction,WordPress.WP.I18n.NonSingularStringLiteralText,WordPress.WP.I18n.NonSingularStringLiteralDomain $this->name_translated = translate( $value, $this->get( 'TextDomain' ) ); return $this->name_translated; case 'Tags': if ( empty( $value ) || ! function_exists( 'get_theme_feature_list' ) ) { return $value; } static $tags_list; if ( ! isset( $tags_list ) ) { $tags_list = array( // As of 4.6, deprecated tags which are only used to provide translation for older themes. 'black' => __( 'Black' ), 'blue' => __( 'Blue' ), 'brown' => __( 'Brown' ), 'gray' => __( 'Gray' ), 'green' => __( 'Green' ), 'orange' => __( 'Orange' ), 'pink' => __( 'Pink' ), 'purple' => __( 'Purple' ), 'red' => __( 'Red' ), 'silver' => __( 'Silver' ), 'tan' => __( 'Tan' ), 'white' => __( 'White' ), 'yellow' => __( 'Yellow' ), 'dark' => __( 'Dark' ), 'light' => __( 'Light' ), 'fixed-layout' => __( 'Fixed Layout' ), 'fluid-layout' => __( 'Fluid Layout' ), 'responsive-layout' => __( 'Responsive Layout' ), 'blavatar' => __( 'Blavatar' ), 'photoblogging' => __( 'Photoblogging' ), 'seasonal' => __( 'Seasonal' ), ); $feature_list = get_theme_feature_list( false ); // No API. foreach ( $feature_list as $tags ) { $tags_list += $tags; } } foreach ( $value as &$tag ) { if ( isset( $tags_list[ $tag ] ) ) { $tag = $tags_list[ $tag ]; } elseif ( isset( self::$tag_map[ $tag ] ) ) { $tag = $tags_list[ self::$tag_map[ $tag ] ]; } } return $value; default: // phpcs:ignore WordPress.WP.I18n.LowLevelTranslationFunction,WordPress.WP.I18n.NonSingularStringLiteralText,WordPress.WP.I18n.NonSingularStringLiteralDomain $value = translate( $value, $this->get( 'TextDomain' ) ); } return $value; } /** * The directory name of the theme's "stylesheet" files, inside the theme root. * * In the case of a child theme, this is directory name of the child theme. * Otherwise, get_stylesheet() is the same as get_template(). * * @since 3.4.0 * * @return string Stylesheet */ public function get_stylesheet() { return $this->stylesheet; } /** * The directory name of the theme's "template" files, inside the theme root. * * In the case of a child theme, this is the directory name of the parent theme. * Otherwise, the get_template() is the same as get_stylesheet(). * * @since 3.4.0 * * @return string Template */ public function get_template() { return $this->template; } /** * Returns the absolute path to the directory of a theme's "stylesheet" files. * * In the case of a child theme, this is the absolute path to the directory * of the child theme's files. * * @since 3.4.0 * * @return string Absolute path of the stylesheet directory. */ public function get_stylesheet_directory() { if ( $this->errors() && in_array( 'theme_root_missing', $this->errors()->get_error_codes(), true ) ) { return ''; } return $this->theme_root . '/' . $this->stylesheet; } /** * Returns the absolute path to the directory of a theme's "template" files. * * In the case of a child theme, this is the absolute path to the directory * of the parent theme's files. * * @since 3.4.0 * * @return string Absolute path of the template directory. */ public function get_template_directory() { if ( $this->parent() ) { $theme_root = $this->parent()->theme_root; } else { $theme_root = $this->theme_root; } return $theme_root . '/' . $this->template; } /** * Returns the URL to the directory of a theme's "stylesheet" files. * * In the case of a child theme, this is the URL to the directory of the * child theme's files. * * @since 3.4.0 * * @return string URL to the stylesheet directory. */ public function get_stylesheet_directory_uri() { return $this->get_theme_root_uri() . '/' . str_replace( '%2F', '/', rawurlencode( $this->stylesheet ) ); } /** * Returns the URL to the directory of a theme's "template" files. * * In the case of a child theme, this is the URL to the directory of the * parent theme's files. * * @since 3.4.0 * * @return string URL to the template directory. */ public function get_template_directory_uri() { if ( $this->parent() ) { $theme_root_uri = $this->parent()->get_theme_root_uri(); } else { $theme_root_uri = $this->get_theme_root_uri(); } return $theme_root_uri . '/' . str_replace( '%2F', '/', rawurlencode( $this->template ) ); } /** * The absolute path to the directory of the theme root. * * This is typically the absolute path to wp-content/themes. * * @since 3.4.0 * * @return string Theme root. */ public function get_theme_root() { return $this->theme_root; } /** * Returns the URL to the directory of the theme root. * * This is typically the absolute URL to wp-content/themes. This forms the basis * for all other URLs returned by WP_Theme, so we pass it to the public function * get_theme_root_uri() and allow it to run the {@see 'theme_root_uri'} filter. * * @since 3.4.0 * * @return string Theme root URI. */ public function get_theme_root_uri() { if ( ! isset( $this->theme_root_uri ) ) { $this->theme_root_uri = get_theme_root_uri( $this->stylesheet, $this->theme_root ); } return $this->theme_root_uri; } /** * Returns the main screenshot file for the theme. * * The main screenshot is called screenshot.png. gif and jpg extensions are also allowed. * * Screenshots for a theme must be in the stylesheet directory. (In the case of child * themes, parent theme screenshots are not inherited.) * * @since 3.4.0 * * @param string $uri Type of URL to return, either 'relative' or an absolute URI. Defaults to absolute URI. * @return string|false Screenshot file. False if the theme does not have a screenshot. */ public function get_screenshot( $uri = 'uri' ) { $screenshot = $this->cache_get( 'screenshot' ); if ( $screenshot ) { if ( 'relative' === $uri ) { return $screenshot; } return $this->get_stylesheet_directory_uri() . '/' . $screenshot; } elseif ( 0 === $screenshot ) { return false; } foreach ( array( 'png', 'gif', 'jpg', 'jpeg', 'webp' ) as $ext ) { if ( file_exists( $this->get_stylesheet_directory() . "/screenshot.$ext" ) ) { $this->cache_add( 'screenshot', 'screenshot.' . $ext ); if ( 'relative' === $uri ) { return 'screenshot.' . $ext; } return $this->get_stylesheet_directory_uri() . '/' . 'screenshot.' . $ext; } } $this->cache_add( 'screenshot', 0 ); return false; } /** * Return files in the theme's directory. * * @since 3.4.0 * * @param string[]|string $type Optional. Array of extensions to find, string of a single extension, * or null for all extensions. Default null. * @param int $depth Optional. How deep to search for files. Defaults to a flat scan (0 depth). * -1 depth is infinite. * @param bool $search_parent Optional. Whether to return parent files. Default false. * @return string[] Array of files, keyed by the path to the file relative to the theme's directory, with the values * being absolute paths. */ public function get_files( $type = null, $depth = 0, $search_parent = false ) { $files = (array) self::scandir( $this->get_stylesheet_directory(), $type, $depth ); if ( $search_parent && $this->parent() ) { $files += (array) self::scandir( $this->get_template_directory(), $type, $depth ); } return $files; } /** * Returns the theme's post templates. * * @since 4.7.0 * @since 5.8.0 Include block templates. * * @return array[] Array of page template arrays, keyed by post type and filename, * with the value of the translated header name. */ public function get_post_templates() { // If you screw up your current theme and we invalidate your parent, most things still work. Let it slide. if ( $this->errors() && $this->errors()->get_error_codes() !== array( 'theme_parent_invalid' ) ) { return array(); } $post_templates = $this->cache_get( 'post_templates' ); if ( ! is_array( $post_templates ) ) { $post_templates = array(); $files = (array) $this->get_files( 'php', 1, true ); foreach ( $files as $file => $full_path ) { if ( ! preg_match( '|Template Name:(.*)$|mi', file_get_contents( $full_path ), $header ) ) { continue; } $types = array( 'page' ); if ( preg_match( '|Template Post Type:(.*)$|mi', file_get_contents( $full_path ), $type ) ) { $types = explode( ',', _cleanup_header_comment( $type[1] ) ); } foreach ( $types as $type ) { $type = sanitize_key( $type ); if ( ! isset( $post_templates[ $type ] ) ) { $post_templates[ $type ] = array(); } $post_templates[ $type ][ $file ] = _cleanup_header_comment( $header[1] ); } } if ( current_theme_supports( 'block-templates' ) ) { $block_templates = get_block_templates( array(), 'wp_template' ); foreach ( get_post_types( array( 'public' => true ) ) as $type ) { foreach ( $block_templates as $block_template ) { if ( ! $block_template->is_custom ) { continue; } if ( isset( $block_template->post_types ) && ! in_array( $type, $block_template->post_types, true ) ) { continue; } $post_templates[ $type ][ $block_template->slug ] = $block_template->title; } } } $this->cache_add( 'post_templates', $post_templates ); } if ( $this->load_textdomain() ) { foreach ( $post_templates as &$post_type ) { foreach ( $post_type as &$post_template ) { $post_template = $this->translate_header( 'Template Name', $post_template ); } } } return $post_templates; } /** * Returns the theme's post templates for a given post type. * * @since 3.4.0 * @since 4.7.0 Added the `$post_type` parameter. * * @param WP_Post|null $post Optional. The post being edited, provided for context. * @param string $post_type Optional. Post type to get the templates for. Default 'page'. * If a post is provided, its post type is used. * @return string[] Array of template header names keyed by the template file name. */ public function get_page_templates( $post = null, $post_type = 'page' ) { if ( $post ) { $post_type = get_post_type( $post ); } $post_templates = $this->get_post_templates(); $post_templates = isset( $post_templates[ $post_type ] ) ? $post_templates[ $post_type ] : array(); /** * Filters list of page templates for a theme. * * @since 4.9.6 * * @param string[] $post_templates Array of template header names keyed by the template file name. * @param WP_Theme $theme The theme object. * @param WP_Post|null $post The post being edited, provided for context, or null. * @param string $post_type Post type to get the templates for. */ $post_templates = (array) apply_filters( 'theme_templates', $post_templates, $this, $post, $post_type ); /** * Filters list of page templates for a theme. * * The dynamic portion of the hook name, `$post_type`, refers to the post type. * * Possible hook names include: * * - `theme_post_templates` * - `theme_page_templates` * - `theme_attachment_templates` * * @since 3.9.0 * @since 4.4.0 Converted to allow complete control over the `$page_templates` array. * @since 4.7.0 Added the `$post_type` parameter. * * @param string[] $post_templates Array of template header names keyed by the template file name. * @param WP_Theme $theme The theme object. * @param WP_Post|null $post The post being edited, provided for context, or null. * @param string $post_type Post type to get the templates for. */ $post_templates = (array) apply_filters( "theme_{$post_type}_templates", $post_templates, $this, $post, $post_type ); return $post_templates; } /** * Scans a directory for files of a certain extension. * * @since 3.4.0 * * @param string $path Absolute path to search. * @param array|string|null $extensions Optional. Array of extensions to find, string of a single extension, * or null for all extensions. Default null. * @param int $depth Optional. How many levels deep to search for files. Accepts 0, 1+, or * -1 (infinite depth). Default 0. * @param string $relative_path Optional. The basename of the absolute path. Used to control the * returned path for the found files, particularly when this function * recurses to lower depths. Default empty. * @return string[]|false Array of files, keyed by the path to the file relative to the `$path` directory prepended * with `$relative_path`, with the values being absolute paths. False otherwise. */ private static function scandir( $path, $extensions = null, $depth = 0, $relative_path = '' ) { if ( ! is_dir( $path ) ) { return false; } if ( $extensions ) { $extensions = (array) $extensions; $_extensions = implode( '|', $extensions ); } $relative_path = trailingslashit( $relative_path ); if ( '/' === $relative_path ) { $relative_path = ''; } $results = scandir( $path ); $files = array(); /** * Filters the array of excluded directories and files while scanning theme folder. * * @since 4.7.4 * * @param string[] $exclusions Array of excluded directories and files. */ $exclusions = (array) apply_filters( 'theme_scandir_exclusions', array( 'CVS', 'node_modules', 'vendor', 'bower_components' ) ); foreach ( $results as $result ) { if ( '.' === $result[0] || in_array( $result, $exclusions, true ) ) { continue; } if ( is_dir( $path . '/' . $result ) ) { if ( ! $depth ) { continue; } $found = self::scandir( $path . '/' . $result, $extensions, $depth - 1, $relative_path . $result ); $files = array_merge_recursive( $files, $found ); } elseif ( ! $extensions || preg_match( '~\.(' . $_extensions . ')$~', $result ) ) { $files[ $relative_path . $result ] = $path . '/' . $result; } } return $files; } /** * Loads the theme's textdomain. * * Translation files are not inherited from the parent theme. TODO: If this fails for the * child theme, it should probably try to load the parent theme's translations. * * @since 3.4.0 * * @return bool True if the textdomain was successfully loaded or has already been loaded. * False if no textdomain was specified in the file headers, or if the domain could not be loaded. */ public function load_textdomain() { if ( isset( $this->textdomain_loaded ) ) { return $this->textdomain_loaded; } $textdomain = $this->get( 'TextDomain' ); if ( ! $textdomain ) { $this->textdomain_loaded = false; return false; } if ( is_textdomain_loaded( $textdomain ) ) { $this->textdomain_loaded = true; return true; } $path = $this->get_stylesheet_directory(); $domainpath = $this->get( 'DomainPath' ); if ( $domainpath ) { $path .= $domainpath; } else { $path .= '/languages'; } $this->textdomain_loaded = load_theme_textdomain( $textdomain, $path ); return $this->textdomain_loaded; } /** * Whether the theme is allowed (multisite only). * * @since 3.4.0 * * @param string $check Optional. Whether to check only the 'network'-wide settings, the 'site' * settings, or 'both'. Defaults to 'both'. * @param int $blog_id Optional. Ignored if only network-wide settings are checked. Defaults to current site. * @return bool Whether the theme is allowed for the network. Returns true in single-site. */ public function is_allowed( $check = 'both', $blog_id = null ) { if ( ! is_multisite() ) { return true; } if ( 'both' === $check || 'network' === $check ) { $allowed = self::get_allowed_on_network(); if ( ! empty( $allowed[ $this->get_stylesheet() ] ) ) { return true; } } if ( 'both' === $check || 'site' === $check ) { $allowed = self::get_allowed_on_site( $blog_id ); if ( ! empty( $allowed[ $this->get_stylesheet() ] ) ) { return true; } } return false; } /** * Returns whether this theme is a block-based theme or not. * * @since 5.9.0 * * @return bool */ public function is_block_theme() { $paths_to_index_block_template = array( $this->get_file_path( '/block-templates/index.html' ), $this->get_file_path( '/templates/index.html' ), ); foreach ( $paths_to_index_block_template as $path_to_index_block_template ) { if ( is_file( $path_to_index_block_template ) && is_readable( $path_to_index_block_template ) ) { return true; } } return false; } /** * Retrieves the path of a file in the theme. * * Searches in the stylesheet directory before the template directory so themes * which inherit from a parent theme can just override one file. * * @since 5.9.0 * * @param string $file Optional. File to search for in the stylesheet directory. * @return string The path of the file. */ public function get_file_path( $file = '' ) { $file = ltrim( $file, '/' ); $stylesheet_directory = $this->get_stylesheet_directory(); $template_directory = $this->get_template_directory(); if ( empty( $file ) ) { $path = $stylesheet_directory; } elseif ( file_exists( $stylesheet_directory . '/' . $file ) ) { $path = $stylesheet_directory . '/' . $file; } else { $path = $template_directory . '/' . $file; } /** This filter is documented in wp-includes/link-template.php */ return apply_filters( 'theme_file_path', $path, $file ); } /** * Determines the latest WordPress default theme that is installed. * * This hits the filesystem. * * @since 4.4.0 * * @return WP_Theme|false Object, or false if no theme is installed, which would be bad. */ public static function get_core_default_theme() { foreach ( array_reverse( self::$default_themes ) as $slug => $name ) { $theme = wp_get_theme( $slug ); if ( $theme->exists() ) { return $theme; } } return false; } /** * Returns array of stylesheet names of themes allowed on the site or network. * * @since 3.4.0 * * @param int $blog_id Optional. ID of the site. Defaults to the current site. * @return string[] Array of stylesheet names. */ public static function get_allowed( $blog_id = null ) { /** * Filters the array of themes allowed on the network. * * Site is provided as context so that a list of network allowed themes can * be filtered further. * * @since 4.5.0 * * @param string[] $allowed_themes An array of theme stylesheet names. * @param int $blog_id ID of the site. */ $network = (array) apply_filters( 'network_allowed_themes', self::get_allowed_on_network(), $blog_id ); return $network + self::get_allowed_on_site( $blog_id ); } /** * Returns array of stylesheet names of themes allowed on the network. * * @since 3.4.0 * * @return string[] Array of stylesheet names. */ public static function get_allowed_on_network() { static $allowed_themes; if ( ! isset( $allowed_themes ) ) { $allowed_themes = (array) get_site_option( 'allowedthemes' ); } /** * Filters the array of themes allowed on the network. * * @since MU (3.0.0) * * @param string[] $allowed_themes An array of theme stylesheet names. */ $allowed_themes = apply_filters( 'allowed_themes', $allowed_themes ); return $allowed_themes; } /** * Returns array of stylesheet names of themes allowed on the site. * * @since 3.4.0 * * @param int $blog_id Optional. ID of the site. Defaults to the current site. * @return string[] Array of stylesheet names. */ public static function get_allowed_on_site( $blog_id = null ) { static $allowed_themes = array(); if ( ! $blog_id || ! is_multisite() ) { $blog_id = get_current_blog_id(); } if ( isset( $allowed_themes[ $blog_id ] ) ) { /** * Filters the array of themes allowed on the site. * * @since 4.5.0 * * @param string[] $allowed_themes An array of theme stylesheet names. * @param int $blog_id ID of the site. Defaults to current site. */ return (array) apply_filters( 'site_allowed_themes', $allowed_themes[ $blog_id ], $blog_id ); } $current = get_current_blog_id() == $blog_id; if ( $current ) { $allowed_themes[ $blog_id ] = get_option( 'allowedthemes' ); } else { switch_to_blog( $blog_id ); $allowed_themes[ $blog_id ] = get_option( 'allowedthemes' ); restore_current_blog(); } // This is all super old MU back compat joy. // 'allowedthemes' keys things by stylesheet. 'allowed_themes' keyed things by name. if ( false === $allowed_themes[ $blog_id ] ) { if ( $current ) { $allowed_themes[ $blog_id ] = get_option( 'allowed_themes' ); } else { switch_to_blog( $blog_id ); $allowed_themes[ $blog_id ] = get_option( 'allowed_themes' ); restore_current_blog(); } if ( ! is_array( $allowed_themes[ $blog_id ] ) || empty( $allowed_themes[ $blog_id ] ) ) { $allowed_themes[ $blog_id ] = array(); } else { $converted = array(); $themes = wp_get_themes(); foreach ( $themes as $stylesheet => $theme_data ) { if ( isset( $allowed_themes[ $blog_id ][ $theme_data->get( 'Name' ) ] ) ) { $converted[ $stylesheet ] = true; } } $allowed_themes[ $blog_id ] = $converted; } // Set the option so we never have to go through this pain again. if ( is_admin() && $allowed_themes[ $blog_id ] ) { if ( $current ) { update_option( 'allowedthemes', $allowed_themes[ $blog_id ] ); delete_option( 'allowed_themes' ); } else { switch_to_blog( $blog_id ); update_option( 'allowedthemes', $allowed_themes[ $blog_id ] ); delete_option( 'allowed_themes' ); restore_current_blog(); } } } /** This filter is documented in wp-includes/class-wp-theme.php */ return (array) apply_filters( 'site_allowed_themes', $allowed_themes[ $blog_id ], $blog_id ); } /** * Enables a theme for all sites on the current network. * * @since 4.6.0 * * @param string|string[] $stylesheets Stylesheet name or array of stylesheet names. */ public static function network_enable_theme( $stylesheets ) { if ( ! is_multisite() ) { return; } if ( ! is_array( $stylesheets ) ) { $stylesheets = array( $stylesheets ); } $allowed_themes = get_site_option( 'allowedthemes' ); foreach ( $stylesheets as $stylesheet ) { $allowed_themes[ $stylesheet ] = true; } update_site_option( 'allowedthemes', $allowed_themes ); } /** * Disables a theme for all sites on the current network. * * @since 4.6.0 * * @param string|string[] $stylesheets Stylesheet name or array of stylesheet names. */ public static function network_disable_theme( $stylesheets ) { if ( ! is_multisite() ) { return; } if ( ! is_array( $stylesheets ) ) { $stylesheets = array( $stylesheets ); } $allowed_themes = get_site_option( 'allowedthemes' ); foreach ( $stylesheets as $stylesheet ) { if ( isset( $allowed_themes[ $stylesheet ] ) ) { unset( $allowed_themes[ $stylesheet ] ); } } update_site_option( 'allowedthemes', $allowed_themes ); } /** * Sorts themes by name. * * @since 3.4.0 * * @param WP_Theme[] $themes Array of theme objects to sort (passed by reference). */ public static function sort_by_name( &$themes ) { if ( 0 === strpos( get_user_locale(), 'en_' ) ) { uasort( $themes, array( 'WP_Theme', '_name_sort' ) ); } else { foreach ( $themes as $key => $theme ) { $theme->translate_header( 'Name', $theme->headers['Name'] ); } uasort( $themes, array( 'WP_Theme', '_name_sort_i18n' ) ); } } /** * Callback function for usort() to naturally sort themes by name. * * Accesses the Name header directly from the class for maximum speed. * Would choke on HTML but we don't care enough to slow it down with strip_tags(). * * @since 3.4.0 * * @param WP_Theme $a First theme. * @param WP_Theme $b Second theme. * @return int Negative if `$a` falls lower in the natural order than `$b`. Zero if they fall equally. * Greater than 0 if `$a` falls higher in the natural order than `$b`. Used with usort(). */ private static function _name_sort( $a, $b ) { return strnatcasecmp( $a->headers['Name'], $b->headers['Name'] ); } /** * Callback function for usort() to naturally sort themes by translated name. * * @since 3.4.0 * * @param WP_Theme $a First theme. * @param WP_Theme $b Second theme. * @return int Negative if `$a` falls lower in the natural order than `$b`. Zero if they fall equally. * Greater than 0 if `$a` falls higher in the natural order than `$b`. Used with usort(). */ private static function _name_sort_i18n( $a, $b ) { return strnatcasecmp( $a->name_translated, $b->name_translated ); } private static function _check_headers_property_has_correct_type( $headers ) { if ( ! is_array( $headers ) ) { return false; } foreach ( $headers as $key => $value ) { if ( ! is_string( $key ) || ! is_string( $value ) ) { return false; } } return true; } } PK�����j l\f25mm�mm���general-template.phpnu�[��������<?php /** * General template tags that can go anywhere in a template. * * @package WordPress * @subpackage Template */ /** * Load header template. * * Includes the header template for a theme or if a name is specified then a * specialised header will be included. * * For the parameter, if the file is called "header-special.php" then specify * "special". * * @since 1.5.0 * @since 5.5.0 A return value was added. * @since 5.5.0 The `$args` parameter was added. * * @param string $name The name of the specialised header. * @param array $args Optional. Additional arguments passed to the header template. * Default empty array. * @return void|false Void on success, false if the template does not exist. */ function get_header( $name = null, $args = array() ) { /** * Fires before the header template file is loaded. * * @since 2.1.0 * @since 2.8.0 The `$name` parameter was added. * @since 5.5.0 The `$args` parameter was added. * * @param string|null $name Name of the specific header file to use. Null for the default header. * @param array $args Additional arguments passed to the header template. */ do_action( 'get_header', $name, $args ); $templates = array(); $name = (string) $name; if ( '' !== $name ) { $templates[] = "header-{$name}.php"; } $templates[] = 'header.php'; if ( ! locate_template( $templates, true, true, $args ) ) { return false; } } /** * Load footer template. * * Includes the footer template for a theme or if a name is specified then a * specialised footer will be included. * * For the parameter, if the file is called "footer-special.php" then specify * "special". * * @since 1.5.0 * @since 5.5.0 A return value was added. * @since 5.5.0 The `$args` parameter was added. * * @param string $name The name of the specialised footer. * @param array $args Optional. Additional arguments passed to the footer template. * Default empty array. * @return void|false Void on success, false if the template does not exist. */ function get_footer( $name = null, $args = array() ) { /** * Fires before the footer template file is loaded. * * @since 2.1.0 * @since 2.8.0 The `$name` parameter was added. * @since 5.5.0 The `$args` parameter was added. * * @param string|null $name Name of the specific footer file to use. Null for the default footer. * @param array $args Additional arguments passed to the footer template. */ do_action( 'get_footer', $name, $args ); $templates = array(); $name = (string) $name; if ( '' !== $name ) { $templates[] = "footer-{$name}.php"; } $templates[] = 'footer.php'; if ( ! locate_template( $templates, true, true, $args ) ) { return false; } } /** * Load sidebar template. * * Includes the sidebar template for a theme or if a name is specified then a * specialised sidebar will be included. * * For the parameter, if the file is called "sidebar-special.php" then specify * "special". * * @since 1.5.0 * @since 5.5.0 A return value was added. * @since 5.5.0 The `$args` parameter was added. * * @param string $name The name of the specialised sidebar. * @param array $args Optional. Additional arguments passed to the sidebar template. * Default empty array. * @return void|false Void on success, false if the template does not exist. */ function get_sidebar( $name = null, $args = array() ) { /** * Fires before the sidebar template file is loaded. * * @since 2.2.0 * @since 2.8.0 The `$name` parameter was added. * @since 5.5.0 The `$args` parameter was added. * * @param string|null $name Name of the specific sidebar file to use. Null for the default sidebar. * @param array $args Additional arguments passed to the sidebar template. */ do_action( 'get_sidebar', $name, $args ); $templates = array(); $name = (string) $name; if ( '' !== $name ) { $templates[] = "sidebar-{$name}.php"; } $templates[] = 'sidebar.php'; if ( ! locate_template( $templates, true, true, $args ) ) { return false; } } /** * Loads a template part into a template. * * Provides a simple mechanism for child themes to overload reusable sections of code * in the theme. * * Includes the named template part for a theme or if a name is specified then a * specialised part will be included. If the theme contains no {slug}.php file * then no template will be included. * * The template is included using require, not require_once, so you may include the * same template part multiple times. * * For the $name parameter, if the file is called "{slug}-special.php" then specify * "special". * * @since 3.0.0 * @since 5.5.0 A return value was added. * @since 5.5.0 The `$args` parameter was added. * * @param string $slug The slug name for the generic template. * @param string $name The name of the specialised template. * @param array $args Optional. Additional arguments passed to the template. * Default empty array. * @return void|false Void on success, false if the template does not exist. */ function get_template_part( $slug, $name = null, $args = array() ) { /** * Fires before the specified template part file is loaded. * * The dynamic portion of the hook name, `$slug`, refers to the slug name * for the generic template part. * * @since 3.0.0 * @since 5.5.0 The `$args` parameter was added. * * @param string $slug The slug name for the generic template. * @param string|null $name The name of the specialized template. * @param array $args Additional arguments passed to the template. */ do_action( "get_template_part_{$slug}", $slug, $name, $args ); $templates = array(); $name = (string) $name; if ( '' !== $name ) { $templates[] = "{$slug}-{$name}.php"; } $templates[] = "{$slug}.php"; /** * Fires before an attempt is made to locate and load a template part. * * @since 5.2.0 * @since 5.5.0 The `$args` parameter was added. * * @param string $slug The slug name for the generic template. * @param string $name The name of the specialized template. * @param string[] $templates Array of template files to search for, in order. * @param array $args Additional arguments passed to the template. */ do_action( 'get_template_part', $slug, $name, $templates, $args ); if ( ! locate_template( $templates, true, false, $args ) ) { return false; } } /** * Display search form. * * Will first attempt to locate the searchform.php file in either the child or * the parent, then load it. If it doesn't exist, then the default search form * will be displayed. The default search form is HTML, which will be displayed. * There is a filter applied to the search form HTML in order to edit or replace * it. The filter is {@see 'get_search_form'}. * * This function is primarily used by themes which want to hardcode the search * form into the sidebar and also by the search widget in WordPress. * * There is also an action that is called whenever the function is run called, * {@see 'pre_get_search_form'}. This can be useful for outputting JavaScript that the * search relies on or various formatting that applies to the beginning of the * search. To give a few examples of what it can be used for. * * @since 2.7.0 * @since 5.2.0 The `$args` array parameter was added in place of an `$echo` boolean flag. * * @param array $args { * Optional. Array of display arguments. * * @type bool $echo Whether to echo or return the form. Default true. * @type string $aria_label ARIA label for the search form. Useful to distinguish * multiple search forms on the same page and improve * accessibility. Default empty. * } * @return void|string Void if 'echo' argument is true, search form HTML if 'echo' is false. */ function get_search_form( $args = array() ) { /** * Fires before the search form is retrieved, at the start of get_search_form(). * * @since 2.7.0 as 'get_search_form' action. * @since 3.6.0 * @since 5.5.0 The `$args` parameter was added. * * @link https://core.trac.wordpress.org/ticket/19321 * * @param array $args The array of arguments for building the search form. * See get_search_form() for information on accepted arguments. */ do_action( 'pre_get_search_form', $args ); $echo = true; if ( ! is_array( $args ) ) { /* * Back compat: to ensure previous uses of get_search_form() continue to * function as expected, we handle a value for the boolean $echo param removed * in 5.2.0. Then we deal with the $args array and cast its defaults. */ $echo = (bool) $args; // Set an empty array and allow default arguments to take over. $args = array(); } // Defaults are to echo and to output no custom label on the form. $defaults = array( 'echo' => $echo, 'aria_label' => '', ); $args = wp_parse_args( $args, $defaults ); /** * Filters the array of arguments used when generating the search form. * * @since 5.2.0 * * @param array $args The array of arguments for building the search form. * See get_search_form() for information on accepted arguments. */ $args = apply_filters( 'search_form_args', $args ); // Ensure that the filtered arguments contain all required default values. $args = array_merge( $defaults, $args ); $format = current_theme_supports( 'html5', 'search-form' ) ? 'html5' : 'xhtml'; /** * Filters the HTML format of the search form. * * @since 3.6.0 * @since 5.5.0 The `$args` parameter was added. * * @param string $format The type of markup to use in the search form. * Accepts 'html5', 'xhtml'. * @param array $args The array of arguments for building the search form. * See get_search_form() for information on accepted arguments. */ $format = apply_filters( 'search_form_format', $format, $args ); $search_form_template = locate_template( 'searchform.php' ); if ( '' !== $search_form_template ) { ob_start(); require $search_form_template; $form = ob_get_clean(); } else { // Build a string containing an aria-label to use for the search form. if ( $args['aria_label'] ) { $aria_label = 'aria-label="' . esc_attr( $args['aria_label'] ) . '" '; } else { /* * If there's no custom aria-label, we can set a default here. At the * moment it's empty as there's uncertainty about what the default should be. */ $aria_label = ''; } if ( 'html5' === $format ) { $form = '<form role="search" ' . $aria_label . 'method="get" class="search-form" action="' . esc_url( home_url( '/' ) ) . '"> <label> <span class="screen-reader-text">' . _x( 'Search for:', 'label' ) . '</span> <input type="search" class="search-field" placeholder="' . esc_attr_x( 'Search …', 'placeholder' ) . '" value="' . get_search_query() . '" name="s" /> </label> <input type="submit" class="search-submit" value="' . esc_attr_x( 'Search', 'submit button' ) . '" /> </form>'; } else { $form = '<form role="search" ' . $aria_label . 'method="get" id="searchform" class="searchform" action="' . esc_url( home_url( '/' ) ) . '"> <div> <label class="screen-reader-text" for="s">' . _x( 'Search for:', 'label' ) . '</label> <input type="text" value="' . get_search_query() . '" name="s" id="s" /> <input type="submit" id="searchsubmit" value="' . esc_attr_x( 'Search', 'submit button' ) . '" /> </div> </form>'; } } /** * Filters the HTML output of the search form. * * @since 2.7.0 * @since 5.5.0 The `$args` parameter was added. * * @param string $form The search form HTML output. * @param array $args The array of arguments for building the search form. * See get_search_form() for information on accepted arguments. */ $result = apply_filters( 'get_search_form', $form, $args ); if ( null === $result ) { $result = $form; } if ( $args['echo'] ) { echo $result; } else { return $result; } } /** * Display the Log In/Out link. * * Displays a link, which allows users to navigate to the Log In page to log in * or log out depending on whether they are currently logged in. * * @since 1.5.0 * * @param string $redirect Optional path to redirect to on login/logout. * @param bool $echo Default to echo and not return the link. * @return void|string Void if `$echo` argument is true, log in/out link if `$echo` is false. */ function wp_loginout( $redirect = '', $echo = true ) { if ( ! is_user_logged_in() ) { $link = '<a href="' . esc_url( wp_login_url( $redirect ) ) . '">' . __( 'Log in' ) . '</a>'; } else { $link = '<a href="' . esc_url( wp_logout_url( $redirect ) ) . '">' . __( 'Log out' ) . '</a>'; } if ( $echo ) { /** * Filters the HTML output for the Log In/Log Out link. * * @since 1.5.0 * * @param string $link The HTML link content. */ echo apply_filters( 'loginout', $link ); } else { /** This filter is documented in wp-includes/general-template.php */ return apply_filters( 'loginout', $link ); } } /** * Retrieves the logout URL. * * Returns the URL that allows the user to log out of the site. * * @since 2.7.0 * * @param string $redirect Path to redirect to on logout. * @return string The logout URL. Note: HTML-encoded via esc_html() in wp_nonce_url(). */ function wp_logout_url( $redirect = '' ) { $args = array(); if ( ! empty( $redirect ) ) { $args['redirect_to'] = urlencode( $redirect ); } $logout_url = add_query_arg( $args, site_url( 'wp-login.php?action=logout', 'login' ) ); $logout_url = wp_nonce_url( $logout_url, 'log-out' ); /** * Filters the logout URL. * * @since 2.8.0 * * @param string $logout_url The HTML-encoded logout URL. * @param string $redirect Path to redirect to on logout. */ return apply_filters( 'logout_url', $logout_url, $redirect ); } /** * Retrieves the login URL. * * @since 2.7.0 * * @param string $redirect Path to redirect to on log in. * @param bool $force_reauth Whether to force reauthorization, even if a cookie is present. * Default false. * @return string The login URL. Not HTML-encoded. */ function wp_login_url( $redirect = '', $force_reauth = false ) { $login_url = site_url( 'wp-login.php', 'login' ); if ( ! empty( $redirect ) ) { $login_url = add_query_arg( 'redirect_to', urlencode( $redirect ), $login_url ); } if ( $force_reauth ) { $login_url = add_query_arg( 'reauth', '1', $login_url ); } /** * Filters the login URL. * * @since 2.8.0 * @since 4.2.0 The `$force_reauth` parameter was added. * * @param string $login_url The login URL. Not HTML-encoded. * @param string $redirect The path to redirect to on login, if supplied. * @param bool $force_reauth Whether to force reauthorization, even if a cookie is present. */ return apply_filters( 'login_url', $login_url, $redirect, $force_reauth ); } /** * Returns the URL that allows the user to register on the site. * * @since 3.6.0 * * @return string User registration URL. */ function wp_registration_url() { /** * Filters the user registration URL. * * @since 3.6.0 * * @param string $register The user registration URL. */ return apply_filters( 'register_url', site_url( 'wp-login.php?action=register', 'login' ) ); } /** * Provides a simple login form for use anywhere within WordPress. * * The login form HTML is echoed by default. Pass a false value for `$echo` to return it instead. * * @since 3.0.0 * * @param array $args { * Optional. Array of options to control the form output. Default empty array. * * @type bool $echo Whether to display the login form or return the form HTML code. * Default true (echo). * @type string $redirect URL to redirect to. Must be absolute, as in "https://example.com/mypage/". * Default is to redirect back to the request URI. * @type string $form_id ID attribute value for the form. Default 'loginform'. * @type string $label_username Label for the username or email address field. Default 'Username or Email Address'. * @type string $label_password Label for the password field. Default 'Password'. * @type string $label_remember Label for the remember field. Default 'Remember Me'. * @type string $label_log_in Label for the submit button. Default 'Log In'. * @type string $id_username ID attribute value for the username field. Default 'user_login'. * @type string $id_password ID attribute value for the password field. Default 'user_pass'. * @type string $id_remember ID attribute value for the remember field. Default 'rememberme'. * @type string $id_submit ID attribute value for the submit button. Default 'wp-submit'. * @type bool $remember Whether to display the "rememberme" checkbox in the form. * @type string $value_username Default value for the username field. Default empty. * @type bool $value_remember Whether the "Remember Me" checkbox should be checked by default. * Default false (unchecked). * * } * @return void|string Void if 'echo' argument is true, login form HTML if 'echo' is false. */ function wp_login_form( $args = array() ) { $defaults = array( 'echo' => true, // Default 'redirect' value takes the user back to the request URI. 'redirect' => ( is_ssl() ? 'https://' : 'http://' ) . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'], 'form_id' => 'loginform', 'label_username' => __( 'Username or Email Address' ), 'label_password' => __( 'Password' ), 'label_remember' => __( 'Remember Me' ), 'label_log_in' => __( 'Log In' ), 'id_username' => 'user_login', 'id_password' => 'user_pass', 'id_remember' => 'rememberme', 'id_submit' => 'wp-submit', 'remember' => true, 'value_username' => '', // Set 'value_remember' to true to default the "Remember me" checkbox to checked. 'value_remember' => false, ); /** * Filters the default login form output arguments. * * @since 3.0.0 * * @see wp_login_form() * * @param array $defaults An array of default login form arguments. */ $args = wp_parse_args( $args, apply_filters( 'login_form_defaults', $defaults ) ); /** * Filters content to display at the top of the login form. * * The filter evaluates just following the opening form tag element. * * @since 3.0.0 * * @param string $content Content to display. Default empty. * @param array $args Array of login form arguments. */ $login_form_top = apply_filters( 'login_form_top', '', $args ); /** * Filters content to display in the middle of the login form. * * The filter evaluates just following the location where the 'login-password' * field is displayed. * * @since 3.0.0 * * @param string $content Content to display. Default empty. * @param array $args Array of login form arguments. */ $login_form_middle = apply_filters( 'login_form_middle', '', $args ); /** * Filters content to display at the bottom of the login form. * * The filter evaluates just preceding the closing form tag element. * * @since 3.0.0 * * @param string $content Content to display. Default empty. * @param array $args Array of login form arguments. */ $login_form_bottom = apply_filters( 'login_form_bottom', '', $args ); $form = sprintf( '<form name="%1$s" id="%1$s" action="%2$s" method="post">', esc_attr( $args['form_id'] ), esc_url( site_url( 'wp-login.php', 'login_post' ) ) ) . $login_form_top . sprintf( '<p class="login-username"> <label for="%1$s">%2$s</label> <input type="text" name="log" id="%1$s" class="input" value="%3$s" size="20" /> </p>', esc_attr( $args['id_username'] ), esc_html( $args['label_username'] ), esc_attr( $args['value_username'] ) ) . sprintf( '<p class="login-password"> <label for="%1$s">%2$s</label> <input type="password" name="pwd" id="%1$s" class="input" value="" size="20" /> </p>', esc_attr( $args['id_password'] ), esc_html( $args['label_password'] ) ) . $login_form_middle . ( $args['remember'] ? sprintf( '<p class="login-remember"><label><input name="rememberme" type="checkbox" id="%1$s" value="forever"%2$s /> %3$s</label></p>', esc_attr( $args['id_remember'] ), ( $args['value_remember'] ? ' checked="checked"' : '' ), esc_html( $args['label_remember'] ) ) : '' ) . sprintf( '<p class="login-submit"> <input type="submit" name="wp-submit" id="%1$s" class="button button-primary" value="%2$s" /> <input type="hidden" name="redirect_to" value="%3$s" /> </p>', esc_attr( $args['id_submit'] ), esc_attr( $args['label_log_in'] ), esc_url( $args['redirect'] ) ) . $login_form_bottom . '</form>'; if ( $args['echo'] ) { echo $form; } else { return $form; } } /** * Returns the URL that allows the user to retrieve the lost password * * @since 2.8.0 * * @param string $redirect Path to redirect to on login. * @return string Lost password URL. */ function wp_lostpassword_url( $redirect = '' ) { $args = array( 'action' => 'lostpassword', ); if ( ! empty( $redirect ) ) { $args['redirect_to'] = urlencode( $redirect ); } if ( is_multisite() ) { $blog_details = get_blog_details(); $wp_login_path = $blog_details->path . 'wp-login.php'; } else { $wp_login_path = 'wp-login.php'; } $lostpassword_url = add_query_arg( $args, network_site_url( $wp_login_path, 'login' ) ); /** * Filters the Lost Password URL. * * @since 2.8.0 * * @param string $lostpassword_url The lost password page URL. * @param string $redirect The path to redirect to on login. */ return apply_filters( 'lostpassword_url', $lostpassword_url, $redirect ); } /** * Display the Registration or Admin link. * * Display a link which allows the user to navigate to the registration page if * not logged in and registration is enabled or to the dashboard if logged in. * * @since 1.5.0 * * @param string $before Text to output before the link. Default `<li>`. * @param string $after Text to output after the link. Default `</li>`. * @param bool $echo Default to echo and not return the link. * @return void|string Void if `$echo` argument is true, registration or admin link * if `$echo` is false. */ function wp_register( $before = '<li>', $after = '</li>', $echo = true ) { if ( ! is_user_logged_in() ) { if ( get_option( 'users_can_register' ) ) { $link = $before . '<a href="' . esc_url( wp_registration_url() ) . '">' . __( 'Register' ) . '</a>' . $after; } else { $link = ''; } } elseif ( current_user_can( 'read' ) ) { $link = $before . '<a href="' . admin_url() . '">' . __( 'Site Admin' ) . '</a>' . $after; } else { $link = ''; } /** * Filters the HTML link to the Registration or Admin page. * * Users are sent to the admin page if logged-in, or the registration page * if enabled and logged-out. * * @since 1.5.0 * * @param string $link The HTML code for the link to the Registration or Admin page. */ $link = apply_filters( 'register', $link ); if ( $echo ) { echo $link; } else { return $link; } } /** * Theme container function for the 'wp_meta' action. * * The {@see 'wp_meta'} action can have several purposes, depending on how you use it, * but one purpose might have been to allow for theme switching. * * @since 1.5.0 * * @link https://core.trac.wordpress.org/ticket/1458 Explanation of 'wp_meta' action. */ function wp_meta() { /** * Fires before displaying echoed content in the sidebar. * * @since 1.5.0 */ do_action( 'wp_meta' ); } /** * Displays information about the current site. * * @since 0.71 * * @see get_bloginfo() For possible `$show` values * * @param string $show Optional. Site information to display. Default empty. */ function bloginfo( $show = '' ) { echo get_bloginfo( $show, 'display' ); } /** * Retrieves information about the current site. * * Possible values for `$show` include: * * - 'name' - Site title (set in Settings > General) * - 'description' - Site tagline (set in Settings > General) * - 'wpurl' - The WordPress address (URL) (set in Settings > General) * - 'url' - The Site address (URL) (set in Settings > General) * - 'admin_email' - Admin email (set in Settings > General) * - 'charset' - The "Encoding for pages and feeds" (set in Settings > Reading) * - 'version' - The current WordPress version * - 'html_type' - The content-type (default: "text/html"). Themes and plugins * can override the default value using the {@see 'pre_option_html_type'} filter * - 'text_direction' - The text direction determined by the site's language. is_rtl() * should be used instead * - 'language' - Language code for the current site * - 'stylesheet_url' - URL to the stylesheet for the active theme. An active child theme * will take precedence over this value * - 'stylesheet_directory' - Directory path for the active theme. An active child theme * will take precedence over this value * - 'template_url' / 'template_directory' - URL of the active theme's directory. An active * child theme will NOT take precedence over this value * - 'pingback_url' - The pingback XML-RPC file URL (xmlrpc.php) * - 'atom_url' - The Atom feed URL (/feed/atom) * - 'rdf_url' - The RDF/RSS 1.0 feed URL (/feed/rdf) * - 'rss_url' - The RSS 0.92 feed URL (/feed/rss) * - 'rss2_url' - The RSS 2.0 feed URL (/feed) * - 'comments_atom_url' - The comments Atom feed URL (/comments/feed) * - 'comments_rss2_url' - The comments RSS 2.0 feed URL (/comments/feed) * * Some `$show` values are deprecated and will be removed in future versions. * These options will trigger the _deprecated_argument() function. * * Deprecated arguments include: * * - 'siteurl' - Use 'url' instead * - 'home' - Use 'url' instead * * @since 0.71 * * @global string $wp_version The WordPress version string. * * @param string $show Optional. Site info to retrieve. Default empty (site name). * @param string $filter Optional. How to filter what is retrieved. Default 'raw'. * @return string Mostly string values, might be empty. */ function get_bloginfo( $show = '', $filter = 'raw' ) { switch ( $show ) { case 'home': // Deprecated. case 'siteurl': // Deprecated. _deprecated_argument( __FUNCTION__, '2.2.0', sprintf( /* translators: 1: 'siteurl'/'home' argument, 2: bloginfo() function name, 3: 'url' argument. */ __( 'The %1$s option is deprecated for the family of %2$s functions. Use the %3$s option instead.' ), '<code>' . $show . '</code>', '<code>bloginfo()</code>', '<code>url</code>' ) ); // Intentional fall-through to be handled by the 'url' case. case 'url': $output = home_url(); break; case 'wpurl': $output = site_url(); break; case 'description': $output = get_option( 'blogdescription' ); break; case 'rdf_url': $output = get_feed_link( 'rdf' ); break; case 'rss_url': $output = get_feed_link( 'rss' ); break; case 'rss2_url': $output = get_feed_link( 'rss2' ); break; case 'atom_url': $output = get_feed_link( 'atom' ); break; case 'comments_atom_url': $output = get_feed_link( 'comments_atom' ); break; case 'comments_rss2_url': $output = get_feed_link( 'comments_rss2' ); break; case 'pingback_url': $output = site_url( 'xmlrpc.php' ); break; case 'stylesheet_url': $output = get_stylesheet_uri(); break; case 'stylesheet_directory': $output = get_stylesheet_directory_uri(); break; case 'template_directory': case 'template_url': $output = get_template_directory_uri(); break; case 'admin_email': $output = get_option( 'admin_email' ); break; case 'charset': $output = get_option( 'blog_charset' ); if ( '' === $output ) { $output = 'UTF-8'; } break; case 'html_type': $output = get_option( 'html_type' ); break; case 'version': global $wp_version; $output = $wp_version; break; case 'language': /* * translators: Translate this to the correct language tag for your locale, * see https://www.w3.org/International/articles/language-tags/ for reference. * Do not translate into your own language. */ $output = __( 'html_lang_attribute' ); if ( 'html_lang_attribute' === $output || preg_match( '/[^a-zA-Z0-9-]/', $output ) ) { $output = determine_locale(); $output = str_replace( '_', '-', $output ); } break; case 'text_direction': _deprecated_argument( __FUNCTION__, '2.2.0', sprintf( /* translators: 1: 'text_direction' argument, 2: bloginfo() function name, 3: is_rtl() function name. */ __( 'The %1$s option is deprecated for the family of %2$s functions. Use the %3$s function instead.' ), '<code>' . $show . '</code>', '<code>bloginfo()</code>', '<code>is_rtl()</code>' ) ); if ( function_exists( 'is_rtl' ) ) { $output = is_rtl() ? 'rtl' : 'ltr'; } else { $output = 'ltr'; } break; case 'name': default: $output = get_option( 'blogname' ); break; } $url = true; if ( strpos( $show, 'url' ) === false && strpos( $show, 'directory' ) === false && strpos( $show, 'home' ) === false ) { $url = false; } if ( 'display' === $filter ) { if ( $url ) { /** * Filters the URL returned by get_bloginfo(). * * @since 2.0.5 * * @param string $output The URL returned by bloginfo(). * @param string $show Type of information requested. */ $output = apply_filters( 'bloginfo_url', $output, $show ); } else { /** * Filters the site information returned by get_bloginfo(). * * @since 0.71 * * @param mixed $output The requested non-URL site information. * @param string $show Type of information requested. */ $output = apply_filters( 'bloginfo', $output, $show ); } } return $output; } /** * Returns the Site Icon URL. * * @since 4.3.0 * * @param int $size Optional. Size of the site icon. Default 512 (pixels). * @param string $url Optional. Fallback url if no site icon is found. Default empty. * @param int $blog_id Optional. ID of the blog to get the site icon for. Default current blog. * @return string Site Icon URL. */ function get_site_icon_url( $size = 512, $url = '', $blog_id = 0 ) { $switched_blog = false; if ( is_multisite() && ! empty( $blog_id ) && get_current_blog_id() !== (int) $blog_id ) { switch_to_blog( $blog_id ); $switched_blog = true; } $site_icon_id = get_option( 'site_icon' ); if ( $site_icon_id ) { if ( $size >= 512 ) { $size_data = 'full'; } else { $size_data = array( $size, $size ); } $url = wp_get_attachment_image_url( $site_icon_id, $size_data ); } if ( $switched_blog ) { restore_current_blog(); } /** * Filters the site icon URL. * * @since 4.4.0 * * @param string $url Site icon URL. * @param int $size Size of the site icon. * @param int $blog_id ID of the blog to get the site icon for. */ return apply_filters( 'get_site_icon_url', $url, $size, $blog_id ); } /** * Displays the Site Icon URL. * * @since 4.3.0 * * @param int $size Optional. Size of the site icon. Default 512 (pixels). * @param string $url Optional. Fallback url if no site icon is found. Default empty. * @param int $blog_id Optional. ID of the blog to get the site icon for. Default current blog. */ function site_icon_url( $size = 512, $url = '', $blog_id = 0 ) { echo esc_url( get_site_icon_url( $size, $url, $blog_id ) ); } /** * Whether the site has a Site Icon. * * @since 4.3.0 * * @param int $blog_id Optional. ID of the blog in question. Default current blog. * @return bool Whether the site has a site icon or not. */ function has_site_icon( $blog_id = 0 ) { return (bool) get_site_icon_url( 512, '', $blog_id ); } /** * Determines whether the site has a custom logo. * * @since 4.5.0 * * @param int $blog_id Optional. ID of the blog in question. Default is the ID of the current blog. * @return bool Whether the site has a custom logo or not. */ function has_custom_logo( $blog_id = 0 ) { $switched_blog = false; if ( is_multisite() && ! empty( $blog_id ) && get_current_blog_id() !== (int) $blog_id ) { switch_to_blog( $blog_id ); $switched_blog = true; } $custom_logo_id = get_theme_mod( 'custom_logo' ); if ( $switched_blog ) { restore_current_blog(); } return (bool) $custom_logo_id; } /** * Returns a custom logo, linked to home unless the theme supports removing the link on the home page. * * @since 4.5.0 * @since 5.5.0 Added option to remove the link on the home page with `unlink-homepage-logo` theme support * for the `custom-logo` theme feature. * @since 5.5.1 Disabled lazy-loading by default. * * @param int $blog_id Optional. ID of the blog in question. Default is the ID of the current blog. * @return string Custom logo markup. */ function get_custom_logo( $blog_id = 0 ) { $html = ''; $switched_blog = false; if ( is_multisite() && ! empty( $blog_id ) && get_current_blog_id() !== (int) $blog_id ) { switch_to_blog( $blog_id ); $switched_blog = true; } $custom_logo_id = get_theme_mod( 'custom_logo' ); // We have a logo. Logo is go. if ( $custom_logo_id ) { $custom_logo_attr = array( 'class' => 'custom-logo', 'loading' => false, ); $unlink_homepage_logo = (bool) get_theme_support( 'custom-logo', 'unlink-homepage-logo' ); if ( $unlink_homepage_logo && is_front_page() && ! is_paged() ) { /* * If on the home page, set the logo alt attribute to an empty string, * as the image is decorative and doesn't need its purpose to be described. */ $custom_logo_attr['alt'] = ''; } else { /* * If the logo alt attribute is empty, get the site title and explicitly pass it * to the attributes used by wp_get_attachment_image(). */ $image_alt = get_post_meta( $custom_logo_id, '_wp_attachment_image_alt', true ); if ( empty( $image_alt ) ) { $custom_logo_attr['alt'] = get_bloginfo( 'name', 'display' ); } } /** * Filters the list of custom logo image attributes. * * @since 5.5.0 * * @param array $custom_logo_attr Custom logo image attributes. * @param int $custom_logo_id Custom logo attachment ID. * @param int $blog_id ID of the blog to get the custom logo for. */ $custom_logo_attr = apply_filters( 'get_custom_logo_image_attributes', $custom_logo_attr, $custom_logo_id, $blog_id ); /* * If the alt attribute is not empty, there's no need to explicitly pass it * because wp_get_attachment_image() already adds the alt attribute. */ $image = wp_get_attachment_image( $custom_logo_id, 'full', false, $custom_logo_attr ); if ( $unlink_homepage_logo && is_front_page() && ! is_paged() ) { // If on the home page, don't link the logo to home. $html = sprintf( '<span class="custom-logo-link">%1$s</span>', $image ); } else { $aria_current = is_front_page() && ! is_paged() ? ' aria-current="page"' : ''; $html = sprintf( '<a href="%1$s" class="custom-logo-link" rel="home"%2$s>%3$s</a>', esc_url( home_url( '/' ) ), $aria_current, $image ); } } elseif ( is_customize_preview() ) { // If no logo is set but we're in the Customizer, leave a placeholder (needed for the live preview). $html = sprintf( '<a href="%1$s" class="custom-logo-link" style="display:none;"><img class="custom-logo" alt="" /></a>', esc_url( home_url( '/' ) ) ); } if ( $switched_blog ) { restore_current_blog(); } /** * Filters the custom logo output. * * @since 4.5.0 * @since 4.6.0 Added the `$blog_id` parameter. * * @param string $html Custom logo HTML output. * @param int $blog_id ID of the blog to get the custom logo for. */ return apply_filters( 'get_custom_logo', $html, $blog_id ); } /** * Displays a custom logo, linked to home unless the theme supports removing the link on the home page. * * @since 4.5.0 * * @param int $blog_id Optional. ID of the blog in question. Default is the ID of the current blog. */ function the_custom_logo( $blog_id = 0 ) { echo get_custom_logo( $blog_id ); } /** * Returns document title for the current page. * * @since 4.4.0 * * @global int $page Page number of a single post. * @global int $paged Page number of a list of posts. * * @return string Tag with the document title. */ function wp_get_document_title() { /** * Filters the document title before it is generated. * * Passing a non-empty value will short-circuit wp_get_document_title(), * returning that value instead. * * @since 4.4.0 * * @param string $title The document title. Default empty string. */ $title = apply_filters( 'pre_get_document_title', '' ); if ( ! empty( $title ) ) { return $title; } global $page, $paged; $title = array( 'title' => '', ); // If it's a 404 page, use a "Page not found" title. if ( is_404() ) { $title['title'] = __( 'Page not found' ); // If it's a search, use a dynamic search results title. } elseif ( is_search() ) { /* translators: %s: Search query. */ $title['title'] = sprintf( __( 'Search Results for “%s”' ), get_search_query() ); // If on the front page, use the site title. } elseif ( is_front_page() ) { $title['title'] = get_bloginfo( 'name', 'display' ); // If on a post type archive, use the post type archive title. } elseif ( is_post_type_archive() ) { $title['title'] = post_type_archive_title( '', false ); // If on a taxonomy archive, use the term title. } elseif ( is_tax() ) { $title['title'] = single_term_title( '', false ); /* * If we're on the blog page that is not the homepage * or a single post of any post type, use the post title. */ } elseif ( is_home() || is_singular() ) { $title['title'] = single_post_title( '', false ); // If on a category or tag archive, use the term title. } elseif ( is_category() || is_tag() ) { $title['title'] = single_term_title( '', false ); // If on an author archive, use the author's display name. } elseif ( is_author() && get_queried_object() ) { $author = get_queried_object(); $title['title'] = $author->display_name; // If it's a date archive, use the date as the title. } elseif ( is_year() ) { $title['title'] = get_the_date( _x( 'Y', 'yearly archives date format' ) ); } elseif ( is_month() ) { $title['title'] = get_the_date( _x( 'F Y', 'monthly archives date format' ) ); } elseif ( is_day() ) { $title['title'] = get_the_date(); } // Add a page number if necessary. if ( ( $paged >= 2 || $page >= 2 ) && ! is_404() ) { /* translators: %s: Page number. */ $title['page'] = sprintf( __( 'Page %s' ), max( $paged, $page ) ); } // Append the description or site title to give context. if ( is_front_page() ) { $title['tagline'] = get_bloginfo( 'description', 'display' ); } else { $title['site'] = get_bloginfo( 'name', 'display' ); } /** * Filters the separator for the document title. * * @since 4.4.0 * * @param string $sep Document title separator. Default '-'. */ $sep = apply_filters( 'document_title_separator', '-' ); /** * Filters the parts of the document title. * * @since 4.4.0 * * @param array $title { * The document title parts. * * @type string $title Title of the viewed page. * @type string $page Optional. Page number if paginated. * @type string $tagline Optional. Site description when on home page. * @type string $site Optional. Site title when not on home page. * } */ $title = apply_filters( 'document_title_parts', $title ); $title = implode( " $sep ", array_filter( $title ) ); /** * Filters the document title. * * @since 5.8.0 * * @param string $title Document title. */ $title = apply_filters( 'document_title', $title ); return $title; } /** * Displays title tag with content. * * @ignore * @since 4.1.0 * @since 4.4.0 Improved title output replaced `wp_title()`. * @access private */ function _wp_render_title_tag() { if ( ! current_theme_supports( 'title-tag' ) ) { return; } echo '<title>' . wp_get_document_title() . '' . "\n"; } /** * Display or retrieve page title for all areas of blog. * * By default, the page title will display the separator before the page title, * so that the blog title will be before the page title. This is not good for * title display, since the blog title shows up on most tabs and not what is * important, which is the page that the user is looking at. * * There are also SEO benefits to having the blog title after or to the 'right' * of the page title. However, it is mostly common sense to have the blog title * to the right with most browsers supporting tabs. You can achieve this by * using the seplocation parameter and setting the value to 'right'. This change * was introduced around 2.5.0, in case backward compatibility of themes is * important. * * @since 1.0.0 * * @global WP_Locale $wp_locale WordPress date and time locale object. * * @param string $sep Optional. How to separate the various items within the page title. * Default '»'. * @param bool $display Optional. Whether to display or retrieve title. Default true. * @param string $seplocation Optional. Location of the separator ('left' or 'right'). * @return string|void String when `$display` is true, nothing otherwise. */ function wp_title( $sep = '»', $display = true, $seplocation = '' ) { global $wp_locale; $m = get_query_var( 'm' ); $year = get_query_var( 'year' ); $monthnum = get_query_var( 'monthnum' ); $day = get_query_var( 'day' ); $search = get_query_var( 's' ); $title = ''; $t_sep = '%WP_TITLE_SEP%'; // Temporary separator, for accurate flipping, if necessary. // If there is a post. if ( is_single() || ( is_home() && ! is_front_page() ) || ( is_page() && ! is_front_page() ) ) { $title = single_post_title( '', false ); } // If there's a post type archive. if ( is_post_type_archive() ) { $post_type = get_query_var( 'post_type' ); if ( is_array( $post_type ) ) { $post_type = reset( $post_type ); } $post_type_object = get_post_type_object( $post_type ); if ( ! $post_type_object->has_archive ) { $title = post_type_archive_title( '', false ); } } // If there's a category or tag. if ( is_category() || is_tag() ) { $title = single_term_title( '', false ); } // If there's a taxonomy. if ( is_tax() ) { $term = get_queried_object(); if ( $term ) { $tax = get_taxonomy( $term->taxonomy ); $title = single_term_title( $tax->labels->name . $t_sep, false ); } } // If there's an author. if ( is_author() && ! is_post_type_archive() ) { $author = get_queried_object(); if ( $author ) { $title = $author->display_name; } } // Post type archives with has_archive should override terms. if ( is_post_type_archive() && $post_type_object->has_archive ) { $title = post_type_archive_title( '', false ); } // If there's a month. if ( is_archive() && ! empty( $m ) ) { $my_year = substr( $m, 0, 4 ); $my_month = substr( $m, 4, 2 ); $my_day = (int) substr( $m, 6, 2 ); $title = $my_year . ( $my_month ? $t_sep . $wp_locale->get_month( $my_month ) : '' ) . ( $my_day ? $t_sep . $my_day : '' ); } // If there's a year. if ( is_archive() && ! empty( $year ) ) { $title = $year; if ( ! empty( $monthnum ) ) { $title .= $t_sep . $wp_locale->get_month( $monthnum ); } if ( ! empty( $day ) ) { $title .= $t_sep . zeroise( $day, 2 ); } } // If it's a search. if ( is_search() ) { /* translators: 1: Separator, 2: Search query. */ $title = sprintf( __( 'Search Results %1$s %2$s' ), $t_sep, strip_tags( $search ) ); } // If it's a 404 page. if ( is_404() ) { $title = __( 'Page not found' ); } $prefix = ''; if ( ! empty( $title ) ) { $prefix = " $sep "; } /** * Filters the parts of the page title. * * @since 4.0.0 * * @param string[] $title_array Array of parts of the page title. */ $title_array = apply_filters( 'wp_title_parts', explode( $t_sep, $title ) ); // Determines position of the separator and direction of the breadcrumb. if ( 'right' === $seplocation ) { // Separator on right, so reverse the order. $title_array = array_reverse( $title_array ); $title = implode( " $sep ", $title_array ) . $prefix; } else { $title = $prefix . implode( " $sep ", $title_array ); } /** * Filters the text of the page title. * * @since 2.0.0 * * @param string $title Page title. * @param string $sep Title separator. * @param string $seplocation Location of the separator ('left' or 'right'). */ $title = apply_filters( 'wp_title', $title, $sep, $seplocation ); // Send it out. if ( $display ) { echo $title; } else { return $title; } } /** * Display or retrieve page title for post. * * This is optimized for single.php template file for displaying the post title. * * It does not support placing the separator after the title, but by leaving the * prefix parameter empty, you can set the title separator manually. The prefix * does not automatically place a space between the prefix, so if there should * be a space, the parameter value will need to have it at the end. * * @since 0.71 * * @param string $prefix Optional. What to display before the title. * @param bool $display Optional. Whether to display or retrieve title. Default true. * @return string|void Title when retrieving. */ function single_post_title( $prefix = '', $display = true ) { $_post = get_queried_object(); if ( ! isset( $_post->post_title ) ) { return; } /** * Filters the page title for a single post. * * @since 0.71 * * @param string $_post_title The single post page title. * @param WP_Post $_post The current post. */ $title = apply_filters( 'single_post_title', $_post->post_title, $_post ); if ( $display ) { echo $prefix . $title; } else { return $prefix . $title; } } /** * Display or retrieve title for a post type archive. * * This is optimized for archive.php and archive-{$post_type}.php template files * for displaying the title of the post type. * * @since 3.1.0 * * @param string $prefix Optional. What to display before the title. * @param bool $display Optional. Whether to display or retrieve title. Default true. * @return string|void Title when retrieving, null when displaying or failure. */ function post_type_archive_title( $prefix = '', $display = true ) { if ( ! is_post_type_archive() ) { return; } $post_type = get_query_var( 'post_type' ); if ( is_array( $post_type ) ) { $post_type = reset( $post_type ); } $post_type_obj = get_post_type_object( $post_type ); /** * Filters the post type archive title. * * @since 3.1.0 * * @param string $post_type_name Post type 'name' label. * @param string $post_type Post type. */ $title = apply_filters( 'post_type_archive_title', $post_type_obj->labels->name, $post_type ); if ( $display ) { echo $prefix . $title; } else { return $prefix . $title; } } /** * Display or retrieve page title for category archive. * * Useful for category template files for displaying the category page title. * The prefix does not automatically place a space between the prefix, so if * there should be a space, the parameter value will need to have it at the end. * * @since 0.71 * * @param string $prefix Optional. What to display before the title. * @param bool $display Optional. Whether to display or retrieve title. Default true. * @return string|void Title when retrieving. */ function single_cat_title( $prefix = '', $display = true ) { return single_term_title( $prefix, $display ); } /** * Display or retrieve page title for tag post archive. * * Useful for tag template files for displaying the tag page title. The prefix * does not automatically place a space between the prefix, so if there should * be a space, the parameter value will need to have it at the end. * * @since 2.3.0 * * @param string $prefix Optional. What to display before the title. * @param bool $display Optional. Whether to display or retrieve title. Default true. * @return string|void Title when retrieving. */ function single_tag_title( $prefix = '', $display = true ) { return single_term_title( $prefix, $display ); } /** * Display or retrieve page title for taxonomy term archive. * * Useful for taxonomy term template files for displaying the taxonomy term page title. * The prefix does not automatically place a space between the prefix, so if there should * be a space, the parameter value will need to have it at the end. * * @since 3.1.0 * * @param string $prefix Optional. What to display before the title. * @param bool $display Optional. Whether to display or retrieve title. Default true. * @return string|void Title when retrieving. */ function single_term_title( $prefix = '', $display = true ) { $term = get_queried_object(); if ( ! $term ) { return; } if ( is_category() ) { /** * Filters the category archive page title. * * @since 2.0.10 * * @param string $term_name Category name for archive being displayed. */ $term_name = apply_filters( 'single_cat_title', $term->name ); } elseif ( is_tag() ) { /** * Filters the tag archive page title. * * @since 2.3.0 * * @param string $term_name Tag name for archive being displayed. */ $term_name = apply_filters( 'single_tag_title', $term->name ); } elseif ( is_tax() ) { /** * Filters the custom taxonomy archive page title. * * @since 3.1.0 * * @param string $term_name Term name for archive being displayed. */ $term_name = apply_filters( 'single_term_title', $term->name ); } else { return; } if ( empty( $term_name ) ) { return; } if ( $display ) { echo $prefix . $term_name; } else { return $prefix . $term_name; } } /** * Display or retrieve page title for post archive based on date. * * Useful for when the template only needs to display the month and year, * if either are available. The prefix does not automatically place a space * between the prefix, so if there should be a space, the parameter value * will need to have it at the end. * * @since 0.71 * * @global WP_Locale $wp_locale WordPress date and time locale object. * * @param string $prefix Optional. What to display before the title. * @param bool $display Optional. Whether to display or retrieve title. Default true. * @return string|void Title when retrieving. */ function single_month_title( $prefix = '', $display = true ) { global $wp_locale; $m = get_query_var( 'm' ); $year = get_query_var( 'year' ); $monthnum = get_query_var( 'monthnum' ); if ( ! empty( $monthnum ) && ! empty( $year ) ) { $my_year = $year; $my_month = $wp_locale->get_month( $monthnum ); } elseif ( ! empty( $m ) ) { $my_year = substr( $m, 0, 4 ); $my_month = $wp_locale->get_month( substr( $m, 4, 2 ) ); } if ( empty( $my_month ) ) { return false; } $result = $prefix . $my_month . $prefix . $my_year; if ( ! $display ) { return $result; } echo $result; } /** * Display the archive title based on the queried object. * * @since 4.1.0 * * @see get_the_archive_title() * * @param string $before Optional. Content to prepend to the title. Default empty. * @param string $after Optional. Content to append to the title. Default empty. */ function the_archive_title( $before = '', $after = '' ) { $title = get_the_archive_title(); if ( ! empty( $title ) ) { echo $before . $title . $after; } } /** * Retrieve the archive title based on the queried object. * * @since 4.1.0 * @since 5.5.0 The title part is wrapped in a `` element. * * @return string Archive title. */ function get_the_archive_title() { $title = __( 'Archives' ); $prefix = ''; if ( is_category() ) { $title = single_cat_title( '', false ); $prefix = _x( 'Category:', 'category archive title prefix' ); } elseif ( is_tag() ) { $title = single_tag_title( '', false ); $prefix = _x( 'Tag:', 'tag archive title prefix' ); } elseif ( is_author() ) { $title = get_the_author(); $prefix = _x( 'Author:', 'author archive title prefix' ); } elseif ( is_year() ) { $title = get_the_date( _x( 'Y', 'yearly archives date format' ) ); $prefix = _x( 'Year:', 'date archive title prefix' ); } elseif ( is_month() ) { $title = get_the_date( _x( 'F Y', 'monthly archives date format' ) ); $prefix = _x( 'Month:', 'date archive title prefix' ); } elseif ( is_day() ) { $title = get_the_date( _x( 'F j, Y', 'daily archives date format' ) ); $prefix = _x( 'Day:', 'date archive title prefix' ); } elseif ( is_tax( 'post_format' ) ) { if ( is_tax( 'post_format', 'post-format-aside' ) ) { $title = _x( 'Asides', 'post format archive title' ); } elseif ( is_tax( 'post_format', 'post-format-gallery' ) ) { $title = _x( 'Galleries', 'post format archive title' ); } elseif ( is_tax( 'post_format', 'post-format-image' ) ) { $title = _x( 'Images', 'post format archive title' ); } elseif ( is_tax( 'post_format', 'post-format-video' ) ) { $title = _x( 'Videos', 'post format archive title' ); } elseif ( is_tax( 'post_format', 'post-format-quote' ) ) { $title = _x( 'Quotes', 'post format archive title' ); } elseif ( is_tax( 'post_format', 'post-format-link' ) ) { $title = _x( 'Links', 'post format archive title' ); } elseif ( is_tax( 'post_format', 'post-format-status' ) ) { $title = _x( 'Statuses', 'post format archive title' ); } elseif ( is_tax( 'post_format', 'post-format-audio' ) ) { $title = _x( 'Audio', 'post format archive title' ); } elseif ( is_tax( 'post_format', 'post-format-chat' ) ) { $title = _x( 'Chats', 'post format archive title' ); } } elseif ( is_post_type_archive() ) { $title = post_type_archive_title( '', false ); $prefix = _x( 'Archives:', 'post type archive title prefix' ); } elseif ( is_tax() ) { $queried_object = get_queried_object(); if ( $queried_object ) { $tax = get_taxonomy( $queried_object->taxonomy ); $title = single_term_title( '', false ); $prefix = sprintf( /* translators: %s: Taxonomy singular name. */ _x( '%s:', 'taxonomy term archive title prefix' ), $tax->labels->singular_name ); } } $original_title = $title; /** * Filters the archive title prefix. * * @since 5.5.0 * * @param string $prefix Archive title prefix. */ $prefix = apply_filters( 'get_the_archive_title_prefix', $prefix ); if ( $prefix ) { $title = sprintf( /* translators: 1: Title prefix. 2: Title. */ _x( '%1$s %2$s', 'archive title' ), $prefix, '' . $title . '' ); } /** * Filters the archive title. * * @since 4.1.0 * @since 5.5.0 Added the `$prefix` and `$original_title` parameters. * * @param string $title Archive title to be displayed. * @param string $original_title Archive title without prefix. * @param string $prefix Archive title prefix. */ return apply_filters( 'get_the_archive_title', $title, $original_title, $prefix ); } /** * Display category, tag, term, or author description. * * @since 4.1.0 * * @see get_the_archive_description() * * @param string $before Optional. Content to prepend to the description. Default empty. * @param string $after Optional. Content to append to the description. Default empty. */ function the_archive_description( $before = '', $after = '' ) { $description = get_the_archive_description(); if ( $description ) { echo $before . $description . $after; } } /** * Retrieves the description for an author, post type, or term archive. * * @since 4.1.0 * @since 4.7.0 Added support for author archives. * @since 4.9.0 Added support for post type archives. * * @see term_description() * * @return string Archive description. */ function get_the_archive_description() { if ( is_author() ) { $description = get_the_author_meta( 'description' ); } elseif ( is_post_type_archive() ) { $description = get_the_post_type_description(); } else { $description = term_description(); } /** * Filters the archive description. * * @since 4.1.0 * * @param string $description Archive description to be displayed. */ return apply_filters( 'get_the_archive_description', $description ); } /** * Retrieves the description for a post type archive. * * @since 4.9.0 * * @return string The post type description. */ function get_the_post_type_description() { $post_type = get_query_var( 'post_type' ); if ( is_array( $post_type ) ) { $post_type = reset( $post_type ); } $post_type_obj = get_post_type_object( $post_type ); // Check if a description is set. if ( isset( $post_type_obj->description ) ) { $description = $post_type_obj->description; } else { $description = ''; } /** * Filters the description for a post type archive. * * @since 4.9.0 * * @param string $description The post type description. * @param WP_Post_Type $post_type_obj The post type object. */ return apply_filters( 'get_the_post_type_description', $description, $post_type_obj ); } /** * Retrieve archive link content based on predefined or custom code. * * The format can be one of four styles. The 'link' for head element, 'option' * for use in the select element, 'html' for use in list (either ol or ul HTML * elements). Custom content is also supported using the before and after * parameters. * * The 'link' format uses the `` HTML element with the **archives** * relationship. The before and after parameters are not used. The text * parameter is used to describe the link. * * The 'option' format uses the option HTML element for use in select element. * The value is the url parameter and the before and after parameters are used * between the text description. * * The 'html' format, which is the default, uses the li HTML element for use in * the list HTML elements. The before parameter is before the link and the after * parameter is after the closing link. * * The custom format uses the before parameter before the link ('a' HTML * element) and the after parameter after the closing link tag. If the above * three values for the format are not used, then custom format is assumed. * * @since 1.0.0 * @since 5.2.0 Added the `$selected` parameter. * * @param string $url URL to archive. * @param string $text Archive text description. * @param string $format Optional. Can be 'link', 'option', 'html', or custom. Default 'html'. * @param string $before Optional. Content to prepend to the description. Default empty. * @param string $after Optional. Content to append to the description. Default empty. * @param bool $selected Optional. Set to true if the current page is the selected archive page. * @return string HTML link content for archive. */ function get_archives_link( $url, $text, $format = 'html', $before = '', $after = '', $selected = false ) { $text = wptexturize( $text ); $url = esc_url( $url ); $aria_current = $selected ? ' aria-current="page"' : ''; if ( 'link' === $format ) { $link_html = "\t\n"; } elseif ( 'option' === $format ) { $selected_attr = $selected ? " selected='selected'" : ''; $link_html = "\t\n"; } elseif ( 'html' === $format ) { $link_html = "\t
    • $before$text$after
    • \n"; } else { // Custom. $link_html = "\t$before$text$after\n"; } /** * Filters the archive link content. * * @since 2.6.0 * @since 4.5.0 Added the `$url`, `$text`, `$format`, `$before`, and `$after` parameters. * @since 5.2.0 Added the `$selected` parameter. * * @param string $link_html The archive HTML link content. * @param string $url URL to archive. * @param string $text Archive text description. * @param string $format Link format. Can be 'link', 'option', 'html', or custom. * @param string $before Content to prepend to the description. * @param string $after Content to append to the description. * @param bool $selected True if the current page is the selected archive. */ return apply_filters( 'get_archives_link', $link_html, $url, $text, $format, $before, $after, $selected ); } /** * Display archive links based on type and format. * * @since 1.2.0 * @since 4.4.0 The `$post_type` argument was added. * @since 5.2.0 The `$year`, `$monthnum`, `$day`, and `$w` arguments were added. * * @see get_archives_link() * * @global wpdb $wpdb WordPress database abstraction object. * @global WP_Locale $wp_locale WordPress date and time locale object. * * @param string|array $args { * Default archive links arguments. Optional. * * @type string $type Type of archive to retrieve. Accepts 'daily', 'weekly', 'monthly', * 'yearly', 'postbypost', or 'alpha'. Both 'postbypost' and 'alpha' * display the same archive link list as well as post titles instead * of displaying dates. The difference between the two is that 'alpha' * will order by post title and 'postbypost' will order by post date. * Default 'monthly'. * @type string|int $limit Number of links to limit the query to. Default empty (no limit). * @type string $format Format each link should take using the $before and $after args. * Accepts 'link' (`` tag), 'option' (`