From 85e8c4a3d1b189dff1d66d59ec666b7d4006e979 Mon Sep 17 00:00:00 2001 From: Franzz Date: Sun, 5 Apr 2020 18:56:42 +0200 Subject: [PATCH] New settings panel & &subscription --- files/db/update_v8_to_v9.sql | 14 ++ inc/email.php | 106 ++++++++++++ inc/feed.php | 2 +- inc/spot.php | 98 ++++++++--- inc/user.php | 108 ++++++++++++ index.php | 10 ++ languages/en.lang | 28 ++- languages/fr.lang | 28 ++- masks/admin.html | 2 +- masks/email_confirmation.html | 33 ++++ masks/project.html | 312 ++++++++++++++++++++++++---------- readme.md | 3 +- script/spot.js | 17 +- style/_common.scss | 23 +++ style/_fa.scss | 13 +- style/_mask_admin.scss | 10 -- style/_mask_project.scss | 306 ++++++++++++++++++++++----------- style/_mobile.scss | 9 +- style/spot.css | 4 +- style/spot.css.map | 2 +- 20 files changed, 887 insertions(+), 241 deletions(-) create mode 100644 files/db/update_v8_to_v9.sql create mode 100644 inc/email.php create mode 100644 inc/user.php create mode 100644 masks/email_confirmation.html diff --git a/files/db/update_v8_to_v9.sql b/files/db/update_v8_to_v9.sql new file mode 100644 index 0000000..da993bf --- /dev/null +++ b/files/db/update_v8_to_v9.sql @@ -0,0 +1,14 @@ +CREATE TABLE `users` ( + `id_user` int(10) UNSIGNED auto_increment, + `name` VARCHAR(100), + `email` VARCHAR(320), + `language` VARCHAR(2), + `active` BOOLEAN, + `led` TIMESTAMP NOT NULL ON UPDATE CURRENT_TIMESTAMP DEFAULT CURRENT_TIMESTAMP, + PRIMARY KEY (`id_user`), + UNIQUE KEY `uni_email` (`email`) +); + +ALTER TABLE posts ADD COLUMN id_user int(10) UNSIGNED AFTER id_project; +ALTER TABLE posts ADD INDEX(`id_user`); +ALTER TABLE posts ADD FOREIGN KEY (`id_user`) REFERENCES users(`id_user`); \ No newline at end of file diff --git a/inc/email.php b/inc/email.php new file mode 100644 index 0000000..72e99d7 --- /dev/null +++ b/inc/email.php @@ -0,0 +1,106 @@ +sServName = $sServName; + $this->setTemplate($sTemplate); + $this->asDests = array(); + } + + public function setTemplate($sTemplate) { + $this->sTemplate = $sTemplate; + $this->asTranslators = array(); + $this->asTemplates = array(); + } + + private function getTemplate($sLanguage) { + if(!array_key_exists($sLanguage, $this->asTemplates)) { + $this->asTranslators[$sLanguage] = new Translator($sLanguage); + $this->buildTemplate($sLanguage); + } + + return array('subject'=>$this->asTranslators[$sLanguage]->getTranslation('conf_subject'), 'email'=>$this->asTemplates[$sLanguage]); + } + + private function buildTemplate($sLanguage) { + $oTemplate = new Mask($this->sTemplate, $this->asTranslators[$sLanguage]); + + switch($this->sTemplate) { + case 'confirmation': + break; + case 'update': + break; + } + + $this->asTemplates[$sLanguage] = $oTemplate; + } + + /** + * Set Target User Info + * @param array $asDests Contains: id_user, name, email, language, active + */ + public function setDestInfo($asDests) { + if(array_key_exists('email', $asDests)) $asDests = array($asDests); + $this->asDests = $asDests; + } + + public function send() { + $sEOL = "\r\n"; + foreach($this->asDests as $asDest) { + //Message + $asTemplate = $this->getTemplate($asDest['language']); + $oEmail = $asTemplate['email']; + + //Unsubscribe Link + $sUnsubLink = $this->sServName.'?a=unsubscribe_email&id='.$asDest['id_user']; + $oEmail->setTag('unsubscribe_link', $sUnsubLink); + + //Email Content + $sHtmlMessage = $oEmail->getMask(); + $sPlainMessage = strip_tags(str_replace('
', "\n", $sHtmlMessage)); + + //Email + $iBoundary = uniqid("HTMLEMAIL"); + $sHeaders = + 'From: Spotty '.$sEOL. + 'Reply-To: Spotty '.$sEOL. + 'List-Unsubscribe: sServName)['host'].'?subject=unsubscribe>, <'.$sUnsubLink.'>'.$sEOL. + 'List-Unsubscribe-Post: List-Unsubscribe=One-Click'.$sEOL. + 'MIME-Version: 1.0'.$sEOL. + 'Content-Type: multipart/alternative; boundary="'.$iBoundary.'"'.$sEOL; + + $sBody = + '--'.$iBoundary.$sEOL. //Plain Message + 'Content-Type: text/plain; charset=UTF-8'.$sEOL. + 'Content-Transfer-Encoding: base64'.$sEOL. + chunk_split(base64_encode($sPlainMessage)).$sEOL. + + '--'.$iBoundary.$sEOL. //HTML Message + 'Content-Type: text/html; charset=UTF-8'.$sEOL. + 'Content-Transfer-Encoding: base64'.$sEOL. + chunk_split(base64_encode($sHtmlMessage)).$sEOL. + '--'.$iBoundary.'--'; + + //Send + if(!mail($asDest['email'], $asTemplate['subject'], $sBody, $sHeaders)) $this->addError('Could not send '.$this->sTemplate.' email to '.$asDest['email']); + } + } +} \ No newline at end of file diff --git a/inc/feed.php b/inc/feed.php index bb37b24..9b45bcd 100644 --- a/inc/feed.php +++ b/inc/feed.php @@ -101,7 +101,7 @@ class Feed extends PhpObject { } public function checkUpdateFeed($sProjectMode) { - //Feed updated once a day in Blog Mode + //Feed updated once every hour in Blog Mode if($sProjectMode == Project::MODE_BLOG && date('Y-m-d-H', $this->iLastUpdate) != date('Y-m-d-H')) $this->updateFeed(); } diff --git a/inc/spot.php b/inc/spot.php index cb36600..e31f2be 100755 --- a/inc/spot.php +++ b/inc/spot.php @@ -21,6 +21,8 @@ class Spot extends Main const FEED_CHUNK_SIZE = 15; + const DEFAULT_LANG = 'en'; + /** * Active Project * @var Project @@ -33,18 +35,27 @@ class Spot extends Main */ private $oMedia; + /** + * User + * @var User + */ + private $oUser; + public function __construct($oClassManagement, $sProcessPage, $sTimezone) { $asClasses = array( array('name'=>'feed', 'project'=>true), array('name'=>'project', 'project'=>true), array('name'=>'media', 'project'=>true), - array('name'=>'converter', 'project'=>true) + array('name'=>'converter', 'project'=>true), + array('name'=>'user', 'project'=>true) ); parent::__construct($oClassManagement, $sProcessPage, $asClasses, true, __FILE__, $sTimezone); + $this->oUser = new User($this->oDb); + $this->oClassManagement->incClass('translator'); - $this->oLang = new Translator('', 'en'); + $this->oLang = new Translator($this->oUser->getLang(), self::DEFAULT_LANG); $this->oProject = new Project($this->oDb); $this->oMedia = new Media($this->oDb, $this->oProject); @@ -60,16 +71,17 @@ class Spot extends Main { return array ( - 'tables' => array + 'tables' => array ( Feed::MSG_TABLE => array('ref_msg_id', Db::getId(Feed::FEED_TABLE), 'type', 'latitude', 'longitude', 'iso_time', 'site_time', 'unix_time', 'content', 'battery_state'), Feed::FEED_TABLE => array('ref_feed_id', Db::getId(Feed::SPOT_TABLE), Db::getId(Project::PROJ_TABLE), 'name', 'description', 'status', 'last_update'), Feed::SPOT_TABLE => array('ref_spot_id', 'name', 'model'), Project::PROJ_TABLE => array('name', 'codename', 'active_from', 'active_to', 'timezone'), - self::POST_TABLE => array(Db::getId(Project::PROJ_TABLE), 'name', 'content', 'site_time'), - Media::MEDIA_TABLE => array(Db::getId(Project::PROJ_TABLE), 'filename', 'type', 'taken_on', 'posted_on', 'rotate', 'comment') + self::POST_TABLE => array(Db::getId(Project::PROJ_TABLE), Db::getId(User::USER_TABLE), 'name', 'content', 'site_time'), + Media::MEDIA_TABLE => array(Db::getId(Project::PROJ_TABLE), 'filename', 'type', 'taken_on', 'posted_on', 'rotate', 'comment'), + User::USER_TABLE => array('name', 'email', 'language', 'active') ), - 'types' => array + 'types' => array ( 'ref_msg_id' => "INT", 'type' => "VARCHAR(20)", @@ -95,19 +107,23 @@ class Spot extends Main 'taken_on' => "TIMESTAMP DEFAULT 0", 'posted_on' => "TIMESTAMP DEFAULT 0", 'rotate' => "SMALLINT", - 'comment' => "LONGTEXT" + 'comment' => "LONGTEXT", + 'email' => "VARCHAR(320)", + 'language' => "VARCHAR(2)", + 'active' => "BOOLEAN" ), - 'constraints' => array + 'constraints' => array ( Feed::MSG_TABLE => array("UNIQUE KEY `uni_ref_msg_id` (`ref_msg_id`)", "INDEX(`ref_msg_id`)"), Feed::FEED_TABLE => array("UNIQUE KEY `uni_ref_feed_id` (`ref_feed_id`)", "INDEX(`ref_feed_id`)"), Feed::SPOT_TABLE => array("UNIQUE KEY `uni_ref_spot_id` (`ref_spot_id`)", "INDEX(`ref_spot_id`)"), Project::PROJ_TABLE => "UNIQUE KEY `uni_proj_name` (`codename`)", - Media::MEDIA_TABLE => "UNIQUE KEY `uni_file_name` (`filename`)" + Media::MEDIA_TABLE => "UNIQUE KEY `uni_file_name` (`filename`)", + User::USER_TABLE => "UNIQUE KEY `uni_email` (`email`)" ), - 'cascading_delete' => array + 'cascading_delete' => array ( - Feed::SPOT_TABLE=>array(Feed::MSG_TABLE) + Feed::SPOT_TABLE => array(Feed::MSG_TABLE) ) ); } @@ -119,7 +135,8 @@ class Spot extends Main 'vars' => array( 'chunk_size' => self::FEED_CHUNK_SIZE, 'default_project_codename' => $this->oProject->getProjectCodeName(), - 'projects' => $this->oProject->getProjects() + 'projects' => $this->oProject->getProjects(), + 'user' => $this->oUser->getUserInfo() ), 'consts' => array( 'geo_server' => Settings::GEO_SERVER, @@ -155,7 +172,7 @@ class Spot extends Main public function getMarkers() { $asMessages = $this->getSpotMessages(); - $bSuccess = !empty($asMessages); + $bSuccess = !empty($this->getMedias('posted_on') + $asMessages + $this->getPosts()); $sDesc = $bSuccess?'':self::NO_DATA; //Add medias @@ -183,6 +200,35 @@ class Spot extends Main return self::getJsonResult($bSuccess, $sDesc, $asMessages); } + public function subscribe($sEmail) { + $asResult = $this->oUser->addUser($sEmail, $this->oLang->getLanguage()); + + //Send Confirmation Email + if($asResult['result']) { + $this->oClassManagement->incClass('email', true); + $oConfEmail = new Email($this->asContext['serv_name'],'email_confirmation'); + $oConfEmail->setDestInfo($this->oUser->getUserInfo()); + $oConfEmail->send(); + } + + return self::getJsonResult($asResult['result'], $asResult['desc'], $asResult['data']); + } + + public function unsubscribe() { + $asResult = $this->oUser->removeUser(); + return self::getJsonResult($asResult['result'], $asResult['desc'], $asResult['data']); + } + + public function unsubscribeFromEmail($iUserId) { + $this->oUser->setUserId($iUserId); + $this->oLang->setLanguage($this->oUser->getLang(), self::DEFAULT_LANG); + $asResult = $this->oUser->removeUser(); + + $sDesc = $asResult['desc']; + if($sDesc=='') $sDesc = $this->oLang->getTranslation('nl_unsubscribed'); + return $sDesc; + } + private function getSpotMessages() { $asMessages = array(); @@ -192,20 +238,22 @@ class Spot extends Main foreach($asFeeds as $iFeedId) { $oFeed = new Feed($this->oDb, $iFeedId); $asMessages = $oFeed->getMessages($this->oProject->getActivePeriod()); - foreach($asMessages as $iIndex=>&$asMessage) + foreach($asMessages as &$asMessage) { $asMessage['latitude'] = floatval($asMessage['latitude']); $asMessage['longitude'] = floatval($asMessage['longitude']); $asMessage['lat_dms'] = self::decToDms($asMessage['latitude'], 'lat'); $asMessage['lon_dms'] = self::decToDms($asMessage['longitude'], 'lon'); - $asMessage['displayed_id'] = $iIndex + 1; $this->addTimeStamp($asMessage, $asMessage['unix_time']); } } usort($asMessages, function($a, $b){return $a['unix_time'] > $b['unix_time'];}); - return $asMessages; + $asSortedMessages = array_values($asMessages); + foreach($asSortedMessages as $iIndex=>&$asSortedMessage) $asSortedMessage['displayed_id'] = $iIndex + 1; + + return $asSortedMessages; } /** @@ -219,20 +267,23 @@ class Spot extends Main { $asMedias = $this->oMedia->getMediasInfo(); $asValidMedias = array(); - foreach($asMedias as $iIndex=>$asMedia) { + foreach($asMedias as $asMedia) { $sTimeRef = $asMedia[$sTimeRefField]; if($sTimeRef >= $this->oProject->getActivePeriod('from') && $sTimeRef <= $this->oProject->getActivePeriod('to')) { $asMedia['taken_on_formatted'] = $this->getTimeFormat(strtotime($asMedia['taken_on'])); $asMedia['posted_on_formatted'] = $this->getTimeFormat(strtotime($asMedia['posted_on'])); - $asMedia['displayed_id'] = $iIndex + 1; $this->addTimeStamp($asMedia, strtotime($sTimeRef)); $asValidMedias[] = $asMedia; } } + usort($asValidMedias, function($a, $b){return $a['unix_time'] > $b['unix_time'];}); - return $asValidMedias; + $asSortedMedias = array_values($asValidMedias); + foreach($asSortedMedias as $iIndex=>&$asSortedMedia) $asSortedMedia['displayed_id'] = $iIndex + 1; + + return $asSortedMedias; } private function getPosts() @@ -251,6 +302,7 @@ class Spot extends Main foreach($asPosts as &$asPost) { $iUnixTimeStamp = strtotime($asPost['site_time']); //assumes site timezone (Settings::TIMEZONE) $asPost['formatted_name'] = Toolbox::mb_ucwords($asPost['name']); + unset($asPost[Db::getId(User::USER_TABLE)]); $this->addTimeStamp($asPost, $iUnixTimeStamp); } @@ -314,12 +366,16 @@ class Spot extends Main public function addPost($sName, $sPost) { $asData = array( - Db::getId(Project::PROJ_TABLE) => $this->oProject->getProjectId(), + Db::getId(Project::PROJ_TABLE) => $this->oProject->getProjectId(), + Db::getId(User::USER_TABLE) => $this->oUser->getUserId(), 'name' => mb_strtolower(trim($sName)), 'content' => trim($sPost), 'site_time' => date(Db::TIMESTAMP_FORMAT) //site time (Settings::TIMEZONE) ); $iPostId = $this->oDb->insertRow(self::POST_TABLE, $asData); + + $this->oUser->updateNickname($sName); + return self::getJsonResult(($iPostId > 0), ''); } @@ -342,7 +398,7 @@ class Spot extends Main return self::getJsonResult(true, '', array( 'project' => $this->oProject->getProjects(), 'feed' => $oFeed->getFeeds(), - 'spot' => $oFeed->getSpots() + 'spot' => $oFeed->getSpots() )); } diff --git a/inc/user.php b/inc/user.php new file mode 100644 index 0000000..6662c7c --- /dev/null +++ b/inc/user.php @@ -0,0 +1,108 @@ +oDb = &$oDb; + $this->iUserId = 0; + $this->asUserInfo = array('name'=>'', 'email'=>'', 'language'=>'', 'active'=>0); + $this->checkUserCookie(); + } + + public function getLang() { + return $this->asUserInfo['language']; + } + + public function addUser($sEmail, $sLang) { + $bSuccess = false; + $sDesc = ''; + $sEmail = trim($sEmail); + + //Check Email availability + $iUserId = $this->oDb->selectValue(self::USER_TABLE, Db::getId(self::USER_TABLE), array('email'=>$sEmail, 'active'=>true)); + + if($iUserId > 0) $sDesc = 'lang:nl_email_exists'; + else { + //Add/Reactivate user + $iUserId = $this->oDb->insertUpdateRow(self::USER_TABLE, array('email'=>$sEmail, 'language'=>$sLang, 'active'=>true), array('email')); + if($iUserId==0) $sDesc = 'lang:error_commit_db'; + else $bSuccess = true; + } + + //Set Cookie (valid 1 year) + if($iUserId > 0) { + $this->setUserId($iUserId); + $this->updateCookie(); + } + + return Spot::getResult($bSuccess, $sDesc, $this->getUserInfo()); + } + + public function removeUser() { + $bSuccess = false; + $sDesc = ''; + + if($this->iUserId > 0) { + $iUserId = $this->oDb->updateRow(self::USER_TABLE, $this->iUserId, array('active'=>false)); + if($iUserId==0) $sDesc = 'lang:error_commit_db'; + else $bSuccess = true; + } + else $sDesc = 'lang:nl_unknown_email'; + + return Spot::getResult($bSuccess, $sDesc); + } + + public function updateNickname($sNickname) { + if($this->iUserId > 0 && $sNickname!='') $this->oDb->updateRow(self::USER_TABLE, $this->iUserId, array('name'=>$sNickname)); + } + + private function checkUserCookie() { + if(isset($_COOKIE[self::COOKIE_ID_USER])){ + $this->setUserId($_COOKIE[self::COOKIE_ID_USER]); + + //Extend cookie life + if($this->iUserId > 0) $this->updateCookie(); + } + } + + public function getUserId() { + return $this->iUserId; + } + + public function getUserInfo() { + $asUserInfo = $this->asUserInfo; + $asUserInfo[Db::getId(self::USER_TABLE)] = $this->iUserId; + return $asUserInfo; + } + + public function setUserId($iUserId) { + $this->iUserId = 0; + + $asUser = $this->oDb->selectRow(self::USER_TABLE, array(Db::getId(self::USER_TABLE)=>$iUserId, 'active'=>true), array_keys($this->asUserInfo)); + if(!empty($asUser)) { + $this->iUserId = $iUserId; + $this->asUserInfo = $asUser; + } + } + + private function updateCookie() { + setcookie(self::COOKIE_ID_USER, $this->iUserId, time() + 60 * 60 * 24 * 365); + } +} \ No newline at end of file diff --git a/index.php b/index.php index 77c23eb..9e17a7f 100755 --- a/index.php +++ b/index.php @@ -22,6 +22,7 @@ $sField = isset($_REQUEST['field'])?$_REQUEST['field']:''; $oValue = isset($_REQUEST['value'])?$_REQUEST['value']:''; $iId = isset($_REQUEST['id'])?$_REQUEST['id']:0; $sType = isset($_REQUEST['type'])?$_REQUEST['type']:''; +$sEmail = isset($_REQUEST['email'])?$_REQUEST['email']:''; //Initiate class $oSpot = new Spot($oClassManagement, __FILE__, $sTimezone); @@ -65,6 +66,15 @@ if($sAction!='') case 'build_geojson': $sResult = $oSpot->convertGpxToGeojson($sName); break; + case 'subscribe': + $sResult = $oSpot->subscribe($sEmail); + break; + case 'unsubscribe': + $sResult = $oSpot->unsubscribe(); + break; + case 'unsubscribe_email': + $sResult = $oSpot->unsubscribeFromEmail($iId); + break; default: $sResult = Main::getJsonResult(false, Main::NOT_FOUND); } diff --git a/languages/en.lang b/languages/en.lang index 35e6e38..232ba78 100644 --- a/languages/en.lang +++ b/languages/en.lang @@ -8,6 +8,7 @@ admin_save_success = Saved track_main = Main track track_offtrack = Off-track track_hitchhiking = Hitchhiking +track_download = Download GPX Track upload_title = Picture & Video Uploads upload_wrong_mode = Project "$0" is not in blog mode. No upload allowed @@ -20,6 +21,7 @@ post_new_message = New message and = and counter = #$0 +maps = Base Maps map_satellite = Satellite map_otm = Open Topo Map map_ign_france = IGN (France) @@ -38,11 +40,13 @@ click_zoom = Click to zoom media_count = Media $0 / $1 media_no_id = Missing Media ID in request media_comment_update= Comment of media "$0" updated +see_on_google = See on Google Maps city_time = $0 Time project_id = Project ID project = Project +projects = Projects mode = Mode code_name = Code name start = Start @@ -61,4 +65,26 @@ time_zone = Time zone unit_day = day unit_days = days -unit_hour = h \ No newline at end of file +unit_hour = h + +newsletter = Keep in touch! +nl_email_placeholder= my@email.com +nl_subscribed_desc = You're all set. We'll send you updates as soon as we get them +nl_unsubscribed_desc= Write down your email address and we'll send you François' position as soon as we get it :) +nl_email_exists = This email is already subscribed +nl_subscribe = Subscribe +nl_subscribed = Thanks! You'll receive a confirmation email shortly +nl_unsubscribe = Unsubscribe +nl_unsubscribed = Done. No more junk mail from us +nl_unknown_email = Unknown email address + +conf_subject = Successful Registration +conf_preheader = Thanks for keeping in touch! +conf_thanks_sub = You're all set! +conf_body_para_1 = Thank you for checking in on my wanderings :). I'll make sure to keep you posted on my progress along the trail. +conf_body_para_2 = I usually check-in once a day, plus sometimes on special events, like successful peak ascents. I am using a GPS-based device (PLB) which does not require phone reception to work. Thus the messages should be pretty frequent, but, being awestruck by the beauty of nature, I could also just forget to send a signal once in a while. So do not worry if you don't receive anything for a couple of days. +conf_body_para_3 = If I've posted some pictures recently, you should also get them in this email. +conf_body_conclusion= Happy Trails! +conf_signature = --François +conf_unsubscribe = PS: Changed your mind? +conf_unsubscribe_btn= Unsubscribe \ No newline at end of file diff --git a/languages/fr.lang b/languages/fr.lang index 5f47a56..7ee7c51 100644 --- a/languages/fr.lang +++ b/languages/fr.lang @@ -8,6 +8,7 @@ admin_save_success = Sauvegardé track_main = Trajet principal track_offtrack = Variante track_hitchhiking = Hors rando +track_download = Télécharger la trace GPX upload_title = Uploader photos & vidéos upload_wrong_mode = Le projet "$0" n'est pas en mode blog. Aucun upload possible @@ -20,6 +21,7 @@ post_new_message = Nouveau message and = et counter = N° $0 +maps = Fonds de carte map_satellite = Satellite map_otm = Open Topo Map map_ign_france = IGN (France) @@ -38,11 +40,13 @@ click_zoom = Click pour zoomer media_count = Média $0 sur $1 media_no_id = ID du média manquant media_comment_update= Commentaire du media "$0" mis-à-jour +see_on_google = Voir la position sur Google Maps city_time = heure de $0 project_id = ID projet project = Projet +projects = Projets mode = Mode code_name = Nom de code start = Départ @@ -61,4 +65,26 @@ time_zone = Fuseau horaire unit_day = jour unit_days = jours -unit_hour = h \ No newline at end of file +unit_hour = h + +newsletter = Rester en contact +nl_email_placeholder= mon@email.com +nl_subscribed_desc = C'est tout bon. On t'enverra les nouvelles posititions dès qu'on les reçoit +nl_unsubscribed_desc= Ajoute ton adresse email et on t'enverra la nouvelle position de François dès qu'on la reçoit :) +nl_email_exists = Cette adresse email est déjà enregistrée +nl_subscribe = S'abonner +nl_subscribed = Merci ! Tu vas recevoir un email de confirmation très bientôt +nl_unsubscribe = Se désinscrire +nl_unsubscribed = C'est fait. Fini le spam! +nl_unknown_email = Adresse email inconnue + +conf_subject = Confirmation +conf_preheader = Merci de rester en contact ! +conf_thanks_sub = C'est tout bon ! +conf_body_para_1 = C'est gentil de venir voir où j'en suis. Promis, je vous tiendrais au courant de mon avancée. +conf_body_para_2 = En général, j'envoie un message une fois par jour. Lorsque je passe à des endroits sympas, j'en envoie un supplémentaire (ascension de sommets, ce genre de choses). J'utilise une balise GPS pour envoyer le signal, je n'ai donc pas besoin de réseau téléphonique pour que cela fonctionne. Cependant, il peut m'arriver d'appuyer sur le bouton. Donc pas de raison de s'inquiéter si vous ne recevez pas de messages pendant une journée ou deux. +conf_body_para_3 = If I've posted some pictures recently, you should also get them in this email. +conf_body_conclusion= A bientôt sur les chemins ! +conf_signature = --François +conf_unsubscribe = PS: Trop d'emails ? +conf_unsubscribe_btn= Se désinscrire \ No newline at end of file diff --git a/masks/admin.html b/masks/admin.html index 1035341..5c90eb7 100644 --- a/masks/admin.html +++ b/masks/admin.html @@ -48,7 +48,7 @@ -
+ \ No newline at end of file diff --git a/readme.md b/readme.md index 3a00aac..2bd43e8 100644 --- a/readme.md +++ b/readme.md @@ -12,4 +12,5 @@ * ECMA import/export * Reset zoom on image closing (lightbox) * Fix video fullscreen button on ios -* Fix lightbox portrait mode: push text under \ No newline at end of file +* Fix lightbox portrait mode: push text under +* Subscribe to message feed \ No newline at end of file diff --git a/script/spot.js b/script/spot.js index 08ee7b4..bc00735 100755 --- a/script/spot.js +++ b/script/spot.js @@ -65,12 +65,12 @@ function Spot(asGlobals) /* Interface with server */ - this.get = function(sAction, fOnSuccess, oVars, fOnError, bProcessIcon) + this.get = function(sAction, fOnSuccess, oVars, fOnError, fonProgress) { if(!oVars) oVars = {}; fOnError = fOnError || function(sError) {console.log(sError);}; - bProcessIcon = bProcessIcon || false; - //if(bProcessIcon) self.addBufferIcon(); + fonProgress = fonProgress || function(sState){}; + fonProgress('start'); oVars['a'] = sAction; oVars['t'] = self.consts.timezone; @@ -82,18 +82,15 @@ function Spot(asGlobals) }) .done(function(oData) { + fonProgress('done'); if(oData.desc.substr(0, self.consts.lang_prefix.length)==self.consts.lang_prefix) oData.desc = self.lang(oData.desc.substr(5)); if(oData.result==self.consts.error) fOnError(oData.desc); - else - { - //if(bProcessIcon) self.resetIcon(); - fOnSuccess(oData.data); - } + else fOnSuccess(oData.data); }) .fail(function(jqXHR, textStatus, errorThrown) { - //if(bProcessIcon) self.resetIcon(); + fonProgress('fail'); fOnError(textStatus+' '+errorThrown); }); }; @@ -171,7 +168,7 @@ function Spot(asGlobals) self.onSamePageMove = function(asHash){return false}; self.onQuitPage = function(){return true}; self.onResize = function(){}; - self.onFeedback = function(sType, sMsg){feedback(sType, sMsg);}; + self.onFeedback = function(sType, sMsg){}; self.onKeydown = function(oEvent){}; }; diff --git a/style/_common.scss b/style/_common.scss index 0d224ab..83b9505 100644 --- a/style/_common.scss +++ b/style/_common.scss @@ -56,4 +56,27 @@ textarea { button { cursor: pointer; font-weight: bold; +} + +input, textarea, button { + border: none; + padding: 0.5em 1em; + border-radius: 3px; +} + +/* Feedback */ + +.feedback { + p { + margin: 0 0 1em 0; + &.error { + color: red; + } + &.warning { + color: orange; + } + &.success { + color: green; + } + } } \ No newline at end of file diff --git a/style/_fa.scss b/style/_fa.scss index a4db03b..65412db 100644 --- a/style/_fa.scss +++ b/style/_fa.scss @@ -16,10 +16,10 @@ $fa-css-prefix: fa; @extend .fas; &.push { - margin-right: 0.5em; + margin-right: 0.5rem; } &.push-left { - margin-left: 0.5em; + margin-left: 0.5rem; } } @@ -47,6 +47,15 @@ $fa-css-prefix: fa; .#{$fa-css-prefix}-elev-gain:before { content: fa-content($fa-var-arrow-circle-up); } .#{$fa-css-prefix}-download:before { content: fa-content($fa-var-file-download); } +/* Settings */ +.#{$fa-css-prefix}-menu:before { content: fa-content($fa-var-bars); } +.#{$fa-css-prefix}-newsletter:before { content: fa-content($fa-var-wifi); } +.#{$fa-css-prefix}-project:before { content: fa-content($fa-var-hiking); } +.#{$fa-css-prefix}-error:before { content: fa-content($fa-var-exclamation-square); } +.#{$fa-css-prefix}-warning:before { content: fa-content($fa-var-exclamation-triangle); } +.#{$fa-css-prefix}-success:before { content: fa-content($fa-var-check-circle); } +.#{$fa-css-prefix}-unsubscribe:before { content: fa-content($fa-var-times); } + /* Feed */ .#{$fa-css-prefix}-post:before { content: fa-content($fa-var-comment); } .#{$fa-css-prefix}-media:before { content: fa-content($fa-var-photo-video); } diff --git a/style/_mask_admin.scss b/style/_mask_admin.scss index 8b38f81..9aa487c 100644 --- a/style/_mask_admin.scss +++ b/style/_mask_admin.scss @@ -26,14 +26,4 @@ } } } - - #feedback { - .error { - color: red; - } - - .success { - color: green; - } - } } \ No newline at end of file diff --git a/style/_mask_project.scss b/style/_mask_project.scss index 20ef4c6..f91300d 100644 --- a/style/_mask_project.scss +++ b/style/_mask_project.scss @@ -1,34 +1,34 @@ //Feed width $block-spacing: 1rem; -$feed-width: 30%; -$feed-width-max: "400px + 3 * #{$block-spacing}"; +$panel-width: 30%; +$panel-width-max: "400px + 3 * #{$block-spacing}"; //Feed colors -$post-input-bg: #d9deff; -$post-color: #323268; -$post-bg: #B4BDFF; -$message-color: #326526; -$message-bg: #6DFF58; -$media-color: #635C28; -$media-bg: #F3EC9F; +$post-input-bg: #ffffff; //#d9deff; +$post-color: #333; //#323268; +$post-bg: rgba(255,255,255,.8); //#B4BDFF; +$message-color: #326526; +$message-bg: #6DFF58; +$media-color: #333; //#635C28; +$media-bg: rgba(255,255,255,.8); //#F3EC9F; //Legend colors $track-main-color: #00ff78; $track-off-track-color: #0000ff; $track-hitchhiking-color: #FF7814; -$legend-color: #222; +$legend-color: $post-color; #projects { &.with-feed { #submap { - width: calc(100% - #{$feed-width}); - min-width: calc(100% - #{$feed-width-max}); + width: calc(100% - #{$panel-width}); + min-width: calc(100% - #{$panel-width-max}); } .leaflet-right { - width: calc(#{$feed-width}); - max-width: calc(#{$feed-width-max}); + width: calc(#{$panel-width}); + max-width: calc(#{$panel-width-max}); } #feed { @@ -47,6 +47,39 @@ $legend-color: #222; right: -100%; } } + &.with-settings { + #submap { + width: calc(100% - #{$panel-width}); + min-width: calc(100% - #{$panel-width-max}); + } + + .leaflet-left { + width: calc(#{$panel-width}); + max-width: calc(#{$panel-width-max}); + } + + #settings { + z-index: 999; + transition: none; + } + + #settings-button { + .fa { + @extend .fa-prev; + } + } + } + &:not(.with-settings) { + #settings #settings-sections { + left: -100%; + } + } + &.with-feed.with-settings { + #submap { + width: calc(100% - #{$panel-width} * 2); + min-width: calc(100% - #{$panel-width-max} * 2); + } + } #submap { position: absolute; @@ -103,19 +136,6 @@ $legend-color: #222; margin-top: 0; } - &.leaflet-control-layers-expanded { - color: $legend-color; - width: calc(100% - 2em - 16px); - - a.fa-download { - color: $legend-color; - - &:hover { - color: #0078A8; - } - } - } - &.leaflet-control-scale { padding: 0.5em; @@ -125,30 +145,27 @@ $legend-color: #222; } } - /* Pull right controls by $feed-width % */ - .leaflet-right { + /* Pull right/left controls by $panel-width */ + .leaflet-right, .leaflet-left { transition: all 0.5s; width: 0; - max-width: 0; - - .leaflet-control { - left: -100%; - } + max-width: 0; + } + .leaflet-right .leaflet-control { + left: -100%; + } + .leaflet-left .leaflet-control { + right: -100%; } - /* Replace Layers image with font awesome icon */ - .leaflet-control-layers-toggle { - @extend .control-icon; - @extend .fa-layers; - text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.8); - } - - .leaflet-control-layers-expanded .leaflet-control-layers-toggle { + /* Hide default layer control */ + .leaflet-top.leaflet-left .leaflet-control-layers { display: none; } #legend { .track { + white-space: nowrap; .line { width: 2em; height: 4px; @@ -175,7 +192,7 @@ $legend-color: #222; } } - #post-button { + #post-button, #settings-button { cursor: pointer; text-shadow: 0px 1px 1px rgba(0,0,0,0.8); width: 44px; @@ -188,9 +205,14 @@ $legend-color: #222; .fa { color: #CCC; @extend .control-icon; - @extend .fa-post; } } + #post-button .fa { + @extend .fa-post; + } + #settings-button .fa { + @extend .fa-menu; + } /* Drill & Map icons */ @@ -235,25 +257,21 @@ $legend-color: #222; } } - /* Feed Panel */ + /* Feed/Settings Panel */ - #feed { + #feed, #settings { position: absolute; - right: 0; top: 0; bottom: 0; - width: calc(#{$feed-width}); - max-width: calc(#{$feed-width-max}); + width: calc(#{$panel-width}); + max-width: calc(#{$panel-width-max}); z-index: -1; transition-property: z-index; transition-duration: 0.1s; transition-delay: 0.5s; overflow: hidden; - input, textarea, button { - border: none; - padding: 0.5em 1em; - border-radius: 3px; + input, textarea { background-color: $post-input-bg; color: $post-color; } @@ -267,6 +285,9 @@ $legend-color: #222; color: $post-color; } } + } + #feed { + right: 0; #posts { position: absolute; @@ -391,6 +412,10 @@ $legend-color: #222; margin: 0.5em 0; } + a { + color: $message-color; + } + a.drill { .drill-icon { transform: translate(-16px, -32px); @@ -432,55 +457,146 @@ $legend-color: #222; } } } - - /* Info Window */ - - .info-window { - h1 { - font-size: 1.2em; - margin: 1em 0; - } + #settings { + left: 0; - p { - font-size: 1.0em; - margin: 0.5em 0 0 0; + #settings-sections { + width: calc(100% - 3rem); + margin: 1rem; + padding: 1rem; + background: white; + border-radius: 3px; + box-shadow: 2px 2px 3px 0px rgba(0,0,0,.5); + position: absolute; + transition: all 0.5s; + top: 0; + bottom: 0; + left: 0; + color: $post-color; + background: rgba(255, 255, 255, 0.8); + + .settings-section { + h1 { + margin: 1.5rem 0 1rem; + } + &:first-child h1 { + margin-top: 0; + } - i { - padding-right: 0.5em; - } - } - - .medias { - margin-top: 0.5em; - line-height: 0; - - a { - display: inline-block; - margin-right: 15px; - - &.drill { - font-size: 2em; - - .fa-drill-picture { - color: transparent; + label { + margin-bottom: .3em; + display: block; + cursor: pointer; + } + + &.newsletter { + input#email { + width: calc(100% - 6em); + + &:disabled { + color: #999; + background: rgba(255,255,255,0.2); + } } - .fa-drill-video { - color: rgba(255, 255, 255, 0.5); - } - - &:hover { - .fa-drill-video, .fa-drill-picture { - color: rgba(255, 255, 255, 0.75); + button#nl_btn { + margin-left: 1em; + margin-bottom: 1em; + + &.subscribe .fa { + @extend .fa-send; + } + &.unsubscribe .fa { + @extend .fa-unsubscribe; + } + &.loading { + background-color: $message-color; + color: white; + span { + @extend .flicker; + } } } } - img { - max-width: 200px; - max-height: 100px; - border-radius: 3px; - image-orientation: from-image; - transition: All 0.2s; + #settings-projects { + a.fa-download { + color: $legend-color; + + &:hover { + color: #0078A8; + } + } + } + } + } + } + + /* Info Window */ + + .leaflet-popup-content { + margin: 0; + + .info-window { + margin: 1rem; + h1 { + font-size: 1.2em; + margin: 1em 0 1.2em; + + i { + margin-right: 0.3125em; + } + } + + p { + font-size: 1.0em; + margin: 0.5em 0 0 0; + + i { + padding-right: 0.5em; + } + + a { + color: $post-color; + } + } + + .medias { + margin-top: -0.5rem; + line-height: 0; + + a { + display: inline-block; + + margin-right: 1rem; + margin-top: 1rem; + &:last-child { + margin-right: 0; + } + + &.drill { + font-size: 2em; + + .fa-drill-picture { + color: transparent; + } + .fa-drill-video { + color: rgba(255, 255, 255, 0.5); + } + + &:hover { + .fa-drill-video, .fa-drill-picture { + color: rgba(255, 255, 255, 0.75); + } + } + } + + img { + max-width: 200px; + max-height: 100px; + border-radius: 3px; + image-orientation: from-image; + transition: All 0.2s; + } } } } diff --git a/style/_mobile.scss b/style/_mobile.scss index 26cddcd..b7bc86b 100644 --- a/style/_mobile.scss +++ b/style/_mobile.scss @@ -5,12 +5,12 @@ #projects { - &.with-feed { + &.with-feed, &.with-settings { #submap { width: 100%; } - .leaflet-right { + .leaflet-right, .leaflet-left { width: calc(100% - 44px - 2 * #{$block-spacing}); } @@ -20,14 +20,13 @@ } .leaflet-control-container { - .leaflet-top.leaflet-left, .leaflet-bottom.leaflet-left, .leaflet-bottom.leaflet-right .leaflet-control.elevation { display: none; } } - #feed { + #feed, #settings { width: calc(100% - 44px - 2 * #{$block-spacing}); } } @@ -37,4 +36,4 @@ .mobile { display: none; } -} \ No newline at end of file +} diff --git a/style/spot.css b/style/spot.css index e1882b2..7003cf0 100644 --- a/style/spot.css +++ b/style/spot.css @@ -1,4 +1,4 @@ -@font-face{font-family:"Ubuntu";font-style:normal;font-weight:400;src:local("Ubuntu Regular"),local("Ubuntu-Regular"),url(https://fonts.gstatic.com/s/ubuntu/v13/4iCs6KVjbNBYlgoKcg72j00.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:400;src:local("Ubuntu Regular"),local("Ubuntu-Regular"),url(https://fonts.gstatic.com/s/ubuntu/v13/4iCs6KVjbNBYlgoKew72j00.woff2) format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:400;src:local("Ubuntu Regular"),local("Ubuntu-Regular"),url(https://fonts.gstatic.com/s/ubuntu/v13/4iCs6KVjbNBYlgoKcw72j00.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:400;src:local("Ubuntu Regular"),local("Ubuntu-Regular"),url(https://fonts.gstatic.com/s/ubuntu/v13/4iCs6KVjbNBYlgoKfA72j00.woff2) format("woff2");unicode-range:U+0370-03FF}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:400;src:local("Ubuntu Regular"),local("Ubuntu-Regular"),url(https://fonts.gstatic.com/s/ubuntu/v13/4iCs6KVjbNBYlgoKcQ72j00.woff2) format("woff2");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:400;src:local("Ubuntu Regular"),local("Ubuntu-Regular"),url(fonts/4iCs6KVjbNBYlgoKfw72.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:700;src:local("Ubuntu Bold"),local("Ubuntu-Bold"),url(https://fonts.gstatic.com/s/ubuntu/v13/4iCv6KVjbNBYlgoCxCvjvWyNL4U.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:700;src:local("Ubuntu Bold"),local("Ubuntu-Bold"),url(https://fonts.gstatic.com/s/ubuntu/v13/4iCv6KVjbNBYlgoCxCvjtGyNL4U.woff2) format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:700;src:local("Ubuntu Bold"),local("Ubuntu-Bold"),url(https://fonts.gstatic.com/s/ubuntu/v13/4iCv6KVjbNBYlgoCxCvjvGyNL4U.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:700;src:local("Ubuntu Bold"),local("Ubuntu-Bold"),url(https://fonts.gstatic.com/s/ubuntu/v13/4iCv6KVjbNBYlgoCxCvjs2yNL4U.woff2) format("woff2");unicode-range:U+0370-03FF}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:700;src:local("Ubuntu Bold"),local("Ubuntu-Bold"),url(https://fonts.gstatic.com/s/ubuntu/v13/4iCv6KVjbNBYlgoCxCvjvmyNL4U.woff2) format("woff2");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:700;src:local("Ubuntu Bold"),local("Ubuntu-Bold"),url(fonts/4iCv6KVjbNBYlgoCxCvjsGyN.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@-webkit-keyframes fadeIn{from{opacity:.3}}@-moz-keyframes fadeIn{from{opacity:.3}}@-ms-keyframes fadeIn{from{opacity:.3}}@-o-keyframes fadeIn{from{opacity:.3}}@keyframes fadeIn{from{opacity:.3}}.flicker,.lightbox .lb-cancel{-webkit-animation:fadeIn .5s infinite alternate;-moz-animation:fadeIn .5s infinite alternate;-ms-animation:fadeIn .5s infinite alternate;-o-animation:fadeIn .5s infinite alternate;animation:fadeIn .5s infinite alternate}body,textarea,input,button{font-size:14px;font-family:"Ubuntu",sans-serif;margin:0}textarea{resize:none}button{cursor:pointer;font-weight:bold}/*! +@font-face{font-family:"Ubuntu";font-style:normal;font-weight:400;src:local("Ubuntu Regular"),local("Ubuntu-Regular"),url(https://fonts.gstatic.com/s/ubuntu/v13/4iCs6KVjbNBYlgoKcg72j00.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:400;src:local("Ubuntu Regular"),local("Ubuntu-Regular"),url(https://fonts.gstatic.com/s/ubuntu/v13/4iCs6KVjbNBYlgoKew72j00.woff2) format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:400;src:local("Ubuntu Regular"),local("Ubuntu-Regular"),url(https://fonts.gstatic.com/s/ubuntu/v13/4iCs6KVjbNBYlgoKcw72j00.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:400;src:local("Ubuntu Regular"),local("Ubuntu-Regular"),url(https://fonts.gstatic.com/s/ubuntu/v13/4iCs6KVjbNBYlgoKfA72j00.woff2) format("woff2");unicode-range:U+0370-03FF}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:400;src:local("Ubuntu Regular"),local("Ubuntu-Regular"),url(https://fonts.gstatic.com/s/ubuntu/v13/4iCs6KVjbNBYlgoKcQ72j00.woff2) format("woff2");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:400;src:local("Ubuntu Regular"),local("Ubuntu-Regular"),url(fonts/4iCs6KVjbNBYlgoKfw72.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:700;src:local("Ubuntu Bold"),local("Ubuntu-Bold"),url(https://fonts.gstatic.com/s/ubuntu/v13/4iCv6KVjbNBYlgoCxCvjvWyNL4U.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:700;src:local("Ubuntu Bold"),local("Ubuntu-Bold"),url(https://fonts.gstatic.com/s/ubuntu/v13/4iCv6KVjbNBYlgoCxCvjtGyNL4U.woff2) format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:700;src:local("Ubuntu Bold"),local("Ubuntu-Bold"),url(https://fonts.gstatic.com/s/ubuntu/v13/4iCv6KVjbNBYlgoCxCvjvGyNL4U.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:700;src:local("Ubuntu Bold"),local("Ubuntu-Bold"),url(https://fonts.gstatic.com/s/ubuntu/v13/4iCv6KVjbNBYlgoCxCvjs2yNL4U.woff2) format("woff2");unicode-range:U+0370-03FF}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:700;src:local("Ubuntu Bold"),local("Ubuntu-Bold"),url(https://fonts.gstatic.com/s/ubuntu/v13/4iCv6KVjbNBYlgoCxCvjvmyNL4U.woff2) format("woff2");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Ubuntu";font-style:normal;font-weight:700;src:local("Ubuntu Bold"),local("Ubuntu-Bold"),url(fonts/4iCv6KVjbNBYlgoCxCvjsGyN.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@-webkit-keyframes fadeIn{from{opacity:.3}}@-moz-keyframes fadeIn{from{opacity:.3}}@-ms-keyframes fadeIn{from{opacity:.3}}@-o-keyframes fadeIn{from{opacity:.3}}@keyframes fadeIn{from{opacity:.3}}.flicker,#projects #settings #settings-sections .settings-section.newsletter button#nl_btn.loading span,.lightbox .lb-cancel{-webkit-animation:fadeIn .5s infinite alternate;-moz-animation:fadeIn .5s infinite alternate;-ms-animation:fadeIn .5s infinite alternate;-o-animation:fadeIn .5s infinite alternate;animation:fadeIn .5s infinite alternate}body,textarea,input,button{font-size:14px;font-family:"Ubuntu",sans-serif;margin:0}textarea{resize:none}button{cursor:pointer;font-weight:bold}input,textarea,button{border:none;padding:.5em 1em;border-radius:3px}.feedback p{margin:0 0 1em 0}.feedback p.error{color:red}.feedback p.warning{color:orange}.feedback p.success{color:green}/*! * Font Awesome Pro 5.11.2 by @fontawesome - https://fontawesome.com * License - https://fontawesome.com/license (Commercial License) - */@font-face{font-family:"Font Awesome 5 Pro";font-style:normal;font-weight:900;font-display:auto;src:url("fa/fonts/fa-solid-900.eot");src:url("fa/fonts/fa-solid-900.eot?#iefix") format("embedded-opentype"),url("fa/fonts/fa-solid-900.woff2") format("woff2"),url("fa/fonts/fa-solid-900.woff") format("woff"),url("fa/fonts/fa-solid-900.ttf") format("truetype"),url("fa/fonts/fa-solid-900.svg#fontawesome") format("svg")}.fa,.lightbox .lb-cancel,.lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.control-icon,#projects #post-button .fa,#projects #post-button .control-icon,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-next,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button .lb-close,#projects #post-button .lightbox .lb-cancel,.lightbox #projects #post-button .lb-cancel,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button .elevation-toggle,#projects #post-button .leaflet-control-layers-toggle,#projects .leaflet-control-layers-toggle,.spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.fas{font-family:"Font Awesome 5 Pro";font-weight:900}.fa,.lightbox .lb-cancel,.lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.control-icon,#projects #post-button .fa,#projects #post-button .control-icon,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-next,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button .lb-close,#projects #post-button .lightbox .lb-cancel,.lightbox #projects #post-button .lb-cancel,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button .elevation-toggle,#projects #post-button .leaflet-control-layers-toggle,#projects .leaflet-control-layers-toggle,.spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.fas,.far,.fal,.fad,.fab{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.3333333333em;line-height:.75em;vertical-align:-0.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:solid .08em #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.lightbox .fa-pull-left.lb-cancel,.lightbox .lb-dataContainer .lb-data .lb-closeContainer .fa-pull-left.lb-close,.lightbox .lb-outerContainer .lb-container .lb-nav a.fa-pull-left.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav a.fa-pull-left.lb-prev,.fa-pull-left.control-icon,#projects #post-button .fa-pull-left.fa,#projects #post-button .fa-pull-left.control-icon,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.fa-pull-left.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.fa-pull-left.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.fa-pull-left.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.fa-pull-left.lb-next,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .fa-pull-left.lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button .fa-pull-left.lb-close,#projects #post-button .lightbox .fa-pull-left.lb-cancel,.lightbox #projects #post-button .fa-pull-left.lb-cancel,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed .fa-pull-left.elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button .fa-pull-left.elevation-toggle,#projects #post-button .fa-pull-left.leaflet-control-layers-toggle,#projects .fa-pull-left.leaflet-control-layers-toggle,.spot-theme.leaflet-control.elevation-collapsed .fa-pull-left.elevation-toggle,.fas.fa-pull-left,.far.fa-pull-left,.fal.fa-pull-left,.fab.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.lightbox .fa-pull-right.lb-cancel,.lightbox .lb-dataContainer .lb-data .lb-closeContainer .fa-pull-right.lb-close,.lightbox .lb-outerContainer .lb-container .lb-nav a.fa-pull-right.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav a.fa-pull-right.lb-prev,.fa-pull-right.control-icon,#projects #post-button .fa-pull-right.fa,#projects #post-button .fa-pull-right.control-icon,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.fa-pull-right.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.fa-pull-right.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.fa-pull-right.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.fa-pull-right.lb-next,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .fa-pull-right.lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button .fa-pull-right.lb-close,#projects #post-button .lightbox .fa-pull-right.lb-cancel,.lightbox #projects #post-button .fa-pull-right.lb-cancel,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed .fa-pull-right.elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button .fa-pull-right.elevation-toggle,#projects #post-button .fa-pull-right.leaflet-control-layers-toggle,#projects .fa-pull-right.leaflet-control-layers-toggle,.spot-theme.leaflet-control.elevation-collapsed .fa-pull-right.elevation-toggle,.fas.fa-pull-right,.far.fa-pull-right,.fal.fa-pull-right,.fab.fa-pull-right{margin-left:.3em}.fa-spin{animation:fa-spin 2s infinite linear}.fa-pulse{animation:fa-spin 1s infinite steps(8)}@keyframes fa-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";transform:scale(-1, 1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";transform:scale(1, -1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";transform:scale(-1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-flip-both{filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa.push,.lightbox .push.lb-cancel,.lightbox .lb-dataContainer .lb-data .lb-closeContainer .push.lb-close,.lightbox .lb-outerContainer .lb-container .lb-nav a.push.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav a.push.lb-prev,.push.control-icon,#projects #post-button .push.fa,#projects #post-button .push.control-icon,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.push.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.push.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.push.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.push.lb-next,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .push.lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button .push.lb-close,#projects #post-button .lightbox .push.lb-cancel,.lightbox #projects #post-button .push.lb-cancel,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed .push.elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button .push.elevation-toggle,#projects #post-button .push.leaflet-control-layers-toggle,#projects .push.leaflet-control-layers-toggle,.spot-theme.leaflet-control.elevation-collapsed .push.elevation-toggle{margin-right:.5em}.fa.push-left,.lightbox .push-left.lb-cancel,.lightbox .lb-dataContainer .lb-data .lb-closeContainer .push-left.lb-close,.lightbox .lb-outerContainer .lb-container .lb-nav a.push-left.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav a.push-left.lb-prev,.push-left.control-icon,#projects #post-button .push-left.fa,#projects #post-button .push-left.control-icon,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.push-left.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.push-left.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.push-left.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.push-left.lb-next,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .push-left.lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button .push-left.lb-close,#projects #post-button .lightbox .push-left.lb-cancel,.lightbox #projects #post-button .push-left.lb-cancel,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed .push-left.elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button .push-left.elevation-toggle,#projects #post-button .push-left.leaflet-control-layers-toggle,#projects .push-left.leaflet-control-layers-toggle,.spot-theme.leaflet-control.elevation-collapsed .push-left.elevation-toggle{margin-left:.5em}.control-icon,#projects #post-button .fa,#projects #post-button .control-icon,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-next,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button .lb-close,#projects #post-button .lightbox .lb-cancel,.lightbox #projects #post-button .lb-cancel,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button .elevation-toggle,#projects #post-button .leaflet-control-layers-toggle,#projects .leaflet-control-layers-toggle,.spot-theme.leaflet-control.elevation-collapsed .elevation-toggle{font-size:28px;text-align:center;line-height:44px;text-decoration:none;color:#999;background:none}.fa-map:before{content:""}.fa-track-off-track:before{content:""}.fa-track-main:before{content:""}.fa-track-hitchhiking:before{content:""}.fa-track-start:before{content:""}.fa-track-end:before{content:""}.fa-layers:before,#projects .leaflet-control-layers-toggle:before{content:""}.fa-elev-chart:before,.spot-theme.leaflet-control.elevation-collapsed .elevation-toggle:before{content:""}.fa-distance:before{content:""}.fa-elev-drop:before{content:""}.fa-elev-gain:before{content:""}.fa-download:before{content:""}.fa-post:before,#projects #post-button .fa:before,#projects #post-button .control-icon:before,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev:before,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-prev:before,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next:before,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-next:before,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close:before,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button .lb-close:before,#projects #post-button .lightbox .lb-cancel:before,.lightbox #projects #post-button .lb-cancel:before,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle:before,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button .elevation-toggle:before,#projects #post-button .leaflet-control-layers-toggle:before{content:""}.fa-media:before{content:""}.fa-video:before{content:""}.fa-image:before{content:""}.fa-message:before{content:""}.fa-message-in:before{content:""}.fa-time:before{content:""}.fa-coords:before{content:""}.fa-drill-video:before{content:""}.fa-drill-picture:before{content:""}.fa-drill-message:before,#projects #feed #posts .post.message a.drill:hover .fa-message:before{content:""}.fa-upload:before{content:""}.fa-video-shot:before{content:""}.fa-image-shot:before{content:""}.fa-poster:before{content:""}.fa-send:before{content:""}.fa-cancel:before,.lightbox .lb-cancel:before{content:""}.fa-prev:before,.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev:before{content:""}.fa-next:before,#projects.with-feed #post-button .fa:before,#projects.with-feed #post-button .control-icon:before,#projects.with-feed #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev:before,.lightbox .lb-outerContainer .lb-container .lb-nav #projects.with-feed #post-button a.lb-prev:before,#projects.with-feed #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next:before,.lightbox .lb-outerContainer .lb-container .lb-nav #projects.with-feed #post-button a.lb-next:before,#projects.with-feed #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close:before,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects.with-feed #post-button .lb-close:before,#projects.with-feed #post-button .lightbox .lb-cancel:before,.lightbox #projects.with-feed #post-button .lb-cancel:before,#projects.with-feed #post-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle:before,.spot-theme.leaflet-control.elevation-collapsed #projects.with-feed #post-button .elevation-toggle:before,#projects.with-feed #post-button .leaflet-control-layers-toggle:before,.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next:before{content:""}.fa-close:before,.lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close:before{content:""}body.lb-disable-scrolling{overflow:hidden}.lightboxOverlay{position:absolute;top:0;left:0;z-index:9999;background-color:#000;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=80);opacity:.8;display:none}.lightbox{position:absolute;left:0;width:100%;z-index:10000;text-align:center;line-height:0;font-weight:normal;outline:none}.lightbox .lb-image{display:block;height:auto;max-width:inherit;max-height:none;border-radius:3px;border:4px solid #fff}.lightbox .lb-video{box-sizing:content-box}.lightbox .lb-video-nav .lb-nav{height:calc(100% - 45px)}.lightbox a img{border:none}.lb-outerContainer{position:relative;*zoom:1;width:250px;height:250px;margin:0 auto;border-radius:4px;background-color:#fff}.lb-outerContainer:after{content:"";display:table;clear:both}.lb-loader{position:absolute;top:43%;left:0;height:25%;width:100%;text-align:center;line-height:0}.lb-cancel{display:block;width:32px;height:32px;margin:0 auto;background:url(../images/loading.gif) no-repeat}.lb-nav{position:absolute;top:0;left:0;height:100%;width:100%;z-index:10}.lb-container>.nav{left:0}.lb-nav a{outline:none;background-image:url("data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==")}.lb-prev,.lb-next{height:100%;cursor:pointer;display:block}.lb-nav a.lb-prev{width:34%;left:0;float:left;background:url(../images/prev.png) left 48% no-repeat;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);opacity:0;-webkit-transition:opacity .6s;-moz-transition:opacity .6s;-o-transition:opacity .6s;transition:opacity .6s}.lb-nav a.lb-prev:hover{filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);opacity:1}.lb-nav a.lb-next{width:64%;right:0;float:right;background:url(../images/next.png) right 48% no-repeat;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);opacity:0;-webkit-transition:opacity .6s;-moz-transition:opacity .6s;-o-transition:opacity .6s;transition:opacity .6s}.lb-nav a.lb-next:hover{filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);opacity:1}.lb-dataContainer{margin:0 auto;padding-top:5px;*zoom:1;width:100%;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.lb-dataContainer:after{content:"";display:table;clear:both}.lb-data{padding:0 4px;color:#ccc}.lb-data .lb-details{width:85%;float:left;text-align:left;line-height:1.1em}.lb-data .lb-caption{font-size:13px;font-weight:bold;line-height:1em}.lb-data .lb-caption a{color:#4ae}.lb-data .lb-number{display:block;clear:left;padding-bottom:1em;font-size:12px;color:#999}.lb-data .lb-close{display:block;float:right;width:30px;height:30px;background:url(../images/close.png) top right no-repeat;text-align:right;outline:none;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=70);opacity:.7;-webkit-transition:opacity .2s;-moz-transition:opacity .2s;-o-transition:opacity .2s;transition:opacity .2s}.lb-data .lb-close:hover{cursor:pointer;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);opacity:1}.lightboxOverlay{bottom:0;right:0}.lightbox{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.lightbox .lb-outerContainer{margin:0;border-radius:0;background-color:rgba(255,255,255,.5)}.lightbox .lb-outerContainer .lb-container{overflow:hidden}.lightbox .lb-outerContainer .lb-container .lb-image{image-orientation:from-image;border:none;--translate-x: 0;--translate-y: 0;--scale: 1;transform:translateX(var(--translate-x, 0)) translateY(var(--translate-y, 0)) scale(var(--scale, 1))}.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next{color:#fff;text-decoration:none}.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev:before,.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next:before{position:absolute;top:calc(50% - 1em)}.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev{background:none;font-size:2em}.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev:before{left:2em}.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next{background:none;font-size:2em}.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next:before{right:2em}.lightbox .lb-dataContainer{margin:0;padding:0;display:inline-block;vertical-align:top;width:200px;max-width:100%;flex:0 0 auto;overflow:hidden}.lightbox .lb-dataContainer .lb-data{padding:1em 0 0 1em}.lightbox .lb-dataContainer .lb-data .lb-details{float:none}.lightbox .lb-dataContainer .lb-data .lb-details .lb-caption-line{cursor:default;display:block;margin-top:1em}.lightbox .lb-dataContainer .lb-data .lb-details .lb-caption-line:first-child{margin-top:0}.lightbox .lb-dataContainer .lb-data .lb-details .lb-number{padding:0;margin-top:2em}.lightbox .lb-dataContainer .lb-data .lb-closeContainer{display:none !important;margin-top:2em}.lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close{background:none;font-size:2em;float:none}.lightbox .lb-cancel{background:none;font-size:2em;color:#ccc}[data-simplebar]{position:relative;flex-direction:column;flex-wrap:wrap;justify-content:flex-start;align-content:flex-start;align-items:flex-start}.simplebar-wrapper{overflow:hidden;width:inherit;height:inherit;max-width:inherit;max-height:inherit}.simplebar-mask{direction:inherit;position:absolute;overflow:hidden;padding:0;margin:0;left:0;top:0;bottom:0;right:0;width:auto !important;height:auto !important;z-index:0}.simplebar-offset{direction:inherit !important;box-sizing:inherit !important;resize:none !important;position:absolute;top:0;left:0;bottom:0;right:0;padding:0;margin:0;-webkit-overflow-scrolling:touch}.simplebar-content-wrapper{direction:inherit;box-sizing:border-box !important;position:relative;display:block;height:100%;width:auto;visibility:visible;max-width:100%;max-height:100%;scrollbar-width:none;-ms-overflow-style:none}.simplebar-content-wrapper::-webkit-scrollbar,.simplebar-hide-scrollbar::-webkit-scrollbar{width:0;height:0}.simplebar-content:before,.simplebar-content:after{content:" ";display:table}.simplebar-placeholder{max-height:100%;max-width:100%;width:100%;pointer-events:none}.simplebar-height-auto-observer-wrapper{box-sizing:inherit !important;height:100%;width:100%;max-width:1px;position:relative;float:left;max-height:1px;overflow:hidden;z-index:-1;padding:0;margin:0;pointer-events:none;flex-grow:inherit;flex-shrink:0;flex-basis:0}.simplebar-height-auto-observer{box-sizing:inherit;display:block;opacity:0;position:absolute;top:0;left:0;height:1000%;width:1000%;min-height:1px;min-width:1px;overflow:hidden;pointer-events:none;z-index:-1}.simplebar-track{z-index:1;position:absolute;right:0;bottom:0;pointer-events:none;overflow:hidden}[data-simplebar].simplebar-dragging .simplebar-content{pointer-events:none;user-select:none;-webkit-user-select:none}[data-simplebar].simplebar-dragging .simplebar-track{pointer-events:all}.simplebar-scrollbar{position:absolute;right:2px;width:7px;min-height:10px}.simplebar-scrollbar:before{position:absolute;content:"";background:#000;border-radius:7px;left:0;right:0;opacity:0;transition:opacity .2s linear}.simplebar-scrollbar.simplebar-visible:before{opacity:.5;transition:opacity 0s linear}.simplebar-track.simplebar-vertical{top:0;width:11px}.simplebar-track.simplebar-vertical .simplebar-scrollbar:before{top:2px;bottom:2px}.simplebar-track.simplebar-horizontal{left:0;height:11px}.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before{height:100%;left:2px;right:2px}.simplebar-track.simplebar-horizontal .simplebar-scrollbar{right:auto;left:0;top:2px;height:7px;min-height:0;min-width:10px;width:auto}[data-simplebar-direction=rtl] .simplebar-track.simplebar-vertical{right:auto;left:0}.hs-dummy-scrollbar-size{direction:rtl;position:fixed;opacity:0;visibility:hidden;height:500px;width:500px;overflow-y:hidden;overflow-x:scroll}.simplebar-hide-scrollbar{position:fixed;left:0;visibility:hidden;overflow-y:scroll;scrollbar-width:none;-ms-overflow-style:none}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg,.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none !important;max-height:none !important}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-tile{will-change:opacity}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}.leaflet-zoom-anim .leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0, 0, 0.25, 1);-moz-transition:-moz-transform .25s cubic-bezier(0, 0, 0.25, 1);transition:transform .25s cubic-bezier(0, 0, 0.25, 1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline:0}.leaflet-container a{color:#0078a8}.leaflet-container a.leaflet-active{outline:2px solid orange}.leaflet-zoom-box{border:2px dotted #38f;background:rgba(255,255,255,.5)}.leaflet-container{font:12px/1.5 "Helvetica Neue",Arial,Helvetica,sans-serif}.leaflet-bar{box-shadow:0 1px 5px rgba(0,0,0,.65);border-radius:4px}.leaflet-bar a,.leaflet-bar a:hover{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:bold 18px "Lucida Console",Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px rgba(0,0,0,.4);background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(images/layers.png);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(images/layers-2x.png);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(images/marker-icon.png)}.leaflet-container .leaflet-control-attribution{background:#fff;background:rgba(255,255,255,.7);margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-container .leaflet-control-attribution,.leaflet-container .leaflet-control-scale{font-size:11px}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;font-size:11px;white-space:nowrap;overflow:hidden;-moz-box-sizing:border-box;box-sizing:border-box;background:#fff;background:rgba(255,255,255,.5)}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 19px;line-height:1.4}.leaflet-popup-content p{margin:18px 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px rgba(0,0,0,.4)}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;padding:4px 4px 0 0;border:none;text-align:center;width:18px;height:14px;font:16px/14px Tahoma,Verdana,sans-serif;color:#c3c3c3;text-decoration:none;font-weight:bold;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover{color:#999}.leaflet-popup-scrolled{overflow:auto;border-bottom:1px solid #ddd;border-top:1px solid #ddd}.leaflet-oldie .leaflet-popup-content-wrapper{zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)}.leaflet-oldie .leaflet-popup-tip-container{margin-top:-1px}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px rgba(0,0,0,.4)}.leaflet-tooltip.leaflet-clickable{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}.spot-theme.leaflet-control.elevation .background{margin:6px 0 -12px}.spot-theme.leaflet-control.elevation .axis path,.spot-theme.leaflet-control.elevation .axis line{fill:none;stroke:#999;stroke-width:2}.spot-theme.leaflet-control.elevation .mouse-focus-label-x{text-anchor:middle}.spot-theme.leaflet-control.elevation .mouse-drag{fill:rgba(255,255,255,.2)}.spot-theme.leaflet-control.elevation .elevation-toggle{cursor:pointer;width:44px;height:44px;color:#ccc;text-shadow:0px 1px 1px rgba(0,0,0,.8)}.spot-theme.leaflet-control.elevation .area{fill:#ccc;filter:drop-shadow(-1px 1px 1px rgba(0, 0, 0, 0.6));-webkit-filter:drop-shadow(-1px 1px 1px rgba(0, 0, 0, 0.6))}.spot-theme.leaflet-control.elevation .mouse-focus-line{pointer-events:none;stroke-width:1;stroke:#666}.spot-theme.height-focus{stroke:#ccc;fill:#ccc}.spot-theme.height-focus.line{pointer-events:none;stroke-width:2}.spot-theme.height-focus-label{text-anchor:middle;fill:#ccc}.leaflet-container{background:none}.spot-theme.height-focus,.spot-theme.height-focus.line,.spot-theme.height-focus-label,.spot-theme.leaflet-control.elevation .area{filter:drop-shadow(-1px 1px 1px rgba(0, 0, 0, 0.6));-webkit-filter:drop-shadow(-1px 1px 1px rgba(0, 0, 0, 0.6))}.spot-theme.leaflet-control.elevation-collapsed .background{display:none}.spot-theme .details text{text-anchor:middle}#projects.with-feed #submap{width:calc(100% - 30%);min-width:calc(100% - 400px + 3 * 1rem)}#projects.with-feed .leaflet-right{width:calc(30%);max-width:calc(400px + 3 * 1rem)}#projects.with-feed #feed{z-index:999;transition:none}#projects:not(.with-feed) #feed #posts{right:-100%}#projects #submap{position:absolute;left:0;top:0;bottom:0;width:100%}#projects #submap .loader{position:absolute;font-size:3em;top:calc(50% - 0.5em);left:calc(50% - 0.66666em);color:#ccc}#projects #map{position:absolute;left:0;top:0;bottom:0;width:100%}#projects #map .track_tooltip p{margin:0}#projects #map .track_tooltip p.name{font-weight:bold;font-size:1.2em}#projects #map .track_tooltip p.description{font-style:italic}#projects #map .track_tooltip p.detail{margin-top:1em;width:50%;display:inline-block}#projects .leaflet-control{background-color:rgba(255,255,255,.6);font-family:Roboto,Arial,sans-serif;border-radius:3px;border:none;margin:1rem}#projects .leaflet-control+.leaflet-control{margin-top:0}#projects .leaflet-control.leaflet-control-layers-expanded{color:#222;width:calc(100% - 2em - 16px)}#projects .leaflet-control.leaflet-control-layers-expanded a.fa-download{color:#222}#projects .leaflet-control.leaflet-control-layers-expanded a.fa-download:hover{color:#0078a8}#projects .leaflet-control.leaflet-control-scale{padding:.5em}#projects .leaflet-control.leaflet-control-scale .leaflet-control-scale-line{background:none}#projects .leaflet-right{transition:all .5s;width:0;max-width:0}#projects .leaflet-right .leaflet-control{left:-100%}#projects .leaflet-control-layers-toggle{text-shadow:0px 1px 1px rgba(0,0,0,.8)}#projects .leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}#projects #legend .track .line{width:2em;height:4px;display:inline-block;border-radius:2px;vertical-align:middle}#projects #legend .track .line.main{background-color:#00ff78}#projects #legend .track .line.off-track{background-color:blue}#projects #legend .track .line.hitchhiking{background-color:#ff7814}#projects #legend .track .desc{font-size:1em;margin-left:.5em;color:#222}#projects #post-button{cursor:pointer;text-shadow:0px 1px 1px rgba(0,0,0,.8);width:44px;text-align:center}#projects #post-button:hover .fa,#projects #post-button:hover .control-icon,#projects #post-button:hover .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button:hover a.lb-prev,#projects #post-button:hover .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button:hover a.lb-next,#projects #post-button:hover .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button:hover .lb-close,#projects #post-button:hover .lightbox .lb-cancel,.lightbox #projects #post-button:hover .lb-cancel,#projects #post-button:hover .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button:hover .elevation-toggle,#projects #post-button:hover .leaflet-control-layers-toggle{color:#fff}#projects #post-button .fa,#projects #post-button .control-icon,#projects #post-button .fa,#projects #post-button .control-icon,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-next,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button .lb-close,#projects #post-button .lightbox .lb-cancel,.lightbox #projects #post-button .lb-cancel,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button .elevation-toggle,#projects #post-button .leaflet-control-layers-toggle,#projects #post-button .leaflet-control-layers-toggle{color:#ccc}#projects a.drill{position:relative;overflow:hidden;text-decoration:none;display:inline-block}#projects a.drill .drill-icon{position:absolute;display:inline-block;top:50%;left:50%;transform:translate(-50%, -50%)}#projects a.drill .drill-icon i{transition:all .3s;cursor:pointer}#projects .fa-stack .fa-message{font-size:32px;text-shadow:rgba(0,0,0,.5) 3px 3px 3px;color:#6dff58}#projects .fa-stack .fa-message-in{font-size:13px;color:#326526;top:1px}#projects .fa-stack .fa-track-start,#projects .fa-stack .fa-track-end{color:#326526;font-size:14px;top:1px}#projects .fa-stack .fa-track-end{color:#ff7814}#projects #feed{position:absolute;right:0;top:0;bottom:0;width:calc(30%);max-width:calc(400px + 3 * 1rem);z-index:-1;transition-property:z-index;transition-duration:.1s;transition-delay:.5s;overflow:hidden}#projects #feed input,#projects #feed textarea,#projects #feed button{border:none;padding:.5em 1em;border-radius:3px;background-color:#d9deff;color:#323268}#projects #feed button{background-color:#323268;color:#b4bdff}#projects #feed button:hover{background-color:#d9deff;color:#323268}#projects #feed #posts{position:absolute;transition:all .5s;top:0;bottom:0;right:0;width:100%}#projects #feed #posts #poster textarea#post{margin-bottom:1em;width:calc(100% - 2em)}#projects #feed #posts #poster input#name{width:calc(100% - 6em)}#projects #feed #posts #poster button#submit{margin-left:1em;margin-bottom:.5em}#projects #feed #posts .post{margin-bottom:1rem;background:#b4bdff;color:#323268;border-radius:3px;width:calc(100% - 1rem);box-shadow:2px 2px 3px 0px rgba(0,0,0,.5)}#projects #feed #posts .post:first-child{margin-top:1rem}#projects #feed #posts .post .message{margin:.3em 0 0 0}#projects #feed #posts .post .signature{margin:.5em 0 0 0;text-align:right;font-style:italic}#projects #feed #posts .post .header{font-style:italic;font-size:.8em;padding:.5em 1em}#projects #feed #posts .post .header span{display:inline-block;width:50%;cursor:default}#projects #feed #posts .post .header span.index{font-style:normal}#projects #feed #posts .post .header span.time{text-align:right}#projects #feed #posts .post .body{clear:both;padding:0em 1em .5em}#projects #feed #posts .post.headerless .header{display:none}#projects #feed #posts .post.headerless .body{padding-top:.5em}#projects #feed #posts .post.media{background:#f3ec9f;color:#635c28}#projects #feed #posts .post.media a{display:inline-block;width:100%;line-height:0;margin:0}#projects #feed #posts .post.media a.drill{font-size:3em}#projects #feed #posts .post.media a.drill .fa-drill-picture{color:transparent}#projects #feed #posts .post.media a.drill .fa-drill-video{color:rgba(255,255,255,.5)}#projects #feed #posts .post.media a.drill:hover .fa-drill-picture,#projects #feed #posts .post.media a.drill:hover .fa-drill-video{color:rgba(243,236,159,.75)}#projects #feed #posts .post.media a img{width:100%;image-orientation:from-image;outline:none;border-radius:3px}#projects #feed #posts .post.media p{margin:0;text-align:justify}#projects #feed #posts .post.message{background:#6dff58;color:#326526}#projects #feed #posts .post.message p{font-size:.9em;margin:.5em 0}#projects #feed #posts .post.message a.drill .drill-icon{transform:translate(-16px, -32px)}#projects #feed #posts .post.message a.drill .drill-icon .fa-message-in{top:0;left:-1px}#projects #feed #posts .post.message a.drill:hover .fa-message{top:16px}#projects #feed #posts .post.message a.drill:hover .fa-message-in{display:none}#projects #feed #posts .post.message .staticmap{width:100%;border-radius:3px;cursor:pointer}#projects #feed #posts .post.loading .body{text-align:center}#projects #feed #posts .post.loading .body p{display:inline-block;font-size:2em;color:#323268}#projects .info-window h1{font-size:1.2em;margin:1em 0}#projects .info-window p{font-size:1em;margin:.5em 0 0 0}#projects .info-window p i{padding-right:.5em}#projects .info-window .medias{margin-top:.5em;line-height:0}#projects .info-window .medias a{display:inline-block;margin-right:15px}#projects .info-window .medias a.drill{font-size:2em}#projects .info-window .medias a.drill .fa-drill-picture{color:transparent}#projects .info-window .medias a.drill .fa-drill-video{color:rgba(255,255,255,.5)}#projects .info-window .medias a.drill:hover .fa-drill-video,#projects .info-window .medias a.drill:hover .fa-drill-picture{color:rgba(255,255,255,.75)}#projects .info-window .medias a img{max-width:200px;max-height:100px;border-radius:3px;image-orientation:from-image;transition:All .2s}#elems{display:none}#upload{padding:1em}#upload h1{font-size:2em;border-bottom:2px solid #000;margin:0 0 1em 0;padding-bottom:.5em}#upload .bar{height:18px;background:green}#upload .comment{margin-top:1em}#upload .comment .thumb{width:30%;max-width:100px}#upload .comment form{display:inline-block;width:calc(70% - 1em);min-width:calc(100% - 100px - 1em);margin-left:1em;vertical-align:top}#upload .comment form .content{width:100%;box-sizing:border-box;padding:.5em}#upload .comment form .save{margin-top:1em;padding:.5em}#admin{margin:1em}#admin table{margin-bottom:1em;border-collapse:collapse}#admin table tr th{background:#aaa;color:#fff;padding:.2rem .5rem}#admin table tr td{background:#eee;text-align:center;padding:.2rem .5rem}#admin table tr td input[type=number]{width:50px}#admin table tr td input[name=ref_feed_id]{width:300px}#admin #feedback .error{color:red}#admin #feedback .success{color:green}@media only screen and (max-width: 800px){.desktop{display:none}#projects.with-feed #submap{width:100%}#projects.with-feed .leaflet-right{width:calc(100% - 44px - 2 * 1rem)}#projects.with-feed .leaflet-control-container .leaflet-bottom.leaflet-right{display:none}#projects .leaflet-control-container .leaflet-top.leaflet-left,#projects .leaflet-control-container .leaflet-bottom.leaflet-left,#projects .leaflet-control-container .leaflet-bottom.leaflet-right .leaflet-control.elevation{display:none}#projects #feed{width:calc(100% - 44px - 2 * 1rem)}}@media only screen and (min-width: 801px){.mobile{display:none}}/*# sourceMappingURL=spot.css.map */ + */@font-face{font-family:"Font Awesome 5 Pro";font-style:normal;font-weight:900;font-display:auto;src:url("fa/fonts/fa-solid-900.eot");src:url("fa/fonts/fa-solid-900.eot?#iefix") format("embedded-opentype"),url("fa/fonts/fa-solid-900.woff2") format("woff2"),url("fa/fonts/fa-solid-900.woff") format("woff"),url("fa/fonts/fa-solid-900.ttf") format("truetype"),url("fa/fonts/fa-solid-900.svg#fontawesome") format("svg")}.fa,.lightbox .lb-cancel,.lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.control-icon,#projects #post-button .fa,#projects #post-button .control-icon,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-next,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button .lb-close,#projects #post-button .lightbox .lb-cancel,.lightbox #projects #post-button .lb-cancel,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button .elevation-toggle,#projects #settings-button .fa,#projects #settings-button .control-icon,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button a.lb-prev,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button a.lb-next,#projects #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings-button .lb-close,#projects #settings-button .lightbox .lb-cancel,.lightbox #projects #settings-button .lb-cancel,#projects #settings-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #settings-button .elevation-toggle,#projects #post-button #settings-button .fa,#projects #settings-button #post-button .fa,#projects #post-button #settings-button .control-icon,#projects #settings-button #post-button .control-icon,.spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.fas{font-family:"Font Awesome 5 Pro";font-weight:900}.fa,.lightbox .lb-cancel,.lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.control-icon,#projects #post-button .fa,#projects #post-button .control-icon,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-next,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button .lb-close,#projects #post-button .lightbox .lb-cancel,.lightbox #projects #post-button .lb-cancel,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button .elevation-toggle,#projects #settings-button .fa,#projects #settings-button .control-icon,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button a.lb-prev,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button a.lb-next,#projects #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings-button .lb-close,#projects #settings-button .lightbox .lb-cancel,.lightbox #projects #settings-button .lb-cancel,#projects #settings-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #settings-button .elevation-toggle,#projects #post-button #settings-button .fa,#projects #settings-button #post-button .fa,#projects #post-button #settings-button .control-icon,#projects #settings-button #post-button .control-icon,.spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.fas,.far,.fal,.fad,.fab{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.3333333333em;line-height:.75em;vertical-align:-0.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:solid .08em #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.lightbox .fa-pull-left.lb-cancel,.lightbox .lb-dataContainer .lb-data .lb-closeContainer .fa-pull-left.lb-close,.lightbox .lb-outerContainer .lb-container .lb-nav a.fa-pull-left.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav a.fa-pull-left.lb-prev,.fa-pull-left.control-icon,#projects #post-button .fa-pull-left.fa,#projects #post-button .fa-pull-left.control-icon,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.fa-pull-left.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.fa-pull-left.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.fa-pull-left.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.fa-pull-left.lb-next,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .fa-pull-left.lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button .fa-pull-left.lb-close,#projects #post-button .lightbox .fa-pull-left.lb-cancel,.lightbox #projects #post-button .fa-pull-left.lb-cancel,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed .fa-pull-left.elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button .fa-pull-left.elevation-toggle,#projects #settings-button .fa-pull-left.fa,#projects #settings-button .fa-pull-left.control-icon,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.fa-pull-left.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button a.fa-pull-left.lb-prev,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.fa-pull-left.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button a.fa-pull-left.lb-next,#projects #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .fa-pull-left.lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings-button .fa-pull-left.lb-close,#projects #settings-button .lightbox .fa-pull-left.lb-cancel,.lightbox #projects #settings-button .fa-pull-left.lb-cancel,#projects #settings-button .spot-theme.leaflet-control.elevation-collapsed .fa-pull-left.elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #settings-button .fa-pull-left.elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed .fa-pull-left.elevation-toggle,.fas.fa-pull-left,.far.fa-pull-left,.fal.fa-pull-left,.fab.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.lightbox .fa-pull-right.lb-cancel,.lightbox .lb-dataContainer .lb-data .lb-closeContainer .fa-pull-right.lb-close,.lightbox .lb-outerContainer .lb-container .lb-nav a.fa-pull-right.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav a.fa-pull-right.lb-prev,.fa-pull-right.control-icon,#projects #post-button .fa-pull-right.fa,#projects #post-button .fa-pull-right.control-icon,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.fa-pull-right.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.fa-pull-right.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.fa-pull-right.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.fa-pull-right.lb-next,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .fa-pull-right.lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button .fa-pull-right.lb-close,#projects #post-button .lightbox .fa-pull-right.lb-cancel,.lightbox #projects #post-button .fa-pull-right.lb-cancel,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed .fa-pull-right.elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button .fa-pull-right.elevation-toggle,#projects #settings-button .fa-pull-right.fa,#projects #settings-button .fa-pull-right.control-icon,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.fa-pull-right.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button a.fa-pull-right.lb-prev,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.fa-pull-right.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button a.fa-pull-right.lb-next,#projects #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .fa-pull-right.lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings-button .fa-pull-right.lb-close,#projects #settings-button .lightbox .fa-pull-right.lb-cancel,.lightbox #projects #settings-button .fa-pull-right.lb-cancel,#projects #settings-button .spot-theme.leaflet-control.elevation-collapsed .fa-pull-right.elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #settings-button .fa-pull-right.elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed .fa-pull-right.elevation-toggle,.fas.fa-pull-right,.far.fa-pull-right,.fal.fa-pull-right,.fab.fa-pull-right{margin-left:.3em}.fa-spin{animation:fa-spin 2s infinite linear}.fa-pulse{animation:fa-spin 1s infinite steps(8)}@keyframes fa-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";transform:scale(-1, 1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";transform:scale(1, -1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";transform:scale(-1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-flip-both{filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa.push,.lightbox .push.lb-cancel,.lightbox .lb-dataContainer .lb-data .lb-closeContainer .push.lb-close,.lightbox .lb-outerContainer .lb-container .lb-nav a.push.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav a.push.lb-prev,.push.control-icon,#projects #post-button .push.fa,#projects #post-button .push.control-icon,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.push.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.push.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.push.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.push.lb-next,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .push.lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button .push.lb-close,#projects #post-button .lightbox .push.lb-cancel,.lightbox #projects #post-button .push.lb-cancel,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed .push.elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button .push.elevation-toggle,#projects #settings-button .push.fa,#projects #settings-button .push.control-icon,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.push.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button a.push.lb-prev,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.push.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button a.push.lb-next,#projects #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .push.lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings-button .push.lb-close,#projects #settings-button .lightbox .push.lb-cancel,.lightbox #projects #settings-button .push.lb-cancel,#projects #settings-button .spot-theme.leaflet-control.elevation-collapsed .push.elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #settings-button .push.elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed .push.elevation-toggle{margin-right:.5rem}.fa.push-left,.lightbox .push-left.lb-cancel,.lightbox .lb-dataContainer .lb-data .lb-closeContainer .push-left.lb-close,.lightbox .lb-outerContainer .lb-container .lb-nav a.push-left.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav a.push-left.lb-prev,.push-left.control-icon,#projects #post-button .push-left.fa,#projects #post-button .push-left.control-icon,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.push-left.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.push-left.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.push-left.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.push-left.lb-next,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .push-left.lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button .push-left.lb-close,#projects #post-button .lightbox .push-left.lb-cancel,.lightbox #projects #post-button .push-left.lb-cancel,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed .push-left.elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button .push-left.elevation-toggle,#projects #settings-button .push-left.fa,#projects #settings-button .push-left.control-icon,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.push-left.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button a.push-left.lb-prev,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.push-left.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button a.push-left.lb-next,#projects #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .push-left.lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings-button .push-left.lb-close,#projects #settings-button .lightbox .push-left.lb-cancel,.lightbox #projects #settings-button .push-left.lb-cancel,#projects #settings-button .spot-theme.leaflet-control.elevation-collapsed .push-left.elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #settings-button .push-left.elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed .push-left.elevation-toggle{margin-left:.5rem}.control-icon,#projects #post-button .fa,#projects #post-button .control-icon,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-next,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button .lb-close,#projects #post-button .lightbox .lb-cancel,.lightbox #projects #post-button .lb-cancel,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button .elevation-toggle,#projects #settings-button .fa,#projects #settings-button .control-icon,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button a.lb-prev,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button a.lb-next,#projects #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings-button .lb-close,#projects #settings-button .lightbox .lb-cancel,.lightbox #projects #settings-button .lb-cancel,#projects #settings-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #settings-button .elevation-toggle,#projects #post-button #settings-button .fa,#projects #settings-button #post-button .fa,#projects #post-button #settings-button .control-icon,#projects #settings-button #post-button .control-icon,.spot-theme.leaflet-control.elevation-collapsed .elevation-toggle{font-size:28px;text-align:center;line-height:44px;text-decoration:none;color:#999;background:none}.fa-map:before{content:""}.fa-track-off-track:before{content:""}.fa-track-main:before{content:""}.fa-track-hitchhiking:before{content:""}.fa-track-start:before{content:""}.fa-track-end:before{content:""}.fa-layers:before{content:""}.fa-elev-chart:before,.spot-theme.leaflet-control.elevation-collapsed .elevation-toggle:before{content:""}.fa-distance:before{content:""}.fa-elev-drop:before{content:""}.fa-elev-gain:before{content:""}.fa-download:before{content:""}.fa-menu:before,#projects #settings-button .fa:before,#projects #settings-button .control-icon:before,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev:before,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button a.lb-prev:before,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next:before,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button a.lb-next:before,#projects #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close:before,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings-button .lb-close:before,#projects #settings-button .lightbox .lb-cancel:before,.lightbox #projects #settings-button .lb-cancel:before,#projects #settings-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle:before,.spot-theme.leaflet-control.elevation-collapsed #projects #settings-button .elevation-toggle:before,#projects #settings-button #post-button .fa:before,#projects #post-button #settings-button .fa:before,#projects #settings-button #post-button .control-icon:before,#projects #post-button #settings-button .control-icon:before,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings-button a.lb-prev:before,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings-button a.lb-next:before,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer #settings-button .lb-close:before,#projects #post-button .lightbox #settings-button .lb-cancel:before,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed #settings-button .elevation-toggle:before{content:""}.fa-newsletter:before{content:""}.fa-project:before{content:""}.fa-error:before{content:""}.fa-warning:before{content:""}.fa-success:before{content:""}.fa-unsubscribe:before,#projects #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe .fa:before,#projects #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe .control-icon:before,#projects #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev:before,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe a.lb-prev:before,#projects #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next:before,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe a.lb-next:before,#projects #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close:before,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe .lb-close:before,#projects #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe .lightbox .lb-cancel:before,.lightbox #projects #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe .lb-cancel:before,#projects #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle:before,.spot-theme.leaflet-control.elevation-collapsed #projects #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe .elevation-toggle:before,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe a.lb-prev:before,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe a.lb-next:before,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe .lb-close:before,#projects #post-button .lightbox #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe .lb-cancel:before,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe .elevation-toggle:before,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe a.lb-prev:before,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe a.lb-next:before,#projects #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe .lb-close:before,#projects #settings-button .lightbox #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe .lb-cancel:before,#projects #settings-button .spot-theme.leaflet-control.elevation-collapsed #settings #settings-sections .settings-section.newsletter button#nl_btn.unsubscribe .elevation-toggle:before{content:""}.fa-post:before,#projects #post-button .fa:before,#projects #post-button .control-icon:before,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev:before,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-prev:before,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next:before,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-next:before,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close:before,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button .lb-close:before,#projects #post-button .lightbox .lb-cancel:before,.lightbox #projects #post-button .lb-cancel:before,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle:before,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button .elevation-toggle:before,#projects #post-button #settings-button .fa:before,#projects #settings-button #post-button .fa:before,#projects #post-button #settings-button .control-icon:before,#projects #settings-button #post-button .control-icon:before,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav #post-button a.lb-prev:before,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav #post-button a.lb-next:before,#projects #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer #post-button .lb-close:before,#projects #settings-button .lightbox #post-button .lb-cancel:before,#projects #settings-button .spot-theme.leaflet-control.elevation-collapsed #post-button .elevation-toggle:before{content:""}.fa-media:before{content:""}.fa-video:before{content:""}.fa-image:before{content:""}.fa-message:before{content:""}.fa-message-in:before{content:""}.fa-time:before{content:""}.fa-coords:before{content:""}.fa-drill-video:before{content:""}.fa-drill-picture:before{content:""}.fa-drill-message:before,#projects #feed #posts .post.message a.drill:hover .fa-message:before{content:""}.fa-upload:before{content:""}.fa-video-shot:before{content:""}.fa-image-shot:before{content:""}.fa-poster:before{content:""}.fa-send:before,#projects #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe .fa:before,#projects #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe .control-icon:before,#projects #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev:before,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe a.lb-prev:before,#projects #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next:before,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe a.lb-next:before,#projects #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close:before,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe .lb-close:before,#projects #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe .lightbox .lb-cancel:before,.lightbox #projects #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe .lb-cancel:before,#projects #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle:before,.spot-theme.leaflet-control.elevation-collapsed #projects #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe .elevation-toggle:before,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe a.lb-prev:before,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe a.lb-next:before,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe .lb-close:before,#projects #post-button .lightbox #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe .lb-cancel:before,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe .elevation-toggle:before,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe a.lb-prev:before,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe a.lb-next:before,#projects #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe .lb-close:before,#projects #settings-button .lightbox #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe .lb-cancel:before,#projects #settings-button .spot-theme.leaflet-control.elevation-collapsed #settings #settings-sections .settings-section.newsletter button#nl_btn.subscribe .elevation-toggle:before{content:""}.fa-cancel:before,.lightbox .lb-cancel:before{content:""}.fa-prev:before,#projects.with-settings #settings-button .fa:before,#projects.with-settings #settings-button .control-icon:before,#projects.with-settings #post-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings-button a.lb-prev:before,#projects.with-settings #post-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings-button a.lb-next:before,#projects.with-settings #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer #settings-button .lb-close:before,#projects.with-settings #post-button .lightbox #settings-button .lb-cancel:before,#projects.with-settings #post-button .spot-theme.leaflet-control.elevation-collapsed #settings-button .elevation-toggle:before,#projects.with-settings #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev:before,.lightbox .lb-outerContainer .lb-container .lb-nav #projects.with-settings #settings-button a.lb-prev:before,#projects.with-settings #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next:before,.lightbox .lb-outerContainer .lb-container .lb-nav #projects.with-settings #settings-button a.lb-next:before,#projects.with-settings #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close:before,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects.with-settings #settings-button .lb-close:before,#projects.with-settings #settings-button .lightbox .lb-cancel:before,.lightbox #projects.with-settings #settings-button .lb-cancel:before,#projects.with-settings #settings-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle:before,.spot-theme.leaflet-control.elevation-collapsed #projects.with-settings #settings-button .elevation-toggle:before,.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev:before{content:""}.fa-next:before,#projects.with-feed #post-button .fa:before,#projects.with-feed #post-button .control-icon:before,#projects.with-feed #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev:before,.lightbox .lb-outerContainer .lb-container .lb-nav #projects.with-feed #post-button a.lb-prev:before,#projects.with-feed #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next:before,.lightbox .lb-outerContainer .lb-container .lb-nav #projects.with-feed #post-button a.lb-next:before,#projects.with-feed #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close:before,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects.with-feed #post-button .lb-close:before,#projects.with-feed #post-button .lightbox .lb-cancel:before,.lightbox #projects.with-feed #post-button .lb-cancel:before,#projects.with-feed #post-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle:before,.spot-theme.leaflet-control.elevation-collapsed #projects.with-feed #post-button .elevation-toggle:before,#projects.with-feed #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav #post-button a.lb-prev:before,#projects.with-feed #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav #post-button a.lb-next:before,#projects.with-feed #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer #post-button .lb-close:before,#projects.with-feed #settings-button .lightbox #post-button .lb-cancel:before,#projects.with-feed #settings-button .spot-theme.leaflet-control.elevation-collapsed #post-button .elevation-toggle:before,.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next:before{content:""}.fa-close:before,.lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close:before{content:""}body.lb-disable-scrolling{overflow:hidden}.lightboxOverlay{position:absolute;top:0;left:0;z-index:9999;background-color:#000;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=80);opacity:.8;display:none}.lightbox{position:absolute;left:0;width:100%;z-index:10000;text-align:center;line-height:0;font-weight:normal;outline:none}.lightbox .lb-image{display:block;height:auto;max-width:inherit;max-height:none;border-radius:3px;border:4px solid #fff}.lightbox .lb-video{box-sizing:content-box}.lightbox .lb-video-nav .lb-nav{height:calc(100% - 45px)}.lightbox a img{border:none}.lb-outerContainer{position:relative;*zoom:1;width:250px;height:250px;margin:0 auto;border-radius:4px;background-color:#fff}.lb-outerContainer:after{content:"";display:table;clear:both}.lb-loader{position:absolute;top:43%;left:0;height:25%;width:100%;text-align:center;line-height:0}.lb-cancel{display:block;width:32px;height:32px;margin:0 auto;background:url(../images/loading.gif) no-repeat}.lb-nav{position:absolute;top:0;left:0;height:100%;width:100%;z-index:10}.lb-container>.nav{left:0}.lb-nav a{outline:none;background-image:url("data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==")}.lb-prev,.lb-next{height:100%;cursor:pointer;display:block}.lb-nav a.lb-prev{width:34%;left:0;float:left;background:url(../images/prev.png) left 48% no-repeat;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);opacity:0;-webkit-transition:opacity .6s;-moz-transition:opacity .6s;-o-transition:opacity .6s;transition:opacity .6s}.lb-nav a.lb-prev:hover{filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);opacity:1}.lb-nav a.lb-next{width:64%;right:0;float:right;background:url(../images/next.png) right 48% no-repeat;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);opacity:0;-webkit-transition:opacity .6s;-moz-transition:opacity .6s;-o-transition:opacity .6s;transition:opacity .6s}.lb-nav a.lb-next:hover{filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);opacity:1}.lb-dataContainer{margin:0 auto;padding-top:5px;*zoom:1;width:100%;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.lb-dataContainer:after{content:"";display:table;clear:both}.lb-data{padding:0 4px;color:#ccc}.lb-data .lb-details{width:85%;float:left;text-align:left;line-height:1.1em}.lb-data .lb-caption{font-size:13px;font-weight:bold;line-height:1em}.lb-data .lb-caption a{color:#4ae}.lb-data .lb-number{display:block;clear:left;padding-bottom:1em;font-size:12px;color:#999}.lb-data .lb-close{display:block;float:right;width:30px;height:30px;background:url(../images/close.png) top right no-repeat;text-align:right;outline:none;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=70);opacity:.7;-webkit-transition:opacity .2s;-moz-transition:opacity .2s;-o-transition:opacity .2s;transition:opacity .2s}.lb-data .lb-close:hover{cursor:pointer;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);opacity:1}.lightboxOverlay{bottom:0;right:0}.lightbox{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.lightbox .lb-outerContainer{margin:0;border-radius:0;background-color:rgba(255,255,255,.5)}.lightbox .lb-outerContainer .lb-container{overflow:hidden}.lightbox .lb-outerContainer .lb-container .lb-image{image-orientation:from-image;border:none;--translate-x: 0;--translate-y: 0;--scale: 1;transform:translateX(var(--translate-x, 0)) translateY(var(--translate-y, 0)) scale(var(--scale, 1))}.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next{color:#fff;text-decoration:none}.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev:before,.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next:before{position:absolute;top:calc(50% - 1em)}.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev{background:none;font-size:2em}.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev:before{left:2em}.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next{background:none;font-size:2em}.lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next:before{right:2em}.lightbox .lb-dataContainer{margin:0;padding:0;display:inline-block;vertical-align:top;width:200px;max-width:100%;flex:0 0 auto;overflow:hidden}.lightbox .lb-dataContainer .lb-data{padding:1em 0 0 1em}.lightbox .lb-dataContainer .lb-data .lb-details{float:none}.lightbox .lb-dataContainer .lb-data .lb-details .lb-caption-line{cursor:default;display:block;margin-top:1em}.lightbox .lb-dataContainer .lb-data .lb-details .lb-caption-line:first-child{margin-top:0}.lightbox .lb-dataContainer .lb-data .lb-details .lb-number{padding:0;margin-top:2em}.lightbox .lb-dataContainer .lb-data .lb-closeContainer{display:none !important;margin-top:2em}.lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close{background:none;font-size:2em;float:none}.lightbox .lb-cancel{background:none;font-size:2em;color:#ccc}[data-simplebar]{position:relative;flex-direction:column;flex-wrap:wrap;justify-content:flex-start;align-content:flex-start;align-items:flex-start}.simplebar-wrapper{overflow:hidden;width:inherit;height:inherit;max-width:inherit;max-height:inherit}.simplebar-mask{direction:inherit;position:absolute;overflow:hidden;padding:0;margin:0;left:0;top:0;bottom:0;right:0;width:auto !important;height:auto !important;z-index:0}.simplebar-offset{direction:inherit !important;box-sizing:inherit !important;resize:none !important;position:absolute;top:0;left:0;bottom:0;right:0;padding:0;margin:0;-webkit-overflow-scrolling:touch}.simplebar-content-wrapper{direction:inherit;box-sizing:border-box !important;position:relative;display:block;height:100%;width:auto;visibility:visible;max-width:100%;max-height:100%;scrollbar-width:none;-ms-overflow-style:none}.simplebar-content-wrapper::-webkit-scrollbar,.simplebar-hide-scrollbar::-webkit-scrollbar{width:0;height:0}.simplebar-content:before,.simplebar-content:after{content:" ";display:table}.simplebar-placeholder{max-height:100%;max-width:100%;width:100%;pointer-events:none}.simplebar-height-auto-observer-wrapper{box-sizing:inherit !important;height:100%;width:100%;max-width:1px;position:relative;float:left;max-height:1px;overflow:hidden;z-index:-1;padding:0;margin:0;pointer-events:none;flex-grow:inherit;flex-shrink:0;flex-basis:0}.simplebar-height-auto-observer{box-sizing:inherit;display:block;opacity:0;position:absolute;top:0;left:0;height:1000%;width:1000%;min-height:1px;min-width:1px;overflow:hidden;pointer-events:none;z-index:-1}.simplebar-track{z-index:1;position:absolute;right:0;bottom:0;pointer-events:none;overflow:hidden}[data-simplebar].simplebar-dragging .simplebar-content{pointer-events:none;user-select:none;-webkit-user-select:none}[data-simplebar].simplebar-dragging .simplebar-track{pointer-events:all}.simplebar-scrollbar{position:absolute;right:2px;width:7px;min-height:10px}.simplebar-scrollbar:before{position:absolute;content:"";background:#000;border-radius:7px;left:0;right:0;opacity:0;transition:opacity .2s linear}.simplebar-scrollbar.simplebar-visible:before{opacity:.5;transition:opacity 0s linear}.simplebar-track.simplebar-vertical{top:0;width:11px}.simplebar-track.simplebar-vertical .simplebar-scrollbar:before{top:2px;bottom:2px}.simplebar-track.simplebar-horizontal{left:0;height:11px}.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before{height:100%;left:2px;right:2px}.simplebar-track.simplebar-horizontal .simplebar-scrollbar{right:auto;left:0;top:2px;height:7px;min-height:0;min-width:10px;width:auto}[data-simplebar-direction=rtl] .simplebar-track.simplebar-vertical{right:auto;left:0}.hs-dummy-scrollbar-size{direction:rtl;position:fixed;opacity:0;visibility:hidden;height:500px;width:500px;overflow-y:hidden;overflow-x:scroll}.simplebar-hide-scrollbar{position:fixed;left:0;visibility:hidden;overflow-y:scroll;scrollbar-width:none;-ms-overflow-style:none}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg,.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none !important;max-height:none !important}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-tile{will-change:opacity}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}.leaflet-zoom-anim .leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0, 0, 0.25, 1);-moz-transition:-moz-transform .25s cubic-bezier(0, 0, 0.25, 1);transition:transform .25s cubic-bezier(0, 0, 0.25, 1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline:0}.leaflet-container a{color:#0078a8}.leaflet-container a.leaflet-active{outline:2px solid orange}.leaflet-zoom-box{border:2px dotted #38f;background:rgba(255,255,255,.5)}.leaflet-container{font:12px/1.5 "Helvetica Neue",Arial,Helvetica,sans-serif}.leaflet-bar{box-shadow:0 1px 5px rgba(0,0,0,.65);border-radius:4px}.leaflet-bar a,.leaflet-bar a:hover{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:bold 18px "Lucida Console",Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px rgba(0,0,0,.4);background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(images/layers.png);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(images/layers-2x.png);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(images/marker-icon.png)}.leaflet-container .leaflet-control-attribution{background:#fff;background:rgba(255,255,255,.7);margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-container .leaflet-control-attribution,.leaflet-container .leaflet-control-scale{font-size:11px}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;font-size:11px;white-space:nowrap;overflow:hidden;-moz-box-sizing:border-box;box-sizing:border-box;background:#fff;background:rgba(255,255,255,.5)}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 19px;line-height:1.4}.leaflet-popup-content p{margin:18px 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px rgba(0,0,0,.4)}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;padding:4px 4px 0 0;border:none;text-align:center;width:18px;height:14px;font:16px/14px Tahoma,Verdana,sans-serif;color:#c3c3c3;text-decoration:none;font-weight:bold;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover{color:#999}.leaflet-popup-scrolled{overflow:auto;border-bottom:1px solid #ddd;border-top:1px solid #ddd}.leaflet-oldie .leaflet-popup-content-wrapper{zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)}.leaflet-oldie .leaflet-popup-tip-container{margin-top:-1px}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px rgba(0,0,0,.4)}.leaflet-tooltip.leaflet-clickable{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}.spot-theme.leaflet-control.elevation .background{margin:6px 0 -12px}.spot-theme.leaflet-control.elevation .axis path,.spot-theme.leaflet-control.elevation .axis line{fill:none;stroke:#999;stroke-width:2}.spot-theme.leaflet-control.elevation .mouse-focus-label-x{text-anchor:middle}.spot-theme.leaflet-control.elevation .mouse-drag{fill:rgba(255,255,255,.2)}.spot-theme.leaflet-control.elevation .elevation-toggle{cursor:pointer;width:44px;height:44px;color:#ccc;text-shadow:0px 1px 1px rgba(0,0,0,.8)}.spot-theme.leaflet-control.elevation .area{fill:#ccc;filter:drop-shadow(-1px 1px 1px rgba(0, 0, 0, 0.6));-webkit-filter:drop-shadow(-1px 1px 1px rgba(0, 0, 0, 0.6))}.spot-theme.leaflet-control.elevation .mouse-focus-line{pointer-events:none;stroke-width:1;stroke:#666}.spot-theme.height-focus{stroke:#ccc;fill:#ccc}.spot-theme.height-focus.line{pointer-events:none;stroke-width:2}.spot-theme.height-focus-label{text-anchor:middle;fill:#ccc}.leaflet-container{background:none}.spot-theme.height-focus,.spot-theme.height-focus.line,.spot-theme.height-focus-label,.spot-theme.leaflet-control.elevation .area{filter:drop-shadow(-1px 1px 1px rgba(0, 0, 0, 0.6));-webkit-filter:drop-shadow(-1px 1px 1px rgba(0, 0, 0, 0.6))}.spot-theme.leaflet-control.elevation-collapsed .background{display:none}.spot-theme .details text{text-anchor:middle}#projects.with-feed #submap{width:calc(100% - 30%);min-width:calc(100% - 400px + 3 * 1rem)}#projects.with-feed .leaflet-right{width:calc(30%);max-width:calc(400px + 3 * 1rem)}#projects.with-feed #feed{z-index:999;transition:none}#projects:not(.with-feed) #feed #posts{right:-100%}#projects.with-settings #submap{width:calc(100% - 30%);min-width:calc(100% - 400px + 3 * 1rem)}#projects.with-settings .leaflet-left{width:calc(30%);max-width:calc(400px + 3 * 1rem)}#projects.with-settings #settings{z-index:999;transition:none}#projects:not(.with-settings) #settings #settings-sections{left:-100%}#projects.with-feed.with-settings #submap{width:calc(100% - 30% * 2);min-width:calc(100% - 400px + 3 * 1rem * 2)}#projects #submap{position:absolute;left:0;top:0;bottom:0;width:100%}#projects #submap .loader{position:absolute;font-size:3em;top:calc(50% - 0.5em);left:calc(50% - 0.66666em);color:#ccc}#projects #map{position:absolute;left:0;top:0;bottom:0;width:100%}#projects #map .track_tooltip p{margin:0}#projects #map .track_tooltip p.name{font-weight:bold;font-size:1.2em}#projects #map .track_tooltip p.description{font-style:italic}#projects #map .track_tooltip p.detail{margin-top:1em;width:50%;display:inline-block}#projects .leaflet-control{background-color:rgba(255,255,255,.6);font-family:Roboto,Arial,sans-serif;border-radius:3px;border:none;margin:1rem}#projects .leaflet-control+.leaflet-control{margin-top:0}#projects .leaflet-control.leaflet-control-scale{padding:.5em}#projects .leaflet-control.leaflet-control-scale .leaflet-control-scale-line{background:none}#projects .leaflet-right,#projects .leaflet-left{transition:all .5s;width:0;max-width:0}#projects .leaflet-right .leaflet-control{left:-100%}#projects .leaflet-left .leaflet-control{right:-100%}#projects .leaflet-top.leaflet-left .leaflet-control-layers{display:none}#projects #legend .track{white-space:nowrap}#projects #legend .track .line{width:2em;height:4px;display:inline-block;border-radius:2px;vertical-align:middle}#projects #legend .track .line.main{background-color:#00ff78}#projects #legend .track .line.off-track{background-color:blue}#projects #legend .track .line.hitchhiking{background-color:#ff7814}#projects #legend .track .desc{font-size:1em;margin-left:.5em;color:#333}#projects #post-button,#projects #settings-button{cursor:pointer;text-shadow:0px 1px 1px rgba(0,0,0,.8);width:44px;text-align:center}#projects #post-button:hover .fa,#projects #post-button:hover .control-icon,#projects #post-button:hover .fa,#projects #post-button:hover .control-icon,#projects #post-button:hover .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button:hover a.lb-prev,#projects #post-button:hover .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button:hover a.lb-next,#projects #post-button:hover .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button:hover .lb-close,#projects #post-button:hover .lightbox .lb-cancel,.lightbox #projects #post-button:hover .lb-cancel,#projects #post-button:hover .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button:hover .elevation-toggle,#projects #post-button:hover #settings-button .fa,#projects #settings-button #post-button:hover .fa,#projects #post-button:hover #settings-button .control-icon,#projects #settings-button #post-button:hover .control-icon,#projects #post-button:hover #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav #post-button:hover a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button:hover #settings-button a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button #post-button:hover a.lb-prev,#projects #post-button:hover #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav #post-button:hover a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button:hover #settings-button a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button #post-button:hover a.lb-next,#projects #post-button:hover #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,#projects #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer #post-button:hover .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button:hover #settings-button .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings-button #post-button:hover .lb-close,#projects #post-button:hover #settings-button .lightbox .lb-cancel,#projects #settings-button .lightbox #post-button:hover .lb-cancel,.lightbox #projects #post-button:hover #settings-button .lb-cancel,.lightbox #projects #settings-button #post-button:hover .lb-cancel,#projects #post-button:hover #settings-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,#projects #settings-button .spot-theme.leaflet-control.elevation-collapsed #post-button:hover .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button:hover #settings-button .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #settings-button #post-button:hover .elevation-toggle,#projects #post-button:hover #settings-button .fa,#projects #settings-button #post-button:hover .fa,#projects #post-button:hover #settings-button .control-icon,#projects #settings-button #post-button:hover .control-icon,#projects #post-button:hover #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav #post-button:hover a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button:hover #settings-button a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button #post-button:hover a.lb-prev,#projects #post-button:hover #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav #post-button:hover a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button:hover #settings-button a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button #post-button:hover a.lb-next,#projects #post-button:hover #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,#projects #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer #post-button:hover .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button:hover #settings-button .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings-button #post-button:hover .lb-close,#projects #post-button:hover #settings-button .lightbox .lb-cancel,#projects #settings-button .lightbox #post-button:hover .lb-cancel,.lightbox #projects #post-button:hover #settings-button .lb-cancel,.lightbox #projects #settings-button #post-button:hover .lb-cancel,#projects #post-button:hover #settings-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,#projects #settings-button .spot-theme.leaflet-control.elevation-collapsed #post-button:hover .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button:hover #settings-button .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #settings-button #post-button:hover .elevation-toggle,#projects #settings-button #post-button:hover .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,#projects #post-button:hover .lightbox .lb-outerContainer .lb-container .lb-nav #settings-button a.lb-prev,#projects #settings-button #post-button:hover .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,#projects #post-button:hover .lightbox .lb-outerContainer .lb-container .lb-nav #settings-button a.lb-next,#projects #settings-button #post-button:hover .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,#projects #post-button:hover .lightbox .lb-dataContainer .lb-data .lb-closeContainer #settings-button .lb-close,#projects #settings-button #post-button:hover .lightbox .lb-cancel,#projects #post-button:hover .lightbox #settings-button .lb-cancel,#projects #settings-button #post-button:hover .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,#projects #post-button:hover .spot-theme.leaflet-control.elevation-collapsed #settings-button .elevation-toggle,#projects #post-button:hover .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button:hover a.lb-prev,#projects #post-button:hover .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button:hover a.lb-next,#projects #post-button:hover .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button:hover .lb-close,#projects #post-button:hover .lightbox .lb-cancel,.lightbox #projects #post-button:hover .lb-cancel,#projects #post-button:hover .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button:hover .elevation-toggle,#projects #settings-button:hover .fa,#projects #settings-button:hover .control-icon,#projects #settings-button:hover #post-button .fa,#projects #post-button #settings-button:hover .fa,#projects #settings-button:hover #post-button .control-icon,#projects #post-button #settings-button:hover .control-icon,#projects #settings-button:hover #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings-button:hover a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button:hover #post-button a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button #settings-button:hover a.lb-prev,#projects #settings-button:hover #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings-button:hover a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button:hover #post-button a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button #settings-button:hover a.lb-next,#projects #settings-button:hover #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer #settings-button:hover .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings-button:hover #post-button .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button #settings-button:hover .lb-close,#projects #settings-button:hover #post-button .lightbox .lb-cancel,#projects #post-button .lightbox #settings-button:hover .lb-cancel,.lightbox #projects #settings-button:hover #post-button .lb-cancel,.lightbox #projects #post-button #settings-button:hover .lb-cancel,#projects #settings-button:hover #post-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed #settings-button:hover .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #settings-button:hover #post-button .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button #settings-button:hover .elevation-toggle,#projects #settings-button:hover .fa,#projects #settings-button:hover .control-icon,#projects #settings-button:hover .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button:hover a.lb-prev,#projects #settings-button:hover .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button:hover a.lb-next,#projects #settings-button:hover .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings-button:hover .lb-close,#projects #settings-button:hover .lightbox .lb-cancel,.lightbox #projects #settings-button:hover .lb-cancel,#projects #settings-button:hover .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #settings-button:hover .elevation-toggle,#projects #post-button #settings-button:hover .fa,#projects #settings-button:hover #post-button .fa,#projects #post-button #settings-button:hover .control-icon,#projects #settings-button:hover #post-button .control-icon,#projects #post-button #settings-button:hover .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,#projects #settings-button:hover .lightbox .lb-outerContainer .lb-container .lb-nav #post-button a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button #settings-button:hover a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button:hover #post-button a.lb-prev,#projects #post-button #settings-button:hover .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,#projects #settings-button:hover .lightbox .lb-outerContainer .lb-container .lb-nav #post-button a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button #settings-button:hover a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button:hover #post-button a.lb-next,#projects #post-button #settings-button:hover .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,#projects #settings-button:hover .lightbox .lb-dataContainer .lb-data .lb-closeContainer #post-button .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button #settings-button:hover .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings-button:hover #post-button .lb-close,#projects #post-button #settings-button:hover .lightbox .lb-cancel,#projects #settings-button:hover .lightbox #post-button .lb-cancel,.lightbox #projects #post-button #settings-button:hover .lb-cancel,.lightbox #projects #settings-button:hover #post-button .lb-cancel,#projects #post-button #settings-button:hover .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,#projects #settings-button:hover .spot-theme.leaflet-control.elevation-collapsed #post-button .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button #settings-button:hover .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #settings-button:hover #post-button .elevation-toggle,#projects #settings-button:hover #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings-button:hover a.lb-prev,#projects #settings-button:hover #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings-button:hover a.lb-next,#projects #settings-button:hover #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer #settings-button:hover .lb-close,#projects #settings-button:hover #post-button .lightbox .lb-cancel,#projects #post-button .lightbox #settings-button:hover .lb-cancel,#projects #settings-button:hover #post-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed #settings-button:hover .elevation-toggle,#projects #settings-button:hover .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button:hover a.lb-prev,#projects #settings-button:hover .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button:hover a.lb-next,#projects #settings-button:hover .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings-button:hover .lb-close,#projects #settings-button:hover .lightbox .lb-cancel,.lightbox #projects #settings-button:hover .lb-cancel,#projects #settings-button:hover .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #settings-button:hover .elevation-toggle{color:#fff}#projects #post-button .fa,#projects #post-button .control-icon,#projects #post-button .fa,#projects #post-button .control-icon,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-next,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button .lb-close,#projects #post-button .lightbox .lb-cancel,.lightbox #projects #post-button .lb-cancel,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button .elevation-toggle,#projects #post-button #settings-button .fa,#projects #settings-button #post-button .fa,#projects #post-button #settings-button .control-icon,#projects #settings-button #post-button .control-icon,#projects #post-button #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav #post-button a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button #settings-button a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button #post-button a.lb-prev,#projects #post-button #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav #post-button a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button #settings-button a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button #post-button a.lb-next,#projects #post-button #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,#projects #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer #post-button .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button #settings-button .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings-button #post-button .lb-close,#projects #post-button #settings-button .lightbox .lb-cancel,#projects #settings-button .lightbox #post-button .lb-cancel,.lightbox #projects #post-button #settings-button .lb-cancel,.lightbox #projects #settings-button #post-button .lb-cancel,#projects #post-button #settings-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,#projects #settings-button .spot-theme.leaflet-control.elevation-collapsed #post-button .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button #settings-button .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #settings-button #post-button .elevation-toggle,#projects #post-button #settings-button .fa,#projects #settings-button #post-button .fa,#projects #post-button #settings-button .control-icon,#projects #settings-button #post-button .control-icon,#projects #post-button #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav #post-button a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button #settings-button a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button #post-button a.lb-prev,#projects #post-button #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav #post-button a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button #settings-button a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button #post-button a.lb-next,#projects #post-button #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,#projects #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer #post-button .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button #settings-button .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings-button #post-button .lb-close,#projects #post-button #settings-button .lightbox .lb-cancel,#projects #settings-button .lightbox #post-button .lb-cancel,.lightbox #projects #post-button #settings-button .lb-cancel,.lightbox #projects #settings-button #post-button .lb-cancel,#projects #post-button #settings-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,#projects #settings-button .spot-theme.leaflet-control.elevation-collapsed #post-button .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button #settings-button .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #settings-button #post-button .elevation-toggle,#projects #settings-button #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings-button a.lb-prev,#projects #settings-button #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings-button a.lb-next,#projects #settings-button #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer #settings-button .lb-close,#projects #settings-button #post-button .lightbox .lb-cancel,#projects #post-button .lightbox #settings-button .lb-cancel,#projects #settings-button #post-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed #settings-button .elevation-toggle,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button a.lb-next,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button .lb-close,#projects #post-button .lightbox .lb-cancel,.lightbox #projects #post-button .lb-cancel,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button .elevation-toggle,#projects #settings-button .fa,#projects #settings-button .control-icon,#projects #settings-button #post-button .fa,#projects #post-button #settings-button .fa,#projects #settings-button #post-button .control-icon,#projects #post-button #settings-button .control-icon,#projects #settings-button #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings-button a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button #post-button a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button #settings-button a.lb-prev,#projects #settings-button #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings-button a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button #post-button a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button #settings-button a.lb-next,#projects #settings-button #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer #settings-button .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings-button #post-button .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button #settings-button .lb-close,#projects #settings-button #post-button .lightbox .lb-cancel,#projects #post-button .lightbox #settings-button .lb-cancel,.lightbox #projects #settings-button #post-button .lb-cancel,.lightbox #projects #post-button #settings-button .lb-cancel,#projects #settings-button #post-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed #settings-button .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #settings-button #post-button .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button #settings-button .elevation-toggle,#projects #settings-button .fa,#projects #settings-button .control-icon,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button a.lb-prev,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button a.lb-next,#projects #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings-button .lb-close,#projects #settings-button .lightbox .lb-cancel,.lightbox #projects #settings-button .lb-cancel,#projects #settings-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #settings-button .elevation-toggle,#projects #post-button #settings-button .fa,#projects #settings-button #post-button .fa,#projects #post-button #settings-button .control-icon,#projects #settings-button #post-button .control-icon,#projects #post-button #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav #post-button a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button #settings-button a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button #post-button a.lb-prev,#projects #post-button #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav #post-button a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #post-button #settings-button a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button #post-button a.lb-next,#projects #post-button #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,#projects #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer #post-button .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #post-button #settings-button .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings-button #post-button .lb-close,#projects #post-button #settings-button .lightbox .lb-cancel,#projects #settings-button .lightbox #post-button .lb-cancel,.lightbox #projects #post-button #settings-button .lb-cancel,.lightbox #projects #settings-button #post-button .lb-cancel,#projects #post-button #settings-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,#projects #settings-button .spot-theme.leaflet-control.elevation-collapsed #post-button .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #post-button #settings-button .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #settings-button #post-button .elevation-toggle,#projects #settings-button #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings-button a.lb-prev,#projects #settings-button #post-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,#projects #post-button .lightbox .lb-outerContainer .lb-container .lb-nav #settings-button a.lb-next,#projects #settings-button #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,#projects #post-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer #settings-button .lb-close,#projects #settings-button #post-button .lightbox .lb-cancel,#projects #post-button .lightbox #settings-button .lb-cancel,#projects #settings-button #post-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,#projects #post-button .spot-theme.leaflet-control.elevation-collapsed #settings-button .elevation-toggle,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-prev,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button a.lb-prev,#projects #settings-button .lightbox .lb-outerContainer .lb-container .lb-nav a.lb-next,.lightbox .lb-outerContainer .lb-container .lb-nav #projects #settings-button a.lb-next,#projects #settings-button .lightbox .lb-dataContainer .lb-data .lb-closeContainer .lb-close,.lightbox .lb-dataContainer .lb-data .lb-closeContainer #projects #settings-button .lb-close,#projects #settings-button .lightbox .lb-cancel,.lightbox #projects #settings-button .lb-cancel,#projects #settings-button .spot-theme.leaflet-control.elevation-collapsed .elevation-toggle,.spot-theme.leaflet-control.elevation-collapsed #projects #settings-button .elevation-toggle{color:#ccc}#projects a.drill{position:relative;overflow:hidden;text-decoration:none;display:inline-block}#projects a.drill .drill-icon{position:absolute;display:inline-block;top:50%;left:50%;transform:translate(-50%, -50%)}#projects a.drill .drill-icon i{transition:all .3s;cursor:pointer}#projects .fa-stack .fa-message{font-size:32px;text-shadow:rgba(0,0,0,.5) 3px 3px 3px;color:#6dff58}#projects .fa-stack .fa-message-in{font-size:13px;color:#326526;top:1px}#projects .fa-stack .fa-track-start,#projects .fa-stack .fa-track-end{color:#326526;font-size:14px;top:1px}#projects .fa-stack .fa-track-end{color:#ff7814}#projects #feed,#projects #settings{position:absolute;top:0;bottom:0;width:calc(30%);max-width:calc(400px + 3 * 1rem);z-index:-1;transition-property:z-index;transition-duration:.1s;transition-delay:.5s;overflow:hidden}#projects #feed input,#projects #feed textarea,#projects #settings input,#projects #settings textarea{background-color:#fff;color:#333}#projects #feed button,#projects #settings button{background-color:#333;color:rgba(255,255,255,.8)}#projects #feed button:hover,#projects #settings button:hover{background-color:#fff;color:#333}#projects #feed{right:0}#projects #feed #posts{position:absolute;transition:all .5s;top:0;bottom:0;right:0;width:100%}#projects #feed #posts #poster textarea#post{margin-bottom:1em;width:calc(100% - 2em)}#projects #feed #posts #poster input#name{width:calc(100% - 6em)}#projects #feed #posts #poster button#submit{margin-left:1em;margin-bottom:.5em}#projects #feed #posts .post{margin-bottom:1rem;background:rgba(255,255,255,.8);color:#333;border-radius:3px;width:calc(100% - 1rem);box-shadow:2px 2px 3px 0px rgba(0,0,0,.5)}#projects #feed #posts .post:first-child{margin-top:1rem}#projects #feed #posts .post .message{margin:.3em 0 0 0}#projects #feed #posts .post .signature{margin:.5em 0 0 0;text-align:right;font-style:italic}#projects #feed #posts .post .header{font-style:italic;font-size:.8em;padding:.5em 1em}#projects #feed #posts .post .header span{display:inline-block;width:50%;cursor:default}#projects #feed #posts .post .header span.index{font-style:normal}#projects #feed #posts .post .header span.time{text-align:right}#projects #feed #posts .post .body{clear:both;padding:0em 1em .5em}#projects #feed #posts .post.headerless .header{display:none}#projects #feed #posts .post.headerless .body{padding-top:.5em}#projects #feed #posts .post.media{background:rgba(255,255,255,.8);color:#333}#projects #feed #posts .post.media a{display:inline-block;width:100%;line-height:0;margin:0}#projects #feed #posts .post.media a.drill{font-size:3em}#projects #feed #posts .post.media a.drill .fa-drill-picture{color:transparent}#projects #feed #posts .post.media a.drill .fa-drill-video{color:rgba(255,255,255,.5)}#projects #feed #posts .post.media a.drill:hover .fa-drill-picture,#projects #feed #posts .post.media a.drill:hover .fa-drill-video{color:rgba(255,255,255,.75)}#projects #feed #posts .post.media a img{width:100%;image-orientation:from-image;outline:none;border-radius:3px}#projects #feed #posts .post.media p{margin:0;text-align:justify}#projects #feed #posts .post.message{background:#6dff58;color:#326526}#projects #feed #posts .post.message p{font-size:.9em;margin:.5em 0}#projects #feed #posts .post.message a{color:#326526}#projects #feed #posts .post.message a.drill .drill-icon{transform:translate(-16px, -32px)}#projects #feed #posts .post.message a.drill .drill-icon .fa-message-in{top:0;left:-1px}#projects #feed #posts .post.message a.drill:hover .fa-message{top:16px}#projects #feed #posts .post.message a.drill:hover .fa-message-in{display:none}#projects #feed #posts .post.message .staticmap{width:100%;border-radius:3px;cursor:pointer}#projects #feed #posts .post.loading .body{text-align:center}#projects #feed #posts .post.loading .body p{display:inline-block;font-size:2em;color:#333}#projects #settings{left:0}#projects #settings #settings-sections{width:calc(100% - 3rem);margin:1rem;padding:1rem;background:#fff;border-radius:3px;box-shadow:2px 2px 3px 0px rgba(0,0,0,.5);position:absolute;transition:all .5s;top:0;bottom:0;left:0;color:#333;background:rgba(255,255,255,.8)}#projects #settings #settings-sections .settings-section h1{margin:1.5rem 0 1rem}#projects #settings #settings-sections .settings-section:first-child h1{margin-top:0}#projects #settings #settings-sections .settings-section label{margin-bottom:.3em;display:block;cursor:pointer}#projects #settings #settings-sections .settings-section.newsletter input#email{width:calc(100% - 6em)}#projects #settings #settings-sections .settings-section.newsletter input#email:disabled{color:#999;background:rgba(255,255,255,.2)}#projects #settings #settings-sections .settings-section.newsletter button#nl_btn{margin-left:1em;margin-bottom:1em}#projects #settings #settings-sections .settings-section.newsletter button#nl_btn.loading{background-color:#326526;color:#fff}#projects #settings #settings-sections .settings-section #settings-projects a.fa-download{color:#333}#projects #settings #settings-sections .settings-section #settings-projects a.fa-download:hover{color:#0078a8}#projects .leaflet-popup-content{margin:0}#projects .leaflet-popup-content .info-window{margin:1rem}#projects .leaflet-popup-content .info-window h1{font-size:1.2em;margin:1em 0 1.2em}#projects .leaflet-popup-content .info-window h1 i{margin-right:.3125em}#projects .leaflet-popup-content .info-window p{font-size:1em;margin:.5em 0 0 0}#projects .leaflet-popup-content .info-window p i{padding-right:.5em}#projects .leaflet-popup-content .info-window p a{color:#333}#projects .leaflet-popup-content .info-window .medias{margin-top:-0.5rem;line-height:0}#projects .leaflet-popup-content .info-window .medias a{display:inline-block;margin-right:1rem;margin-top:1rem}#projects .leaflet-popup-content .info-window .medias a:last-child{margin-right:0}#projects .leaflet-popup-content .info-window .medias a.drill{font-size:2em}#projects .leaflet-popup-content .info-window .medias a.drill .fa-drill-picture{color:transparent}#projects .leaflet-popup-content .info-window .medias a.drill .fa-drill-video{color:rgba(255,255,255,.5)}#projects .leaflet-popup-content .info-window .medias a.drill:hover .fa-drill-video,#projects .leaflet-popup-content .info-window .medias a.drill:hover .fa-drill-picture{color:rgba(255,255,255,.75)}#projects .leaflet-popup-content .info-window .medias a img{max-width:200px;max-height:100px;border-radius:3px;image-orientation:from-image;transition:All .2s}#elems{display:none}#upload{padding:1em}#upload h1{font-size:2em;border-bottom:2px solid #000;margin:0 0 1em 0;padding-bottom:.5em}#upload .bar{height:18px;background:green}#upload .comment{margin-top:1em}#upload .comment .thumb{width:30%;max-width:100px}#upload .comment form{display:inline-block;width:calc(70% - 1em);min-width:calc(100% - 100px - 1em);margin-left:1em;vertical-align:top}#upload .comment form .content{width:100%;box-sizing:border-box;padding:.5em}#upload .comment form .save{margin-top:1em;padding:.5em}#admin{margin:1em}#admin table{margin-bottom:1em;border-collapse:collapse}#admin table tr th{background:#aaa;color:#fff;padding:.2rem .5rem}#admin table tr td{background:#eee;text-align:center;padding:.2rem .5rem}#admin table tr td input[type=number]{width:50px}#admin table tr td input[name=ref_feed_id]{width:300px}@media only screen and (max-width: 800px){.desktop{display:none}#projects.with-feed #submap,#projects.with-settings #submap{width:100%}#projects.with-feed .leaflet-right,#projects.with-feed .leaflet-left,#projects.with-settings .leaflet-right,#projects.with-settings .leaflet-left{width:calc(100% - 44px - 2 * 1rem)}#projects.with-feed .leaflet-control-container .leaflet-bottom.leaflet-right,#projects.with-settings .leaflet-control-container .leaflet-bottom.leaflet-right{display:none}#projects .leaflet-control-container .leaflet-bottom.leaflet-left,#projects .leaflet-control-container .leaflet-bottom.leaflet-right .leaflet-control.elevation{display:none}#projects #feed,#projects #settings{width:calc(100% - 44px - 2 * 1rem)}}@media only screen and (min-width: 801px){.mobile{display:none}}/*# sourceMappingURL=spot.css.map */ diff --git a/style/spot.css.map b/style/spot.css.map index 4cfe86a..7f9fb80 100644 --- a/style/spot.css.map +++ b/style/spot.css.map @@ -1 +1 @@ -{"version":3,"sourceRoot":"","sources":["_fonts.scss","_common.scss","fa/solid.scss","fa/_variables.scss","fa/_core.scss","fa/_larger.scss","fa/_fixed-width.scss","fa/_list.scss","fa/_bordered-pulled.scss","fa/_animated.scss","fa/_rotated-flipped.scss","fa/_mixins.scss","fa/_stacked.scss","_fa.scss","lightbox/_lightbox.scss","_lightbox.scss","_simplebar.scss","leaflet/_leaflet.scss","leaflet/_leaflet_elevation.scss","_leaflet.scss","_mask_project.scss","_mask_upload.scss","_mask_admin.scss","_mobile.scss"],"names":[],"mappings":"CAGA,WACE,qBACA,kBACA,gBACA,8IACA,iFAGF,WACE,qBACA,kBACA,gBACA,8IACA,yDAGF,WACE,qBACA,kBACA,gBACA,8IACA,0BAGF,WACE,qBACA,kBACA,gBACA,8IACA,0BAGF,WACE,qBACA,kBACA,gBACA,8IACA,2GAGF,WACE,qBACA,kBACA,gBACA,0GACA,yJAGF,WACE,qBACA,kBACA,gBACA,4IACA,iFAGF,WACE,qBACA,kBACA,gBACA,4IACA,yDAGF,WACE,qBACA,kBACA,gBACA,4IACA,0BAGF,WACE,qBACA,kBACA,gBACA,4IACA,0BAGF,WACE,qBACA,kBACA,gBACA,4IACA,2GAGF,WACE,qBACA,kBACA,gBACA,wGACA,yJC9FF,0BACE,iBAEF,uBACE,iBAEF,sBACE,iBAEF,qBACE,iBAEF,kBACE,iBAWF,8BAPC,kBAQoB,8BAPpB,eAOoB,8BANpB,cAMoB,8BALpB,aAKoB,8BAJpB,UAIoB,8BAkBrB,2BACC,eACA,gCACA,SAGD,SACC,YAGD,OACC,eACA,iBCzDD;AAAA;AAAA;AAAA,GAMA,WACE,iCACA,kBACA,gBACA,aCLqB,KDMrB,qCACA,2RAOF,qtCAEE,iCACA,gBEnBF,yuCAME,kCACA,mCACA,qBACA,kBACA,oBACA,oBACA,cCXF,OACE,yBACA,kBACA,yBAGF,OACE,gBAGF,OACE,iBAIA,OACE,cADF,OACE,cADF,OACE,cADF,OACE,cADF,OACE,cADF,OACE,cADF,OACE,cADF,OACE,cADF,OACE,cADF,QACE,eClBJ,OACE,kBACA,MHOqB,OIRvB,OACE,qBACA,kBACA,eAEA,4BAGF,OACE,UACA,kBACA,kBACA,MJLqB,IIMrB,oBCbF,WACE,wBACA,mBACA,yBAGF,yBACA,2BAOE,2jDACA,mlDCfF,SACE,qCAGF,UACE,uCAGF,mBACE,GACE,uBAGF,KACE,0BCdJ,cCWE,sEACA,wBDXF,eCUE,sEACA,yBDVF,eCSE,sEACA,yBDRF,oBCYE,gFACA,uBDZF,kBCWE,gFACA,uBDXF,mDCUE,gFACA,wBDLA,oIAME,YElBJ,UACE,qBACA,WACA,gBACA,kBACA,sBACA,YAGF,0BAEE,OACA,kBACA,kBACA,WAGF,aACE,oBAGF,aACE,cAGF,YACE,MTpBqB,KUQtB,yzCACC,kBAED,k6CACC,iBAIF,2/BACC,eACA,kBACA,iBACA,qBACA,WACA,gBAKD,2BACA,uCACA,kCACA,yCACA,mCACA,iCACA,8EACA,2GACA,gCACA,iCACA,iCACA,gCAGA,y/BACA,6BACA,6BACA,6BACA,+BACA,kCACA,4BACA,8BACA,mCACA,qCACA,2GACA,8BACA,kCACA,kCAGA,8BACA,4BAGA,0DACA,gGACA,+rCACA,sGCzEA,0BACE,gBAGF,iBACE,kBACA,MACA,OACA,aACA,sBACA,2DACA,WACA,aAGF,UACE,kBACA,OACA,WACA,cACA,kBACA,cACA,mBACA,aAGF,oBACE,cACA,YACA,kBACA,gBACA,kBAGA,sBAIF,oBACE,uBAEF,gCACC,yBAID,gBACE,YAGF,mBACE,kBACA,QACA,YACA,aACA,cACA,kBAIA,sBAGF,yBACE,WACA,cACA,WAGF,WACE,kBACA,QACA,OACA,WACA,WACA,kBACA,cAGF,WACE,cACA,WACA,YACA,cACA,gDAGF,QACE,kBACA,MACA,OACA,YACA,WACA,WAGF,mBACE,OAGF,UACE,aACA,2GAGF,kBACE,YACA,eACA,cAGF,kBACE,UACA,OACA,WACA,sDACA,0DACA,UACA,+BACA,4BACA,0BACA,uBAGF,wBACE,4DACA,UAGF,kBACE,UACA,QACA,YACA,uDACA,0DACA,UACA,+BACA,4BACA,0BACA,uBAGF,wBACE,4DACA,UAGF,kBACE,cACA,gBACA,QACA,WACA,8BACA,+BAGF,wBACE,WACA,cACA,WAGF,SACE,cACA,WAGF,qBACE,UACA,WACA,gBACA,kBAGF,qBACE,eACA,iBACA,gBAGF,uBACE,WAGF,oBACE,cACA,WACA,mBACA,eACA,WAGF,mBACE,cACA,YACA,WACA,YACA,wDACA,iBACA,aACA,2DACA,WACA,+BACA,4BACA,0BACA,uBAGF,yBACE,eACA,4DACA,UC1MF,iBACC,SACA,QAGD,UACC,aACA,mBACA,uBACA,WACA,YAGA,6BACC,SACA,gBACA,sCAEA,2CACC,gBAEA,qDACC,6BACA,YACA,iBACA,iBACA,WAEA,UACC,2FAMD,0HACC,WACA,qBAEA,wIACC,kBACA,oBAIF,6DAnDH,gBACA,cAoDI,oEACC,SAIF,6DA1DH,gBACA,cA2DI,oEACC,UAOL,4BACC,SACA,UACA,qBACA,mBACA,YACA,eACA,cACA,gBAEA,qCACC,oBAEA,iDACC,WAEA,kEACC,eACA,cACA,eAGD,8EACC,aAGD,4DACC,UACA,eAGF,wDACC,wBACA,eAEA,kEAvGH,gBACA,cAwGI,WAMJ,qBA/GA,gBACA,cAiHC,WCrHF,iBACE,kBACA,sBACA,eACA,2BACA,yBACA,uBAGF,mBACE,gBACA,cACA,eACA,kBACA,mBAGF,gBACE,kBACA,kBACA,gBACA,UACA,SACA,OACA,MACA,SACA,QACA,sBACA,uBACA,UAGF,kBACE,6BACA,8BACA,uBACA,kBACA,MACA,OACA,SACA,QACA,UACA,SACA,iCAGF,2BACE,kBACA,iCACA,kBACA,cACA,YACA,WACA,mBACA,eACA,gBACA,qBACA,wBAGF,2FAEE,QACA,SAGF,mDAEE,YACA,cAGF,uBACE,gBACA,eACA,WACA,oBAGF,wCACE,8BACA,YACA,WACA,cACA,kBACA,WACA,eACA,gBACA,WACA,UACA,SACA,oBACA,kBACA,cACA,aAGF,gCACE,mBACA,cACA,UACA,kBACA,MACA,OACA,aACA,YACA,eACA,cACA,gBACA,oBACA,WAGF,iBACE,UACA,kBACA,QACA,SACA,oBACA,gBAGF,uDACE,oBACA,iBACA,yBAGF,qDACE,mBAGF,qBACE,kBACA,UACA,UACA,gBAGF,4BACE,kBACA,WACA,gBACA,kBACA,OACA,QACA,UACA,8BAGF,8CAEE,WACA,6BAGF,oCACE,MACA,WAGF,gEACE,QACA,WAGF,sCACE,OACA,YAGF,kEACE,YACA,SACA,UAGF,2DACE,WACA,OACA,QACA,WACA,aACA,eACA,WAIF,mEACE,WACA,OAGF,yBACE,cACA,eACA,UACA,kBACA,aACA,YACA,kBACA,kBAGF,0BACE,eACA,OACA,kBACA,kBACA,qBACA,wBChNF,6LAUC,kBACA,OACA,MAED,mBACC,gBAED,0DAGC,yBACG,sBACK,iBACN,uBAGH,yBACC,uBAGD,8BACC,0CAGD,wCACC,aACA,cACA,6BAED,4CAEC,cAID,2PAMC,0BACA,2BAGD,sCACC,6BACA,yBAED,sCACC,4BAEA,kBACA,wBAED,yDACC,sBACA,kBAED,mBACC,wCAED,qBACC,gDAED,cACC,eACA,kBAED,qBACC,mBAED,kBACC,QACA,SACA,2BACK,sBACL,YAGD,0BACC,sBAGD,0BAEA,+BACA,kCACA,iCACA,iCACA,kCACA,gCAEA,qCACA,kCAEA,mBACC,UACA,WAED,MACC,2BACA,qBACA,kBAMD,iBACC,kBACA,YACA,8BACA,oBAED,6BAEC,kBACA,aACA,oBAED,aACC,MAED,eACC,QAED,gBACC,SAED,cACC,OAED,iBACC,WACA,WAED,gCACC,YAED,8BACC,gBAED,iCACC,mBAED,+BACC,iBAED,gCACC,kBAMD,iCACC,oBAED,kCACC,UACA,sCACG,mCACK,8BAET,oDACC,UAED,uBACC,6BACI,yBACI,qBAET,0CACC,sBAED,0CACC,sEACG,gEACK,sDAET,iEAEC,wBACG,qBACK,gBAGT,sCACC,kBAMD,qBACC,eAED,cACC,oBACA,iBACA,YAED,2DAEC,iBAED,qCAEC,YAED,iIAGC,YACA,wBACA,qBACA,gBAID,gHAKC,oBAGD,8KAIC,8BACA,oBAKD,mBACC,gBACA,UAED,qBACC,cAED,oCACC,yBAED,kBACC,uBACA,gCAKD,mBACC,0DAMD,aACC,qCACA,kBAED,oCAEC,sBACA,6BACA,WACA,YACA,iBACA,cACA,kBACA,qBACA,WAED,8CAEC,4BACA,4BACA,cAED,qBACC,yBAED,2BACC,2BACA,4BAED,0BACC,8BACA,+BACA,mBAED,gCACC,eACA,yBACA,WAGD,8BACC,WACA,YACA,iBAED,0CACC,2BACA,4BAED,yCACC,8BACA,+BAKD,mDAEC,iDACA,gBAGD,iFACC,eAMD,wBACC,oCACA,gBACA,kBAED,+BACC,wCACA,WACA,YAED,+CACC,2CACA,0BAED,8CACC,WACA,YAED,qHAEC,aAED,8DACC,cACA,kBAED,iCACC,yBACA,WACA,gBAED,kCACC,kBACA,kBACA,kBAED,iCACC,eACA,kBACA,QAED,8BACC,cAED,kCACC,SACA,0BACA,0BAID,2BACC,6CAMD,gDACC,gBACA,gCACA,SAED,yDAEC,cACA,WAED,+BACC,qBAED,qCACC,0BAED,0FAEC,eAED,qCACC,gBAED,uCACC,kBAED,4BACC,sBACA,gBACA,gBACA,oBACA,eACA,mBACA,gBACA,2BACK,sBAEL,gBACA,gCAED,8CACC,0BACA,mBACA,gBAED,+DACC,6BAGD,+GAGC,gBAED,mEAEC,gCACA,4BAMD,eACC,kBACA,kBACA,mBAED,+BACC,YACA,gBACA,mBAED,uBACC,iBACA,gBAED,yBACC,cAED,6BACC,WACA,YACA,kBACA,SACA,kBACA,gBACA,oBAED,mBACC,WACA,YACA,YAEA,oBAEA,gCACG,6BACC,4BACI,wBAET,kDAEC,gBACA,WACA,qCAED,gDACC,kBACA,MACA,QACA,oBACA,YACA,kBACA,WACA,YACA,yCACA,cACA,qBACA,iBACA,uBAED,sDACC,WAED,wBACC,cACA,6BACA,0BAGD,8CACC,OAED,kCACC,WACA,cAEA,uHACA,iHAED,4CACC,gBAGD,4JAIC,sBAMD,kBACC,gBACA,sBAMD,iBACC,kBACA,YACA,sBACA,sBACA,kBACA,WACA,mBACA,yBACA,sBACA,qBACA,iBACA,oBACA,oCAED,mCACC,eACA,oBAED,sHAIC,kBACA,oBACA,6BACA,uBACA,WAKD,wBACC,eAED,qBACC,gBAED,2DAEC,SACA,iBAED,4BACC,SACA,oBACA,sBAED,+BACC,MACA,iBACA,iBACA,yBAED,sBACC,iBAED,uBACC,gBAED,2DAEC,QACA,gBAED,6BACC,QACA,mBACA,uBAED,8BACC,OACA,kBACA,wBC5nBA,kDAGC,mBAGD,kGAEC,UACA,OCNY,KDOZ,aCHmB,EDOpB,2DACC,mBAED,kDACC,KChBY,qBDmBb,wDACC,eACA,WACA,YACA,WACA,uCAGD,4CACC,KC/BY,KlBsCb,oDACA,4DiBJA,wDACC,oBACA,aC/B0B,EDgC1B,OCjCc,KDqChB,yBACC,OC3Ca,KD4Cb,KC5Ca,KD+Cd,8BACC,oBACA,aC1C2B,ED6C5B,+BACC,mBACA,KCtDa,KAcd,mBACC,gBAKA,kIlBkBA,oDACA,4DkBXC,4DACC,aASF,0BACC,mBCjBA,4BACC,uBACA,wCAGD,mCACC,gBACA,iCAGD,0BACC,YACA,gBAUD,uCACC,YAIF,kBACC,kBACA,OACA,MACA,SACA,WAEA,0BACC,kBACA,cACA,sBACA,2BACA,WAIF,eACC,kBACA,OACA,MACA,SACA,WAGC,gCACC,SAEA,qCACC,iBACA,gBAED,4CACC,kBAED,uCACC,eACA,UACA,qBAOJ,2BACC,sCACA,oCACA,kBACA,YACA,OAlGc,KAoGd,4CACC,aAGD,2DACC,MAxFY,KAyFZ,8BAEA,yEACC,MA5FW,KA8FX,+EACC,cAKH,iDACC,aAEA,6EACC,gBAMH,yBACC,mBACA,QACA,YAEA,0CACC,WAKF,yCAGC,uCAGD,0EACC,aAKC,+BACC,UACA,WACA,qBACA,kBACA,sBAEA,oCACC,iBAhJc,QAkJf,yCACC,iBAlJmB,KAoJpB,2CACC,iBApJqB,QAwJvB,+BACC,cACA,iBACA,MA1JW,KA+Jd,uBACC,eACA,uCACA,WACA,kBAEA,g9BACC,WAGD,w/BACC,WAQF,kBACC,kBACA,gBACA,qBACA,qBAEA,8BACC,kBACA,qBACA,QACA,SACA,gCAEA,gCACC,mBACA,eAMF,gCACC,eACA,uCACA,MAlNU,QAoNX,mCACI,eACA,MAvNU,QAwNV,QAEJ,sEACC,MA3Na,QA4Nb,eACA,QAED,kCACC,MAxNuB,QA8NzB,gBACC,kBACA,QACA,MACA,SACA,gBACA,iCACA,WACA,4BACA,wBACA,qBACA,gBAEA,sEACC,YACA,iBACA,kBACA,iBA1Pa,QA2Pb,MA1PU,QA6PX,uBACC,iBA9PU,QA+PV,MA9PO,QAgQP,6BACC,iBAnQY,QAoQZ,MAnQS,QAuQX,uBACC,kBACA,mBACA,MACA,SACA,QACA,WAGC,6CACC,kBACA,uBAGD,0CACC,uBAGD,6CACC,gBACA,mBAIF,6BACC,cAtSY,KAuSZ,WAhSM,QAiSN,MAlSS,QAmST,kBACA,wBACA,0CAEA,yCACC,WA9SW,KAiTZ,sCACC,kBAED,wCACC,kBACA,iBACA,kBAED,qCACC,kBACA,eACA,iBAEA,0CACC,qBACA,UACA,eAEA,gDACC,kBAGD,+CACC,iBAIH,mCACC,WACA,qBAGA,gDACC,aAED,8CACC,iBAGF,mCACC,WA9UM,QA+UN,MAhVS,QAkVT,qCACC,qBACA,WACA,cACA,SAEA,2CACC,cAEA,6DACC,kBAED,2DACC,2BAIA,oIACC,4BAKH,yCACC,WACA,6BACA,aACA,kBAGF,qCACC,SACA,mBAGF,qCACC,WAvXQ,QAwXR,MAzXW,QA2XX,uCACC,eACA,cAIA,yDACC,kCAEA,wEACC,MACA,UAKD,+DAEC,SAED,kEACC,aAKH,gDACC,WACA,kBACA,eAID,2CACC,kBAEA,6CACC,qBACA,cACA,MApaM,QA+aX,0BACC,gBACA,aAGD,yBACC,cACA,kBAEA,2BACC,mBAIF,+BACC,gBACA,cAEA,iCACC,qBACA,kBAEA,uCACC,cAEA,yDACC,kBAED,uDACC,2BAIA,4HACC,4BAKH,qCACC,gBACA,iBACA,kBACA,6BACA,mBAOL,OACC,aC1eD,QACC,YAEA,WACC,cACA,6BACA,iBACA,oBAGD,aACC,YACA,iBAGD,iBACC,eAEA,wBACC,UACA,gBAED,sBACC,qBACA,sBACA,mCACA,gBACA,mBAEA,+BACC,WACA,sBACA,aAGD,4BACC,eACA,aCrCJ,OACC,WAEA,aACC,kBACA,yBAEC,mBACC,gBACA,WACA,oBAED,mBACC,gBACA,kBACA,oBAGC,sCACC,WAED,2CACC,YAQJ,wBACC,UAGD,0BACC,YCnCH,0CACC,SACC,aAMC,4BACC,WAGD,mCACC,mCAGD,6EACC,aAKD,+NAGC,aAIF,gBACC,oCAKH,0CACC,QACC","file":"spot.css"} \ No newline at end of file +{"version":3,"sourceRoot":"","sources":["_fonts.scss","_common.scss","fa/solid.scss","fa/_variables.scss","fa/_core.scss","fa/_larger.scss","fa/_fixed-width.scss","fa/_list.scss","fa/_bordered-pulled.scss","fa/_animated.scss","fa/_rotated-flipped.scss","fa/_mixins.scss","fa/_stacked.scss","_fa.scss","lightbox/_lightbox.scss","_lightbox.scss","_simplebar.scss","leaflet/_leaflet.scss","leaflet/_leaflet_elevation.scss","_leaflet.scss","_mask_project.scss","_mask_upload.scss","_mask_admin.scss","_mobile.scss"],"names":[],"mappings":"CAGA,WACE,qBACA,kBACA,gBACA,8IACA,iFAGF,WACE,qBACA,kBACA,gBACA,8IACA,yDAGF,WACE,qBACA,kBACA,gBACA,8IACA,0BAGF,WACE,qBACA,kBACA,gBACA,8IACA,0BAGF,WACE,qBACA,kBACA,gBACA,8IACA,2GAGF,WACE,qBACA,kBACA,gBACA,0GACA,yJAGF,WACE,qBACA,kBACA,gBACA,4IACA,iFAGF,WACE,qBACA,kBACA,gBACA,4IACA,yDAGF,WACE,qBACA,kBACA,gBACA,4IACA,0BAGF,WACE,qBACA,kBACA,gBACA,4IACA,0BAGF,WACE,qBACA,kBACA,gBACA,4IACA,2GAGF,WACE,qBACA,kBACA,gBACA,wGACA,yJC9FF,0BACE,iBAEF,uBACE,iBAEF,sBACE,iBAEF,qBACE,iBAEF,kBACE,iBAWF,6HAPC,kBAQoB,8BAPpB,eAOoB,8BANpB,cAMoB,8BALpB,aAKoB,8BAJpB,UAIoB,8BAkBrB,2BACC,eACA,gCACA,SAGD,SACC,YAGD,OACC,eACA,iBAGD,sBACC,YACA,iBACA,kBAMA,YACC,iBACA,kBACC,UAED,oBACC,aAED,oBACC,YC9EH;AAAA;AAAA;AAAA,GAMA,WACE,iCACA,kBACA,gBACA,aCLqB,KDMrB,qCACA,2RAOF,srEAEE,iCACA,gBEnBF,0sEAME,kCACA,mCACA,qBACA,kBACA,oBACA,oBACA,cCXF,OACE,yBACA,kBACA,yBAGF,OACE,gBAGF,OACE,iBAIA,OACE,cADF,OACE,cADF,OACE,cADF,OACE,cADF,OACE,cADF,OACE,cADF,OACE,cADF,OACE,cADF,OACE,cADF,QACE,eClBJ,OACE,kBACA,MHOqB,OIRvB,OACE,qBACA,kBACA,eAEA,4BAGF,OACE,UACA,kBACA,kBACA,MJLqB,IIMrB,oBCbF,WACE,wBACA,mBACA,yBAGF,yBACA,2BAOE,09EACA,4/ECfF,SACE,qCAGF,UACE,uCAGF,mBACE,GACE,uBAGF,KACE,0BCdJ,cCWE,sEACA,wBDXF,eCUE,sEACA,yBDVF,eCSE,sEACA,yBDRF,oBCYE,gFACA,uBDZF,kBCWE,gFACA,uBDXF,mDCUE,gFACA,wBDLA,oIAME,YElBJ,UACE,qBACA,WACA,gBACA,kBACA,sBACA,YAGF,0BAEE,OACA,kBACA,kBACA,WAGF,aACE,oBAGF,aACE,cAGF,YACE,MTpBqB,KUQtB,woEACC,mBAED,myEACC,kBAIF,49DACC,eACA,kBACA,iBACA,qBACA,WACA,gBAKD,2BACA,uCACA,kCACA,yCACA,mCACA,iCACA,8BACA,2GACA,gCACA,iCACA,iCACA,gCAGA,0sDACA,kCACA,+BACA,6BACA,+BACA,+BACA,q8GAGA,0pDACA,6BACA,6BACA,6BACA,+BACA,kCACA,4BACA,8BACA,mCACA,qCACA,2GACA,8BACA,kCACA,kCAGA,8BACA,k5GAGA,0DACA,4xDACA,wqDACA,sGClFA,0BACE,gBAGF,iBACE,kBACA,MACA,OACA,aACA,sBACA,2DACA,WACA,aAGF,UACE,kBACA,OACA,WACA,cACA,kBACA,cACA,mBACA,aAGF,oBACE,cACA,YACA,kBACA,gBACA,kBAGA,sBAIF,oBACE,uBAEF,gCACC,yBAID,gBACE,YAGF,mBACE,kBACA,QACA,YACA,aACA,cACA,kBAIA,sBAGF,yBACE,WACA,cACA,WAGF,WACE,kBACA,QACA,OACA,WACA,WACA,kBACA,cAGF,WACE,cACA,WACA,YACA,cACA,gDAGF,QACE,kBACA,MACA,OACA,YACA,WACA,WAGF,mBACE,OAGF,UACE,aACA,2GAGF,kBACE,YACA,eACA,cAGF,kBACE,UACA,OACA,WACA,sDACA,0DACA,UACA,+BACA,4BACA,0BACA,uBAGF,wBACE,4DACA,UAGF,kBACE,UACA,QACA,YACA,uDACA,0DACA,UACA,+BACA,4BACA,0BACA,uBAGF,wBACE,4DACA,UAGF,kBACE,cACA,gBACA,QACA,WACA,8BACA,+BAGF,wBACE,WACA,cACA,WAGF,SACE,cACA,WAGF,qBACE,UACA,WACA,gBACA,kBAGF,qBACE,eACA,iBACA,gBAGF,uBACE,WAGF,oBACE,cACA,WACA,mBACA,eACA,WAGF,mBACE,cACA,YACA,WACA,YACA,wDACA,iBACA,aACA,2DACA,WACA,+BACA,4BACA,0BACA,uBAGF,yBACE,eACA,4DACA,UC1MF,iBACC,SACA,QAGD,UACC,aACA,mBACA,uBACA,WACA,YAGA,6BACC,SACA,gBACA,sCAEA,2CACC,gBAEA,qDACC,6BACA,YACA,iBACA,iBACA,WAEA,UACC,2FAMD,0HACC,WACA,qBAEA,wIACC,kBACA,oBAIF,6DAnDH,gBACA,cAoDI,oEACC,SAIF,6DA1DH,gBACA,cA2DI,oEACC,UAOL,4BACC,SACA,UACA,qBACA,mBACA,YACA,eACA,cACA,gBAEA,qCACC,oBAEA,iDACC,WAEA,kEACC,eACA,cACA,eAGD,8EACC,aAGD,4DACC,UACA,eAGF,wDACC,wBACA,eAEA,kEAvGH,gBACA,cAwGI,WAMJ,qBA/GA,gBACA,cAiHC,WCrHF,iBACE,kBACA,sBACA,eACA,2BACA,yBACA,uBAGF,mBACE,gBACA,cACA,eACA,kBACA,mBAGF,gBACE,kBACA,kBACA,gBACA,UACA,SACA,OACA,MACA,SACA,QACA,sBACA,uBACA,UAGF,kBACE,6BACA,8BACA,uBACA,kBACA,MACA,OACA,SACA,QACA,UACA,SACA,iCAGF,2BACE,kBACA,iCACA,kBACA,cACA,YACA,WACA,mBACA,eACA,gBACA,qBACA,wBAGF,2FAEE,QACA,SAGF,mDAEE,YACA,cAGF,uBACE,gBACA,eACA,WACA,oBAGF,wCACE,8BACA,YACA,WACA,cACA,kBACA,WACA,eACA,gBACA,WACA,UACA,SACA,oBACA,kBACA,cACA,aAGF,gCACE,mBACA,cACA,UACA,kBACA,MACA,OACA,aACA,YACA,eACA,cACA,gBACA,oBACA,WAGF,iBACE,UACA,kBACA,QACA,SACA,oBACA,gBAGF,uDACE,oBACA,iBACA,yBAGF,qDACE,mBAGF,qBACE,kBACA,UACA,UACA,gBAGF,4BACE,kBACA,WACA,gBACA,kBACA,OACA,QACA,UACA,8BAGF,8CAEE,WACA,6BAGF,oCACE,MACA,WAGF,gEACE,QACA,WAGF,sCACE,OACA,YAGF,kEACE,YACA,SACA,UAGF,2DACE,WACA,OACA,QACA,WACA,aACA,eACA,WAIF,mEACE,WACA,OAGF,yBACE,cACA,eACA,UACA,kBACA,aACA,YACA,kBACA,kBAGF,0BACE,eACA,OACA,kBACA,kBACA,qBACA,wBChNF,6LAUC,kBACA,OACA,MAED,mBACC,gBAED,0DAGC,yBACG,sBACK,iBACN,uBAGH,yBACC,uBAGD,8BACC,0CAGD,wCACC,aACA,cACA,6BAED,4CAEC,cAID,2PAMC,0BACA,2BAGD,sCACC,6BACA,yBAED,sCACC,4BAEA,kBACA,wBAED,yDACC,sBACA,kBAED,mBACC,wCAED,qBACC,gDAED,cACC,eACA,kBAED,qBACC,mBAED,kBACC,QACA,SACA,2BACK,sBACL,YAGD,0BACC,sBAGD,0BAEA,+BACA,kCACA,iCACA,iCACA,kCACA,gCAEA,qCACA,kCAEA,mBACC,UACA,WAED,MACC,2BACA,qBACA,kBAMD,iBACC,kBACA,YACA,8BACA,oBAED,6BAEC,kBACA,aACA,oBAED,aACC,MAED,eACC,QAED,gBACC,SAED,cACC,OAED,iBACC,WACA,WAED,gCACC,YAED,8BACC,gBAED,iCACC,mBAED,+BACC,iBAED,gCACC,kBAMD,iCACC,oBAED,kCACC,UACA,sCACG,mCACK,8BAET,oDACC,UAED,uBACC,6BACI,yBACI,qBAET,0CACC,sBAED,0CACC,sEACG,gEACK,sDAET,iEAEC,wBACG,qBACK,gBAGT,sCACC,kBAMD,qBACC,eAED,cACC,oBACA,iBACA,YAED,2DAEC,iBAED,qCAEC,YAED,iIAGC,YACA,wBACA,qBACA,gBAID,gHAKC,oBAGD,8KAIC,8BACA,oBAKD,mBACC,gBACA,UAED,qBACC,cAED,oCACC,yBAED,kBACC,uBACA,gCAKD,mBACC,0DAMD,aACC,qCACA,kBAED,oCAEC,sBACA,6BACA,WACA,YACA,iBACA,cACA,kBACA,qBACA,WAED,8CAEC,4BACA,4BACA,cAED,qBACC,yBAED,2BACC,2BACA,4BAED,0BACC,8BACA,+BACA,mBAED,gCACC,eACA,yBACA,WAGD,8BACC,WACA,YACA,iBAED,0CACC,2BACA,4BAED,yCACC,8BACA,+BAKD,mDAEC,iDACA,gBAGD,iFACC,eAMD,wBACC,oCACA,gBACA,kBAED,+BACC,wCACA,WACA,YAED,+CACC,2CACA,0BAED,8CACC,WACA,YAED,qHAEC,aAED,8DACC,cACA,kBAED,iCACC,yBACA,WACA,gBAED,kCACC,kBACA,kBACA,kBAED,iCACC,eACA,kBACA,QAED,8BACC,cAED,kCACC,SACA,0BACA,0BAID,2BACC,6CAMD,gDACC,gBACA,gCACA,SAED,yDAEC,cACA,WAED,+BACC,qBAED,qCACC,0BAED,0FAEC,eAED,qCACC,gBAED,uCACC,kBAED,4BACC,sBACA,gBACA,gBACA,oBACA,eACA,mBACA,gBACA,2BACK,sBAEL,gBACA,gCAED,8CACC,0BACA,mBACA,gBAED,+DACC,6BAGD,+GAGC,gBAED,mEAEC,gCACA,4BAMD,eACC,kBACA,kBACA,mBAED,+BACC,YACA,gBACA,mBAED,uBACC,iBACA,gBAED,yBACC,cAED,6BACC,WACA,YACA,kBACA,SACA,kBACA,gBACA,oBAED,mBACC,WACA,YACA,YAEA,oBAEA,gCACG,6BACC,4BACI,wBAET,kDAEC,gBACA,WACA,qCAED,gDACC,kBACA,MACA,QACA,oBACA,YACA,kBACA,WACA,YACA,yCACA,cACA,qBACA,iBACA,uBAED,sDACC,WAED,wBACC,cACA,6BACA,0BAGD,8CACC,OAED,kCACC,WACA,cAEA,uHACA,iHAED,4CACC,gBAGD,4JAIC,sBAMD,kBACC,gBACA,sBAMD,iBACC,kBACA,YACA,sBACA,sBACA,kBACA,WACA,mBACA,yBACA,sBACA,qBACA,iBACA,oBACA,oCAED,mCACC,eACA,oBAED,sHAIC,kBACA,oBACA,6BACA,uBACA,WAKD,wBACC,eAED,qBACC,gBAED,2DAEC,SACA,iBAED,4BACC,SACA,oBACA,sBAED,+BACC,MACA,iBACA,iBACA,yBAED,sBACC,iBAED,uBACC,gBAED,2DAEC,QACA,gBAED,6BACC,QACA,mBACA,uBAED,8BACC,OACA,kBACA,wBC5nBA,kDAGC,mBAGD,kGAEC,UACA,OCNY,KDOZ,aCHmB,EDOpB,2DACC,mBAED,kDACC,KChBY,qBDmBb,wDACC,eACA,WACA,YACA,WACA,uCAGD,4CACC,KC/BY,KlBsCb,oDACA,4DiBJA,wDACC,oBACA,aC/B0B,EDgC1B,OCjCc,KDqChB,yBACC,OC3Ca,KD4Cb,KC5Ca,KD+Cd,8BACC,oBACA,aC1C2B,ED6C5B,+BACC,mBACA,KCtDa,KAcd,mBACC,gBAKA,kIlBkBA,oDACA,4DkBXC,4DACC,aASF,0BACC,mBCjBA,4BACC,uBACA,wCAGD,mCACC,gBACA,iCAGD,0BACC,YACA,gBAUD,uCACC,YAID,gCACC,uBACA,wCAGD,sCACC,gBACA,iCAGD,kCACC,YACA,gBAUD,2DACC,WAID,0CACC,2BACA,4CAIF,kBACC,kBACA,OACA,MACA,SACA,WAEA,0BACC,kBACA,cACA,sBACA,2BACA,WAIF,eACC,kBACA,OACA,MACA,SACA,WAGC,gCACC,SAEA,qCACC,iBACA,gBAED,4CACC,kBAED,uCACC,eACA,UACA,qBAOJ,2BACC,sCACA,oCACA,kBACA,YACA,OAnIc,KAqId,4CACC,aAGD,iDACC,aAEA,6EACC,gBAMH,iDACC,mBACA,QACA,YAED,0CACC,WAED,yCACC,YAID,4DACC,aAIA,yBACC,mBACA,+BACC,UACA,WACA,qBACA,kBACA,sBAEA,oCACC,iBAjKc,QAmKf,yCACC,iBAnKmB,KAqKpB,2CACC,iBArKqB,QAyKvB,+BACC,cACA,iBACA,MAtLU,KA2Lb,kDACC,eACA,uCACA,WACA,kBAEA,o5cACC,WAGD,47aACC,WAaF,kBACC,kBACA,gBACA,qBACA,qBAEA,8BACC,kBACA,qBACA,QACA,SACA,gCAEA,gCACC,mBACA,eAMF,gCACC,eACA,uCACA,MAxOW,QA0OZ,mCACI,eACA,MA7OU,QA8OV,QAEJ,sEACC,MAjPa,QAkPb,eACA,QAED,kCACC,MA9OuB,QAoPzB,oCACC,kBACA,MACA,SACA,gBACA,iCACA,WACA,4BACA,wBACA,qBACA,gBAEA,sGACC,iBA5Qa,KA6Qb,MA5QW,KA+QZ,kDACC,iBAhRW,KAiRX,MAhRS,qBAkRT,8DACC,iBArRY,KAsRZ,MArRU,KAyRb,gBACC,QAEA,uBACC,kBACA,mBACA,MACA,SACA,QACA,WAGC,6CACC,kBACA,uBAGD,0CACC,uBAGD,6CACC,gBACA,mBAIF,6BACC,cA3TY,KA4TZ,WArTQ,qBAsTR,MAvTU,KAwTV,kBACA,wBACA,0CAEA,yCACC,WAnUW,KAsUZ,sCACC,kBAED,wCACC,kBACA,iBACA,kBAED,qCACC,kBACA,eACA,iBAEA,0CACC,qBACA,UACA,eAEA,gDACC,kBAGD,+CACC,iBAIH,mCACC,WACA,qBAGA,gDACC,aAED,8CACC,iBAGF,mCACC,WAnWO,qBAoWP,MArWS,KAuWT,qCACC,qBACA,WACA,cACA,SAEA,2CACC,cAEA,6DACC,kBAED,2DACC,2BAIA,oIACC,4BAKH,yCACC,WACA,6BACA,aACA,kBAGF,qCACC,SACA,mBAGF,qCACC,WA5YS,QA6YT,MA9YW,QAgZX,uCACC,eACA,cAGD,uCACC,MAtZU,QA0ZV,yDACC,kCAEA,wEACC,MACA,UAKD,+DAEC,SAED,kEACC,aAKH,gDACC,WACA,kBACA,eAID,2CACC,kBAEA,6CACC,qBACA,cACA,MA7bO,KAocb,oBACC,OAEA,uCACC,wBACA,YACA,aACA,gBACA,kBACA,0CACA,kBACA,mBACA,MACA,SACA,OACA,MAndW,KAodX,gCAGC,4DACC,qBAED,wEACC,aAGD,+DACC,mBACA,cACA,eAIA,gFACC,uBAEA,yFACC,WACA,gCAGF,kFACC,gBACA,kBAQA,0FACC,iBAtfS,QAufT,WASF,0FACC,MAngBQ,KAqgBR,gGACC,cAUN,iCACC,SAEA,8CACC,YACA,iDACC,gBACA,mBAEA,mDACC,qBAIF,gDACC,cACA,kBAEA,kDACC,mBAGD,kDACC,MAviBS,KA2iBX,sDACC,mBACA,cAEA,wDACC,qBAEA,kBACA,gBACA,mEACC,eAGD,8DACC,cAEA,gFACC,kBAED,8EACC,2BAIA,0KACC,4BAKH,4DACC,gBACA,iBACA,kBACA,6BACA,mBAQN,OACC,aC9lBD,QACC,YAEA,WACC,cACA,6BACA,iBACA,oBAGD,aACC,YACA,iBAGD,iBACC,eAEA,wBACC,UACA,gBAED,sBACC,qBACA,sBACA,mCACA,gBACA,mBAEA,+BACC,WACA,sBACA,aAGD,4BACC,eACA,aCrCJ,OACC,WAEA,aACC,kBACA,yBAEC,mBACC,gBACA,WACA,oBAED,mBACC,gBACA,kBACA,oBAGC,sCACC,WAED,2CACC,YCtBN,0CACC,SACC,aAMC,4DACC,WAGD,kJACC,mCAGD,8JACC,aAKD,gKAEC,aAIF,oCACC,oCAKH,0CACC,QACC","file":"spot.css"} \ No newline at end of file