poitn zéro (copie champslibres)

This commit is contained in:
Pierre 2020-01-16 23:59:24 +01:00
parent ead35aef40
commit 95685f9cda
326 changed files with 25366 additions and 0 deletions

6
.gitignore vendored Normal file
View file

@ -0,0 +1,6 @@
node_modules/
stocks/
package-lock.json
swoopBuf
.DS_Store
*.map

29
action/creer_bien.php Normal file
View file

@ -0,0 +1,29 @@
<?php
if (!defined('_ECRIRE_INC_VERSION')) return;
function action_creer_bien_dist(){
$securiser_action = charger_fonction('securiser_action', 'inc');
$arg = $securiser_action();
$id_article = intval($arg);
include_spip('inc/autoriser');
if (! autoriser("creer","article")) {
return false;
}
if (!$id_article) {
$id_rubrique = lire_config('champslibres/id_bien');
include_spip('action/editer_article');
$set = array(
'statut' => 'publie'
);
$id_article = article_inserer($id_rubrique,$set);
include_spip('inc/invalideur');
suivre_invalideur("id='id_article/$id_article'");
}
// redirection sur la création de la vidéo
$retour = 'spip.php?page=editer_bien&id_article='.$id_article;
include_spip('inc/headers');
redirige_par_entete($retour);
}

26
action/enlever_une.php Normal file
View file

@ -0,0 +1,26 @@
<?php
if (!defined('_ECRIRE_INC_VERSION')) return;
// enlever un bien de la Une
function action_enlever_une_dist(){
$securiser_action = charger_fonction('securiser_action', 'inc');
$arg = $securiser_action();
$id_article = intval($arg);
if (!$id_article)
return false;
// il faut être admin pour mettre à la Une
include_spip('inc/autoriser');
if (! autoriser("creer","rubrique")) {
return false;
}
// virer l'article de la Une
sql_updateq('spip_articles', array('ps' => '""'),'id_article='.$id_article);
// redirection sur la page d'édition du bien
$retour = 'spip.php?page=editer_bien&id_article='.$id_article;
include_spip('inc/headers');
redirige_par_entete($retour);
}

30
action/mettre_une.php Normal file
View file

@ -0,0 +1,30 @@
<?php
if (!defined('_ECRIRE_INC_VERSION')) return;
// mettre un bien à la Une (ps = une)
function action_mettre_une_dist(){
$securiser_action = charger_fonction('securiser_action', 'inc');
$arg = $securiser_action();
$id_article = intval($arg);
if (!$id_article)
return false;
// il faut être admin pour mettre à la Une
include_spip('inc/autoriser');
if (! autoriser("creer","rubrique")) {
return false;
}
// modifier le PS
sql_updateq('spip_articles', array('ps' => 'une'),'id_article='.$id_article);
// Cache
include_spip('inc/invalideur');
suivre_invalideur("id='id_article/$id_article'");
// redirection sur la page d'édition du bien
$retour = 'spip.php?page=editer_bien&id_article='.$id_article;
include_spip('inc/headers');
redirige_par_entete($retour);
}

View file

@ -0,0 +1,42 @@
<?php
if (!defined('_ECRIRE_INC_VERSION')) return;
// mettre une photo en première (credit = une)
function action_promouvoir_photo_dist(){
$securiser_action = charger_fonction('securiser_action', 'inc');
$arg = $securiser_action();
$Targs = explode('-', $arg);
$id_document = intval($Targs[0]);
$id_article = intval($Targs[1]);
if (!$id_document OR !$id_article)
return false;
// il faut être auteur pour mettre à la Une
include_spip('inc/autoriser');
if (! autoriser("creer","article")) {
return false;
}
// récupérer les docs attachés à l'article
$where = array(
'id_objet='.$id_article,
'objet="article"',
'extension IN ("jpg","png","gif")',
);
$res = sql_allfetsel('spip_documents_liens.id_document', array('spip_documents_liens','spip_documents'), $where);
$Tid_docs = array_column($res,'id_document');
// virer la Une actuelle et mettre celle de la photo choisie
sql_updateq('spip_documents', array('credits' => ''),'id_document IN ('.join(',',$Tid_docs).')');
sql_updateq('spip_documents', array('credits' => 'une'),'id_document = '.$id_document);
// Cache
include_spip('inc/invalideur');
suivre_invalideur("id='id_article/$id_article'");
// redirection sur la page d'édition du bien
$retour = 'spip.php?page=editer_bien&id_article='.$id_article.'#les_photos';
include_spip('inc/headers');
redirige_par_entete($retour);
}

27
action/supprimer_bien.php Normal file
View file

@ -0,0 +1,27 @@
<?php
if (!defined('_ECRIRE_INC_VERSION')) return;
function action_supprimer_bien_dist(){
$securiser_action = charger_fonction('securiser_action', 'inc');
$arg = $securiser_action();
$id_article = intval($arg);
include_spip('inc/autoriser');
if (! autoriser("modifier","article", $id_article)) {
return false;
}
if ($id_article) {
$set = array(
'statut' => 'poubelle'
);
sql_updateq('spip_articles', $set,'id_article='.$id_article);
include_spip('inc/invalideur');
suivre_invalideur("id='id_article/$id_article'");
}
// redirection sur l'accueil
$retour = 'spip.php?page=sommaire';
include_spip('inc/headers');
redirige_par_entete($retour);
}

View file

@ -0,0 +1,28 @@
<?php
if (!defined('_ECRIRE_INC_VERSION')) return;
function action_supprimer_photo_dist(){
$securiser_action = charger_fonction('securiser_action', 'inc');
$arg = $securiser_action();
$Targs = explode('-', $arg);
$id_document = intval($Targs[0]);
$id_article = intval($Targs[1]);
include_spip('inc/autoriser');
if (! autoriser("modifier","article", $id_article)) {
return false;
}
if ($id_document AND $id_article) {
$where = ['id_document='.$id_document, 'id_objet='.$id_article, 'objet="article"'];
sql_delete('spip_documents_liens', $where);
include_spip('inc/invalideur');
suivre_invalideur("id='id_article/$id_article'");
}
// redirection sur la page d'édition
$retour = 'spip.php?page=editer_bien&id_article='.$id_article.'#les_photos';
include_spip('inc/headers');
redirige_par_entete($retour);
}

17
article.html Normal file
View file

@ -0,0 +1,17 @@
[(#REM) On affiche l'article s'il est publié, sinon il faut être admin, ou faire partie des rédacteurs.]
[(#VAL{publie}|setenv{statut})]
[(#SESSION{statut}|=={0minirezo}|oui)
[(#INFO_STATUT{article,#ENV{id_article}}|setenv{statut})]
]
<BOUCLE_auteurs(AUTEURS){id_article}>
[(#SESSION{id_auteur}|=={#ID_AUTEUR}|oui)
[(#INFO_STATUT{article,#ENV{id_article}}|setenv{statut})]
]
</BOUCLE_auteurs>
<BOUCLE_principale_article(ARTICLES){id_article}{statut}>
<INCLURE{fond=structure,env,id_rubrique=#ENV{id_rubrique,#ID_RUBRIQUE},id_secteur=#ID_SECTEUR,type-page=article,composition=#COMPOSITION} />
</BOUCLE_principale_article>

6
aside/dist.html Normal file
View file

@ -0,0 +1,6 @@
[(#REM) Menu de navigation par rubriques ]
<INCLURE{fond=inclure/rubriques,id_rubrique} />
<div class="form-search">
#FORMULAIRE_RECHERCHE
</div>

10
aside/z_apl.html Normal file
View file

@ -0,0 +1,10 @@
[(#REM)
Squelette Big_Pipe
http://www.facebook.com/notes/facebook-engineering/bigpipe-pipelining-web-pages-for-high-performance/389414033919
(c) 2010 Cedric Morin
Distribue sous licence GPL
]#CACHE{0}
#INCLURE{fond=inclure/ajax_parallel_load,bloc=#SQUELETTE}

3
auteur.html Normal file
View file

@ -0,0 +1,3 @@
<BOUCLE_principale_auteur(AUTEURS){id_auteur}>
<INCLURE{fond=structure,env,type-page=auteur,composition=#COMPOSITION} />
</BOUCLE_principale_auteur>

43
backend.html Normal file
View file

@ -0,0 +1,43 @@
[(#REM)
Ce fichier sert à créer les flux RSS
qui permettent aux visiteurs de suivre l'actualité
de votre site depuis un lecteur de news.
Cette page génère un code XML/RSS adapté
][(#HTTP_HEADER{Content-type: text/xml[; charset=(#CHARSET)]})]<?xml
version="1.0"[ encoding="(#CHARSET)"]?>
<rss version="2.0" [(#REM) rss 2.0.9)]
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:atom="http://www.w3.org/2005/Atom"
>
<channel[ xml:lang="(#LANG)"]>
<title>[(#NOM_SITE_SPIP|textebrut|texte_backend)]</title>
<link>#URL_SITE_SPIP/</link>
[<description>(#DESCRIPTIF_SITE_SPIP|supprimer_tags|texte_backend)</description>]
<language>#LANG</language>
<generator>SPIP - www.spip.net</generator>
<atom:link href="[(#SELF|url_absolue)]" rel="self" type="application/rss+xml" />
[ <image>
<title>[(#NOM_SITE_SPIP|texte_backend)]</title>
<url>(#LOGO_SITE_SPIP|image_reduire{144,400}|extraire_attribut{src}|url_absolue|texte_backend)</url>
<link>#URL_SITE_SPIP/</link>
[<height>(#LOGO_SITE_SPIP|image_reduire{144,400}|extraire_attribut{height})</height>]
[<width>(#LOGO_SITE_SPIP|image_reduire{144,400}|extraire_attribut{width})</width>]
</image>
]
<BOUCLE_10recents(ARTICLES) {lang ?}{branche ?}{id_mot ?}{id_auteur ?} {par date}{inverse}{0,10}{unique}>
<INCLURE{fond=inclure/rss-item,id_article} />
</BOUCLE_10recents>
<BOUCLE_tres_recents(ARTICLES){lang ?}{branche ?}{id_mot ?}{id_auteur ?} {par date}{inverse}{age<3}{unique}>
<INCLURE{fond=inclure/rss-item,id_article} />
</BOUCLE_tres_recents>
</channel>
</rss>

56
base/champslibres.php Normal file
View file

@ -0,0 +1,56 @@
<?php
if (!defined('_ECRIRE_INC_VERSION')) return;
function champslibres_declarer_tables_principales($tables_principales){
$tables_principales['spip_articles']['field']['surface'] = "text DEFAULT '' NOT NULL"; //duree
$tables_principales['spip_articles']['field']['surface_parking'] = "text DEFAULT '' NOT NULL"; //date_pv
$tables_principales['spip_articles']['field']['loyer'] = "text DEFAULT '' NOT NULL";//lieux_pv
$tables_principales['spip_articles']['field']['champ_1'] = "text DEFAULT '' NOT NULL";//realisation
$tables_principales['spip_articles']['field']['champ_2'] = "text DEFAULT '' NOT NULL";//intervenants
return $tables_principales;
}
function champslibres_declarer_champs_extras($champs = array()) {
$champs['spip_groupes_mots']['grigri'] = array(
'saisie' => 'input',//Type du champ (voir plugin Saisies)
'options' => array(
'nom' => 'grigri',
'label' => 'grigri',
'sql' => "varchar(30) NOT NULL DEFAULT ''",
'defaut' => '',// Valeur par défaut
'restrictions'=>array(
'voir' => array('auteur' => ''),//Tout le monde peut voir
'modifier' => array('auteur' => 'webmestre')),//Seuls les webmestres peuvent modifier
),
);
$champs['spip_articles']['grigri'] = array(
'saisie' => 'input',//Type du champ (voir plugin Saisies)
'options' => array(
'nom' => 'grigri',
'label' => 'grigri',
'sql' => "varchar(30) NOT NULL DEFAULT ''",
'defaut' => '',// Valeur par défaut
'restrictions'=>array(
'voir' => array('auteur' => ''),//Tout le monde peut voir
'modifier' => array('auteur' => 'webmestre')),//Seuls les webmestres peuvent modifier
),
);
$champs['spip_mots']['grigri'] = array(
'saisie' => 'input',//Type du champ (voir plugin Saisies)
'options' => array(
'nom' => 'grigri',
'label' => 'grigri',
'sql' => "varchar(30) NOT NULL DEFAULT ''",
'defaut' => '',// Valeur par défaut
'restrictions'=>array(
'voir' => array('auteur' => ''),//Tout le monde peut voir
'modifier' => array('auteur' => 'webmestre')),//Seuls les webmestres peuvent modifier
),
);
return $champs;
}

25
body.html Normal file
View file

@ -0,0 +1,25 @@
<body class="">
<div class="inner">
<div id="header">
<INCLURE{fond=header/#ENV{type-page},env}>
</div>
[(#REM)<INCLURE{fond=inclure/zone_tags,env}>]
<div class="breadcrumb inner">
<INCLURE{fond=breadcrumb/#ENV{type-page},env,ajax=article} />
</div>
<div class="content" id="content">
<INCLURE{fond=content/#ENV{type-page},env} />
</div>
<div class="clear"></div>
<div id="" class="footer">
<INCLURE{fond=footer/#ENV{type-page},env} >
</div>
</div>
</body>

5
breadcrumb/401.html Normal file
View file

@ -0,0 +1,5 @@
[(#REM) Fil d'Ariane ]
<ul class="breadcrumb">
<li><a href="#URL_SITE_SPIP/"><:accueil_site:></a> <span class="divider"> &gt; </span></li>
<li class="active"><span><:pass_erreur:>[ (#ENV{status})]</span></li>
</ul>

5
breadcrumb/404.html Normal file
View file

@ -0,0 +1,5 @@
[(#REM) Fil d'Ariane ]
<ul class="breadcrumb">
<li><a href="#URL_SITE_SPIP/"><:accueil_site:></a> <span class="divider"> &gt; </span></li>
<li class="active"><span><:pass_erreur:> 404</span></li>
</ul>

8
breadcrumb/auteur.html Normal file
View file

@ -0,0 +1,8 @@
<BOUCLE_content(AUTEURS){id_auteur}>
[(#REM) Fil d'Ariane ]
<ul class="breadcrumb">
<li><a href="#URL_SITE_SPIP/"><:accueil_site:></a><span class="divider"> &gt; </span></li>
<li><span><:info_auteurs:></span><span class="divider"> &gt; </span></li>
[<li class="active"><span>(#NOM|couper{80})</span></li>]
</ul>
</BOUCLE_content>

21
breadcrumb/dist.html Normal file
View file

@ -0,0 +1,21 @@
<div class="breadcrumb">
[(#ENV{type-page}|!={sommaire}|oui)
<ul class="breadcrumb">
#SET{objet,''}#SET{id_objet,''}
[(#ENV{id_rubrique}|oui)#SET{objet,rubrique}#SET{id_objet,#ENV{id_rubrique}}]
[(#ENV{id_syndic}|oui)#SET{objet,site}#SET{id_objet,#ENV{id_syndic}}]
[(#ENV{id_breve}|oui)#SET{objet,breve}#SET{id_objet,#ENV{id_breve}}]
[(#ENV{id_article}|oui)#SET{objet,article}#SET{id_objet,#ENV{id_article}}]
[(#ENV{id_objet}|oui)#SET{objet,#ENV{objet}}#SET{id_objet,#ENV{id_objet}}]
[(#GET{objet}|non|et{#ENV{#ENV{type-page}|id_table_objet}}|oui)
#SET{objet,#ENV{type-page}}#SET{id_objet,#ENV{#ENV{type-page}|id_table_objet}}
]
[(#GET{objet}|oui)
#INCLURE{fond=breadcrumb/inc-objet,id_objet=#GET{id_objet},objet=#GET{objet}}
][(#GET{objet}|non)
<li><a href="#URL_SITE_SPIP/"><:accueil_site:></a><span class="divider"> &gt; </span></li>
]
</ul>
]
</div>

View file

@ -0,0 +1,9 @@
<li><a href="#URL_SITE_SPIP/"><:accueil_site:></a><span class="divider"> &gt; </span></li>
<BOUCLE_contexte_rubrique(RUBRIQUES) {id_rubrique=(#OBJET|=={rubrique}|?{#INFO_ID_PARENT{#OBJET,#ID_OBJET},#INFO_ID_RUBRIQUE{#OBJET,#ID_OBJET}})}>
<BOUCLE_ariane_hier(HIERARCHIE) {id_rubrique}{tout}>
[(#ID_SECTEUR|!={#ID_RUBRIQUE}|oui)
<li><a href="#URL_RUBRIQUE">[(#TITRE|couper{80})]</a><span class="divider"> &gt; </span></li>
]
</BOUCLE_ariane_hier>
</BOUCLE_contexte_rubrique>
<li[(#ENV{expose,' '}|oui)class="active"]>[(#ID_OBJET|generer_url_entite{#OBJET}|lien_ou_expose{#INFO_TITRE{#OBJET,#ID_OBJET}|sinon{?}|couper{80},#ENV{expose,' '}|?{span}})][<span class="divider">(#ENV{expose,' '}|non)&gt; </span>]</li>

11
breadcrumb/login.html Normal file
View file

@ -0,0 +1,11 @@
[(#REM)
Est-ce qu'on se connecte a l'espace prive ou pas ?
]#SET{prive,''}
[(#ENV{url}|=={''}|?{#SET{prive,' '}})]
[(#ENV{url}|match{^#EVAL{_DIR_RESTREINT_ABS}}|?{#SET{prive,' '}})]
[(#REM) Fil d'Ariane ]
<ul class="breadcrumb">
<li><a href="#URL_SITE_SPIP/"><:accueil_site:></a><span class="divider"> &gt; </span></li>
<li class="active"><span>[(#GET{prive}|?{<:login_acces_prive:>,<:lien_connecter:>})]</span></li>
</ul>

View file

@ -0,0 +1,4 @@
<ul class="breadcrumb">
<li><a href="#URL_SITE_SPIP/"><:accueil_site:></a><span class="divider"> &gt; </span></li>
<li class="active"><span><:enercoop:mentions_legales:></span></li>
</ul>

7
breadcrumb/mot.html Normal file
View file

@ -0,0 +1,7 @@
<BOUCLE_content(MOTS) {id_mot} {doublons}>
<ul class="breadcrumb">
<li><a href="#URL_SITE_SPIP/"><:accueil_site:></a><span class="divider"> &gt; </span></li>
<BOUCLE_ariane(GROUPES_MOTS){id_groupe}><li><a href="#URL_GROUPE_MOT">[(#TITRE|couper{80})]</a><span class="divider"> &gt; </span></li></BOUCLE_ariane>
<li class="active"><strong class="on">[(#TITRE|couper{80})]</strong></li>
</ul>
</BOUCLE_content>

4
breadcrumb/plan.html Normal file
View file

@ -0,0 +1,4 @@
<ul class="breadcrumb">
<li><a href="#URL_SITE_SPIP/"><:accueil_site:></a><span class="divider"> &gt; </span></li>
<li class="active"><span><:plan_site:></span></li>
</ul>

View file

@ -0,0 +1,4 @@
<ul class="breadcrumb">
<li><a href="#URL_SITE_SPIP/"><:accueil_site:></a><span class="divider"> &gt; </span></li>
<li class="active"><span><:info_rechercher:> [&laquo; <strong class="on">(#RECHERCHE)</strong> &raquo;]</span></li>
</ul>

3
breve.html Normal file
View file

@ -0,0 +1,3 @@
<BOUCLE_breve_principal(BREVES) {id_breve}>
<INCLURE{fond=structure,env,id_rubrique=#ENV{id_rubrique,#ID_RUBRIQUE},id_secteur=#ID_SECTEUR,type-page=breve,composition=#COMPOSITION} />
</BOUCLE_breve_principal>

View file

@ -0,0 +1,66 @@
<?php
/**
* Fichier gérant l'installation et désinstallation du plugin champslibres
*
* @plugin champslibres
* @copyright 2020
* @author Gamuza[informatique]
* @licence GNU/GPL
* @package SPIP\Fip\Installation
*/
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
include_spip('inc/cextras');
include_spip('base/champslibres');
/**
* Fonction d'installation et de mise à jour du plugin champslibres.
*
* @param string $nom_meta_base_version
* Nom de la meta informant de la version du schéma de données du plugin installé dans SPIP
* @param string $version_cible
* Version du schéma de données dans ce plugin (déclaré dans paquet.xml)
* @return void
**/
function champslibres_upgrade($nom_meta_base_version, $version_cible) {
$maj = array();
$maj['create'] = array(
array('maj_tables', array('spip_articles')),
array('config_prive')
);
$maj['1.0.2'] = array(
array('maj_tables', array('spip_articles')),
array('config_prive')
);
function config_prive(){
include_spip('inc/config');
ecrire_config('uploadhtml5/charger_public','on');
}
cextras_api_upgrade(champslibres_declarer_champs_extras(), $maj['create']);
cextras_api_upgrade(champslibres_declarer_champs_extras(), $maj['1.0.1']);
cextras_api_upgrade(champslibres_declarer_champs_extras(), $maj['1.0.3']);
include_spip('base/upgrade');
maj_plugin($nom_meta_base_version, $version_cible, $maj);
}
/**
* Fonction de désinstallation du plugin champslibres.
*
* @param string $nom_meta_base_version
* Nom de la meta informant de la version du schéma de données du plugin installé dans SPIP
* @return void
**/
function champslibres_vider_tables($nom_meta_base_version) {
effacer_meta($nom_meta_base_version);
}

View file

@ -0,0 +1,23 @@
<?php
/**
* Définit les autorisations du plugin champslibres
*
* @plugin champslibres
* @copyright 2020
* @author Gamuza[informatique]
* @licence GNU/GPL
* @package SPIP\Fip\Autorisations
*/
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
/**
* Fonction d'appel pour le pipeline
* @pipeline autoriser */
function champslibres_autoriser() {
}

View file

@ -0,0 +1,78 @@
<?php
/**
* Fonctions utiles au plugin champslibres
*
* @plugin champslibres
* @copyright 2020
* @author Gamuza[informatique]
* @licence GNU/GPL
* @package SPIP\Fip\Fonctions
*/
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
/**
* function qui permet d'afficher une image svg inline en y ajoutant un id et 2 balises : title et alt
* La fonction supprime tout ce qui se trouve au dessus de la balise <svg>
* ex : [(#CHEMIN{IMG/rubon#ID_RUBRIQUE.svg}|afficher_svg{#ID_RUBRIQUE,#GET{class},#GET{titre},#GET{titre}})]
*
*
* @param $url_relative de l'image
* @param $id = numero de l'id
* @param $class
* @param $title
* @param $alt
*
* @return $svg (le code svg)
* @author tofulm
**/
function afficher_svg($url_relative, $id=0, $class = '', $title='', $alt=''){
// nettoyer $url_relative des ?timestamp et vérifier que le ficher existe
$url_relative = explode('?', $url_relative)[0];
if (!file_exists($url_relative)) {
return;
}
$svg = file_get_contents($url_relative);
if ($id) {
$id = "id_$id";
$class = ' class="'.$class.'" ';
$pattern = '/(.+?<svg)(.+?id=")(.+?)(".+?)(<\/svg>)/s';
$replace = '<svg'.$class.'${2}'.$id.'${4}';
if ($title) {
$title = "<title>$title</title>";
$replace .= $title;
}
if ($alt) {
$alt = "<alt>$alt</alt>";
$replace .= $alt;
}
$replace .= '${5}';
$svg = preg_replace($pattern,$replace,$svg,1);
}
return $svg;
}
if (!function_exists('array_column')) {
function array_column($array, $columnKey, $indexKey = null)
{
$result = array();
foreach ($array as $subArray) {
if (is_null($indexKey) && array_key_exists($columnKey, $subArray)) {
$result[] = is_object($subArray)?$subArray->$columnKey: $subArray[$columnKey];
} elseif (array_key_exists($indexKey, $subArray)) {
if (is_null($columnKey)) {
$index = is_object($subArray)?$subArray->$indexKey: $subArray[$indexKey];
$result[$index] = $subArray;
} elseif (array_key_exists($columnKey, $subArray)) {
$index = is_object($subArray)?$subArray->$indexKey: $subArray[$indexKey];
$result[$index] = is_object($subArray)?$subArray->$columnKey: $subArray[$columnKey];
}
}
}
return $result;
}
}

49
champslibres_options.php Normal file
View file

@ -0,0 +1,49 @@
<?php
/**
* Options au chargement du plugin champslibres
*
* @plugin champslibres
* @copyright 2020
* @author Gamuza[informatique]
* @licence GNU/GPL
* @package SPIP\Fip\Options
*/
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
function debug_spip(){
define('_DEBUG_SLOW_QUERIES', true);
define('_BOUCLE_PROFILER', 5000);
define('_LOG_FILTRE_GRAVITE', 8);
define('_LOG_FILELINE',true);
define('_DEBUG_AUTORISER', true);
define('_MAX_LOG', 500000);
error_reporting(E_ALL^E_NOTICE);
ini_set ("display_errors", "On");
ini_set("html_errors", "On");
ini_set("allow_url_fopen", "On");
define('SPIP_ERREUR_REPORT',E_ALL^E_NOTICE);
define('SPIP_ERREUR_REPORT_INCLUDE_PLUGINS',E_ALL^E_NOTICE);
define('_NO_CACHE', -1);
define('_INTERDIRE_COMPACTE_HEAD_ECRIRE', true);
}
//debug_spip();
if (!isset($GLOBALS['z_blocs']))
$GLOBALS['z_blocs'] = array(
'content',
'aside',
'extra',
'head',
'head_js',
'header',
'footer',
'breadcrumb');

View file

@ -0,0 +1,55 @@
<?php
/**
* Utilisations de pipelines par champslibres
*
* @plugin champslibres
* @copyright 2020
* @author Gamuza[informatique]
* @licence GNU/GPL
* @package SPIP\Fip\Pipelines
*/
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
/**
* Charger des styles CSS
*
* @pipeline insert_head_css
* @param string $flux Code html des styles CSS à charger
* @return string Code html complété
**/
//function champslibres_insert_head_css($flux){
//$flux .= '<link rel="stylesheet" href="' . produire_fond_statique('css/vignettes.css') . '" type="text/css" />' . "\n";
//$flux .= '<link rel="stylesheet" href="' . timestamp(find_in_path('css/bigup.css')) . '" type="text/css" />' . "\n";
//return $flux;
//}
/**
* Charger des scripts jquery
*
* @pipeline jqueryui_plugins
* @param array $scripts Liste à charger
* @return array Liste complétée
**/
//function champslibres_jquery_plugins($scripts){
//$scripts[] = "aa";
//$scripts[] = produire_fond_statique('javascript/bigup.js');
//return $scripts;
//}
/**
* Charger des scripts jquery ui
*
* @pipeline jqueryui_plugins
* @param array $scripts Liste à charger
* @return array Liste complétée
**/
function champslibres_jqueryui_plugins($scripts){
$scripts[] = "datepicker";
$scripts[] = "i18n/datepicker-fr";
$scripts[] = "autocomplete";
return $scripts;
}

12
content/401.html Normal file
View file

@ -0,0 +1,12 @@
[(#REM) Fil d'Ariane ]
<section>
<header class="cartouche">
<h1><:pass_erreur:>[ (#ENV{status})]</h1>
</header>
<div class="main">
[<div class="chapo">(#ENV{erreur})</div>]
</div>
<aside>
#FORMULAIRE_LOGIN{#ENV{cible},'',0}
</aside>
</section>

9
content/404.html Normal file
View file

@ -0,0 +1,9 @@
[(#REM) Fil d'Ariane ]
<section>
<header class="cartouche">
<h1><:pass_erreur:> 404</h1>
</header>
<div class="main">
[<div class="chapo">(#ENV{erreur})</div>]
</div>
</section>

View file

@ -0,0 +1,3 @@
<div class="parent_prev_next">
<INCLURE{fond=inclure/un_bien,env,id_article=#ENV{id_article},ajax=article}>
</div>

5
content/article-bien.xml Normal file
View file

@ -0,0 +1,5 @@
<composition>
<nom>Bien Immomardi</nom>
<description>Grande image, petite colonne à droite
</description>
</composition>

View file

@ -0,0 +1,20 @@
<BOUCLE_article(ARTICLES){id_article}>
[(#REM) AUTORISER{modifier, article, #ID_ARTICLE})
<a class="btn pull-right" href="#URL_PAGE{editer_bien,id_article=#ID_ARTICLE }"><i class="fas fa-edit"></i> Editer</a>
]
<h1>#TITRE</h1>
<div class="la_une">
<div class="video_une">
[<h2 class="h3-like #EDIT{soustitre}">(#SOUSTITRE)</h2>]
<div class="texte #EDIT{texte}">#TEXTE</div>
</div>
[<div class="aside_une">
<div class="texte #EDIT{descriptif}">(#DESCRIPTIF)</div>
</div>]
</div>
<div class="carte">
[(#INCLURE{fond=modeles/carte_yaller,
autocenterandzoom=oui,
id_article=#ID_ARTICLE})]
</div>
</BOUCLE_article>

View file

@ -0,0 +1,6 @@
<composition>
<nom>Page de contact</nom>
<description>Article pour page de contact:
bloc principal = texte / aside = descritif / footer large = PS
</description>
</composition>

View file

@ -0,0 +1,13 @@
#SET{id_grpe_tags, 0}
<BOUCLE_tags(GROUPES_MOTS){grigri == tags}>#SET{id_grpe_tags, #ID_GROUPE} </BOUCLE_tags>
<BOUCLE_article(ARTICLES){id_article}>
[(#AUTORISER{modifier, article, #ID_ARTICLE})
<a class="btn pull-right" href="#URL_PAGE{editer_bien,id_article=#ID_ARTICLE }"><i class="fas fa-edit"></i> Editer</a>
]
<h1>#TITRE</h1>
<div class="le_texte">
[<h2 class="h3-like #EDIT{soustitre}">(#SOUSTITRE)</h2>]
<div class="texte #EDIT{texte}">#TEXTE</div>
</div>
</BOUCLE_article>

View file

@ -0,0 +1,4 @@
<composition>
<nom>Article editorial</nom>
<description>Article pour contenu éditorial (hors catalogue de biens)</description>
</composition>

55
content/article.html Normal file
View file

@ -0,0 +1,55 @@
#SET{id_grpe_tags, 0} #SET{grpes_importants,#ARRAY}
<BOUCLE_tags(GROUPES_MOTS){grigri = tags}>#SET{id_grpe_tags, #ID_GROUPE} </BOUCLE_tags>
<BOUCLE_grpes_importants(GROUPES_MOTS){obligatoire=oui}>#SET{grpes_importants,#GET{grpes_importants}|push{#ID_GROUPE}} </BOUCLE_grpes_importants>
#SET{id_mot_statut_bien,0}
<BOUCLE_statut_bien(GROUPES_MOTS){grigri == statut_bien}>
<BOUCLE_articles(MOTS){id_article}{id_groupe}{doublons}>
#SET{id_mot_statut_bien, #ID_MOT}
</BOUCLE_articles>
</BOUCLE_statut_bien>
<BOUCLE_article(ARTICLES){id_article}{statut}>
[(#AUTORISER{modifier, article, #ID_ARTICLE})
[(#INFO_STATUT{article,#ID_ARTICLE}|=={publie}|non)
<a class="btn pull-right btn_une" href="#URL_PAGE{editer_bien,id_article=#ID_ARTICLE }"><i class="fas fa-edit"></i> Éditer</a>
]
]
<?php if (isset($GLOBALS['visiteur_session']['statut']) AND $GLOBALS['visiteur_session']['statut'] == '0minirezo') { ?>
[(#INCLURE{fond=inclure/bouton_une,id_article=#ENV{id_article}})]
<?php } ?>
<h1 class="h1-like #EDIT{titre}">#TITRE</h1>
<div class="la_une">
<div class="video_une">
[<h2 class="h3-like #EDIT{soustitre}">(#SOUSTITRE)</h2>]
<BOUCLE_doc(DOCUMENTS){id_article?}{extension==jpg|png|gif}{statut in prop,prepa,publie}{0,1}{!par credits}{par id_document}>
[(#FICHIER|image_recadre{900:450,-,focus}|image_reduire{900,450})]
</BOUCLE_doc>
<div class="texte #EDIT{texte}">#TEXTE</div>
<B_mots>
<div class="mots">
[(#REM) afficher mots-clés et tags dont le groupe est "important" ]
<BOUCLE_mots(MOTS){id_article}{si #CONFIG{champslibres/tags_article}|!={non}}{id_groupe IN #GET{grpes_importants}}>
<a href="[(#URL_MOT)]" class="tag tags mrs[ (#ID_GROUPE|=={#GET{id_grpe_tags}}|?{hashtag,mot_cle})]"
data-id_mot="#ID_MOT" title="Les biens liées au[ (#ID_GROUPE|=={#GET{id_grpe_tags}}|?{tag,mot clé}) ]#TITRE">
<i class="fas fa-[(#ID_GROUPE|=={#GET{id_grpe_tags}}|?{hashtag,tag})]"></i>#TITRE
</a>
</BOUCLE_mots>
</div>
</B_mots>
<BOUCLE_images(DOCUMENTS){id_article=#ID_ARTICLE}{extension==jpg|png|gif}{!par credits}{1,n}>
<a href="#FICHIER" class='mediabox' rel='galerie_#ID_ARTICLE'>
[(#FICHIER|image_recadre{350:200,-,focus}|image_reduire{350, 200})]
</a>
</BOUCLE_images>
</div>
</div>
</BOUCLE_gis>
</BOUCLE_article>

9
content/auteur.html Normal file
View file

@ -0,0 +1,9 @@
<BOUCLE_auteur(AUTEURS){id_auteur=#ENV{id_auteur}}>
<INCLURE{fond=inclure/avatar_auteur,env}>
#NOM
#BIO
[site internet :
<a href="(#URL_SITE)">
#NOM_SITE
</a>]
</BOUCLE_auteur>

View file

@ -0,0 +1,11 @@
#SET{titre_mot,Liste des biens}
#SET{id_mot,0}
<BOUCLE_titremot(MOTS){id_mot = #ENV{mots}|table_valeur{0}}>
#SET{titre_mot,#TITRE}
#SET{id_mot,#ID_MOT}
</BOUCLE_titremot>
<h1 class="">#GET{titre_mot}</h1>
<INCLURE{fond=inclure/choix_articles,env,ajax=choix_articles,mots=#ENV{mots}, id_mot=#GET{id_mot}}>

6
content/collectif.html Normal file
View file

@ -0,0 +1,6 @@
<BOUCLE_collectif(ARTICLES){grigri=collectif}{0,1}{! par date}>
<div id="collectif">
<h1 class="#EDIT{titre}">#TITRE</h1>
<div class="#EDIT{texte}">#TEXTE</div>
</div>
</BOUCLE_collectif>

35
content/editer_bien.html Normal file
View file

@ -0,0 +1,35 @@
[(#ENV{id_article}|?{
[(#INCLURE{fond=inclure/bouton_supprimer,id_article=#ENV{id_article}})]
[(#INCLURE{fond=inclure/bouton_une,id_article=#ENV{id_article}})]
<h1>Éditer l'article n°[(#ENV{id_article})]</h1>
,
<h1>Créer un article</h1>
})]
<div class="container">
[(#SESSION{id_auteur}|oui)
[(#ENV{id_article}|oui)
[(#AUTORISER{modifier, article, #ENV{id_article}}|?{
[(#FORMULAIRE_EDITER_BIEN{#ENV{id_article}})]<br>
,
<div class="reponse_formulaire reponse_formulaire_erreur">Votre compte ne fait pas partie des auteurs autorisés à modifier cet article.</div>
})]
]
[(#ENV{id_article}|non)
[(#AUTORISER{creer, article}|?{
[(#FORMULAIRE_EDITER_BIEN)]
,
<div class="reponse_formulaire reponse_formulaire_erreur">Votre compte n'a pas les droits suffisants pour créer un article.</div>
})]
]
]
[(#SESSION{id_auteur}|non)
<div class="se_connecter bloc_connexion">
[(#FORMULAIRE_LOGIN{#ENV{url}})]
</div>
<div class="ou"><h2>ou</h2></div>
<div class="creer_associer_compte bloc_connexion">
[(#FORMULAIRE_INSCRIPTION)]
</div>
]
</div>

21
content/groupe_mots.html Normal file
View file

@ -0,0 +1,21 @@
<BOUCLE_grpes(GROUPES_MOTS){id_groupe}>
<h1 class="">#TITRE</h1>
<div class="liste_des_mots">
<BOUCLE_mots(MOTS){id_groupe}{par num titre}>
<INCLURE{fond=inclure/bloc_mot, env, id_mot}>
</BOUCLE_mots>
</div>
</BOUCLE_grpes>
<h3>Situation des biens</h3>
[(#INCLURE{fond=modeles/carte_gis,
autocenterandzoom=oui,
objets=articles,
id_mot=#ENV{id_mot},
zoom_wheel=non,
height=500px,
})]

6
content/inscription.html Normal file
View file

@ -0,0 +1,6 @@
<div>
<h1>Création d'un compte étudiant</h1>
[(#FORMULAIRE_INSCRIPTION)]
</div>

10
content/login.html Normal file
View file

@ -0,0 +1,10 @@
#CACHE{0}
<h1>Connexion</h1>
<div class="grid-2" id="choix_connexion">
<div class="se_connecter bloc_connexion">
[(#FORMULAIRE_LOGIN{#ENV{url}})]
</div>
<div> </div>
</div>

View file

@ -0,0 +1 @@
<INCLURE{fond=inclure/mentions_legales}>

26
content/mes-articles.html Normal file
View file

@ -0,0 +1,26 @@
<div class="h3-like">Vos articles en cours de rédaction</div>
<B_art_brouillon>
<div class="liste_des_rubriques">
<BOUCLE_art_brouillon(ARTICLES){branche}{id_secteur = #CONFIG{champslibres/id_bien}}{id_auteur=#SESSION{id_auteur}}{statut=prepa}>
<INCLURE{fond=inclure/bloc_une, env, id_article,statut=prepa}>
</BOUCLE_art_brouillon>
</div>
</B_art_brouillon>
<div>
Aucun article en cours de rédaction.
<a href="#URL_PAGE{editer_bien}">Je publie un article !</a>
</div>
<//B_art_brouillon>
<div class="h3-like">Vos articles publiés</div>
<B_art_publie>
<div class="liste_des_rubriques">
<BOUCLE_art_publie(ARTICLES){branche}{id_secteur = #CONFIG{champslibres/id_bien}}{id_auteur=#SESSION{id_auteur}}{statut=publie}>
<INCLURE{fond=inclure/bloc_une, env, id_article,statut=publie}>
</BOUCLE_art_publie>
</div>
</B_art_publie>
<div>
Aucun article publié.
</div>
<//B_art_publie>

View file

@ -0,0 +1,18 @@
<div class="container">
<h1>Modifier mon profil</h1>
<B_modifier_auteur>
<div class="row">
<a class="btn pull-right" href="#URL_PAGE{mes-articles}">Mes articles</a>
<a class="btn pull-right" href="#URL_LOGOUT{sommaire}">Me déconnecter</a>
<BOUCLE_modifier_auteur(AUTEURS){id_auteur = #SESSION{id_auteur}}{tous}>
<div class="col-xs-24 modifier_auteur_pub">
#FORMULAIRE_EDITER_AUTEUR{#ID_AUTEUR,#URL_PAGE{auteur}|parametre_url{id_auteur,#ENV{id_auteur}}}
</div>
</BOUCLE_modifier_auteur>
</div>
</div>
</B_modifier_auteur>
<div class="attention">Vous devez être connecté pour accéder à cette page.</div>
<//B_modifier_auteur>
</div>

11
content/mot.html Normal file
View file

@ -0,0 +1,11 @@
#SET{titre_mot,Liste des biens}
#SET{id_mot,0}
<BOUCLE_titremot(MOTS){id_mot}>
#SET{titre_mot,#TITRE}
#SET{id_mot,#ID_MOT}
</BOUCLE_titremot>
<h1 class="">#GET{titre_mot}</h1>
<INCLURE{fond=inclure/choix_articles,env,ajax=choix_articles,id_mot=#GET{id_mot}}>

24
content/motsar.html Normal file
View file

@ -0,0 +1,24 @@
<h1>Arborescence des mots clés</h1>
<style>
h1 { margin-top:2em; }
h2 { border-bottom:2px solid black; }
</style>
<BOUCLE_groupes_arbos(GROUPES_MOTS){par num titre, titre}{tous}>
<h2>#TITRE</h2>
<B_mots>
<ul>
<BOUCLE_mots(MOTS){id_groupe}{par num titre, titre}{tous}>
<li>
<strong>#TITRE</strong>
</li>
</BOUCLE_mots>
</ul>
</B_mots>
</BOUCLE_groupes_arbos>

View file

@ -0,0 +1,3 @@
<BOUCLE_principale(AUTEURS){tout}{id_auteur=4}>
#FORMULAIRE_ECRIRE_AUTEUR
</BOUCLE_principale>

48
content/plan.html Normal file
View file

@ -0,0 +1,48 @@
<h1>Plan du site</h1>
<div class="content">
<BOUCLE_secteurs(RUBRIQUES) {racine} {par num titre}{!par date}>
<h2>#TITRE</h2>
[(#REM) Articles et sous-rubriques ]
<B_articles_racine>
<ul class="spip">
<BOUCLE_articles_racine(ARTICLES) {id_rubrique} {par num titre}{!par date}>
<li><a href="#URL_ARTICLE">#TITRE[ - (#SOUSTITRE)]</a></li>
</BOUCLE_articles_racine>
</ul>
</B_articles_racine>
<B_rubriques>
<ul class="spip">
<BOUCLE_rubriques(RUBRIQUES) {id_parent} {par num titre}{!par date}>
<li>
<strong><a href="#URL_RUBRIQUE">#TITRE</a></strong>
<B_articles>
<ul class="spip">
<BOUCLE_articles(ARTICLES) {id_rubrique} {par num titre}{!par date}>
<li><a href="#URL_ARTICLE">#TITRE[ - (#SOUSTITRE)]</a></li>
</BOUCLE_articles>
</ul>
</B_articles>
<BOUCLE_sous_rubriques(BOUCLE_rubriques)></BOUCLE_sous_rubriques>
</li>
</BOUCLE_rubriques>
</ul>
</B_rubriques>
[(#REM) Sur le Web ]
<B_sites>
<h3><:sites_web:></h3>
<ul class="spip">
<BOUCLE_sites(SITES) {id_secteur} {par nom_site}>
<li><a href="[(#ID_SYNDIC|generer_url_entite{site,'','',#CONNECT})]">#NOM_SITE</a></li>
</BOUCLE_sites>
</ul>
</B_sites>
</BOUCLE_secteurs>
</div>

13
content/rubrique.html Normal file
View file

@ -0,0 +1,13 @@
<BOUCLE_rub(RUBRIQUES){id_rubrique}>
<div class="rub_en-tete">
[<img src="(#LOGO_RUBRIQUE|image_recadre{1200:350,-,focus}|image_reduire{1200,350}|extraire_attribut{src})" alt="[(#TITRE|attribut_html)]">]
<div class="rub_en-tete_titre">
<h1 class="">#TITRE</h1>
<em class="h3-like">#TEXTE</em>
</div>
</div>
<INCLURE{fond=inclure/choix_articles,env,ajax=choix_articles,id_rubrique=#ID_RUBRIQUE}>
</BOUCLE_rub>
<h1 class="">Liste des articles</h1>
<//B_rub>

46
content/sommaire.html Normal file
View file

@ -0,0 +1,46 @@
<div class="la_une">
<BOUCLE_presentation(ARTICLES){grigri=presentation}{0,1}{! par date}>
<div id="presentation" class="w66">
<h3 class="#EDIT{titre}">#TITRE</h3>
<div class="#EDIT{texte}">#TEXTE</div>
</div>
</BOUCLE_presentation>
<BOUCLE_actualites(ARTICLES){grigri=actualites}{0,1}{! par date}>
<div id="actualites" class="encadre">
<h3 class="#EDIT{titre}">#TITRE</h3>
<div class="#EDIT{texte}">#TEXTE</div>
</div>
</BOUCLE_actualites>
</div>
<h3 class="la_une">À la une</h3>
<div class="liste_des_rubriques">
<BOUCLE_art(ARTICLES){branche}{id_secteur = #CONFIG{champslibres/id_bien}}>
<INCLURE{fond=inclure/bloc_une, env, id_article,statut=publie}>
</BOUCLE_art>
</div>
<h3 class="la_une">Les rubriques du journal</h3>
<div class="liste_des_rubriques">
<BOUCLE_sect(RUBRIQUES){id_rubrique = #CONFIG{champslibres/id_bien}}>
<BOUCLE_rub(RUBRIQUES){id_parent}{par num titre}>
<INCLURE{fond=inclure/bloc_rub, env, id_rubrique}>
</BOUCLE_rub>
#SET{nb_rubs, #TOTAL_BOUCLE}
</B_rub>
</BOUCLE_sect>
</div>
[(#REM)
<div class="container_carte">
<h3>Situation des biens</h3>
[(#INCLURE{fond=modeles/carte_gis,
autocenterandzoom=oui,
objets=articles,
id_mot=#ENV{id_mot},
zoom_wheel=non,
height=500px,
})]
</div>
]

View file

@ -0,0 +1,34 @@
<h2 class="h1-like #EDIT{meta-slogan_site}">[(#SLOGAN_SITE_SPIP)]</h2>
<div class="la_une">
<div class="video_une">
<BOUCLE_bien_une(ARTICLES){ps = une}{!par date}{0,1}{id_rubrique = #CONFIG{champslibres/id_bien}}>
<div class="container_slider">
[(#MODELE{articles_ps_owl}{autoplay=true}{caption=true}{navigation=false})] #SET{id_une,#ID_ARTICLE}
</div>
</BOUCLE_bien_une>
<BOUCLE_une_defaut(ARTICLES){!par date}{0,1}{id_rubrique = #CONFIG{champslibres/id_bien}}>
<div class="container_slider">
[(#MODELE{article_owl}{id_article=#ID_ARTICLE})] #SET{id_une,#ID_ARTICLE}
</div>
<h3><a href="#URL_ARTICLE" title="Voir les détails">#TITRE</a></h3>
</BOUCLE_une_defaut>
<//B_bien_une>
</div>
<BOUCLE_presentation(ARTICLES){grigri=presentation}{0,1}{! par date}>
<div class="aside_une">
<h3 class="#EDIT{titre}">#TITRE</h3>
<div class="#EDIT{texte}">#TEXTE</div>
</div>
</BOUCLE_presentation>
</div>
<BOUCLE_mot_presentation(MOTS){grigri=accueil}>#SET{id_mot, #ID_MOT}
<h1>#TITRE</h1>
</BOUCLE_mot_presentation>
<h1>Nos réalisations</h1>
<//B_mot_presentation>
<INCLURE{fond=inclure/choix_articles,env,id_mot=#GET{id_mot}}>

View file

@ -0,0 +1,43 @@
<h2 class="h1-like #EDIT{meta-slogan_site}">[(#SLOGAN_SITE_SPIP)]</h2>
<div class="la_une">
<div class="video_une">
<BOUCLE_bien_une(ARTICLES){ps = une}{!par date}{0,1}{id_secteur = #CONFIG{champslibres/id_bien}}>
<div class="container_slider">
[(#MODELE{articles_ps_owl}{autoplay=true}{caption=true}{navigation=false})] #SET{id_une,#ID_ARTICLE}
</div>
</BOUCLE_bien_une>
<BOUCLE_une_defaut(ARTICLES){!par date}{0,1}{id_secteur = #CONFIG{champslibres/id_bien}}>
<div class="container_slider">
[(#MODELE{article_owl}{id_article=#ID_ARTICLE})] #SET{id_une,#ID_ARTICLE}
</div>
<h3><a href="#URL_ARTICLE" title="Voir les détails">#TITRE</a></h3>
</BOUCLE_une_defaut>
<//B_bien_une>
</div>
<BOUCLE_presentation(ARTICLES){grigri=presentation}{0,1}{! par date}>
<div class="aside_une">
<h3 class="#EDIT{titre}">#TITRE</h3>
<div class="#EDIT{texte}">#TEXTE</div>
</div>
</BOUCLE_presentation>
</div>
<div class="liste_des_mots">
<BOUCLE_sect(RUBRIQUES){id_rubrique = #CONFIG{champslibres/id_bien}}>
<BOUCLE_rub(RUBRIQUES){id_parent}{par num titre}>
<INCLURE{fond=inclure/bloc_rub, env, id_rubrique}>
</BOUCLE_rub>
#SET{nb_rubs, #TOTAL_BOUCLE}
</B_rub>
</BOUCLE_sect>
</div>
<h3>Situation des biens</h3>
[(#INCLURE{fond=modeles/carte_gis,
autocenterandzoom=oui,
objets=articles,
id_mot=#ENV{id_mot},
zoom_wheel=non,
height=500px,
})]

66
content/test.html Normal file
View file

@ -0,0 +1,66 @@
<section>
<!-- Header -->
<header class="cartouche hide">
<div id="header">
<!-- Logo -->
<h1><a href="sommaire.html" id="logo">#NOM_SITE_SPIP <em>,Briancon (05)</em></a></h1>
</div>
</header>
<!-- Banner -->
<section id="banner">
<header>
<h2>FeetFit <em>Confort - Bien-être - Performance, Praticien conventionné et agrée par l'Etat</em></h2>
</header>
</section>
<!-- Highlights -->
<section class="wrapper style1">
<div class="container">
<div class="row">
<section class="col-4">
<div class="box highlight">
<i class="icon major fa fa-phone"></i>
<h3>Appelez-nous</h3>
<p> 04 92 24 75 71</p>
</div>
</section>
<section class="col-4">
<div class="box highlight">
<i class="icon major fa fa-pencil"></i>
<p>4 Avenue René Froger</br>05100 - BRIANÇON</br>Email : feet.fit@orange.fr</br>Siret : 790011837</p>
</div>
</section>
<section class="col-4">
<div class="box highlight">
<i class="icon major fa fa-wrench"></i>
<h3>Cliquez ici</h3>
<p>pour nous situer</p>
</div>
</section>
</div>
</div>
</section>
<!-- Gigantic Heading -->
<section class="wrapper style2">
<div class="container">
<header class="major">
<h2>Orthopédie et Podologie</h2>
<p>Briançon (05)</p>
</header>
</div>
</section>
<!-- Posts -->
<section class="wrapper style1">
<div class="container">
Feet & Fit est un centre spécialisé dans le domaine de la podologie. M. Dran, orthopédiste, orthésiste et podologiste, reçoivent les patients atteints de douleurs aux pieds afin de leur proposer un traitement adéquat.</br></br>
Une mauvaise posture peut entraîner divers troubles tels que des douleurs aux pieds, aux chevilles et aux genoux. Il existe toutefois des solutions pour aider les personnes souffrant de ces maux à retrouver le plaisir de marcher. Grâce à un diagnostique établi par un orthopédiste reconnu, le centre Feet & Fit sera en mesure de concevoir des semelles et des chaussures sur mesure pour traiter votre maladie.</br></br>
La pratique d'un sport tel que le ski et les randonnées en montagne peuvent également être la cause de problèmes aux pieds. Spécialisé dans la confection de semelles et de chaussures de sport, pour prévenir et traiter les douleurs dont souffrent les sportifs.</br></br>
Chaque patient étant différent, le centre Feet & Fit s'engage à assurer le suivi du traitement mis en place pour vous soigner.
</div>
</section>
</section>

10
content/z_apl.html Normal file
View file

@ -0,0 +1,10 @@
[(#REM)
Squelette Big_Pipe
http://www.facebook.com/notes/facebook-engineering/bigpipe-pipelining-web-pages-for-high-performance/389414033919
(c) 2010 Cedric Morin
Distribue sous licence GPL
]#CACHE{0}
#INCLURE{fond=inclure/ajax_parallel_load,bloc=#SQUELETTE}

10
css/_body.scss Normal file
View file

@ -0,0 +1,10 @@
/* Definition des containers pour Knacss */
.inner-fluid {
margin: 2rem 2rem 0;
}
// met une taille max
.inner {
max-width: $extra-large;
margin: 0 auto;
}

98
css/_form_spip.scss Normal file
View file

@ -0,0 +1,98 @@
/* ------------------------------------------
/* Habillage des formulaires SPIP
/* ------------------------------------------ */
input, textarea, select {-webkit-box-sizing: border-box;-ms-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
.bugajaxie { display: none; } /* Bug IE/Win */
/* Structure generale des formulaires
----------------------------------------------- */
.formulaire_spip { clear: both; margin-bottom: /*@margin-bottom*/1.5em/*/@*/; padding: /*@demi-line-height*/0.75em/*/@; border: 1px solid #ddd; background-color: #FCFCFC*/; text-align: left; }
/* Fieldset */
.formulaire_spip fieldset { clear: both; margin: 0; padding: 0; border: 0; }
.formulaire_spip fieldset legend { margin: 0; padding: 0; font-size: 1.25em; font-weight: bold; background-color: #FCFCFC; color: #333; } /* Preciser la couleur des legend et du fond pour IE/Win */
.formulaire_spip fieldset fieldset { margin-top: /*@margin-bottom*/1.5em/*/@*/; }
.formulaire_spip fieldset fieldset legend { font-size: 1em; font-weight: normal; }
/* Explications */
.formulaire_spip .explication { color: #444;margin-bottom: 0;padding: /*@demi-line-height*/0.75em/*/@*/ 0;}
/* Lignes */
.formulaire_spip .editer { clear: both; margin: 0 /*@demi-line-height*/-0.75em/*/@*/; padding: /*@demi-line-height*/0.75em/*/@*/; }
/* Labels */
.formulaire_spip .editer>label { display: block; text-align: left; color: #444; font-weight: bold;}
.formulaire_spip .choix label {display:inline;font-weight:normal;}
.formulaire_spip .choix input.radio,
/*.formulaire_spip .choix input.checkbox {width:auto;}*/
/* Champs de saisie */
.formulaire_spip input.text { width: 100%;}
.formulaire_spip textarea { width: 100%; }
.formulaire_spip select { width: 100%; }
/* Boutons */
.formulaire_spip .boutons { clear: both; margin: 0; padding: 0; text-align: right; margin-top: /*@margin-bottom*/1.5em/*/@*/; }
.formulaire_spip .boutons input { margin-left: 1em; }
.formulaire_spip .boutons input, input.submit {}
@media print {
.formulaire_spip { display: none; }
}
/* Reponses, previsu et erreurs
----------------------------------------------- */
/* Champs obligatoires */
.formulaire_spip li.obligatoire {}
.formulaire_spip li.obligatoire label {font-weight: strong;}
/* Reponses */
.reponse_formulaire { margin-bottom: /*@margin-bottom*/1.5em/*/@*/; padding: /*@demi-margin-bottom*/0.75em/*/@*/; border: 2px solid #ddd; }
.reponse_formulaire_ok { background: #e6efc2; color: #264409; border-color: #c6d880; }
.reponse_formulaire_erreur { background: #fbe3e4; color: #8a1f11; border-color: #fbc2c4; }
.reponse_formulaire_ok a { color: #264409; }
.reponse_formulaire_erreur a { color: #8a1f11; }
/* Previsualisation du message */
fieldset.previsu { margin-bottom: /*@margin-bottom*/1.5em/*/@*/;padding: /*@demi-margin-bottom*/0.75em/*/@*/; border: 2px dashed #F57900; }
fieldset.previsu legend { color: #F57900; }
fieldset.previsu legend { padding-left:0.50em; font-weight: bold; color: #F57900; }
/* Reponse du formulaire */
fieldset.previsu .reponse_formulaire { font-weight: bold; color: #e86519;}
fieldset.reponse_formulaire { border-color: #e86519; font-weight: normal; }
/* * Erreurs */
.editer.erreur { background-color: #fbe3e4; }
.editer .erreur_message { display: block; color: #C30; font-weight: bold;}
/* Variantes et cas particuliers
----------------------------------------------- */
/* Selection des langues */
.formulaire_menu_lang { margin: 0; padding: 0; background: none; border: 0;}
.formulaire_menu_lang select {width: 15em;}
.page_login .content .formulaire_menu_lang {margin-bottom:1.5em;}
/* Formulaires de recherche (site / petitions) */
.formulaire_recherche { padding: 0; background: none; border: 0;}
.formulaire_recherche * { display: inline; vertical-align: middle; }
.formulaire_recherche label {display: block;}
.formulaire_recherche input.text { width: 10em; padding-left: 25px; background: #FFF url(img/rechercher.gif) no-repeat left center; }
.formulaire_recherche input.submit {}
/* Choix des mots-clefs */
.choix_mots li { float: left; width: 30%; padding: 1%; }
/* Formulaire de login dans une page */
.formulaire_login .editer {clear:left;}
/*.formulaire_login input.text,.formulaire_login input.password {width:15em;}*/
.formulaire_login .editer_password .details {margin-bottom:0;}
.formulaire_login #spip_logo_auteur {float:right;}

153
css/_menu_spip.scss Normal file
View file

@ -0,0 +1,153 @@
/* Menu SPIP */
/* cette variable permet de dire a quel breakpoint le burger est affiché ou caché */
$burger: $large; // obsolete pour Knacss: on met le breakpoint a "large"
#barnav {
li {
list-style-type: none;
}
a, a:focus, a:hover,a:active {
text-decoration: none;
display: block;
}
}
.on.active {
background-color: #000;
> a {
color: #fff;
padding: 0 1rem;
}
}
img.spip_logo {
vertical-align: bottom;
margin: 0 2rem .5rem 0;
height: 40px;
width: auto;
}
/* hamburger: Version mobile et tablette */
/* @media (max-width: ($burger - 1)) { */
@include respond-to("large") {
button.burgermenu {
position: absolute;
top: 30px;
right: 15px;
//margin-right: 31px;
}
.is-opened .js-sous-menu {
display: block;
}
#barnav {
width: 100%;
li.menu-entree a {
padding: 10px;
}
}
nav > ul {
width: 100%;
position: absolute;
right: -74px;
top: 64px;
}
/* habillage du bloc du menu à afficher sous-menu */
ul.js-sous-menu {
display: none;
width: 100%;
padding: 10px;
background-color: $white;
z-index: $zindex-modal;
right: 0;
a {
@include font-size(h3);
font-weight: $weight-medium;
font-family: $font-family-headings;
}
}
li.menu-entree {
margin: 7px 0 5px 0;
text-align: left;
background-color: rgba(206, 206, 206, 1);
i {
display: none;
}
}
.contact_header {
display: none;
}
}
/* barrenav: Menu desktop */
/*@media (min-width: $burger) { */
@include respond-to("large-up") {
.contact_barrenav {
display: none;
}
.contact_header {
display: block;
}
button.burgermenu {
display: none;
}
ul.js-sous-menu {
opacity: $opacite_header;
display: flex;
justify-content: space-around;
width: 100%;
padding: 0;
> li.menu-entree {
position: relative;
list-style-type: none;
> ul.menu-liste {
left: -193px;
padding: 10px 0 10px 185px;
position: absolute;
flex-direction: column;
width: 932px;
z-index: 599;
}
}
a {
@include font-size(h3);
font-weight: $weight-medium;
font-family: $font-family-headings;
}
i {
padding: 10px;
}
}
}
/* taille des caractères de la barre-nav pour passer en 5 items sur une largeur */
ul.js-sous-menu a {
@include respond-to("large-up") {
font-size: 2rem;
}
@include respond-to("extra-large-up") {
font-size: 2.4rem;
}
}
/* navbar fixed lors du scroll de la page => recup gocryo, à adapter si besoin */
#header.navbar-fixed-top {
position: fixed;
z-index: ($zindex-navigation + 1);
width: 100%;
//padding: 0;
background-color: #fff;
/* img.spip_logo {
margin-top: 1rem;
}*/
}
#barnav .fixed-top {
position: fixed;
z-index: ($zindex-navigation + 1);
}

30
css/_polices.scss Normal file
View file

@ -0,0 +1,30 @@
/* les polices à charger en @font-face */
@font-face {
font-family: 'Lato';
src: url("../fonts/lato_regular.woff2?#iefix") format("woff2");
font-weight: normal;
font-style: normal;
}
@font-face {
font-family: 'Bitter';
src: url("../fonts/bitter.woff2?#iefix") format("woff2");
font-weight: normal;
font-style: normal;
}
/*
@font-face {
font-family: 'luxi_sansregular';
src: url("../fonts/luxisr-webfont.woff?#iefix") format("woff");
font-weight: normal;
font-style: normal;
}
@font-face {
font-family: 'Oswald';
src: url('../fonts/oswald_regular.woff2?#iefix') format('woff2');
font-weight: normal;
font-style: normal;
}
*/

907
css/_sq_champslibres.scss Normal file
View file

@ -0,0 +1,907 @@
/* tous les éléments CSS spécifiques du squelettes Champslibres */
/* utilitaires */
.hidden, .hide, .invisible {
display: none;
}
.cursor {
cursor: pointer;
}
.row_odd {
background-color: $gray-400;
}
/* polices */
* { font-family: Lato, sans-serif; }
i.fas { font-family: fontawesome; font-style: normal; font-weight: 400; }
h1, .h1, h2, .h2, h3, .h3, h4, .h4, legend,
.h1-like, .h2-like, .h3-like, .h4-like { font-family: Bitter, sans-serif; }
/* liens */
a, a:hover { text-decoration: none; }
a:hover { background-color: #e8e8e8; }
#content {
h1, h2, h3 {
text-align: center;
@include respond-to("large-up") {
text-align: initial;
}
}
}
.container {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
fieldset {
clear: none;
margin-bottom: 2rem;
border: solid 1px #BBB;
padding: 1.5rem;
background-color: #FCFCFC;
> div { margin-bottom: 1.2rem;}
}
> div {
width: 100%;
}
}
.parent_prev_next {
display: flex;
margin-bottom: 1.5rem;
.fleche {
display: flex;
align-items: center;
&.gauche {
padding-right: 1rem;
}
&.droite {
padding-left: 1rem;
}
}
div.ajaxbloc {
width: 100%;
}
h1 {
margin: 0;
}
}
.encadre{
padding: 1rem;
border: solid 1px #BBB;
}
/**********************************************************************/
/************************* HEADER ******************************/
/**********************************************************************/
#header {
.fas {
font-size: 3.1rem;
cursor: pointer;
}
.fa-times { color: red; }
.btn_hamburger {
align-items: end;
}
.hamburger {
margin-left: auto;
margin-top: auto;
}
.tt_plier {
margin-top: auto;
padding: 1rem;
}
.fas.plier {
cursor: pointer;
font-size: 1.2em;
padding-right: 1.5rem;
opacity: .5;
}
.btn_tags, .btn_mcs {
margin-top: auto;
}
}
header {
padding: 1.5rem 0 0 0;
align-items: center;
justify-content: space-around;
border-bottom: solid 3px;
h1 {
margin: 0;
}
align-items: center;
}
#header-droite{
flex-grow: 1;
}
#sous-titre_site{
display: none;
@include respond-to("large-up") {
display: block;
}
}
#btn_mc_tags {
flex-direction: row;
display: flex;
margin-left: auto;
> div { padding-left: 3rem; }
}
/* MENU PRINCIPAL */
.burgermenu.nav-button {
height: 1.9rem;
i {
height: 2.2rem;
}
@include respond-to("medium-up") {
height: 3.6rem;
top: 50px;
padding-right: 1rem;
i {
width: 3.6rem;
height: 2.6rem;
}
}
}
#barnav {
padding: 2rem 0 0 0;
margin-top: -1rem;
ul.js-sous-menu {
top: 50px;
padding: 0 10px;
justify-content: space-between;
@include respond-to("medium-up") {
top: 110px;
}
a {
font-size: 1.9rem;
}
}
}
/* BREADCRUMB */
.breadcrumb {
margin-bottom: 1rem;
ul {
list-style: none;
padding-left: 0;
}
li {
display: inline;
opacity: $opacite_header;
}
@include respond-to("medium-up") {
margin-bottom: 2rem;
}
}
@include respond-to("medium-up") {
img.spip_logo {
vertical-align: bottom;
margin: 0 2rem .5rem 0;
height: 100px;
}
}
.contact_header {
align-self: end;
margin-bottom: 9px;
}
/* menu des mots-clés */
nav.navbar, nav.tagbar, nav.mcbar {
float: right;
.pardessus {
position: absolute;
z-index: 99;
width: 100%;
}
.groupe_mots, .articles {
background-color: $gray-200;
display: block;
border-top: .2rem solid #FFF;
}
.nom_groupe {
padding: 1rem 1.5rem;
cursor: pointer;
font-size: 1.2em;
display: block;
}
.nom_groupe:hover, .nuage a:hover {
background-color: $gray-400;
}
.deplier_groupe_mots, .un_mot {
display: block;
width: 100%;
text-align: left;
}
ul.mots_groupe {
margin-bottom: 0;
padding-left: 0;
}
.mots_groupe li {
background-color: $gray-300;
display: block;
list-style: none;
border-top: .1rem solid $gray-100;
padding-left: 4rem;
}
.mots_groupe li:hover {
background-color: $gray-500;
}
.nuage a {
margin-right: 1rem;
}
}
nav.navbar, nav.tagbar, nav.mcbar {
width: 100%;
position: relative;
}
nav.navbar.is-opened, nav.mcbar.is-opened, nav.tagbar.is-opened {
margin-top: -2rem;
/*transform: translate(0,0);
transition: 0.3s transform;*/
}
nav.tagbar .nuage { padding: .5rem; }
.zone_tags {
margin-bottom: 2rem;
}
@include respond-to("medium-up") {
nav.navbar, nav.tagbar, nav.mcbar { width: 50%; }
}
@include respond-to("large-up") {
nav.navbar, nav.tagbar, nav.mcbar { width: 35%; }
}
/**********************************************************************/
/**************************** PAGE ACCUEIL ****************************/
/**********************************************************************/
.la_une {
padding: 1rem;
display: flex;
flex-direction: column;
.video_une {
margin-bottom: 3rem;
width: 100%;
padding: 0;
h3 a {
display: block;
padding-left: 2rem;
}
}
.aside_une {
width: 100%;
padding: 0 0.5rem 1rem;
p {
text-align: justify;
}
@include respond-to("medium-up") {
padding: 0 2rem 1rem;
}
}
@include respond-to("extra-large-up") {
flex-direction: row;
.video_une {
width: 855px;
}
.aside_une {
width: calc(100% - 860px);
}
}
}
#actualites{
flex-grow: 1;
margin-left: 2rem;
}
/* ne pas afficher le slider en mode téléphone
.page_sommaire .video_une {
display: none;
@include respond-to("large-up") {
display: block;
}
}
*/
.btn_une, .une_OK {
display: none;
@include respond-to("medium-up") {
display: block;
}
}
.container_carte {
margin: 0 2rem;
@include respond-to("extra-large-up") {
margin: 0;
}
}
.coordonnees_gps {
font-size: 85%;
@include respond-to("tiny-up") {
font-size: 100%;
}
}
/* le bronx pour les étiquettes en surimpression sur les photos de biens (blocs/articles) */
.container_slider {
display: flex;
flex-direction: row-reverse;
}
.container_etiquette {
position: absolute;
}
/* affichage article */
.surimpression {
font-size: 3rem;
font-style: oblique;
color: #FFF;
background-color: #F00;
position: relative;
z-index: $zindex-navigation;
/* transform: rotate(-45deg); */
margin: 0;
padding-right: .4rem;
@include respond-to("tiny-up") {
margin: 0;
}
@include respond-to("medium-up") {
font-size: 4rem;
margin: 0;
padding: 0 1rem 0 .4rem;
}
}
.petit .surimpression {
font-size: 1.7rem;
@include respond-to("tiny-up") {
font-size: 2rem;
}
@include respond-to("medium-up") {
font-size: 3rem;
}
}
/* affichage bloc */
.une_video {
.surimpression {
font-size: 2.5rem;
}
.petit .surimpression {
font-size: 1.5rem;
padding: .5rem .8rem .5rem .4rem;
@include respond-to("tiny-up") {
font-size: 1.7rem;
}
@include respond-to("large-up") {
font-size: 1.9rem;
}
}
}
/* étiquette verte */
.green, .vert {
.surimpression {
background-color: $green-500;
}
}
/* page sommaire */
.titre_sommaire {
margin-bottom: 1.5rem;
}
/* le binz pour avoir les blocs de types de biens avant la présentation en mode tel */
.page_sommaire .content {
display: flex;
flex-direction: column;
.titre_sommaire {
order: 1;
}
.la_une {
order: 2;
}
.liste_des_rubriques {
order: 3;
}
.container_carte {
order: 4;
}
@include respond-to("medium-up") {
display: initial;
}
}
/* les bidouillages de owl carousel */
.lien_carousel {
@extend .btn--inverse;
h3 {
font-size: 1.3rem;
@include respond-to("small-up") {
font-size: 1.8rem;
}
@include respond-to("medium-up") {
@include font-size(h3);
}
/* display: none;*/
}
/* display: block;*/
}
.la_une {
#demo .owl-slide > .caption {
left: initial;
width: initial;
}
.owl-theme .owl-nav {
display: flex;
justify-content: space-between;
font-size: 5rem;
line-height: 1;
}
.owl-theme .owl-dots {
display: flex;
justify-content: space-around;
margin: -55px auto 1rem;
margin-bottom: 1.2rem;
width: calc(100% - 50px);
@include respond-to("large-up") {
margin: -70px auto 1rem;
}
}
.owl-theme .owl-dots .owl-dot span {
width: initial;
height: initial;
}
.owl-theme .owl-dots .owl-dot {
opacity: .5;
}
.owl-theme .owl-dots .owl-dot.active {
opacity: 1;
}
.owl-theme .owl-nav.disabled, .owl-theme .owl-dots.disabled {
display: none;
}
}
/* spécifique page présentation d'un bien = page article */
.page_article .la_une {
h3 {
font-size: 1.8rem;
}
.mots .hashtag {
font-size: 1.2rem;
margin-right: .2rem;
}
}
/* footer */
.footer {
margin-top:4rem;
padding-top: 1rem;
border-top:3px solid;
padding-bottom: 2rem;
margin-bottom:0;
text-align: left;
position:relative;
/*.colophon { padding-right: 100px; }*/
.nav li a, .colophon a {
padding: 10px 15px;
}
.colophon .generator {
max-width: 300px;
}
.lien_cc svg {
width: 30px;
height: 30px;
vertical-align: middle;
}
.nav { padding-left: 0; }
.nav li { display: block; }
.nav li:not(.generator) a { display: block; }
@include respond-to("small-up") {
.nav li { display: inline-block !important; }
.nav li:not(.generator) a { display: inline; }
.nav li.separ { border: none; }
.nav li.separ:not(:first-of-type)::before { content: " | "; }
.generator { /*position: absolute; top: 1rem; right: 0; max-width: 200px;*/ float: right; }
.nav li a .title { display: none; }
}
}
/* blocs biens */
.liste_des_videos {
margin: 1rem 0;
display: flex;
flex-wrap: wrap;
justify-content: space-around;
.une_video {
border: 1px solid #DDD;
padding: 1rem;
margin: 1rem 0;
display: flex;
flex-direction: column;
/*justify-content: space-between;*/
width: 100%;
.am_mots .tags {
font-size: .8em;
}
.am_tags {
line-height: 1.2rem;
.tags {
font-size: .6em;
&.mrs {
margin-right: .2rem;
}
}
}
.h3-like {
line-height: 1.1em;
min-height: 5rem;
margin: 1rem 0;
}
.une_ligne {
height: 2.75rem;
overflow: hidden;
}
.affmasq {
font-size: 2rem;
cursor: pointer;
}
}
.bloc_contenu {
display: flex;
flex-direction: column;
justify-content: space-between;
min-height: 100%;
}
@include respond-to("tiny-up") {
margin: 1rem;
}
@include respond-to("medium-up") {
.une_video {
width: 345px;
}
}
@include respond-to("large-up") {
.une_video {
width: 380px;
}
}
@include respond-to("extra-large-up") {
justify-content: space-between;
/* :last-of-type {
margin-right: 0;
}
:first-of-type {
margin-left: 0;
}*/
}
.bloc_placeholder {
display: none;
@include respond-to("extra-large-up") {
border: none;
display: flex;
}
}
}
.photo_bien {
display: flex;
justify-content: center;
min-height: 180px;
img {
width: 100%;
}
.ico_defaut {
font-size: 160px;
padding-bottom: 20px;
}
}
.placeholder {
margin: 1rem auto;
img {
max-height: 320px;
opacity: .1;
}
}
.liste_des_rubriques {
display: flex;
flex-wrap: wrap!important;
.une_rub {
padding: 1rem;
a {
min-height: 100%;
h2 {
text-align: left;
}
}
}
.une_rub_contenu{
padding: 1rem;
border: 1px solid #DDD;
display: flex;
flex-direction: column;
justify-content: space-between;
width: 100%;
min-height: 100%;
position: relative;
}
a.etiquette_rubrique{
position: absolute;
min-height:0;
top: -1.5rem;
right: 1.5rem;
padding: 0 0.5rem;
text-align: right;
background-color: #999;
color: white;
}
.resume-article{
flex-grow: 1;
}
/* SOMMAIRE tous les bricolages pour la gestion responsive des blocs rubrique du sommaire */
@include respond-to("small-up") {
.une_rub { width: 250px; }
.photo_bien{
min-height: 157px;
}
}
@include respond-to("medium-up") {
.une_rub { width: 340px; }
}
@include respond-to("large-up") {
// flex-wrap: nowrap;
.une_rub { width: 340px; }
}
@include respond-to("extra-large-up") {
//flex-wrap: nowrap;
.une_rub { width: 300px; }
.photo_bien{
min-height: 157px;
}
}
}
/**********************************************************************/
/*************************** PAGE RUBRIQUE ****************************/
/**********************************************************************/
.rub_en-tete{
position: relative;
}
.rub_en-tete_titre{
position: absolute;
top: 0;
left: 0;
z-index: 100;
background-color:rgba(0, 0, 0, 0.5);
color: white;;
padding: 2rem;
min-height: 100%;
width: 30%;
display: flex;
flex-direction: column;
justify-content: center;
}
/* blocs mots/ss-rubriques */
.liste_des_mots {
display: flex;
flex-wrap: wrap;
justify-content: space-around;
.un_mot {
border: 1px solid #DDD;
padding: 1rem;
margin: 1rem;
display: flex;
flex-direction: column;
justify-content: space-between;
width: 100%;
a {
display: flex;
flex-direction: column;
min-height: 100%;
h2 {
margin: auto;
text-align: center;
}
}
}
/* tous les bricolages pour la gestion responsive des blocs rubrique du sommaire */
@include respond-to("small-up") {
.un_mot { width: 250px; }
}
@include respond-to("medium-up") {
.un_mot { width: 340px; }
}
@include respond-to("large-up") {
//flex-wrap: nowrap;
.un_mot { width: 340px; }
}
@include respond-to("extra-large-up") {
justify-content: space-between;
//flex-wrap: nowrap;
/* :first-of-type {
margin-left: 0;
}
:last-of-type {
margin-right: 0;
}*/
}
}
/* tous formulaires */
.boutons .submit {
font-size: 2.5rem;
}
.btn.pull-right, .une_OK {
margin-left: 2rem;
}
#editer_gis_oui_rechercher_geocodage{
@extend .btn--inverse;
}
/* formulaire de saisie d'un bien */
.formulaire_editer_bien {
clear: none;
.resume textarea { min-height: 25rem; }
.upload_vignette {
label { display: block; }
.ajaxbloc {
clear: both;
@include respond-to("large-up") {
clear: initial;
}
}
}
.col_droite {
float: right;
width: 33%;
clear: right;
}
.principal, .auteurs { width: 60%; }
.formulaire_uploadhtml5 {
margin-bottom: 0;
float: left;
width: 100%;
.dropzone {
min-height: 50px;
.dz-message { margin: .5em 0; }
}
@include respond-to("large-up") {
width: 25%;
}
}
.photo_bien {
justify-content: left;
.une_photo {
margin-right: 1rem;
display: flex;
flex-direction: column;
max-width: 320px;
}
.boutons_actions {
width: 100%;
display: flex;
justify-content: space-around;
background-color: $gray-200;
a.btn_poubelle {
color: $red-500;
}
i.green {
color: $green-500;
padding: .6rem 1.5rem;
}
a {
margin: 0;
}
a:hover {
background-color: $gray-100;
}
}
}
legend {
width: auto;
}
}
.une_OK i.fas { color: green; }
/* formulaire de connexion / création de compte */
#choix_connexion {
fieldset {
clear: none;
margin-bottom: 2rem;
border: solid 1px #BBB;
padding: 1.5rem;
background-color: #FCFCFC;
> div { margin-bottom: 1.2rem;}
}
}
@include respond-to("medium-up") {
#choix_connexion { flex-wrap: nowrap; }
}
.bloc_connexion {
flex-grow: 1;
}
.creer_associer_compte {
flex-grow: 2;
}
/* spip_admin */
div#spip-admin { display:none; }
@include respond-to("small-up") {
div#spip-admin { display: initial; }
}
/* fleche go-top (dans header/dist.html */
#go_top {
position: fixed;
bottom: 2%;
right: 2%;
font-size: 3em;
opacity: .2;
/*:hover {
}*/
}
#go_top:hover {
background-color: transparent;
opacity: 1;
}
/* bloc aside pour les horaires d'ouverture dans la page contact */
.composition_contact .la_une .aside_une {
width: 100%;
td {
padding-left: 1rem;
}
table {
table-layout: initial;
}
@include respond-to("small-up") {
width: calc(100% - 560px);
}
}
/*
* modele iframe vidéo responsive
* cf http://blog.theodo.fr/2018/01/responsive-iframes-css-trick/
*/
.resp_container {
position: relative;
overflow: hidden;
padding-top: 56.25%;
}
.resp_iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
border: 0;
}

5
css/_utilitaires.scss Normal file
View file

@ -0,0 +1,5 @@
/* __------__ CSS en commun (starter) __------__ */
/* --- Barre Nav --- */

View file

@ -0,0 +1,58 @@
// font-size Mixin
// compiles to font-size mobile + font-size desktop on small-plus devices
// ex. h2 { @include font-size(h2);}
@mixin font-size($elem) {
$q: map-get($font-sizes, $elem);
$mob: map-get($q, "mobile");
$desk: map-get($q, "desktop");
font-size: $mob;
@include respond-to("small-up") {
font-size: $desk;
}
}
// Grid Mixin
// arguments are : columns number, gutter, min-breakpoint
// ex. .ingrid { @include grid(4, 1rem, 640px); }
@mixin grid($number:1, $gutter:0, $breakpoint:0) {
@supports (display: grid) {
@media (min-width: $breakpoint) {
display: grid;
grid-template-columns: repeat($number, 1fr);
grid-gap: $gutter;
}
}
}
// Additionnal "utility" breakpoints aliases
// ex. @include respond-to("medium-up") {...}
$bp-aliases: (
'tiny' : (max-width: #{$tiny - 1}),
'small' : (max-width: #{$small - 1}),
'medium' : (max-width: #{$medium - 1}),
'large' : (max-width: #{$large - 1}),
'extra-large' : (max-width: #{$extra-large - 1}),
'tiny-up' : (min-width: #{$tiny}),
'small-up' : (min-width: #{$small}),
'medium-up' : (min-width: #{$medium}),
'large-up' : (min-width: #{$large}),
'extra-large-up' : (min-width: #{$extra-large}),
'retina' : (min-resolution: 2dppx)
);
// Source : https://www.sitepoint.com/managing-responsive-breakpoints-sass/
@mixin respond-to($name) {
// If the key exists in the map
@if map-has-key($bp-aliases, $name) {
// Prints a media query based on the value
@media #{inspect(map-get($bp-aliases, $name))} {
@content;
}
}
// If the key doesn't exist in the map
@else {
@warn "Unfortunately, no value could be retrieved from `#{$breakpoint}`. "
+ "Please make sure it is defined in `$breakpoints` map.";
}
}

View file

@ -0,0 +1,228 @@
// Config file and project variables
// ----------------
// Breakpoints zone
// ----------------
// Warning: you should use your own values, regardless of the devices
// Best practice is Mobile First: (min-width: $breakpoint)
$tiny : 480px !default; // or 'em' if you prefer, of course
$small : 576px !default;
$medium : 768px !default;
$large : 992px !default;
$extra-large : 1200px !default;
// ----------
// Fonts zone
// ----------
// Font families
$font-family-base : -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif !default; // system font stack
$font-family-headings : sans-serif !default; // font for h1, h2.. h6
$font-family-monospace : consolas, courier, monospace !default; // font for code and samples
// Font sizes (1.6rem value is "16px" equivalent)
$font-size-base : 1.6rem !default;
$font-sizes: (
base: (
mobile : 1.4rem,
desktop : $font-size-base
),
h1: (
mobile : 2.8rem,
desktop : 3.2rem
),
h2: (
mobile : 2.4rem,
desktop : 2.8rem
),
h3: (
mobile : 2.0rem,
desktop : 2.4rem
),
h4: (
mobile : 1.8rem,
desktop : 2.0rem
),
h5: (
mobile : 1.6rem,
desktop : 1.8rem
),
h6: (
mobile : 1.4rem,
desktop : 1.6rem
)
) !default;
// Line heights
$line-height-s : 1.3 !default;
$line-height-base : 1.5 !default;
$line-height-l : 1.7 !default;
// Default margin-bottom
$margin-bottom-base : 1rem !default;
$headings-margin-bottom : $margin-bottom-base /2 !default;
$paragraph-margin-bottom: $margin-bottom-base !default;
// Font weights
$weight-light : 200 !default;
$weight-book : 300 !default;
$weight-regular : 400 !default;
$weight-medium : 500 !default;
$weight-bold : 700 !default;
// Activate hyphenation on small screens
$hyphens: false !default;
// ------------
// Spacing zone
// ------------
// Number of grid-columns
$cols: 12 !default;
// Gutter
$gutter: null;
// Grid gutters (for .has-gutter-* classes)
$grid-gutters: (
'': 1rem,
'-l': 2rem,
'-xl': 4rem
) !default;
// Spacings
$spacer-tiny : .5rem !default;
$spacer-tiny-plus : .7rem !default;
$spacer-small : 1rem !default;
$spacer-small-plus : 1.5rem !default;
$spacer-medium : 2rem !default;
$spacer-medium-plus : 3rem !default;
$spacer-large : 4rem !default;
$spacer-large-plus : 6rem !default;
$spacer-extra-large : 8rem !default;
$spacer-extra-large-plus : 12rem !default;
$spacer-ultra-large : 16rem !default;
$spacer-ultra-large-plus : 20rem !default;
// z-indexes
$zindex-navigation : 1000 !default;
$zindex-dropdown : 2000 !default;
$zindex-popover : 3000 !default;
$zindex-tooltip : 4000 !default;
$zindex-modal : 5000 !default;
$zindex-notification : 6000 !default;
$zindex-debug : 7000 !default;
// ----------
// Color zone
// ----------
// Color names
$white : #fff !default;
$gray-100 : #f8f9fa !default;
$gray-200 : #e7e9ed !default;
$gray-300 : #dee2e6 !default;
$gray-400 : #ced4da !default;
$gray-500 : #acb3c2 !default;
$gray-600 : #727e96 !default;
$gray-700 : #454d5d !default;
$gray-800 : #333 !default;
$gray-900 : #212529 !default;
$black : #000 !default;
$blue-300 : #5BC0DE !default;
$blue-500 : #0275D8 !default;
$green-500 : #5CB85C !default;
$orange-500 : #F0AD4E !default;
$red-500 : #D9534F !default;
// Semantic colors
$color-brand : $green-500 !default;
$color-primary : $blue-500 !default;
$color-success : $green-500 !default;
$color-info : $blue-300 !default;
$color-warning : $orange-500 !default;
$color-danger : $red-500 !default;
$color-inverse : $gray-800 !default;
$color-ghost : transparent !default;
$color-muted : $gray-200 !default;
$color-base : $gray-900 !default;
$background-base : $white !default;
$forms-color : $gray-800 !default;
// ---------------
// Components zone
// ---------------
// Component: links
$link-color : $gray-800 !default;
$link-color-hover : darken($link-color, 15%) !default;
$link-decoration : underline !default;
$link-decoration-hover : underline !default;
// Global border-radius
$border-radius: 0 !default;
// Component: quotes
$quote-color : $gray-200 !default;
// Component: arrows
$arrow-color : $black !default;
// Components: checkboxes, radios, switches
$checkbox-color: $white !default;
$checkbox-background: $gray-800 !default;
$checkbox-size: 2rem !default;
$checkbox-border-radius: 4px !default;
$radio-color: $gray-800 !default;
$radio-background: $white !default;
$switch-color: $white !default;
$switch-background: $gray-800 !default;
$switch-size: 2rem !default;
$switch-border-radius: 3em !default;
// Component: tables
$table-border : $gray-500 !default;
$table-caption-color : $gray-800 !default;
$table-background : transparent !default;
$table-head-color : $color-base !default;
$table-head-background : transparent !default;
$table-footer-color : $color-base !default;
$table-footer-background : transparent !default;
// Components: buttons, badges, alerts color variants list
// Convention is: name - background-color - color - border
$variants-list: (
(primary, $color-primary, $white, none),
(success, $color-success, $white, none),
(info, $color-info, $black, none),
(warning, $color-warning, $black, none),
(danger, $color-danger, $white, none),
(inverse, $color-inverse, $white, none),
(ghost, $color-ghost, $white, 0 0 0 1px $white inset)
) !default;
// Component: tabs
$tabs-border : $gray-200 !default;
$tabs-active-border : $gray-800 !default;
$tabs-color : $color-base !default;
$tabs-active-color : $gray-800 !default;
$tabs-background : transparent !default;
$tabs-active-background : transparent !default;
$tabs-border-radius : 0 !default;
// Component: nav burger button
$burger-color : $gray-800 !default;
$burger-background : transparent !default;
$burger-hover-background : transparent !default;
$burger-size : 2.6rem !default;
$burger-weight : 5px !default; // size of stripes
$burger-padding : 0 !default;
// personnalisations pour sq_immomardi
$opacite_header : 0.6;
$header-height:205px;

64
css/knacss/_knacss.scss Normal file
View file

@ -0,0 +1,64 @@
/*!
* www.KNACSS.com v7.1.2 (january, 30 2019) @author: Alsacreations, Raphael Goetter
* Licence WTFPL http://www.wtfpl.net/
*/
/* ----------------------------- */
/* ==Table Of Content */
/* ----------------------------- */
/*
1- Reboot (basic reset)
2- Libraries :
- Base
- Print
- Layout (alignment, modules, positionning)
- Utilities (width and spacers helpers)
- Responsive helpers
- WordPress reset (disabled by default)
- Grillade (Grid System)
3- Components :
- Media object
- Skip Links for accessibility
- Tables
- Forms
- Buttons
- Checkbox
- Tabs
- Tags
- Badges
- Alerts
*/
@import "_vendor/reboot"; // Bootstrap reboot (basic reset) (CSS file renamed and imported as if it was a partial because of libsass)
// WARNING : you should comment the following @import (variables)
// and move variables file from knacss folder to your own project folder!
@import "_config/variables";
@import "_config/mixins";
// Core Libraries
@import "_library/base"; // basic styles
@import "_library/print"; // print quick reset
@import "_library/layout"; // alignment, modules, positionning
@import "_library/utilities"; // width and spacer helpers
@import "_library/responsive"; // Responsive Web Design helpers
// @import "_library/wordpress"; // WordPress reset and basic styles
// New Grid System by default (Grid Layout). If you prefer old "Flexbox" Grid System, replace file with "_library/grillade-flex"
// Note that none of these files are prefixed by an underscore, in order to compile them.
@import "_library/grillade-grid"; // grid system with Grid Layout
// Components
@import "components/media"; // media object
@import "components/skip-links"; // skip links
@import "components/tables"; // data tables consistency
@import "components/forms"; // forms consistency and styles
@import "components/buttons"; // buttons styles
@import "components/checkbox"; // checkbox, radio, switch styles
@import "components/tabs"; // tabs styles
@import "components/arrows"; // arrows styles
@import "components/tags"; // tags styles
@import "components/badges"; // badges styles
@import "components/alerts"; // alerts styles

View file

@ -0,0 +1,274 @@
/* ----------------------------- */
/* ==Base (basic styles) */
/* ----------------------------- */
/* disable animations styles when reduced rotion is enabled */
@media (prefers-reduced-motion: reduce) {
* {
animation: none !important;
transition: none !important;
}
}
/* switching to border-box model for all elements */
html {
box-sizing: border-box;
}
*,
*::before,
*::after {
box-sizing: inherit;
/* avoid min-width: auto on flex and grid children */
min-width: 0;
min-height: 0;
}
html {
/* set base font-size to equiv "10px", which is adapted to rem unit */
font-size: 62.5%;
/* IE9-IE11 math fixing. See http://bit.ly/1g4X0bX */
font-size: calc(1em * 0.625);
}
body {
margin: 0;
@include font-size(base);
background-color: $background-base;
color: $color-base;
font-family: $font-family-base;
line-height: $line-height-base;
}
/* Links */
a {
color: $link-color;
text-decoration: $link-decoration;
&:focus,
&:hover,
&:active {
color: $link-color-hover;
text-decoration: $link-decoration-hover;
}
}
/* Headings */
h1, .h1-like {
@include font-size(h1);
@if variable_exists(font-family-headings) and $font-family-headings != $font-family-base{
font-family: $font-family-headings;
}
font-weight: $weight-medium;
}
h2, .h2-like {
@include font-size(h2);
@if variable_exists(font-family-headings) and $font-family-headings != $font-family-base{
font-family: $font-family-headings;
}
font-weight: $weight-medium;
}
h3, .h3-like {
@include font-size(h3);
font-weight: $weight-medium;
}
h4, .h4-like {
@include font-size(h4);
font-weight: $weight-medium;
}
h5, .h5-like {
@include font-size(h5);
font-weight: $weight-medium;
}
h6, .h6-like {
@include font-size(h6);
font-weight: $weight-medium;
}
/* Vertical rythm */
h1,
h2,
h3,
h4,
h5,
h6,
dd {
margin-top: 0;
margin-bottom: $headings-margin-bottom;
}
p,
address,
ol,
ul,
dl,
blockquote,
pre {
margin-top: 0;
margin-bottom: $paragraph-margin-bottom;
}
/* Avoid margins on nested elements */
li p,
li .p-like,
li ul,
li ol,
ol ol,
ul ul {
margin-top: 0;
margin-bottom: 0;
}
/* Max values */
img,
table,
td,
blockquote,
code,
pre,
textarea,
input,
video,
svg {
max-width: 100%;
}
img {
height: auto;
}
/* Styling elements */
ul,
ol {
padding-left: 2em;
}
img {
vertical-align: middle;
}
em,
.italic,
address,
cite,
i,
var {
font-style: italic;
}
code,
kbd,
mark {
border-radius: 2px;
}
kbd {
padding: 0 2px;
border: 1px solid #999;
}
pre {
tab-size: 2;
}
code {
padding: 2px 4px;
background: rgba(0, 0, 0, 0.04);
color: #b11;
}
pre code {
padding: 0;
background: none;
color: inherit;
border-radius: 0;
}
mark {
padding: 2px 4px;
}
sup,
sub {
vertical-align: 0;
}
sup {
bottom: 1ex;
}
sub {
top: 0.5ex;
}
blockquote {
position: relative;
padding-left: 3em;
min-height: 2em;
}
blockquote::before {
content: "\201C";
position: absolute;
left: 0;
top: 0;
font-family: georgia, serif;
font-size: 5em;
height: .4em;
line-height: .9;
color: $quote-color;
}
blockquote > footer {
margin-top: .75em;
font-size: 0.9em;
color: rgba(0, 0, 0, .7);
&::before {
content: "\2014 \0020";
}
}
q {
font-style: normal;
}
q,
.q {
quotes: "" "" "" "";
&:lang(fr) {
quotes: "«\00a0" "\00a0»" "" "";
}
}
hr {
display: block;
clear: both;
height: 1px;
margin: 1em 0 2em;
padding: 0;
border: 0;
color: #ccc;
background-color: #ccc;
}
blockquote,
figure {
margin-left: 0;
margin-right: 0;
}
code,
pre,
samp,
kbd {
white-space: pre-wrap;
font-family: $font-family-monospace;
line-height: normal;
}

View file

@ -0,0 +1,146 @@
/* ---------------------------------- */
/* ==Grillade v6 */
/* ---------------------------------- */
/* IMPORTANT : this is the KNACSS v6 old Grid System based on Flexbox */
/* You only need it for projects on older browsers (IE11-) */
// Responsive breakpoints variables
// Warning : you should use your own values, regardless of the devices
// Best practice : (max-width: ($BP - 1)) and (min-width: $BP)
$tiny: 480px !default; // or 'em' if you prefer, of course
$small: 576px !default;
$medium: 768px !default;
$large: 992px !default;
$extra-large: 1200px !default;
$cols: 12 !default;
// gutter values for grid layouts. Unit can be: %, px, em, rem
$grid-gutters: ( '': 1rem, '-l': 2rem, '-xl': 4rem );
// IEfixing, see
// https://github.com/alsacreations/KNACSS/issues/133;
$iefix: 0.01px;
@media (min-width: $small) {
[class*=" grid-"],
[class^="grid-"] {
display: flex;
flex-direction: row;
flex-wrap: wrap;
& > * {
box-sizing: border-box;
min-width: 0;
min-height: 0;
}
}
}
// Multi-line grid constructor
// example : .grid-perso { @include grid(12, 3rem); }
@mixin grid($grid-number: 1, $own-gutter: 0) {
& > * {
width: calc(100% / #{$grid-number} - #{$iefix});
}
@each $affix, $size in $grid-gutters {
&.has-gutter#{$affix} {
margin-right: -$size / 2;
margin-left: -$size / 2;
& > * {
width: calc(100% / #{$grid-number} - #{$size} - #{$iefix});
margin-right: $size / 2;
margin-left: $size / 2;
}
}
}
@if ($own-gutter != 0) {
margin-right: -$own-gutter / 2;
margin-left: -$own-gutter / 2;
& > * {
width: calc(100% / #{$grid-number} - #{$own-gutter} - #{$iefix});
margin-right: $own-gutter / 2;
margin-left: $own-gutter / 2;
}
}
}
// Mono-line grid constructor (.grid)
@media (min-width: $small) {
.grid,
.grid--reverse {
display: flex;
& > * {
flex: 1 1 0%;
box-sizing: border-box;
min-width: 0;
min-height: 0;
}
@each $affix, $size in $grid-gutters {
&.has-gutter#{$affix} > * + * {
margin-left: calc(#{$size} - #{$iefix});
}
}
}
}
// Constructing grids : will be compiled in CSS
@media (min-width: $small) {
@for $i from 2 through $cols {
[class*="grid-#{$i}"] {
@include grid(#{$i}, 0);
}
}
}
// Grid offsets
.push {
margin-left: auto !important;
}
.pull {
margin-right: auto !important;
}
// Grid order
.item-first {
order: -1;
}
.item-last {
order: 1;
}
[class*="grid-"][class*="--reverse"] {
flex-direction: row-reverse;
}
// sizing individual children
@media (min-width: $small) {
@each $flow, $divider in ("full" "1"), ("one-half" "2"), ("one-third" "3"), ("one-quarter" "4"), ("one-fifth" "5"), ("one-sixth" "6"), ("two-thirds" "3 * 2"), ("three-quarters" "4 * 3"), ("five-sixths" "6 * 5") {
.#{$flow} {
flex: 0 0 auto;
width: calc(100% / #{$divider} - #{$iefix});
}
@each $affix, $size in $grid-gutters {
.has-gutter#{$affix} > .#{$flow} {
width: calc(100% / #{$divider} - #{$size} - #{$iefix});
}
}
}
}
/* Responsive Small Breakpoint */
// -small-X suffix means "X columns on small-medium screen"
// example : .grid-4-small-2 will be 1 column (tiny and down) then 2 columns (until medium) then 4 columns
@media (min-width: $small) and (max-width: ($medium - 1)) {
@for $i from 1 through 4 {
[class*="-small-#{$i}"] {
& > * {
width: calc(100% / #{$i} - #{$iefix});
}
@each $affix, $size in $grid-gutters {
&.has-gutter#{$affix} > * {
width: calc(100% / #{$i} - #{$size} - #{$iefix});
}
}
}
}
}

View file

@ -0,0 +1,118 @@
/* --------------------------------------- */
/* ==Grillade : ultra light Grid System */
/* --------------------------------------- */
// WARNING: THIS IS NOT A COMPLETE GRID FRAMEWORK, just ultra light Grid System
// if you need complex Grid :
// 1- use vanilla CSS Grid Layout spec (perfect for you)
// 2- use Bootstrap (good luck)
// use these variables only for a standalone Grillade
// in KNACSS, you shall modify variables file instead
$tiny: 480px !default;
$medium: 768px !default;
$cols: 12 !default;
// classic Grid
[class*=" grid-"],
[class^="grid-"] {
@media (min-width: $tiny) {
display: grid;
grid-auto-flow: dense;
// gutters
@if variable_exists(grid-gutters) {
$gutter: $grid-gutters !global;
}
@else {
$gutter: ( '': 1rem, '-l': 2rem, '-xl': 4rem ) !global;
}
@each $affix, $size in $gutter {
&.has-gutter#{$affix} {
grid-gap: $size;
}
}
}
}
// autogrid
.autogrid,
.grid {
@media (min-width: $tiny) {
display: grid;
grid-auto-flow: column;
grid-auto-columns: 1fr;
// gutters
@if variable_exists(grid-gutters) {
$gutter: $grid-gutters !global;
} @else {
$gutter: ( '': 1rem, '-l': 2rem, '-xl': 4rem ) !global;
}
@each $affix, $size in $gutter {
&.has-gutter#{$affix} {
grid-column-gap: $size;
}
}
}
}
// grid constructor (.grid-2 to .grid-$cols)
@for $i from 2 through $cols {
[class*="grid-#{$i}"] {
grid-template-columns: repeat(#{$i}, 1fr);
}
}
// grid items constructor (.col-1 to .col-$cols, .row-1 to .row-$cols)
@for $i from 1 through $cols {
[class*="col-#{$i}"] {
grid-column: auto / span #{$i};
}
[class*="row-#{$i}"] {
grid-row: auto / span #{$i};
}
}
/* intermediate breakpoints */
// -small-X suffix means "X columns when < medium screen"
// example : .grid-4-small-2 will be 1 column (< tiny) then 2 columns (< medium) then 4 columns
@media (min-width: $tiny) and (max-width: ($medium - 1)) {
@for $i from 1 through 4{
[class*="grid-"][class*="-small-#{$i}"] {
grid-template-columns: repeat(#{$i}, 1fr);
}
[class*="col-"][class*="-small-#{$i}"] {
grid-column: auto / span #{$i};
}
}
[class*="-small-all"] {
grid-column: 1 / -1;
}
}
// grid order
.item-first {
order: -1;
}
.item-last {
order: 1;
}
// grid offset
.grid-offset {
visibility: hidden;
}
// spanning all columns or rows
.col-all {
grid-column: 1 / -1;
}
.row-all {
grid-row: 1 / -1;
}

View file

@ -0,0 +1,65 @@
/* ----------------------------- */
/* ==Global Micro Layout */
/* ----------------------------- */
/* Flexbox layout is KNACSS choice
http://www.alsacreations.com/tuto/lire/1493-css3-flexbox-layout-module.html
*/
.flex-container,
.d-flex {
display: flex;
flex-wrap: wrap;
}
.flex-container--row,
.flex-row {
@extend .flex-container;
flex-direction: row;
}
.flex-container--column,
.flex-column {
@extend .flex-container;
flex-direction: column;
}
.flex-container--row-reverse,
.flex-row-reverse {
@extend .flex-container;
flex-direction: row-reverse;
justify-content: flex-end;
}
.flex-container--column-reverse,
.flex-column-reverse {
@extend .flex-container;
flex-direction: column-reverse;
justify-content: flex-end;
}
.flex-item-fluid,
.item-fluid {
flex: 1 1 0%;
}
.flex-item-first,
.item-first {
order: -1;
}
.flex-item-medium,
.item-medium {
order: 0;
}
.flex-item-last,
.item-last {
order: 1;
}
.flex-item-center,
.item-center,
.mr-auto {
margin: auto;
}

View file

@ -0,0 +1,98 @@
/* ----------------------------- */
/* ==Print (quick print reset) */
/* ----------------------------- */
@media print {
* {
background: transparent !important;
box-shadow: none !important;
text-shadow: none !important;
}
body {
width: auto;
margin: auto;
font-family: serif;
font-size: 12pt;
}
p,
.p-like,
h1,
.h1-like,
h2,
.h2-like,
h3,
.h3-like,
h4,
.h4-like,
h5,
.h5-like,
h6,
.h6-like,
blockquote,
label,
ul,
ol {
color: #000;
margin: auto;
}
.print {
display: block;
}
.no-print {
display: none;
}
/* no orphans, no widows */
p,
.p-like,
blockquote {
orphans: 3;
widows: 3;
}
/* no breaks inside these elements */
blockquote,
ul,
ol {
page-break-inside: avoid;
}
/* page break before main headers
h1,
.h1-like {
page-break-before: always;
}
*/
/* no breaks after these elements */
h1,
.h1-like,
h2,
.h2-like,
h3,
.h3-like,
caption {
page-break-after: avoid;
}
a {
color: #000;
}
/* displaying URLs
a[href]::after {
content: " (" attr(href) ")";
}
*/
a[href^="javascript:"],
a[href^="#"] {
&::after {
content: "";
}
}
}

View file

@ -0,0 +1,284 @@
/* -------------------------- */
/* ==Responsive helpers */
/* -------------------------- */
/* large screens */
/* ------------- */
@media (min-width: $large) {
/* layouts for large screens */
.large-hidden {
display: none !important;
}
.large-visible {
display: block !important;
}
.large-no-float {
float: none;
}
.large-inbl {
display: inline-block;
float: none;
vertical-align: top;
}
/* widths for large screens */
.large-w25 {
width: 25% !important;
}
.large-w33 {
width: 33.333333% !important;
}
.large-w50 {
width: 50% !important;
}
.large-w66 {
width: 66.666666% !important;
}
.large-w75 {
width: 75% !important;
}
.large-w100,
.large-wauto {
display: block !important;
float: none !important;
clear: none !important;
width: auto !important;
margin-left: 0 !important;
margin-right: 0 !important;
border: 0;
}
/* margins for large screens */
.large-man,
.large-ma0 {
margin: 0 !important;
}
}
/* medium screens */
/* -------------- */
@media (min-width: $medium) and (max-width: ($large - 1)) {
/* layouts for medium screens */
.medium-hidden {
display: none !important;
}
.medium-visible {
display: block !important;
}
.medium-no-float {
float: none;
}
.medium-inbl {
display: inline-block;
float: none;
vertical-align: top;
}
/* widths for medium screens */
.medium-w25 {
width: 25% !important;
}
.medium-w33 {
width: 33.333333% !important;
}
.medium-w50 {
width: 50% !important;
}
.medium-w66 {
width: 66.666666% !important;
}
.medium-w75 {
width: 75% !important;
}
.medium-w100,
.medium-wauto {
display: block !important;
float: none !important;
clear: none !important;
width: auto !important;
margin-left: 0 !important;
margin-right: 0 !important;
border: 0;
}
/* margins for medium screens */
.medium-man,
.medium-ma0 {
margin: 0 !important;
}
}
/* small screens */
/* ------------- */
@media (min-width: $small) and (max-width: ($medium - 1)) {
/* layouts for small screens */
.small-hidden {
display: none !important;
}
.small-visible {
display: block !important;
}
.small-no-float {
float: none;
}
.small-inbl {
display: inline-block;
float: none;
vertical-align: top;
}
/* widths for small screens */
.small-w25 {
width: 25% !important;
}
.small-w33 {
width: 33.333333% !important;
}
.small-w50 {
width: 50% !important;
}
.small-w66 {
width: 66.666666% !important;
}
.small-w75 {
width: 75% !important;
}
.small-w100,
.small-wauto {
display: block !important;
float: none !important;
clear: none !important;
width: auto !important;
margin-left: 0 !important;
margin-right: 0 !important;
border: 0;
}
/* margins for small screens */
.small-man,
.small-ma0 {
margin: 0 !important;
}
.small-pan,
.small-pa0 {
padding: 0 !important;
}
}
/* tiny screens */
/* ------------ */
@media (max-width: $small - 1) {
/* quick small resolution reset */
.mod,
.col,
fieldset {
display: block !important;
float: none !important;
clear: none !important;
width: auto !important;
margin-left: 0 !important;
margin-right: 0 !important;
border: 0;
}
.flex-container {
flex-direction: column;
}
/* layouts for tiny screens */
.tiny-hidden {
display: none !important;
}
.tiny-visible {
display: block !important;
}
.tiny-no-float {
float: none;
}
.tiny-inbl {
display: inline-block;
float: none;
vertical-align: top;
}
/* widths for tiny screens */
.tiny-w25 {
width: 25% !important;
}
.tiny-w33 {
width: 33.333333% !important;
}
.tiny-w50 {
width: 50% !important;
}
.tiny-w66 {
width: 66.666666% !important;
}
.tiny-w75 {
width: 75% !important;
}
.tiny-w100,
.tiny-wauto {
display: block !important;
float: none !important;
clear: none !important;
width: auto !important;
margin-left: 0 !important;
margin-right: 0 !important;
border: 0;
}
/* margins for tiny screens */
.tiny-man,
.tiny-ma0 {
margin: 0 !important;
}
.tiny-pan,
.tiny-pa0 {
padding: 0 !important;
}
}

View file

@ -0,0 +1,462 @@
/* ---------------------------------- */
/* ==Helpers */
/* ---------------------------------- */
/* Typo Helpers */
/* ------------- */
.u-bold {
font-weight: $weight-bold;
}
.u-italic {
font-style: italic;
}
.u-normal {
font-weight: normal;
font-style: normal;
}
.u-uppercase {
text-transform: uppercase;
}
.u-lowercase {
text-transform: lowercase;
}
.u-smaller {
font-size: 0.6em;
}
.u-small {
font-size: 0.8em;
}
.u-big {
font-size: 1.2em;
}
.u-bigger {
font-size: 1.5em;
}
.u-biggest {
font-size: 2em;
}
.u-txt-wrap {
word-wrap: break-word;
overflow-wrap: break-word;
hyphens: auto;
}
.u-txt-ellipsis {
white-space: nowrap;
text-overflow: ellipsis;
}
/* text and contents alignment */
.txtleft,
.u-txt-left {
text-align: left;
}
.txtright,
.u-txt-right {
text-align: right;
}
.txtcenter,
.u-txt-center {
text-align: center;
}
@if variable-exists(hyphens) and $hyphens==true {
@media (max-width: ($small - 1)) {
div,
textarea,
table,
td,
th,
code,
pre,
samp {
word-wrap: break-word;
overflow-wrap: break-word;
hyphens: auto;
}
}
}
/* blocks that need to be placed under floats */
.clear,
.u-clear {
clear: both;
}
/* blocks that must contain floats */
.clearfix,
.u-clearfix {
&::after {
content: "";
display: table;
clear: both;
border-collapse: collapse;
}
}
/* simple blocks alignment */
.left,
.u-left {
margin-right: auto;
}
.right,
.u-right {
margin-left: auto;
}
.center,
.u-center {
margin-left: auto;
margin-right: auto;
}
/* Global Micro Layout */
/* ------------------- */
/* module, gains superpower "BFC" Block Formating Context */
.mod,
.u-mod,
.bfc,
.u-bfc {
overflow: hidden;
}
/* floating elements */
.fl,
.u-fl {
float: left;
}
img.fl,
img.u-fl {
margin-right: $spacer-small;
}
.fr,
.u-fr {
float: right;
}
img.fr,
img.u-fr {
margin-left: $spacer-small;
}
img.fl,
img.fr,
img.u-fl,
img.u-fr {
margin-bottom: $spacer-tiny;
}
/* inline-block */
.inbl,
.u-inbl {
display: inline-block;
vertical-align: top;
}
/* State Helpers */
/* ------------- */
/* invisible for all */
.is-hidden,
.js-hidden,
[hidden] {
display: none;
}
/* hidden but not for an assistive technology like a screen reader, Yahoo! method */
.visually-hidden {
position: absolute !important;
border: 0 !important;
height: 1px !important;
width: 1px !important;
padding: 0 !important;
overflow: hidden !important;
clip: rect(0, 0, 0, 0) !important;
}
.is-disabled,
.js-disabled,
[disabled],
.is-disabled ~ label,
[disabled] ~ label {
opacity: 0.5;
cursor: not-allowed !important;
filter: grayscale(1);
}
ul {
&.is-unstyled,
&.unstyled {
list-style: none;
padding-left: 0;
}
}
.color--inverse {
color: $white;
}
/* Width Helpers */
/* ------------- */
/* blocks widths (percentage and pixels) */
$i: 100;
@while $i > 0 {
.w#{$i} {
width: $i * 1%;
}
$i: $i - 5;
}
.w66 {
width: calc(100% / 3 * 2);
}
.w33 {
width: calc(100% / 3);
}
$i: 1000;
.wauto {
width: auto;
}
.w960p {
width: 960px;
}
.mw960p {
max-width: 960px;
}
.w1140p {
width: 1140px;
}
.mw1140p {
max-width: 1140px;
}
@while $i > 0 {
.w#{$i}p {
width: $i * 1px;
}
$i: $i - 50;
}
/* Spacing Helpers */
/* --------------- */
.man,
.ma0 {
margin: 0;
}
.pan,
.pa0 {
padding: 0;
}
.mas {
margin: $spacer-small;
}
.mam {
margin: $spacer-medium;
}
.mal {
margin: $spacer-large;
}
.pas {
padding: $spacer-small;
}
.pam {
padding: $spacer-medium;
}
.pal {
padding: $spacer-large;
}
.mtn,
.mt0 {
margin-top: 0;
}
.mts {
margin-top: $spacer-small;
}
.mtm {
margin-top: $spacer-medium;
}
.mtl {
margin-top: $spacer-large;
}
.mrn,
.mr0 {
margin-right: 0;
}
.mrs {
margin-right: $spacer-small;
}
.mrm {
margin-right: $spacer-medium;
}
.mrl {
margin-right: $spacer-large;
}
.mbn,
.mb0 {
margin-bottom: 0;
}
.mbs {
margin-bottom: $spacer-small;
}
.mbm {
margin-bottom: $spacer-medium;
}
.mbl {
margin-bottom: $spacer-large;
}
.mln,
.ml0 {
margin-left: 0;
}
.mls {
margin-left: $spacer-small;
}
.mlm {
margin-left: $spacer-medium;
}
.mll {
margin-left: $spacer-large;
}
.mauto {
margin: auto;
}
.mtauto {
margin-top: auto;
}
.mrauto {
margin-right: auto;
}
.mbauto {
margin-bottom: auto;
}
.mlauto {
margin-left: auto;
}
.ptn,
.pt0 {
padding-top: 0;
}
.pts {
padding-top: $spacer-small;
}
.ptm {
padding-top: $spacer-medium;
}
.ptl {
padding-top: $spacer-large;
}
.prn,
.pr0 {
padding-right: 0;
}
.prs {
padding-right: $spacer-small;
}
.prm {
padding-right: $spacer-medium;
}
.prl {
padding-right: $spacer-large;
}
.pbn,
.pb0 {
padding-bottom: 0;
}
.pbs {
padding-bottom: $spacer-small;
}
.pbm {
padding-bottom: $spacer-medium;
}
.pbl {
padding-bottom: $spacer-large;
}
.pln,
.pl0 {
padding-left: 0;
}
.pls {
padding-left: $spacer-small;
}
.plm {
padding-left: $spacer-medium;
}
.pll {
padding-left: $spacer-large;
}

View file

@ -0,0 +1,248 @@
/* ----------------------------- */
/* ==WordPress reset */
/* ----------------------------- */
/*
Author: Geoffrey Crofte, Alsacréations
Contributors: Automattic, Geoffrey Crofte
Description: Reset styles for WordPress usage of KNACSS
*/
// current menu elements
.current_page_item > a {
}
.current-menu-item > a {
}
.current_page_ancestor > a {
}
// blocks of content navigation
.comment-navigation,
.paging-navigation,
.post-navigation {
overflow: hidden;
margin: 0 0 1.5em;
& .nav-previous {
float: left;
width: 50%;
}
& .nav-next {
float: right;
width: 50%;
text-align: right;
}
}
// class in img elements
.alignnone {
margin: .25em 1.5em 1.5em 0;
}
.aligncenter {
clear: both;
display: block;
margin: 1.5em auto;
}
.alignleft {
float: left;
margin: 0 1.5em .25em 0;
}
.alignright {
float: right;
margin: 0 0 .25em 1.5em;
}
.entry-content,
.comment-content {
clear: both;
&::after,
&::before {
content: "";
display: table;
}
}
.widget + .widget {
margin: 1.5em 0 0;
}
// usage example:
.widget select {
max-width: 100%;
}
/* === 5.1 Posts - post_class === */
// featured content
.sticky {
}
// attachment post
.attachment {
}
// format of post
.format- {
&aside {
}
&gallery {
}
&link {
}
&image {
}
&quote {
}
&status {
}
&video {
}
&chat {
}
}
// class for a tag
.tag- {
&name-of-tag {
}
}
// class for category
.category- {
&name-of-category {
}
}
/* === 5.2 Pages - body_class === */
// front page
.home {
// if display posts
&.blog {
}
// if static page
&.page {
}
}
// page displays posts
.blog {
// if is frontpage
&.home {
}
// if static page
&.page {
}
}
// simple page
.page {
}
// page of single post
.single {
}
// page of archives
.archive {
}
// page of search
.search {
// if has results
.search-results {
}
// if has no results
.search-no-results {
}
}
// page 404
.error404 {
}
// user logged in
.logged-in {
}
// text direction if right-to-left
// prefer rtl.css: http://codex.wordpress.org/Right-to-Left_Language_Support
.rtl {
}
/* === 5.3 Posts and Pages - Contents === */
.hentry {
margin: 0 0 1.5em;
}
.page-content,
.entry-content,
.entry-summary {
margin: 1.5em 0 0;
}
.page-links {
clear: both;
margin: 0 0 1.5em;
}
.comment-content a {
word-wrap: break-word;
}
.bypostauthor {
// some make-the-logo-bigger styles
}
img.wp-smiley {
margin-bottom: 0;
margin-top: 0;
padding: 0;
border: none;
}
.wp-caption {
max-width: 100%;
margin-bottom: 1.5em;
}
.wp-caption img {
display: block;
margin: 0 auto;
}
.wp-caption-text {
margin: 1em 0;
text-align: center;
}
.gallery {
margin-bottom: 1.5em;
}
.gallery-item {
display: inline-block;
width: 100%;
text-align: center;
vertical-align: top;
@for $i from 2 through 9 {
.gallery-columns-#{$i} & {
$w: floor(10000 / $i) / 100;
max-width: unquote($w + '%');
}
}
}
.gallery-caption {
display: block;
}

View file

@ -0,0 +1,334 @@
*,
*::before,
*::after {
box-sizing: border-box;
}
html {
font-family: sans-serif;
line-height: 1.15;
-webkit-text-size-adjust: 100%;
-ms-text-size-adjust: 100%;
-ms-overflow-style: scrollbar;
-webkit-tap-highlight-color: transparent;
}
@-ms-viewport {
width: device-width;
}
article, aside, dialog, figcaption, figure, footer, header, hgroup, main, nav, section {
display: block;
}
body {
margin: 0;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-size: 1rem;
font-weight: 400;
line-height: 1.5;
color: #212529;
text-align: left;
background-color: #fff;
}
[tabindex="-1"]:focus {
outline: none !important;
}
hr {
box-sizing: content-box;
height: 0;
overflow: visible;
}
h1, h2, h3, h4, h5, h6 {
margin-top: 0;
margin-bottom: 0.5rem;
}
p {
margin-top: 0;
margin-bottom: 1rem;
}
abbr[title],
abbr[data-original-title] {
text-decoration: underline;
-webkit-text-decoration: underline dotted;
text-decoration: underline dotted;
cursor: help;
border-bottom: 0;
}
address {
margin-bottom: 1rem;
font-style: normal;
line-height: inherit;
}
ol,
ul,
dl {
margin-top: 0;
margin-bottom: 1rem;
}
ol ol,
ul ul,
ol ul,
ul ol {
margin-bottom: 0;
}
dt {
font-weight: 700;
}
dd {
margin-bottom: .5rem;
margin-left: 0;
}
blockquote {
margin: 0 0 1rem;
}
dfn {
font-style: italic;
}
b,
strong {
font-weight: bold;
}
small {
font-size: 80%;
}
sub,
sup {
position: relative;
font-size: 75%;
line-height: 0;
vertical-align: baseline;
}
sub {
bottom: -.25em;
}
sup {
top: -.5em;
}
a {
color: #007bff;
text-decoration: none;
background-color: transparent;
-webkit-text-decoration-skip: objects;
}
a:hover {
color: #0056b3;
text-decoration: underline;
}
a:not([href]):not([tabindex]) {
color: inherit;
text-decoration: none;
}
a:not([href]):not([tabindex]):focus, a:not([href]):not([tabindex]):hover {
color: inherit;
text-decoration: none;
}
a:not([href]):not([tabindex]):focus {
outline: 0;
}
pre,
code,
kbd,
samp {
font-family: monospace, monospace;
font-size: 1em;
}
pre {
margin-top: 0;
margin-bottom: 1rem;
overflow: auto;
-ms-overflow-style: scrollbar;
}
figure {
margin: 0 0 1rem;
}
img {
vertical-align: middle;
border-style: none;
}
svg:not(:root) {
overflow: hidden;
}
a,
area,
button,
[role="button"],
input:not([type="range"]),
label,
select,
summary,
textarea {
-ms-touch-action: manipulation;
touch-action: manipulation;
}
table {
border-collapse: collapse;
}
caption {
padding-top: 0.75rem;
padding-bottom: 0.75rem;
color: #868e96;
text-align: left;
caption-side: bottom;
}
th {
text-align: inherit;
}
label {
display: inline-block;
margin-bottom: .5rem;
}
button {
border-radius: 0;
}
button:focus {
outline: 1px dotted;
outline: 5px auto -webkit-focus-ring-color;
}
input,
button,
select,
optgroup,
textarea {
margin: 0;
font-family: inherit;
font-size: inherit;
line-height: inherit;
}
button,
input {
overflow: visible;
}
button,
select {
text-transform: none;
}
button,
html [type="button"],
[type="reset"],
[type="submit"] {
-webkit-appearance: button;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
padding: 0;
border-style: none;
}
input[type="radio"],
input[type="checkbox"] {
box-sizing: border-box;
padding: 0;
}
input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
-webkit-appearance: listbox;
}
textarea {
overflow: auto;
resize: vertical;
}
fieldset {
min-width: 0;
padding: 0;
margin: 0;
border: 0;
}
legend {
display: block;
width: 100%;
max-width: 100%;
padding: 0;
margin-bottom: .5rem;
font-size: 1.5rem;
line-height: inherit;
color: inherit;
white-space: normal;
}
progress {
vertical-align: baseline;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
height: auto;
}
[type="search"] {
outline-offset: -2px;
-webkit-appearance: none;
}
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
::-webkit-file-upload-button {
font: inherit;
-webkit-appearance: button;
}
output {
display: inline-block;
}
summary {
display: list-item;
}
template {
display: none;
}
[hidden] {
display: none !important;
}

View file

@ -0,0 +1,55 @@
/* ----------------------------- */
/* ==Alerts */
/* ----------------------------- */
/* use .alert-- classes for variants */
.alert {
padding: $spacer-small $spacer-small;
margin-top: 0.75em;
margin-bottom: 0;
color: $color-base;
border-radius: $border-radius;
background-color: $color-muted;
& a {
color: inherit;
text-decoration: underline;
}
}
.alert {
@each $name, $background-color, $color, $border in $variants-list {
&--#{$name} {
@extend .alert;
background-color: $background-color;
color: $color;
box-shadow: $border;
}
}
}
// alert state variants
.alert {
&--small {
font-size: $font-size-base - 0.4rem;
}
&--big {
font-size: $font-size-base + 0.4rem;
}
&--block {
width: 100% !important;
display: block;
}
&.disabled,
&--disabled {
opacity: 0.5;
cursor: not-allowed;
}
&:empty {
display: none;
}
}

View file

@ -0,0 +1,34 @@
/* ----------------------------- */
/* ==Arrows */
/* ----------------------------- */
/* see https://knacss.com/styleguide.html#arrows */
[class*="icon-arrow--"] {
vertical-align: middle;
&::after {
content: "";
display: inline-block;
width: 1em;
height: 1em;
mask-size: cover;
background-color: $arrow-color;
line-height: 1;
}
}
.icon-arrow--down::after {
mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20standalone%3D%22no%22%3F%3E%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20xmlns%3Axlink%3D%22http%3A//www.w3.org/1999/xlink%22%20style%3D%22isolation%3Aisolate%22%20viewBox%3D%220%200%2020%2020%22%20width%3D%2220%22%20height%3D%2220%22%3E%3Cpath%20d%3D%22%20M%209.96%2011.966%20L%203.523%205.589%20C%202.464%204.627%200.495%206.842%201.505%207.771%20L%201.505%207.771%20L%208.494%2014.763%20C%209.138%2015.35%2010.655%2015.369%2011.29%2014.763%20L%2011.29%2014.763%20L%2018.49%207.771%20C%2019.557%206.752%2017.364%204.68%2016.262%205.725%20L%2016.262%205.725%20L%209.96%2011.966%20Z%20%22%20fill%3D%22inherit%22/%3E%3C/svg%3E");
}
.icon-arrow--up::after {
mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20standalone%3D%22no%22%3F%3E%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20xmlns%3Axlink%3D%22http%3A//www.w3.org/1999/xlink%22%20style%3D%22isolation%3Aisolate%22%20viewBox%3D%220%200%2020%2020%22%20width%3D%2220%22%20height%3D%2220%22%3E%3Cpath%20d%3D%22%20M%209.96%208.596%20L%203.523%2014.973%20C%202.464%2015.935%200.495%2013.72%201.505%2012.791%20L%201.505%2012.791%20L%208.494%205.799%20C%209.138%205.212%2010.655%205.193%2011.29%205.799%20L%2011.29%205.799%20L%2018.49%2012.791%20C%2019.557%2013.809%2017.364%2015.882%2016.262%2014.837%20L%2016.262%2014.837%20L%209.96%208.596%20Z%20%22%20fill%3D%22inherit%22/%3E%3C/svg%3E");
}
.icon-arrow--right::after {
mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20standalone%3D%22no%22%3F%3E%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20xmlns%3Axlink%3D%22http%3A//www.w3.org/1999/xlink%22%20style%3D%22isolation%3Aisolate%22%20viewBox%3D%220%200%2020%2020%22%20width%3D%2220%22%20height%3D%2220%22%3E%3Cpath%20d%3D%22%20M%2011.685%2010.321%20L%205.308%2016.758%20C%204.346%2017.817%206.561%2019.786%207.49%2018.776%20L%207.49%2018.776%20L%2014.482%2011.787%20C%2015.069%2011.142%2015.088%209.626%2014.482%208.991%20L%2014.482%208.991%20L%207.49%201.791%20C%206.472%200.724%204.399%202.916%205.444%204.019%20L%205.444%204.019%20L%2011.685%2010.321%20Z%20%22%20fill%3D%22inherit%22/%3E%3C/svg%3E");
}
.icon-arrow--left::after {
mask-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20standalone%3D%22no%22%3F%3E%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20xmlns%3Axlink%3D%22http%3A//www.w3.org/1999/xlink%22%20style%3D%22isolation%3Aisolate%22%20viewBox%3D%220%200%2020%2020%22%20width%3D%2220%22%20height%3D%2220%22%3E%3Cpath%20d%3D%22%20M%208.315%2010.321%20L%2014.692%2016.758%20C%2015.654%2017.817%2013.439%2019.786%2012.51%2018.776%20L%2012.51%2018.776%20L%205.518%2011.787%20C%204.931%2011.142%204.912%209.626%205.518%208.991%20L%205.518%208.991%20L%2012.51%201.791%20C%2013.528%200.724%2015.601%202.916%2014.556%204.019%20L%2014.556%204.019%20L%208.315%2010.321%20Z%20%22%20fill%3D%22inherit%22/%3E%3C/svg%3E");
}

View file

@ -0,0 +1,51 @@
/* ----------------------------- */
/* ==Badges */
/* ----------------------------- */
/* use .badge-- classes for variants */
.badge {
display: inline-block;
padding: $spacer-tiny;
border-radius: 50%;
color: $color-base;
background-color: $color-muted;
line-height: 1;
&::before {
content: "";
display: inline-block;
vertical-align: middle;
padding-top: 100%;
}
}
.badge {
@each $name, $background-color, $color, $border in $variants-list {
&--#{$name} {
@extend .badge;
background-color: $background-color;
color: $color;
}
}
}
// badge state variants
.badge {
&--small {
font-size: $font-size-base - 0.4rem;
}
&--big {
font-size: $font-size-base + 0.4rem;
}
&.disabled,
&--disabled {
opacity: 0.5;
cursor: not-allowed;
}
&:empty {
display: none;
}
}

View file

@ -0,0 +1,158 @@
/* ----------------------------- */
/* ==Buttons */
/* ----------------------------- */
/* preferably use <button> for buttons !*/
/* use .btn-- or .button-- classes for variants */
%btn {
display: inline-block;
padding: $spacer-small $spacer-small-plus;
cursor: pointer;
user-select: none;
transition: 0.25s;
transition-property: box-shadow, background-color, color, border;
text-align: center;
vertical-align: middle;
white-space: nowrap;
text-decoration: none;
color: $color-base;
border: none;
border-radius: $border-radius;
background-color: $color-muted;
font-family: inherit;
font-size: inherit;
line-height: 1;
}
.btn,
.button,
[type="button"],
button {
@extend %btn;
&:focus {
-webkit-tap-highlight-color: transparent;
}
}
.btn,
.button {
@each $name, $background-color, $color, $border in $variants-list {
&--#{$name} {
@extend %btn;
background-color: $background-color;
color: $color;
box-shadow: $border;
&:active,
&:focus,
&:hover {
background-color: darken( $background-color, 10% );
}
}
}
}
// button state variants
.btn,
.button {
&--small {
padding: $spacer-tiny-plus $spacer-small;
font-size: .8em;
}
&--big {
padding: $spacer-small-plus $spacer-medium;
font-size: 1.4em;
}
&--block {
width: 100% !important;
display: block;
}
&--unstyled {
padding: 0;
border: none;
text-align: left;
background: none;
border-radius: 0;
box-shadow: none;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
&:focus {
box-shadow: none;
outline: none;
}
}
}
// nav "burger" button
// activate it with a JS toggle-class to .is-active
// recommended HTML : <button class="nav-button" type="button" role="button" aria-label="open/close navigation"><i></i></button>
// see doc : https://knacss.com/styleguide.html#buttons
.nav-button {
padding: 0;
background-color: transparent;
outline: 0;
border: 0;
cursor: pointer;
-webkit-tap-highlight-color: transparent;
& > * {
display: inline-flex;
vertical-align: top;
flex-direction: column;
justify-content: space-between;
align-items: stretch;
height: $burger-size;
width: $burger-size;
padding: $burger-padding;
background-color: $burger-background;
background-image: linear-gradient($burger-color, $burger-color);
background-position: center;
background-repeat: no-repeat;
background-origin: content-box;
background-size: 100% $burger-weight;
transition: .25s;
transition-property: transform, background;
will-change: transform, background;
&::before,
&::after {
content: "";
height: $burger-weight;
background: $burger-color;
transition: .25s;
transition-property: transform, top;
will-change: transform, top;
}
}
&:hover {
& > * {
background-color: $burger-hover-background;
}
}
&:focus {
outline: 0;
}
&.is-active {
& > * {
background-image: none;
justify-content: center;
&::before {
transform: translateY(50%) rotate3d(0,0,1,45deg);
}
&::after {
transform: translateY(-50%) rotate3d(0,0,1,-45deg);
}
}
}
}

View file

@ -0,0 +1,119 @@
/* ----------------------------- */
/* ==Checkbox, radio, switch */
/* ----------------------------- */
/* use .checkbox class on input type=checkbox */
/* recommended HTML : <input type="checkbox" class="checkbox" id="c1"><label for="c1">click here</label> */
/* use .radio class on input type=radio */
/* recommended HTML : <input type="radio" class="radio" name="radio" id="r1"><label for="r1">Click here</label> */
/* use .switch class on input type=checkbox */
// <input type="checkbox" class="switch" id="switch"><label for="switch" class="label">slide to unlock</label>
// common styles
.checkbox {
border-radius: $checkbox-border-radius;
}
.switch {
border-radius: $switch-border-radius;
}
.radio {
border-radius: 50%;
}
.switch,
.checkbox,
.radio {
appearance: none;
vertical-align: text-bottom;
outline: 0;
cursor: pointer;
& ~ label {
cursor: pointer;
}
&::-ms-check {
display: none; // unstyle IE checkboxes
}
}
// switch styling
.switch {
width: $switch-size *2;
height: $switch-size;
line-height: $switch-size;
font-size: 70%;
box-shadow: inset -#{$switch-size} 0 0 $switch-background,
inset 0 0 0 1px $switch-background;
transition: box-shadow .15s;
background-color: $switch-color;
&::before,
&::after {
font-weight: bold;
color: $switch-color;
}
&::before {
content: "";
float: right;
margin-right: $switch-size /3;
}
&:checked {
box-shadow: inset #{$switch-size} 0 0 $color-success,
inset 0 0 0 1px $color-success;
&::before {
content: "";
float: left;
margin-left: $switch-size /3;
}
}
}
// checkbox styling
.checkbox {
width: $checkbox-size;
height: $checkbox-size;
box-shadow: inset 0 0 0 1px $checkbox-background;
background-color: $checkbox-color;
transition: background-color .15s;
&:checked {
$red: red($checkbox-color);
$green: green($checkbox-color);
$blue: blue($checkbox-color);
$rgb: rgb($red, $green, $blue);
$slice: str-slice(ie-hex-str($rgb), 4);
$first: "data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%0A%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20x%3D%220%22%20y%3D%220%22%20viewBox%3D%220%200%208%208%22%20enable-background%3D%22new%200%200%208%208%22%20xml%3Aspace%3D%22preserve%22%3E%20%3Cpath%20fill%3D%22%23";
$last: "%22%20d%3D%22M6.4%2C1L5.7%2C1.7L2.9%2C4.5L2.1%2C3.7L1.4%2C3L0%2C4.4l0.7%2C0.7l1.5%2C1.5l0.7%2C0.7l0.7-0.7l3.5-3.5l0.7-0.7L6.4%2C1L6.4%2C1z%22%20%2F%3E%0A%3C%2Fsvg%3E";
$combo: "#{$first}#{$slice}#{$last}";
background-image: url($combo);
background-size: 60% 60%;
background-position: center;
background-repeat: no-repeat;
background-color: $checkbox-background;
}
}
// radio styling
.radio {
width: $checkbox-size;
height: $checkbox-size;
background-size: 0% 0%;
transition: background-size .15s;
box-shadow: inset 0 0 0 1px $radio-color;
background-color: $radio-background;
&:checked {
$red: red($radio-color);
$green: green($radio-color);
$blue: blue($radio-color);
$rgb: rgb($red, $green, $blue);
$slice: str-slice(ie-hex-str($rgb), 4);
$first: "data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20standalone%3D%22no%22%3F%3E%3Csvg%20version%3D%221.1%22%20width%3D%22100%22%20height%3D%22100%22%0AviewBox%3D%220%200%2080%2080%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Ccircle%20cx%3D%2240%22%20cy%3D%2240%22%20r%3D%2224%22%20style%3D%22fill%3A%23";
$last: "%22/%3E%3C/svg%3E";
$combo: "#{$first}#{$slice}#{$last}";
background-image: url($combo);
background-size: 90% 90%;
background-position: center;
background-repeat: no-repeat;
background-color: $radio-background;
}
}

View file

@ -0,0 +1,114 @@
/* ----------------------------- */
/* ==Forms */
/* ----------------------------- */
/* thanks to HTML5boilerplate and https://shoelace.style/ */
/* forms items */
form,
fieldset {
border: none;
}
fieldset {
padding: $spacer-medium;
& legend {
padding: 0 $spacer-tiny;
border: 0;
white-space: normal;
}
}
label {
display: inline-block;
cursor: pointer;
}
[type="color"],
[type="date"],
[type="datetime-local"],
[type="email"],
[type="month"],
[type="number"],
[type="password"],
[type="search"],
[type="submit"],
[type="tel"],
[type="text"],
[type="time"],
[type="url"],
[type="week"],
select,
textarea {
font-family: inherit;
font-size: inherit;
border: 0;
box-shadow: 0 0 0 1px $forms-color inset;
color: $color-base;
vertical-align: middle;
padding: $spacer-tiny $spacer-small;
margin: 0;
transition: 0.25s;
transition-property: box-shadow, background-color, color, border;
appearance: none;
}
[type="submit"] {
background-color: $forms-color;
color: $white;
cursor: pointer;
}
input[readonly] {
background-color: $color-muted;
}
select {
padding-right: 2rem;
border-radius: $border-radius;
background-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20standalone%3D%22no%22%3F%3E%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20xmlns%3Axlink%3D%22http%3A//www.w3.org/1999/xlink%22%20style%3D%22isolation%3Aisolate%22%20viewBox%3D%220%200%2020%2020%22%20width%3D%2220%22%20height%3D%2220%22%3E%3Cpath%20d%3D%22%20M%209.96%2011.966%20L%203.523%205.589%20C%202.464%204.627%200.495%206.842%201.505%207.771%20L%201.505%207.771%20L%208.494%2014.763%20C%209.138%2015.35%2010.655%2015.369%2011.29%2014.763%20L%2011.29%2014.763%20L%2018.49%207.771%20C%2019.557%206.752%2017.364%204.68%2016.262%205.725%20L%2016.262%205.725%20L%209.96%2011.966%20Z%20%22%20fill%3D%22inherit%22/%3E%3C/svg%3E");
background-position: right .6rem center;
background-repeat: no-repeat;
background-size: 1.2rem;
}
/* hiding IE11 arrow */
select::-ms-expand {
display: none;
}
textarea {
min-height: 5em;
vertical-align: top;
resize: vertical;
white-space: pre-wrap;
}
/* 'x' appears on right of search input when text is entered. This removes it */
[type="search"] {
&::-webkit-search-decoration,
&::-webkit-search-cancel-button,
&::-webkit-search-results-button,
&::-webkit-search-results-decoration {
display: none;
}
}
::-webkit-input-placeholder {
color: #777;
}
input:-moz-placeholder,
textarea:-moz-placeholder {
color: #777;
}
input::placeholder,
textarea::placeholder {
color: #777;
}
progress {
width: 100%;
vertical-align: middle;
}

View file

@ -0,0 +1,26 @@
/* ----------------------------- */
/* ==Media object */
/* ----------------------------- */
/* recommended HTML : <div class="media"><img class="media-figure"><div class="media-content"></div></div> */
/* see http://codepen.io/raphaelgoetter/pen/KMWWwj */
@media (min-width: $tiny) {
.media {
display: flex;
align-items: flex-start;
&-content {
flex: 1 1 0%;
}
// vertical align image
&-figure--center {
align-self: center;
}
// reverse variant
&--reverse {
flex-direction: row-reverse;
}
}
}

View file

@ -0,0 +1,25 @@
/* ----------------------------- */
/* ==skip links */
/* ----------------------------- */
/* see https://www.alsacreations.com/article/lire/572-Les-liens-d-evitement.html */
/* styling skip links */
.skip-links {
position: absolute;
& a {
position: absolute;
overflow: hidden;
clip: rect(1px, 1px, 1px, 1px);
padding: 0.5em;
background: black;
color: white;
text-decoration: none;
&:focus {
position: static;
overflow: visible;
clip: auto;
}
}
}

View file

@ -0,0 +1,52 @@
/* ----------------------------- */
/* ==Tables */
/* ----------------------------- */
table,
.table {
width: 100%;
max-width: 100%;
table-layout: fixed;
border-collapse: collapse;
vertical-align: top;
margin-bottom: $spacer-medium;
}
.table {
display: table;
border: 1px solid $table-border;
background: $table-background;
&--zebra {
& tbody tr:nth-child(odd) {
background: $gray-200;
}
}
& caption {
caption-side: bottom;
padding: $spacer-small;
color: $table-caption-color;
font-style: italic;
text-align: right;
}
& td,
& th {
padding: 0.3rem 0.6rem;
min-width: $spacer-medium;
vertical-align: top;
border: 1px $table-border dotted;
text-align: left;
cursor: default;
}
& thead {
color: $table-head-color;
background: $table-head-background;
}
}
.table--auto {
table-layout: auto;
}

View file

@ -0,0 +1,52 @@
/* ----------------------------- */
/* ==Tabs */
/* ----------------------------- */
/* see example on https://knacss.com/styleguide.html#tabs */
/* NOTE : tabs need JavaScript to be activated */
.tabs-menu {
border-bottom: 2px solid $tabs-border;
&-link {
display: block;
margin-bottom: -2px;
padding: $spacer-tiny $spacer-medium-plus;
border-bottom: 4px solid transparent;
color: $tabs-color;
background: $tabs-background;
text-decoration: none;
border-radius: $tabs-border-radius $tabs-border-radius 0 0;
transition: .25s;
transition-property: color, border, background-color;
&.is-active {
border-bottom-color: $tabs-active-border;
color: $tabs-active-color;
background: $tabs-active-background;
outline: 0;
}
&:focus {
border-bottom-color: $tabs-active-border;
color: $tabs-active-color;
outline: 0;
}
@media (min-width: $small) {
display: inline-block;
}
}
}
.tabs-content-item {
padding-top: $spacer-small;
&[aria-hidden="true"] {
visibility: hidden;
@extend .visually-hidden;
}
&[aria-hidden="false"] {
visibility: visible;
}
}

View file

@ -0,0 +1,52 @@
/* ----------------------------- */
/* ==Tags */
/* ----------------------------- */
/* use .tag-- classes for variants */
.tag {
display: inline-block;
padding: 3px $spacer-tiny;
vertical-align: baseline;
white-space: nowrap;
color: $color-base;
border-radius: $border-radius;
background-color: $color-muted;
line-height: 1;
}
.tag {
@each $name, $background-color, $color, $border in $variants-list {
&--#{$name} {
@extend .tag;
background-color: $background-color;
color: $color;
box-shadow: $border;
}
}
}
// tag state variants
.tag {
&--small {
font-size: $font-size-base - 0.4rem;
}
&--big {
font-size: $font-size-base + 0.4rem;
}
&--block {
width: 100% !important;
display: block;
}
&.disabled,
&--disabled {
opacity: 0.5;
cursor: not-allowed;
}
&:empty {
display: none;
}
}

7533
css/mon_site.css Normal file

File diff suppressed because it is too large Load diff

10
css/mon_site.scss Normal file
View file

@ -0,0 +1,10 @@
/* Fichier scss principal du squelette */
@import "knacss/knacss";
@import "../font-awesome/font-awesome";
@import "polices";
@import "utilitaires";
@import "body";
@import 'menu_spip';
@import 'form_spip';
@import 'sq_champslibres';

46
css/tag_editor.css Normal file
View file

@ -0,0 +1,46 @@
/* surrounding tag container */
.tag-editor {
list-style-type: none; padding: 0 5px 0 0; margin: 0; overflow: hidden; border: 1px solid #eee; cursor: text;
font: normal 14px sans-serif; color: #555; background: #fff; line-height: 20px;
}
/* core styles usually need no change */
.tag-editor li { display: block; float: left; overflow: hidden; margin: 3px 0; }
.tag-editor div { float: left; padding: 0 4px; }
.tag-editor .placeholder { padding: 0 8px; color: #bbb; }
.tag-editor .tag-editor-spacer { padding: 0; width: 8px; overflow: hidden; color: transparent; background: none; }
.tag-editor input {
vertical-align: inherit; border: 0; outline: none; padding: 0; margin: 0; cursor: text;
font-family: inherit; font-weight: inherit; font-size: inherit; font-style: inherit;
box-shadow: none; background: none; color: #444;
}
/* hide original input field or textarea visually to allow tab navigation */
.tag-editor-hidden-src { position: absolute !important; left: -99999px; }
/* hide IE10 "clear field" X */
.tag-editor ::-ms-clear { display: none; }
/* tag style */
.tag-editor .tag-editor-tag {
padding-left: 5px; color: #46799b; background: #e0eaf1; white-space: nowrap;
overflow: hidden; cursor: pointer; border-radius: 2px 0 0 2px;
}
/* delete icon */
.tag-editor .tag-editor-delete { background: #e0eaf1; cursor: pointer; border-radius: 0 2px 2px 0; padding-left: 3px; padding-right: 4px; }
.tag-editor .tag-editor-delete i { line-height: 18px; display: inline-block; }
.tag-editor .tag-editor-delete i:before { font-size: 16px; color: #8ba7ba; content: "×"; font-style: normal; }
.tag-editor .tag-editor-delete:hover i:before { color: #d65454; }
.tag-editor .tag-editor-tag.active+.tag-editor-delete, .tag-editor .tag-editor-tag.active+.tag-editor-delete i { visibility: hidden; cursor: text; }
.tag-editor .tag-editor-tag.active { background: none !important; }
/* jQuery UI autocomplete - code.jquery.com/ui/1.10.2/themes/smoothness/jquery-ui.css */
.ui-autocomplete { position: absolute; top: 0; left: 0; cursor: default; font-size: 14px; }
.ui-front { z-index: 9999; }
.ui-menu { list-style: none; padding: 1px; margin: 0; display: block; outline: none; }
.ui-menu .ui-menu-item a { text-decoration: none; display: block; padding: 2px .4em; line-height: 1.4; min-height: 0; /* support: IE7 */ }
.ui-widget-content { border: 1px solid #bbb; background: #fff; color: #555; }
.ui-widget-content a { color: #46799b; }
.ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { background: #e0eaf1; }
.ui-helper-hidden-accessible { display: none; }

0
css/theme.css Normal file
View file

2
extra/dist.html Normal file
View file

@ -0,0 +1,2 @@
[(#REM) Inscription au site ]
#FORMULAIRE_INSCRIPTION

34
font-awesome/_animated.scss vendored Normal file
View file

@ -0,0 +1,34 @@
// Spinning Icons
// --------------------------
.#{$fa-css-prefix}-spin {
-webkit-animation: fa-spin 2s infinite linear;
animation: fa-spin 2s infinite linear;
}
.#{$fa-css-prefix}-pulse {
-webkit-animation: fa-spin 1s infinite steps(8);
animation: fa-spin 1s infinite steps(8);
}
@-webkit-keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
transform: rotate(359deg);
}
}
@keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
transform: rotate(359deg);
}
}

25
font-awesome/_bordered-pulled.scss vendored Normal file
View file

@ -0,0 +1,25 @@
// Bordered & Pulled
// -------------------------
.#{$fa-css-prefix}-border {
padding: .2em .25em .15em;
border: solid .08em $fa-border-color;
border-radius: .1em;
}
.#{$fa-css-prefix}-pull-left { float: left; }
.#{$fa-css-prefix}-pull-right { float: right; }
.#{$fa-css-prefix} {
&.#{$fa-css-prefix}-pull-left { margin-right: .3em; }
&.#{$fa-css-prefix}-pull-right { margin-left: .3em; }
}
/* Deprecated as of 4.4.0 */
.pull-right { float: right; }
.pull-left { float: left; }
.#{$fa-css-prefix} {
&.pull-left { margin-right: .3em; }
&.pull-right { margin-left: .3em; }
}

12
font-awesome/_core.scss vendored Normal file
View file

@ -0,0 +1,12 @@
// Base Class Definition
// -------------------------
.#{$fa-css-prefix} {
display: inline-block;
font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration
font-size: inherit; // can't have font-size inherit on line above, so need to override
text-rendering: auto; // optimizelegibility throws things off #1094
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}

6
font-awesome/_fixed-width.scss vendored Normal file
View file

@ -0,0 +1,6 @@
// Fixed Width Icons
// -------------------------
.#{$fa-css-prefix}-fw {
width: (18em / 14);
text-align: center;
}

789
font-awesome/_icons.scss vendored Normal file
View file

@ -0,0 +1,789 @@
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
readers do not read off random characters that represent icons */
.#{$fa-css-prefix}-glass:before { content: $fa-var-glass; }
.#{$fa-css-prefix}-music:before { content: $fa-var-music; }
.#{$fa-css-prefix}-search:before { content: $fa-var-search; }
.#{$fa-css-prefix}-envelope-o:before { content: $fa-var-envelope-o; }
.#{$fa-css-prefix}-heart:before { content: $fa-var-heart; }
.#{$fa-css-prefix}-star:before { content: $fa-var-star; }
.#{$fa-css-prefix}-star-o:before { content: $fa-var-star-o; }
.#{$fa-css-prefix}-user:before { content: $fa-var-user; }
.#{$fa-css-prefix}-film:before { content: $fa-var-film; }
.#{$fa-css-prefix}-th-large:before { content: $fa-var-th-large; }
.#{$fa-css-prefix}-th:before { content: $fa-var-th; }
.#{$fa-css-prefix}-th-list:before { content: $fa-var-th-list; }
.#{$fa-css-prefix}-check:before { content: $fa-var-check; }
.#{$fa-css-prefix}-remove:before,
.#{$fa-css-prefix}-close:before,
.#{$fa-css-prefix}-times:before { content: $fa-var-times; }
.#{$fa-css-prefix}-search-plus:before { content: $fa-var-search-plus; }
.#{$fa-css-prefix}-search-minus:before { content: $fa-var-search-minus; }
.#{$fa-css-prefix}-power-off:before { content: $fa-var-power-off; }
.#{$fa-css-prefix}-signal:before { content: $fa-var-signal; }
.#{$fa-css-prefix}-gear:before,
.#{$fa-css-prefix}-cog:before { content: $fa-var-cog; }
.#{$fa-css-prefix}-trash-o:before { content: $fa-var-trash-o; }
.#{$fa-css-prefix}-home:before { content: $fa-var-home; }
.#{$fa-css-prefix}-file-o:before { content: $fa-var-file-o; }
.#{$fa-css-prefix}-clock-o:before { content: $fa-var-clock-o; }
.#{$fa-css-prefix}-road:before { content: $fa-var-road; }
.#{$fa-css-prefix}-download:before { content: $fa-var-download; }
.#{$fa-css-prefix}-arrow-circle-o-down:before { content: $fa-var-arrow-circle-o-down; }
.#{$fa-css-prefix}-arrow-circle-o-up:before { content: $fa-var-arrow-circle-o-up; }
.#{$fa-css-prefix}-inbox:before { content: $fa-var-inbox; }
.#{$fa-css-prefix}-play-circle-o:before { content: $fa-var-play-circle-o; }
.#{$fa-css-prefix}-rotate-right:before,
.#{$fa-css-prefix}-repeat:before { content: $fa-var-repeat; }
.#{$fa-css-prefix}-refresh:before { content: $fa-var-refresh; }
.#{$fa-css-prefix}-list-alt:before { content: $fa-var-list-alt; }
.#{$fa-css-prefix}-lock:before { content: $fa-var-lock; }
.#{$fa-css-prefix}-flag:before { content: $fa-var-flag; }
.#{$fa-css-prefix}-headphones:before { content: $fa-var-headphones; }
.#{$fa-css-prefix}-volume-off:before { content: $fa-var-volume-off; }
.#{$fa-css-prefix}-volume-down:before { content: $fa-var-volume-down; }
.#{$fa-css-prefix}-volume-up:before { content: $fa-var-volume-up; }
.#{$fa-css-prefix}-qrcode:before { content: $fa-var-qrcode; }
.#{$fa-css-prefix}-barcode:before { content: $fa-var-barcode; }
.#{$fa-css-prefix}-tag:before { content: $fa-var-tag; }
.#{$fa-css-prefix}-tags:before { content: $fa-var-tags; }
.#{$fa-css-prefix}-book:before { content: $fa-var-book; }
.#{$fa-css-prefix}-bookmark:before { content: $fa-var-bookmark; }
.#{$fa-css-prefix}-print:before { content: $fa-var-print; }
.#{$fa-css-prefix}-camera:before { content: $fa-var-camera; }
.#{$fa-css-prefix}-font:before { content: $fa-var-font; }
.#{$fa-css-prefix}-bold:before { content: $fa-var-bold; }
.#{$fa-css-prefix}-italic:before { content: $fa-var-italic; }
.#{$fa-css-prefix}-text-height:before { content: $fa-var-text-height; }
.#{$fa-css-prefix}-text-width:before { content: $fa-var-text-width; }
.#{$fa-css-prefix}-align-left:before { content: $fa-var-align-left; }
.#{$fa-css-prefix}-align-center:before { content: $fa-var-align-center; }
.#{$fa-css-prefix}-align-right:before { content: $fa-var-align-right; }
.#{$fa-css-prefix}-align-justify:before { content: $fa-var-align-justify; }
.#{$fa-css-prefix}-list:before { content: $fa-var-list; }
.#{$fa-css-prefix}-dedent:before,
.#{$fa-css-prefix}-outdent:before { content: $fa-var-outdent; }
.#{$fa-css-prefix}-indent:before { content: $fa-var-indent; }
.#{$fa-css-prefix}-video-camera:before { content: $fa-var-video-camera; }
.#{$fa-css-prefix}-photo:before,
.#{$fa-css-prefix}-image:before,
.#{$fa-css-prefix}-picture-o:before { content: $fa-var-picture-o; }
.#{$fa-css-prefix}-pencil:before { content: $fa-var-pencil; }
.#{$fa-css-prefix}-map-marker:before { content: $fa-var-map-marker; }
.#{$fa-css-prefix}-adjust:before { content: $fa-var-adjust; }
.#{$fa-css-prefix}-tint:before { content: $fa-var-tint; }
.#{$fa-css-prefix}-edit:before,
.#{$fa-css-prefix}-pencil-square-o:before { content: $fa-var-pencil-square-o; }
.#{$fa-css-prefix}-share-square-o:before { content: $fa-var-share-square-o; }
.#{$fa-css-prefix}-check-square-o:before { content: $fa-var-check-square-o; }
.#{$fa-css-prefix}-arrows:before { content: $fa-var-arrows; }
.#{$fa-css-prefix}-step-backward:before { content: $fa-var-step-backward; }
.#{$fa-css-prefix}-fast-backward:before { content: $fa-var-fast-backward; }
.#{$fa-css-prefix}-backward:before { content: $fa-var-backward; }
.#{$fa-css-prefix}-play:before { content: $fa-var-play; }
.#{$fa-css-prefix}-pause:before { content: $fa-var-pause; }
.#{$fa-css-prefix}-stop:before { content: $fa-var-stop; }
.#{$fa-css-prefix}-forward:before { content: $fa-var-forward; }
.#{$fa-css-prefix}-fast-forward:before { content: $fa-var-fast-forward; }
.#{$fa-css-prefix}-step-forward:before { content: $fa-var-step-forward; }
.#{$fa-css-prefix}-eject:before { content: $fa-var-eject; }
.#{$fa-css-prefix}-chevron-left:before { content: $fa-var-chevron-left; }
.#{$fa-css-prefix}-chevron-right:before { content: $fa-var-chevron-right; }
.#{$fa-css-prefix}-plus-circle:before { content: $fa-var-plus-circle; }
.#{$fa-css-prefix}-minus-circle:before { content: $fa-var-minus-circle; }
.#{$fa-css-prefix}-times-circle:before { content: $fa-var-times-circle; }
.#{$fa-css-prefix}-check-circle:before { content: $fa-var-check-circle; }
.#{$fa-css-prefix}-question-circle:before { content: $fa-var-question-circle; }
.#{$fa-css-prefix}-info-circle:before { content: $fa-var-info-circle; }
.#{$fa-css-prefix}-crosshairs:before { content: $fa-var-crosshairs; }
.#{$fa-css-prefix}-times-circle-o:before { content: $fa-var-times-circle-o; }
.#{$fa-css-prefix}-check-circle-o:before { content: $fa-var-check-circle-o; }
.#{$fa-css-prefix}-ban:before { content: $fa-var-ban; }
.#{$fa-css-prefix}-arrow-left:before { content: $fa-var-arrow-left; }
.#{$fa-css-prefix}-arrow-right:before { content: $fa-var-arrow-right; }
.#{$fa-css-prefix}-arrow-up:before { content: $fa-var-arrow-up; }
.#{$fa-css-prefix}-arrow-down:before { content: $fa-var-arrow-down; }
.#{$fa-css-prefix}-mail-forward:before,
.#{$fa-css-prefix}-share:before { content: $fa-var-share; }
.#{$fa-css-prefix}-expand:before { content: $fa-var-expand; }
.#{$fa-css-prefix}-compress:before { content: $fa-var-compress; }
.#{$fa-css-prefix}-plus:before { content: $fa-var-plus; }
.#{$fa-css-prefix}-minus:before { content: $fa-var-minus; }
.#{$fa-css-prefix}-asterisk:before { content: $fa-var-asterisk; }
.#{$fa-css-prefix}-exclamation-circle:before { content: $fa-var-exclamation-circle; }
.#{$fa-css-prefix}-gift:before { content: $fa-var-gift; }
.#{$fa-css-prefix}-leaf:before { content: $fa-var-leaf; }
.#{$fa-css-prefix}-fire:before { content: $fa-var-fire; }
.#{$fa-css-prefix}-eye:before { content: $fa-var-eye; }
.#{$fa-css-prefix}-eye-slash:before { content: $fa-var-eye-slash; }
.#{$fa-css-prefix}-warning:before,
.#{$fa-css-prefix}-exclamation-triangle:before { content: $fa-var-exclamation-triangle; }
.#{$fa-css-prefix}-plane:before { content: $fa-var-plane; }
.#{$fa-css-prefix}-calendar:before { content: $fa-var-calendar; }
.#{$fa-css-prefix}-random:before { content: $fa-var-random; }
.#{$fa-css-prefix}-comment:before { content: $fa-var-comment; }
.#{$fa-css-prefix}-magnet:before { content: $fa-var-magnet; }
.#{$fa-css-prefix}-chevron-up:before { content: $fa-var-chevron-up; }
.#{$fa-css-prefix}-chevron-down:before { content: $fa-var-chevron-down; }
.#{$fa-css-prefix}-retweet:before { content: $fa-var-retweet; }
.#{$fa-css-prefix}-shopping-cart:before { content: $fa-var-shopping-cart; }
.#{$fa-css-prefix}-folder:before { content: $fa-var-folder; }
.#{$fa-css-prefix}-folder-open:before { content: $fa-var-folder-open; }
.#{$fa-css-prefix}-arrows-v:before { content: $fa-var-arrows-v; }
.#{$fa-css-prefix}-arrows-h:before { content: $fa-var-arrows-h; }
.#{$fa-css-prefix}-bar-chart-o:before,
.#{$fa-css-prefix}-bar-chart:before { content: $fa-var-bar-chart; }
.#{$fa-css-prefix}-twitter-square:before { content: $fa-var-twitter-square; }
.#{$fa-css-prefix}-facebook-square:before { content: $fa-var-facebook-square; }
.#{$fa-css-prefix}-camera-retro:before { content: $fa-var-camera-retro; }
.#{$fa-css-prefix}-key:before { content: $fa-var-key; }
.#{$fa-css-prefix}-gears:before,
.#{$fa-css-prefix}-cogs:before { content: $fa-var-cogs; }
.#{$fa-css-prefix}-comments:before { content: $fa-var-comments; }
.#{$fa-css-prefix}-thumbs-o-up:before { content: $fa-var-thumbs-o-up; }
.#{$fa-css-prefix}-thumbs-o-down:before { content: $fa-var-thumbs-o-down; }
.#{$fa-css-prefix}-star-half:before { content: $fa-var-star-half; }
.#{$fa-css-prefix}-heart-o:before { content: $fa-var-heart-o; }
.#{$fa-css-prefix}-sign-out:before { content: $fa-var-sign-out; }
.#{$fa-css-prefix}-linkedin-square:before { content: $fa-var-linkedin-square; }
.#{$fa-css-prefix}-thumb-tack:before { content: $fa-var-thumb-tack; }
.#{$fa-css-prefix}-external-link:before { content: $fa-var-external-link; }
.#{$fa-css-prefix}-sign-in:before { content: $fa-var-sign-in; }
.#{$fa-css-prefix}-trophy:before { content: $fa-var-trophy; }
.#{$fa-css-prefix}-github-square:before { content: $fa-var-github-square; }
.#{$fa-css-prefix}-upload:before { content: $fa-var-upload; }
.#{$fa-css-prefix}-lemon-o:before { content: $fa-var-lemon-o; }
.#{$fa-css-prefix}-phone:before { content: $fa-var-phone; }
.#{$fa-css-prefix}-square-o:before { content: $fa-var-square-o; }
.#{$fa-css-prefix}-bookmark-o:before { content: $fa-var-bookmark-o; }
.#{$fa-css-prefix}-phone-square:before { content: $fa-var-phone-square; }
.#{$fa-css-prefix}-twitter:before { content: $fa-var-twitter; }
.#{$fa-css-prefix}-facebook-f:before,
.#{$fa-css-prefix}-facebook:before { content: $fa-var-facebook; }
.#{$fa-css-prefix}-github:before { content: $fa-var-github; }
.#{$fa-css-prefix}-unlock:before { content: $fa-var-unlock; }
.#{$fa-css-prefix}-credit-card:before { content: $fa-var-credit-card; }
.#{$fa-css-prefix}-feed:before,
.#{$fa-css-prefix}-rss:before { content: $fa-var-rss; }
.#{$fa-css-prefix}-hdd-o:before { content: $fa-var-hdd-o; }
.#{$fa-css-prefix}-bullhorn:before { content: $fa-var-bullhorn; }
.#{$fa-css-prefix}-bell:before { content: $fa-var-bell; }
.#{$fa-css-prefix}-certificate:before { content: $fa-var-certificate; }
.#{$fa-css-prefix}-hand-o-right:before { content: $fa-var-hand-o-right; }
.#{$fa-css-prefix}-hand-o-left:before { content: $fa-var-hand-o-left; }
.#{$fa-css-prefix}-hand-o-up:before { content: $fa-var-hand-o-up; }
.#{$fa-css-prefix}-hand-o-down:before { content: $fa-var-hand-o-down; }
.#{$fa-css-prefix}-arrow-circle-left:before { content: $fa-var-arrow-circle-left; }
.#{$fa-css-prefix}-arrow-circle-right:before { content: $fa-var-arrow-circle-right; }
.#{$fa-css-prefix}-arrow-circle-up:before { content: $fa-var-arrow-circle-up; }
.#{$fa-css-prefix}-arrow-circle-down:before { content: $fa-var-arrow-circle-down; }
.#{$fa-css-prefix}-globe:before { content: $fa-var-globe; }
.#{$fa-css-prefix}-wrench:before { content: $fa-var-wrench; }
.#{$fa-css-prefix}-tasks:before { content: $fa-var-tasks; }
.#{$fa-css-prefix}-filter:before { content: $fa-var-filter; }
.#{$fa-css-prefix}-briefcase:before { content: $fa-var-briefcase; }
.#{$fa-css-prefix}-arrows-alt:before { content: $fa-var-arrows-alt; }
.#{$fa-css-prefix}-group:before,
.#{$fa-css-prefix}-users:before { content: $fa-var-users; }
.#{$fa-css-prefix}-chain:before,
.#{$fa-css-prefix}-link:before { content: $fa-var-link; }
.#{$fa-css-prefix}-cloud:before { content: $fa-var-cloud; }
.#{$fa-css-prefix}-flask:before { content: $fa-var-flask; }
.#{$fa-css-prefix}-cut:before,
.#{$fa-css-prefix}-scissors:before { content: $fa-var-scissors; }
.#{$fa-css-prefix}-copy:before,
.#{$fa-css-prefix}-files-o:before { content: $fa-var-files-o; }
.#{$fa-css-prefix}-paperclip:before { content: $fa-var-paperclip; }
.#{$fa-css-prefix}-save:before,
.#{$fa-css-prefix}-floppy-o:before { content: $fa-var-floppy-o; }
.#{$fa-css-prefix}-square:before { content: $fa-var-square; }
.#{$fa-css-prefix}-navicon:before,
.#{$fa-css-prefix}-reorder:before,
.#{$fa-css-prefix}-bars:before { content: $fa-var-bars; }
.#{$fa-css-prefix}-list-ul:before { content: $fa-var-list-ul; }
.#{$fa-css-prefix}-list-ol:before { content: $fa-var-list-ol; }
.#{$fa-css-prefix}-strikethrough:before { content: $fa-var-strikethrough; }
.#{$fa-css-prefix}-underline:before { content: $fa-var-underline; }
.#{$fa-css-prefix}-table:before { content: $fa-var-table; }
.#{$fa-css-prefix}-magic:before { content: $fa-var-magic; }
.#{$fa-css-prefix}-truck:before { content: $fa-var-truck; }
.#{$fa-css-prefix}-pinterest:before { content: $fa-var-pinterest; }
.#{$fa-css-prefix}-pinterest-square:before { content: $fa-var-pinterest-square; }
.#{$fa-css-prefix}-google-plus-square:before { content: $fa-var-google-plus-square; }
.#{$fa-css-prefix}-google-plus:before { content: $fa-var-google-plus; }
.#{$fa-css-prefix}-money:before { content: $fa-var-money; }
.#{$fa-css-prefix}-caret-down:before { content: $fa-var-caret-down; }
.#{$fa-css-prefix}-caret-up:before { content: $fa-var-caret-up; }
.#{$fa-css-prefix}-caret-left:before { content: $fa-var-caret-left; }
.#{$fa-css-prefix}-caret-right:before { content: $fa-var-caret-right; }
.#{$fa-css-prefix}-columns:before { content: $fa-var-columns; }
.#{$fa-css-prefix}-unsorted:before,
.#{$fa-css-prefix}-sort:before { content: $fa-var-sort; }
.#{$fa-css-prefix}-sort-down:before,
.#{$fa-css-prefix}-sort-desc:before { content: $fa-var-sort-desc; }
.#{$fa-css-prefix}-sort-up:before,
.#{$fa-css-prefix}-sort-asc:before { content: $fa-var-sort-asc; }
.#{$fa-css-prefix}-envelope:before { content: $fa-var-envelope; }
.#{$fa-css-prefix}-linkedin:before { content: $fa-var-linkedin; }
.#{$fa-css-prefix}-rotate-left:before,
.#{$fa-css-prefix}-undo:before { content: $fa-var-undo; }
.#{$fa-css-prefix}-legal:before,
.#{$fa-css-prefix}-gavel:before { content: $fa-var-gavel; }
.#{$fa-css-prefix}-dashboard:before,
.#{$fa-css-prefix}-tachometer:before { content: $fa-var-tachometer; }
.#{$fa-css-prefix}-comment-o:before { content: $fa-var-comment-o; }
.#{$fa-css-prefix}-comments-o:before { content: $fa-var-comments-o; }
.#{$fa-css-prefix}-flash:before,
.#{$fa-css-prefix}-bolt:before { content: $fa-var-bolt; }
.#{$fa-css-prefix}-sitemap:before { content: $fa-var-sitemap; }
.#{$fa-css-prefix}-umbrella:before { content: $fa-var-umbrella; }
.#{$fa-css-prefix}-paste:before,
.#{$fa-css-prefix}-clipboard:before { content: $fa-var-clipboard; }
.#{$fa-css-prefix}-lightbulb-o:before { content: $fa-var-lightbulb-o; }
.#{$fa-css-prefix}-exchange:before { content: $fa-var-exchange; }
.#{$fa-css-prefix}-cloud-download:before { content: $fa-var-cloud-download; }
.#{$fa-css-prefix}-cloud-upload:before { content: $fa-var-cloud-upload; }
.#{$fa-css-prefix}-user-md:before { content: $fa-var-user-md; }
.#{$fa-css-prefix}-stethoscope:before { content: $fa-var-stethoscope; }
.#{$fa-css-prefix}-suitcase:before { content: $fa-var-suitcase; }
.#{$fa-css-prefix}-bell-o:before { content: $fa-var-bell-o; }
.#{$fa-css-prefix}-coffee:before { content: $fa-var-coffee; }
.#{$fa-css-prefix}-cutlery:before { content: $fa-var-cutlery; }
.#{$fa-css-prefix}-file-text-o:before { content: $fa-var-file-text-o; }
.#{$fa-css-prefix}-building-o:before { content: $fa-var-building-o; }
.#{$fa-css-prefix}-hospital-o:before { content: $fa-var-hospital-o; }
.#{$fa-css-prefix}-ambulance:before { content: $fa-var-ambulance; }
.#{$fa-css-prefix}-medkit:before { content: $fa-var-medkit; }
.#{$fa-css-prefix}-fighter-jet:before { content: $fa-var-fighter-jet; }
.#{$fa-css-prefix}-beer:before { content: $fa-var-beer; }
.#{$fa-css-prefix}-h-square:before { content: $fa-var-h-square; }
.#{$fa-css-prefix}-plus-square:before { content: $fa-var-plus-square; }
.#{$fa-css-prefix}-angle-double-left:before { content: $fa-var-angle-double-left; }
.#{$fa-css-prefix}-angle-double-right:before { content: $fa-var-angle-double-right; }
.#{$fa-css-prefix}-angle-double-up:before { content: $fa-var-angle-double-up; }
.#{$fa-css-prefix}-angle-double-down:before { content: $fa-var-angle-double-down; }
.#{$fa-css-prefix}-angle-left:before { content: $fa-var-angle-left; }
.#{$fa-css-prefix}-angle-right:before { content: $fa-var-angle-right; }
.#{$fa-css-prefix}-angle-up:before { content: $fa-var-angle-up; }
.#{$fa-css-prefix}-angle-down:before { content: $fa-var-angle-down; }
.#{$fa-css-prefix}-desktop:before { content: $fa-var-desktop; }
.#{$fa-css-prefix}-laptop:before { content: $fa-var-laptop; }
.#{$fa-css-prefix}-tablet:before { content: $fa-var-tablet; }
.#{$fa-css-prefix}-mobile-phone:before,
.#{$fa-css-prefix}-mobile:before { content: $fa-var-mobile; }
.#{$fa-css-prefix}-circle-o:before { content: $fa-var-circle-o; }
.#{$fa-css-prefix}-quote-left:before { content: $fa-var-quote-left; }
.#{$fa-css-prefix}-quote-right:before { content: $fa-var-quote-right; }
.#{$fa-css-prefix}-spinner:before { content: $fa-var-spinner; }
.#{$fa-css-prefix}-circle:before { content: $fa-var-circle; }
.#{$fa-css-prefix}-mail-reply:before,
.#{$fa-css-prefix}-reply:before { content: $fa-var-reply; }
.#{$fa-css-prefix}-github-alt:before { content: $fa-var-github-alt; }
.#{$fa-css-prefix}-folder-o:before { content: $fa-var-folder-o; }
.#{$fa-css-prefix}-folder-open-o:before { content: $fa-var-folder-open-o; }
.#{$fa-css-prefix}-smile-o:before { content: $fa-var-smile-o; }
.#{$fa-css-prefix}-frown-o:before { content: $fa-var-frown-o; }
.#{$fa-css-prefix}-meh-o:before { content: $fa-var-meh-o; }
.#{$fa-css-prefix}-gamepad:before { content: $fa-var-gamepad; }
.#{$fa-css-prefix}-keyboard-o:before { content: $fa-var-keyboard-o; }
.#{$fa-css-prefix}-flag-o:before { content: $fa-var-flag-o; }
.#{$fa-css-prefix}-flag-checkered:before { content: $fa-var-flag-checkered; }
.#{$fa-css-prefix}-terminal:before { content: $fa-var-terminal; }
.#{$fa-css-prefix}-code:before { content: $fa-var-code; }
.#{$fa-css-prefix}-mail-reply-all:before,
.#{$fa-css-prefix}-reply-all:before { content: $fa-var-reply-all; }
.#{$fa-css-prefix}-star-half-empty:before,
.#{$fa-css-prefix}-star-half-full:before,
.#{$fa-css-prefix}-star-half-o:before { content: $fa-var-star-half-o; }
.#{$fa-css-prefix}-location-arrow:before { content: $fa-var-location-arrow; }
.#{$fa-css-prefix}-crop:before { content: $fa-var-crop; }
.#{$fa-css-prefix}-code-fork:before { content: $fa-var-code-fork; }
.#{$fa-css-prefix}-unlink:before,
.#{$fa-css-prefix}-chain-broken:before { content: $fa-var-chain-broken; }
.#{$fa-css-prefix}-question:before { content: $fa-var-question; }
.#{$fa-css-prefix}-info:before { content: $fa-var-info; }
.#{$fa-css-prefix}-exclamation:before { content: $fa-var-exclamation; }
.#{$fa-css-prefix}-superscript:before { content: $fa-var-superscript; }
.#{$fa-css-prefix}-subscript:before { content: $fa-var-subscript; }
.#{$fa-css-prefix}-eraser:before { content: $fa-var-eraser; }
.#{$fa-css-prefix}-puzzle-piece:before { content: $fa-var-puzzle-piece; }
.#{$fa-css-prefix}-microphone:before { content: $fa-var-microphone; }
.#{$fa-css-prefix}-microphone-slash:before { content: $fa-var-microphone-slash; }
.#{$fa-css-prefix}-shield:before { content: $fa-var-shield; }
.#{$fa-css-prefix}-calendar-o:before { content: $fa-var-calendar-o; }
.#{$fa-css-prefix}-fire-extinguisher:before { content: $fa-var-fire-extinguisher; }
.#{$fa-css-prefix}-rocket:before { content: $fa-var-rocket; }
.#{$fa-css-prefix}-maxcdn:before { content: $fa-var-maxcdn; }
.#{$fa-css-prefix}-chevron-circle-left:before { content: $fa-var-chevron-circle-left; }
.#{$fa-css-prefix}-chevron-circle-right:before { content: $fa-var-chevron-circle-right; }
.#{$fa-css-prefix}-chevron-circle-up:before { content: $fa-var-chevron-circle-up; }
.#{$fa-css-prefix}-chevron-circle-down:before { content: $fa-var-chevron-circle-down; }
.#{$fa-css-prefix}-html5:before { content: $fa-var-html5; }
.#{$fa-css-prefix}-css3:before { content: $fa-var-css3; }
.#{$fa-css-prefix}-anchor:before { content: $fa-var-anchor; }
.#{$fa-css-prefix}-unlock-alt:before { content: $fa-var-unlock-alt; }
.#{$fa-css-prefix}-bullseye:before { content: $fa-var-bullseye; }
.#{$fa-css-prefix}-ellipsis-h:before { content: $fa-var-ellipsis-h; }
.#{$fa-css-prefix}-ellipsis-v:before { content: $fa-var-ellipsis-v; }
.#{$fa-css-prefix}-rss-square:before { content: $fa-var-rss-square; }
.#{$fa-css-prefix}-play-circle:before { content: $fa-var-play-circle; }
.#{$fa-css-prefix}-ticket:before { content: $fa-var-ticket; }
.#{$fa-css-prefix}-minus-square:before { content: $fa-var-minus-square; }
.#{$fa-css-prefix}-minus-square-o:before { content: $fa-var-minus-square-o; }
.#{$fa-css-prefix}-level-up:before { content: $fa-var-level-up; }
.#{$fa-css-prefix}-level-down:before { content: $fa-var-level-down; }
.#{$fa-css-prefix}-check-square:before { content: $fa-var-check-square; }
.#{$fa-css-prefix}-pencil-square:before { content: $fa-var-pencil-square; }
.#{$fa-css-prefix}-external-link-square:before { content: $fa-var-external-link-square; }
.#{$fa-css-prefix}-share-square:before { content: $fa-var-share-square; }
.#{$fa-css-prefix}-compass:before { content: $fa-var-compass; }
.#{$fa-css-prefix}-toggle-down:before,
.#{$fa-css-prefix}-caret-square-o-down:before { content: $fa-var-caret-square-o-down; }
.#{$fa-css-prefix}-toggle-up:before,
.#{$fa-css-prefix}-caret-square-o-up:before { content: $fa-var-caret-square-o-up; }
.#{$fa-css-prefix}-toggle-right:before,
.#{$fa-css-prefix}-caret-square-o-right:before { content: $fa-var-caret-square-o-right; }
.#{$fa-css-prefix}-euro:before,
.#{$fa-css-prefix}-eur:before { content: $fa-var-eur; }
.#{$fa-css-prefix}-gbp:before { content: $fa-var-gbp; }
.#{$fa-css-prefix}-dollar:before,
.#{$fa-css-prefix}-usd:before { content: $fa-var-usd; }
.#{$fa-css-prefix}-rupee:before,
.#{$fa-css-prefix}-inr:before { content: $fa-var-inr; }
.#{$fa-css-prefix}-cny:before,
.#{$fa-css-prefix}-rmb:before,
.#{$fa-css-prefix}-yen:before,
.#{$fa-css-prefix}-jpy:before { content: $fa-var-jpy; }
.#{$fa-css-prefix}-ruble:before,
.#{$fa-css-prefix}-rouble:before,
.#{$fa-css-prefix}-rub:before { content: $fa-var-rub; }
.#{$fa-css-prefix}-won:before,
.#{$fa-css-prefix}-krw:before { content: $fa-var-krw; }
.#{$fa-css-prefix}-bitcoin:before,
.#{$fa-css-prefix}-btc:before { content: $fa-var-btc; }
.#{$fa-css-prefix}-file:before { content: $fa-var-file; }
.#{$fa-css-prefix}-file-text:before { content: $fa-var-file-text; }
.#{$fa-css-prefix}-sort-alpha-asc:before { content: $fa-var-sort-alpha-asc; }
.#{$fa-css-prefix}-sort-alpha-desc:before { content: $fa-var-sort-alpha-desc; }
.#{$fa-css-prefix}-sort-amount-asc:before { content: $fa-var-sort-amount-asc; }
.#{$fa-css-prefix}-sort-amount-desc:before { content: $fa-var-sort-amount-desc; }
.#{$fa-css-prefix}-sort-numeric-asc:before { content: $fa-var-sort-numeric-asc; }
.#{$fa-css-prefix}-sort-numeric-desc:before { content: $fa-var-sort-numeric-desc; }
.#{$fa-css-prefix}-thumbs-up:before { content: $fa-var-thumbs-up; }
.#{$fa-css-prefix}-thumbs-down:before { content: $fa-var-thumbs-down; }
.#{$fa-css-prefix}-youtube-square:before { content: $fa-var-youtube-square; }
.#{$fa-css-prefix}-youtube:before { content: $fa-var-youtube; }
.#{$fa-css-prefix}-xing:before { content: $fa-var-xing; }
.#{$fa-css-prefix}-xing-square:before { content: $fa-var-xing-square; }
.#{$fa-css-prefix}-youtube-play:before { content: $fa-var-youtube-play; }
.#{$fa-css-prefix}-dropbox:before { content: $fa-var-dropbox; }
.#{$fa-css-prefix}-stack-overflow:before { content: $fa-var-stack-overflow; }
.#{$fa-css-prefix}-instagram:before { content: $fa-var-instagram; }
.#{$fa-css-prefix}-flickr:before { content: $fa-var-flickr; }
.#{$fa-css-prefix}-adn:before { content: $fa-var-adn; }
.#{$fa-css-prefix}-bitbucket:before { content: $fa-var-bitbucket; }
.#{$fa-css-prefix}-bitbucket-square:before { content: $fa-var-bitbucket-square; }
.#{$fa-css-prefix}-tumblr:before { content: $fa-var-tumblr; }
.#{$fa-css-prefix}-tumblr-square:before { content: $fa-var-tumblr-square; }
.#{$fa-css-prefix}-long-arrow-down:before { content: $fa-var-long-arrow-down; }
.#{$fa-css-prefix}-long-arrow-up:before { content: $fa-var-long-arrow-up; }
.#{$fa-css-prefix}-long-arrow-left:before { content: $fa-var-long-arrow-left; }
.#{$fa-css-prefix}-long-arrow-right:before { content: $fa-var-long-arrow-right; }
.#{$fa-css-prefix}-apple:before { content: $fa-var-apple; }
.#{$fa-css-prefix}-windows:before { content: $fa-var-windows; }
.#{$fa-css-prefix}-android:before { content: $fa-var-android; }
.#{$fa-css-prefix}-linux:before { content: $fa-var-linux; }
.#{$fa-css-prefix}-dribbble:before { content: $fa-var-dribbble; }
.#{$fa-css-prefix}-skype:before { content: $fa-var-skype; }
.#{$fa-css-prefix}-foursquare:before { content: $fa-var-foursquare; }
.#{$fa-css-prefix}-trello:before { content: $fa-var-trello; }
.#{$fa-css-prefix}-female:before { content: $fa-var-female; }
.#{$fa-css-prefix}-male:before { content: $fa-var-male; }
.#{$fa-css-prefix}-gittip:before,
.#{$fa-css-prefix}-gratipay:before { content: $fa-var-gratipay; }
.#{$fa-css-prefix}-sun-o:before { content: $fa-var-sun-o; }
.#{$fa-css-prefix}-moon-o:before { content: $fa-var-moon-o; }
.#{$fa-css-prefix}-archive:before { content: $fa-var-archive; }
.#{$fa-css-prefix}-bug:before { content: $fa-var-bug; }
.#{$fa-css-prefix}-vk:before { content: $fa-var-vk; }
.#{$fa-css-prefix}-weibo:before { content: $fa-var-weibo; }
.#{$fa-css-prefix}-renren:before { content: $fa-var-renren; }
.#{$fa-css-prefix}-pagelines:before { content: $fa-var-pagelines; }
.#{$fa-css-prefix}-stack-exchange:before { content: $fa-var-stack-exchange; }
.#{$fa-css-prefix}-arrow-circle-o-right:before { content: $fa-var-arrow-circle-o-right; }
.#{$fa-css-prefix}-arrow-circle-o-left:before { content: $fa-var-arrow-circle-o-left; }
.#{$fa-css-prefix}-toggle-left:before,
.#{$fa-css-prefix}-caret-square-o-left:before { content: $fa-var-caret-square-o-left; }
.#{$fa-css-prefix}-dot-circle-o:before { content: $fa-var-dot-circle-o; }
.#{$fa-css-prefix}-wheelchair:before { content: $fa-var-wheelchair; }
.#{$fa-css-prefix}-vimeo-square:before { content: $fa-var-vimeo-square; }
.#{$fa-css-prefix}-turkish-lira:before,
.#{$fa-css-prefix}-try:before { content: $fa-var-try; }
.#{$fa-css-prefix}-plus-square-o:before { content: $fa-var-plus-square-o; }
.#{$fa-css-prefix}-space-shuttle:before { content: $fa-var-space-shuttle; }
.#{$fa-css-prefix}-slack:before { content: $fa-var-slack; }
.#{$fa-css-prefix}-envelope-square:before { content: $fa-var-envelope-square; }
.#{$fa-css-prefix}-wordpress:before { content: $fa-var-wordpress; }
.#{$fa-css-prefix}-openid:before { content: $fa-var-openid; }
.#{$fa-css-prefix}-institution:before,
.#{$fa-css-prefix}-bank:before,
.#{$fa-css-prefix}-university:before { content: $fa-var-university; }
.#{$fa-css-prefix}-mortar-board:before,
.#{$fa-css-prefix}-graduation-cap:before { content: $fa-var-graduation-cap; }
.#{$fa-css-prefix}-yahoo:before { content: $fa-var-yahoo; }
.#{$fa-css-prefix}-google:before { content: $fa-var-google; }
.#{$fa-css-prefix}-reddit:before { content: $fa-var-reddit; }
.#{$fa-css-prefix}-reddit-square:before { content: $fa-var-reddit-square; }
.#{$fa-css-prefix}-stumbleupon-circle:before { content: $fa-var-stumbleupon-circle; }
.#{$fa-css-prefix}-stumbleupon:before { content: $fa-var-stumbleupon; }
.#{$fa-css-prefix}-delicious:before { content: $fa-var-delicious; }
.#{$fa-css-prefix}-digg:before { content: $fa-var-digg; }
.#{$fa-css-prefix}-pied-piper-pp:before { content: $fa-var-pied-piper-pp; }
.#{$fa-css-prefix}-pied-piper-alt:before { content: $fa-var-pied-piper-alt; }
.#{$fa-css-prefix}-drupal:before { content: $fa-var-drupal; }
.#{$fa-css-prefix}-joomla:before { content: $fa-var-joomla; }
.#{$fa-css-prefix}-language:before { content: $fa-var-language; }
.#{$fa-css-prefix}-fax:before { content: $fa-var-fax; }
.#{$fa-css-prefix}-building:before { content: $fa-var-building; }
.#{$fa-css-prefix}-child:before { content: $fa-var-child; }
.#{$fa-css-prefix}-paw:before { content: $fa-var-paw; }
.#{$fa-css-prefix}-spoon:before { content: $fa-var-spoon; }
.#{$fa-css-prefix}-cube:before { content: $fa-var-cube; }
.#{$fa-css-prefix}-cubes:before { content: $fa-var-cubes; }
.#{$fa-css-prefix}-behance:before { content: $fa-var-behance; }
.#{$fa-css-prefix}-behance-square:before { content: $fa-var-behance-square; }
.#{$fa-css-prefix}-steam:before { content: $fa-var-steam; }
.#{$fa-css-prefix}-steam-square:before { content: $fa-var-steam-square; }
.#{$fa-css-prefix}-recycle:before { content: $fa-var-recycle; }
.#{$fa-css-prefix}-automobile:before,
.#{$fa-css-prefix}-car:before { content: $fa-var-car; }
.#{$fa-css-prefix}-cab:before,
.#{$fa-css-prefix}-taxi:before { content: $fa-var-taxi; }
.#{$fa-css-prefix}-tree:before { content: $fa-var-tree; }
.#{$fa-css-prefix}-spotify:before { content: $fa-var-spotify; }
.#{$fa-css-prefix}-deviantart:before { content: $fa-var-deviantart; }
.#{$fa-css-prefix}-soundcloud:before { content: $fa-var-soundcloud; }
.#{$fa-css-prefix}-database:before { content: $fa-var-database; }
.#{$fa-css-prefix}-file-pdf-o:before { content: $fa-var-file-pdf-o; }
.#{$fa-css-prefix}-file-word-o:before { content: $fa-var-file-word-o; }
.#{$fa-css-prefix}-file-excel-o:before { content: $fa-var-file-excel-o; }
.#{$fa-css-prefix}-file-powerpoint-o:before { content: $fa-var-file-powerpoint-o; }
.#{$fa-css-prefix}-file-photo-o:before,
.#{$fa-css-prefix}-file-picture-o:before,
.#{$fa-css-prefix}-file-image-o:before { content: $fa-var-file-image-o; }
.#{$fa-css-prefix}-file-zip-o:before,
.#{$fa-css-prefix}-file-archive-o:before { content: $fa-var-file-archive-o; }
.#{$fa-css-prefix}-file-sound-o:before,
.#{$fa-css-prefix}-file-audio-o:before { content: $fa-var-file-audio-o; }
.#{$fa-css-prefix}-file-movie-o:before,
.#{$fa-css-prefix}-file-video-o:before { content: $fa-var-file-video-o; }
.#{$fa-css-prefix}-file-code-o:before { content: $fa-var-file-code-o; }
.#{$fa-css-prefix}-vine:before { content: $fa-var-vine; }
.#{$fa-css-prefix}-codepen:before { content: $fa-var-codepen; }
.#{$fa-css-prefix}-jsfiddle:before { content: $fa-var-jsfiddle; }
.#{$fa-css-prefix}-life-bouy:before,
.#{$fa-css-prefix}-life-buoy:before,
.#{$fa-css-prefix}-life-saver:before,
.#{$fa-css-prefix}-support:before,
.#{$fa-css-prefix}-life-ring:before { content: $fa-var-life-ring; }
.#{$fa-css-prefix}-circle-o-notch:before { content: $fa-var-circle-o-notch; }
.#{$fa-css-prefix}-ra:before,
.#{$fa-css-prefix}-resistance:before,
.#{$fa-css-prefix}-rebel:before { content: $fa-var-rebel; }
.#{$fa-css-prefix}-ge:before,
.#{$fa-css-prefix}-empire:before { content: $fa-var-empire; }
.#{$fa-css-prefix}-git-square:before { content: $fa-var-git-square; }
.#{$fa-css-prefix}-git:before { content: $fa-var-git; }
.#{$fa-css-prefix}-y-combinator-square:before,
.#{$fa-css-prefix}-yc-square:before,
.#{$fa-css-prefix}-hacker-news:before { content: $fa-var-hacker-news; }
.#{$fa-css-prefix}-tencent-weibo:before { content: $fa-var-tencent-weibo; }
.#{$fa-css-prefix}-qq:before { content: $fa-var-qq; }
.#{$fa-css-prefix}-wechat:before,
.#{$fa-css-prefix}-weixin:before { content: $fa-var-weixin; }
.#{$fa-css-prefix}-send:before,
.#{$fa-css-prefix}-paper-plane:before { content: $fa-var-paper-plane; }
.#{$fa-css-prefix}-send-o:before,
.#{$fa-css-prefix}-paper-plane-o:before { content: $fa-var-paper-plane-o; }
.#{$fa-css-prefix}-history:before { content: $fa-var-history; }
.#{$fa-css-prefix}-circle-thin:before { content: $fa-var-circle-thin; }
.#{$fa-css-prefix}-header:before { content: $fa-var-header; }
.#{$fa-css-prefix}-paragraph:before { content: $fa-var-paragraph; }
.#{$fa-css-prefix}-sliders:before { content: $fa-var-sliders; }
.#{$fa-css-prefix}-share-alt:before { content: $fa-var-share-alt; }
.#{$fa-css-prefix}-share-alt-square:before { content: $fa-var-share-alt-square; }
.#{$fa-css-prefix}-bomb:before { content: $fa-var-bomb; }
.#{$fa-css-prefix}-soccer-ball-o:before,
.#{$fa-css-prefix}-futbol-o:before { content: $fa-var-futbol-o; }
.#{$fa-css-prefix}-tty:before { content: $fa-var-tty; }
.#{$fa-css-prefix}-binoculars:before { content: $fa-var-binoculars; }
.#{$fa-css-prefix}-plug:before { content: $fa-var-plug; }
.#{$fa-css-prefix}-slideshare:before { content: $fa-var-slideshare; }
.#{$fa-css-prefix}-twitch:before { content: $fa-var-twitch; }
.#{$fa-css-prefix}-yelp:before { content: $fa-var-yelp; }
.#{$fa-css-prefix}-newspaper-o:before { content: $fa-var-newspaper-o; }
.#{$fa-css-prefix}-wifi:before { content: $fa-var-wifi; }
.#{$fa-css-prefix}-calculator:before { content: $fa-var-calculator; }
.#{$fa-css-prefix}-paypal:before { content: $fa-var-paypal; }
.#{$fa-css-prefix}-google-wallet:before { content: $fa-var-google-wallet; }
.#{$fa-css-prefix}-cc-visa:before { content: $fa-var-cc-visa; }
.#{$fa-css-prefix}-cc-mastercard:before { content: $fa-var-cc-mastercard; }
.#{$fa-css-prefix}-cc-discover:before { content: $fa-var-cc-discover; }
.#{$fa-css-prefix}-cc-amex:before { content: $fa-var-cc-amex; }
.#{$fa-css-prefix}-cc-paypal:before { content: $fa-var-cc-paypal; }
.#{$fa-css-prefix}-cc-stripe:before { content: $fa-var-cc-stripe; }
.#{$fa-css-prefix}-bell-slash:before { content: $fa-var-bell-slash; }
.#{$fa-css-prefix}-bell-slash-o:before { content: $fa-var-bell-slash-o; }
.#{$fa-css-prefix}-trash:before { content: $fa-var-trash; }
.#{$fa-css-prefix}-copyright:before { content: $fa-var-copyright; }
.#{$fa-css-prefix}-at:before { content: $fa-var-at; }
.#{$fa-css-prefix}-eyedropper:before { content: $fa-var-eyedropper; }
.#{$fa-css-prefix}-paint-brush:before { content: $fa-var-paint-brush; }
.#{$fa-css-prefix}-birthday-cake:before { content: $fa-var-birthday-cake; }
.#{$fa-css-prefix}-area-chart:before { content: $fa-var-area-chart; }
.#{$fa-css-prefix}-pie-chart:before { content: $fa-var-pie-chart; }
.#{$fa-css-prefix}-line-chart:before { content: $fa-var-line-chart; }
.#{$fa-css-prefix}-lastfm:before { content: $fa-var-lastfm; }
.#{$fa-css-prefix}-lastfm-square:before { content: $fa-var-lastfm-square; }
.#{$fa-css-prefix}-toggle-off:before { content: $fa-var-toggle-off; }
.#{$fa-css-prefix}-toggle-on:before { content: $fa-var-toggle-on; }
.#{$fa-css-prefix}-bicycle:before { content: $fa-var-bicycle; }
.#{$fa-css-prefix}-bus:before { content: $fa-var-bus; }
.#{$fa-css-prefix}-ioxhost:before { content: $fa-var-ioxhost; }
.#{$fa-css-prefix}-angellist:before { content: $fa-var-angellist; }
.#{$fa-css-prefix}-cc:before { content: $fa-var-cc; }
.#{$fa-css-prefix}-shekel:before,
.#{$fa-css-prefix}-sheqel:before,
.#{$fa-css-prefix}-ils:before { content: $fa-var-ils; }
.#{$fa-css-prefix}-meanpath:before { content: $fa-var-meanpath; }
.#{$fa-css-prefix}-buysellads:before { content: $fa-var-buysellads; }
.#{$fa-css-prefix}-connectdevelop:before { content: $fa-var-connectdevelop; }
.#{$fa-css-prefix}-dashcube:before { content: $fa-var-dashcube; }
.#{$fa-css-prefix}-forumbee:before { content: $fa-var-forumbee; }
.#{$fa-css-prefix}-leanpub:before { content: $fa-var-leanpub; }
.#{$fa-css-prefix}-sellsy:before { content: $fa-var-sellsy; }
.#{$fa-css-prefix}-shirtsinbulk:before { content: $fa-var-shirtsinbulk; }
.#{$fa-css-prefix}-simplybuilt:before { content: $fa-var-simplybuilt; }
.#{$fa-css-prefix}-skyatlas:before { content: $fa-var-skyatlas; }
.#{$fa-css-prefix}-cart-plus:before { content: $fa-var-cart-plus; }
.#{$fa-css-prefix}-cart-arrow-down:before { content: $fa-var-cart-arrow-down; }
.#{$fa-css-prefix}-diamond:before { content: $fa-var-diamond; }
.#{$fa-css-prefix}-ship:before { content: $fa-var-ship; }
.#{$fa-css-prefix}-user-secret:before { content: $fa-var-user-secret; }
.#{$fa-css-prefix}-motorcycle:before { content: $fa-var-motorcycle; }
.#{$fa-css-prefix}-street-view:before { content: $fa-var-street-view; }
.#{$fa-css-prefix}-heartbeat:before { content: $fa-var-heartbeat; }
.#{$fa-css-prefix}-venus:before { content: $fa-var-venus; }
.#{$fa-css-prefix}-mars:before { content: $fa-var-mars; }
.#{$fa-css-prefix}-mercury:before { content: $fa-var-mercury; }
.#{$fa-css-prefix}-intersex:before,
.#{$fa-css-prefix}-transgender:before { content: $fa-var-transgender; }
.#{$fa-css-prefix}-transgender-alt:before { content: $fa-var-transgender-alt; }
.#{$fa-css-prefix}-venus-double:before { content: $fa-var-venus-double; }
.#{$fa-css-prefix}-mars-double:before { content: $fa-var-mars-double; }
.#{$fa-css-prefix}-venus-mars:before { content: $fa-var-venus-mars; }
.#{$fa-css-prefix}-mars-stroke:before { content: $fa-var-mars-stroke; }
.#{$fa-css-prefix}-mars-stroke-v:before { content: $fa-var-mars-stroke-v; }
.#{$fa-css-prefix}-mars-stroke-h:before { content: $fa-var-mars-stroke-h; }
.#{$fa-css-prefix}-neuter:before { content: $fa-var-neuter; }
.#{$fa-css-prefix}-genderless:before { content: $fa-var-genderless; }
.#{$fa-css-prefix}-facebook-official:before { content: $fa-var-facebook-official; }
.#{$fa-css-prefix}-pinterest-p:before { content: $fa-var-pinterest-p; }
.#{$fa-css-prefix}-whatsapp:before { content: $fa-var-whatsapp; }
.#{$fa-css-prefix}-server:before { content: $fa-var-server; }
.#{$fa-css-prefix}-user-plus:before { content: $fa-var-user-plus; }
.#{$fa-css-prefix}-user-times:before { content: $fa-var-user-times; }
.#{$fa-css-prefix}-hotel:before,
.#{$fa-css-prefix}-bed:before { content: $fa-var-bed; }
.#{$fa-css-prefix}-viacoin:before { content: $fa-var-viacoin; }
.#{$fa-css-prefix}-train:before { content: $fa-var-train; }
.#{$fa-css-prefix}-subway:before { content: $fa-var-subway; }
.#{$fa-css-prefix}-medium:before { content: $fa-var-medium; }
.#{$fa-css-prefix}-yc:before,
.#{$fa-css-prefix}-y-combinator:before { content: $fa-var-y-combinator; }
.#{$fa-css-prefix}-optin-monster:before { content: $fa-var-optin-monster; }
.#{$fa-css-prefix}-opencart:before { content: $fa-var-opencart; }
.#{$fa-css-prefix}-expeditedssl:before { content: $fa-var-expeditedssl; }
.#{$fa-css-prefix}-battery-4:before,
.#{$fa-css-prefix}-battery:before,
.#{$fa-css-prefix}-battery-full:before { content: $fa-var-battery-full; }
.#{$fa-css-prefix}-battery-3:before,
.#{$fa-css-prefix}-battery-three-quarters:before { content: $fa-var-battery-three-quarters; }
.#{$fa-css-prefix}-battery-2:before,
.#{$fa-css-prefix}-battery-half:before { content: $fa-var-battery-half; }
.#{$fa-css-prefix}-battery-1:before,
.#{$fa-css-prefix}-battery-quarter:before { content: $fa-var-battery-quarter; }
.#{$fa-css-prefix}-battery-0:before,
.#{$fa-css-prefix}-battery-empty:before { content: $fa-var-battery-empty; }
.#{$fa-css-prefix}-mouse-pointer:before { content: $fa-var-mouse-pointer; }
.#{$fa-css-prefix}-i-cursor:before { content: $fa-var-i-cursor; }
.#{$fa-css-prefix}-object-group:before { content: $fa-var-object-group; }
.#{$fa-css-prefix}-object-ungroup:before { content: $fa-var-object-ungroup; }
.#{$fa-css-prefix}-sticky-note:before { content: $fa-var-sticky-note; }
.#{$fa-css-prefix}-sticky-note-o:before { content: $fa-var-sticky-note-o; }
.#{$fa-css-prefix}-cc-jcb:before { content: $fa-var-cc-jcb; }
.#{$fa-css-prefix}-cc-diners-club:before { content: $fa-var-cc-diners-club; }
.#{$fa-css-prefix}-clone:before { content: $fa-var-clone; }
.#{$fa-css-prefix}-balance-scale:before { content: $fa-var-balance-scale; }
.#{$fa-css-prefix}-hourglass-o:before { content: $fa-var-hourglass-o; }
.#{$fa-css-prefix}-hourglass-1:before,
.#{$fa-css-prefix}-hourglass-start:before { content: $fa-var-hourglass-start; }
.#{$fa-css-prefix}-hourglass-2:before,
.#{$fa-css-prefix}-hourglass-half:before { content: $fa-var-hourglass-half; }
.#{$fa-css-prefix}-hourglass-3:before,
.#{$fa-css-prefix}-hourglass-end:before { content: $fa-var-hourglass-end; }
.#{$fa-css-prefix}-hourglass:before { content: $fa-var-hourglass; }
.#{$fa-css-prefix}-hand-grab-o:before,
.#{$fa-css-prefix}-hand-rock-o:before { content: $fa-var-hand-rock-o; }
.#{$fa-css-prefix}-hand-stop-o:before,
.#{$fa-css-prefix}-hand-paper-o:before { content: $fa-var-hand-paper-o; }
.#{$fa-css-prefix}-hand-scissors-o:before { content: $fa-var-hand-scissors-o; }
.#{$fa-css-prefix}-hand-lizard-o:before { content: $fa-var-hand-lizard-o; }
.#{$fa-css-prefix}-hand-spock-o:before { content: $fa-var-hand-spock-o; }
.#{$fa-css-prefix}-hand-pointer-o:before { content: $fa-var-hand-pointer-o; }
.#{$fa-css-prefix}-hand-peace-o:before { content: $fa-var-hand-peace-o; }
.#{$fa-css-prefix}-trademark:before { content: $fa-var-trademark; }
.#{$fa-css-prefix}-registered:before { content: $fa-var-registered; }
.#{$fa-css-prefix}-creative-commons:before { content: $fa-var-creative-commons; }
.#{$fa-css-prefix}-gg:before { content: $fa-var-gg; }
.#{$fa-css-prefix}-gg-circle:before { content: $fa-var-gg-circle; }
.#{$fa-css-prefix}-tripadvisor:before { content: $fa-var-tripadvisor; }
.#{$fa-css-prefix}-odnoklassniki:before { content: $fa-var-odnoklassniki; }
.#{$fa-css-prefix}-odnoklassniki-square:before { content: $fa-var-odnoklassniki-square; }
.#{$fa-css-prefix}-get-pocket:before { content: $fa-var-get-pocket; }
.#{$fa-css-prefix}-wikipedia-w:before { content: $fa-var-wikipedia-w; }
.#{$fa-css-prefix}-safari:before { content: $fa-var-safari; }
.#{$fa-css-prefix}-chrome:before { content: $fa-var-chrome; }
.#{$fa-css-prefix}-firefox:before { content: $fa-var-firefox; }
.#{$fa-css-prefix}-opera:before { content: $fa-var-opera; }
.#{$fa-css-prefix}-internet-explorer:before { content: $fa-var-internet-explorer; }
.#{$fa-css-prefix}-tv:before,
.#{$fa-css-prefix}-television:before { content: $fa-var-television; }
.#{$fa-css-prefix}-contao:before { content: $fa-var-contao; }
.#{$fa-css-prefix}-500px:before { content: $fa-var-500px; }
.#{$fa-css-prefix}-amazon:before { content: $fa-var-amazon; }
.#{$fa-css-prefix}-calendar-plus-o:before { content: $fa-var-calendar-plus-o; }
.#{$fa-css-prefix}-calendar-minus-o:before { content: $fa-var-calendar-minus-o; }
.#{$fa-css-prefix}-calendar-times-o:before { content: $fa-var-calendar-times-o; }
.#{$fa-css-prefix}-calendar-check-o:before { content: $fa-var-calendar-check-o; }
.#{$fa-css-prefix}-industry:before { content: $fa-var-industry; }
.#{$fa-css-prefix}-map-pin:before { content: $fa-var-map-pin; }
.#{$fa-css-prefix}-map-signs:before { content: $fa-var-map-signs; }
.#{$fa-css-prefix}-map-o:before { content: $fa-var-map-o; }
.#{$fa-css-prefix}-map:before { content: $fa-var-map; }
.#{$fa-css-prefix}-commenting:before { content: $fa-var-commenting; }
.#{$fa-css-prefix}-commenting-o:before { content: $fa-var-commenting-o; }
.#{$fa-css-prefix}-houzz:before { content: $fa-var-houzz; }
.#{$fa-css-prefix}-vimeo:before { content: $fa-var-vimeo; }
.#{$fa-css-prefix}-black-tie:before { content: $fa-var-black-tie; }
.#{$fa-css-prefix}-fonticons:before { content: $fa-var-fonticons; }
.#{$fa-css-prefix}-reddit-alien:before { content: $fa-var-reddit-alien; }
.#{$fa-css-prefix}-edge:before { content: $fa-var-edge; }
.#{$fa-css-prefix}-credit-card-alt:before { content: $fa-var-credit-card-alt; }
.#{$fa-css-prefix}-codiepie:before { content: $fa-var-codiepie; }
.#{$fa-css-prefix}-modx:before { content: $fa-var-modx; }
.#{$fa-css-prefix}-fort-awesome:before { content: $fa-var-fort-awesome; }
.#{$fa-css-prefix}-usb:before { content: $fa-var-usb; }
.#{$fa-css-prefix}-product-hunt:before { content: $fa-var-product-hunt; }
.#{$fa-css-prefix}-mixcloud:before { content: $fa-var-mixcloud; }
.#{$fa-css-prefix}-scribd:before { content: $fa-var-scribd; }
.#{$fa-css-prefix}-pause-circle:before { content: $fa-var-pause-circle; }
.#{$fa-css-prefix}-pause-circle-o:before { content: $fa-var-pause-circle-o; }
.#{$fa-css-prefix}-stop-circle:before { content: $fa-var-stop-circle; }
.#{$fa-css-prefix}-stop-circle-o:before { content: $fa-var-stop-circle-o; }
.#{$fa-css-prefix}-shopping-bag:before { content: $fa-var-shopping-bag; }
.#{$fa-css-prefix}-shopping-basket:before { content: $fa-var-shopping-basket; }
.#{$fa-css-prefix}-hashtag:before { content: $fa-var-hashtag; }
.#{$fa-css-prefix}-bluetooth:before { content: $fa-var-bluetooth; }
.#{$fa-css-prefix}-bluetooth-b:before { content: $fa-var-bluetooth-b; }
.#{$fa-css-prefix}-percent:before { content: $fa-var-percent; }
.#{$fa-css-prefix}-gitlab:before { content: $fa-var-gitlab; }
.#{$fa-css-prefix}-wpbeginner:before { content: $fa-var-wpbeginner; }
.#{$fa-css-prefix}-wpforms:before { content: $fa-var-wpforms; }
.#{$fa-css-prefix}-envira:before { content: $fa-var-envira; }
.#{$fa-css-prefix}-universal-access:before { content: $fa-var-universal-access; }
.#{$fa-css-prefix}-wheelchair-alt:before { content: $fa-var-wheelchair-alt; }
.#{$fa-css-prefix}-question-circle-o:before { content: $fa-var-question-circle-o; }
.#{$fa-css-prefix}-blind:before { content: $fa-var-blind; }
.#{$fa-css-prefix}-audio-description:before { content: $fa-var-audio-description; }
.#{$fa-css-prefix}-volume-control-phone:before { content: $fa-var-volume-control-phone; }
.#{$fa-css-prefix}-braille:before { content: $fa-var-braille; }
.#{$fa-css-prefix}-assistive-listening-systems:before { content: $fa-var-assistive-listening-systems; }
.#{$fa-css-prefix}-asl-interpreting:before,
.#{$fa-css-prefix}-american-sign-language-interpreting:before { content: $fa-var-american-sign-language-interpreting; }
.#{$fa-css-prefix}-deafness:before,
.#{$fa-css-prefix}-hard-of-hearing:before,
.#{$fa-css-prefix}-deaf:before { content: $fa-var-deaf; }
.#{$fa-css-prefix}-glide:before { content: $fa-var-glide; }
.#{$fa-css-prefix}-glide-g:before { content: $fa-var-glide-g; }
.#{$fa-css-prefix}-signing:before,
.#{$fa-css-prefix}-sign-language:before { content: $fa-var-sign-language; }
.#{$fa-css-prefix}-low-vision:before { content: $fa-var-low-vision; }
.#{$fa-css-prefix}-viadeo:before { content: $fa-var-viadeo; }
.#{$fa-css-prefix}-viadeo-square:before { content: $fa-var-viadeo-square; }
.#{$fa-css-prefix}-snapchat:before { content: $fa-var-snapchat; }
.#{$fa-css-prefix}-snapchat-ghost:before { content: $fa-var-snapchat-ghost; }
.#{$fa-css-prefix}-snapchat-square:before { content: $fa-var-snapchat-square; }
.#{$fa-css-prefix}-pied-piper:before { content: $fa-var-pied-piper; }
.#{$fa-css-prefix}-first-order:before { content: $fa-var-first-order; }
.#{$fa-css-prefix}-yoast:before { content: $fa-var-yoast; }
.#{$fa-css-prefix}-themeisle:before { content: $fa-var-themeisle; }
.#{$fa-css-prefix}-google-plus-circle:before,
.#{$fa-css-prefix}-google-plus-official:before { content: $fa-var-google-plus-official; }
.#{$fa-css-prefix}-fa:before,
.#{$fa-css-prefix}-font-awesome:before { content: $fa-var-font-awesome; }
.#{$fa-css-prefix}-handshake-o:before { content: $fa-var-handshake-o; }
.#{$fa-css-prefix}-envelope-open:before { content: $fa-var-envelope-open; }
.#{$fa-css-prefix}-envelope-open-o:before { content: $fa-var-envelope-open-o; }
.#{$fa-css-prefix}-linode:before { content: $fa-var-linode; }
.#{$fa-css-prefix}-address-book:before { content: $fa-var-address-book; }
.#{$fa-css-prefix}-address-book-o:before { content: $fa-var-address-book-o; }
.#{$fa-css-prefix}-vcard:before,
.#{$fa-css-prefix}-address-card:before { content: $fa-var-address-card; }
.#{$fa-css-prefix}-vcard-o:before,
.#{$fa-css-prefix}-address-card-o:before { content: $fa-var-address-card-o; }
.#{$fa-css-prefix}-user-circle:before { content: $fa-var-user-circle; }
.#{$fa-css-prefix}-user-circle-o:before { content: $fa-var-user-circle-o; }
.#{$fa-css-prefix}-user-o:before { content: $fa-var-user-o; }
.#{$fa-css-prefix}-id-badge:before { content: $fa-var-id-badge; }
.#{$fa-css-prefix}-drivers-license:before,
.#{$fa-css-prefix}-id-card:before { content: $fa-var-id-card; }
.#{$fa-css-prefix}-drivers-license-o:before,
.#{$fa-css-prefix}-id-card-o:before { content: $fa-var-id-card-o; }
.#{$fa-css-prefix}-quora:before { content: $fa-var-quora; }
.#{$fa-css-prefix}-free-code-camp:before { content: $fa-var-free-code-camp; }
.#{$fa-css-prefix}-telegram:before { content: $fa-var-telegram; }
.#{$fa-css-prefix}-thermometer-4:before,
.#{$fa-css-prefix}-thermometer:before,
.#{$fa-css-prefix}-thermometer-full:before { content: $fa-var-thermometer-full; }
.#{$fa-css-prefix}-thermometer-3:before,
.#{$fa-css-prefix}-thermometer-three-quarters:before { content: $fa-var-thermometer-three-quarters; }
.#{$fa-css-prefix}-thermometer-2:before,
.#{$fa-css-prefix}-thermometer-half:before { content: $fa-var-thermometer-half; }
.#{$fa-css-prefix}-thermometer-1:before,
.#{$fa-css-prefix}-thermometer-quarter:before { content: $fa-var-thermometer-quarter; }
.#{$fa-css-prefix}-thermometer-0:before,
.#{$fa-css-prefix}-thermometer-empty:before { content: $fa-var-thermometer-empty; }
.#{$fa-css-prefix}-shower:before { content: $fa-var-shower; }
.#{$fa-css-prefix}-bathtub:before,
.#{$fa-css-prefix}-s15:before,
.#{$fa-css-prefix}-bath:before { content: $fa-var-bath; }
.#{$fa-css-prefix}-podcast:before { content: $fa-var-podcast; }
.#{$fa-css-prefix}-window-maximize:before { content: $fa-var-window-maximize; }
.#{$fa-css-prefix}-window-minimize:before { content: $fa-var-window-minimize; }
.#{$fa-css-prefix}-window-restore:before { content: $fa-var-window-restore; }
.#{$fa-css-prefix}-times-rectangle:before,
.#{$fa-css-prefix}-window-close:before { content: $fa-var-window-close; }
.#{$fa-css-prefix}-times-rectangle-o:before,
.#{$fa-css-prefix}-window-close-o:before { content: $fa-var-window-close-o; }
.#{$fa-css-prefix}-bandcamp:before { content: $fa-var-bandcamp; }
.#{$fa-css-prefix}-grav:before { content: $fa-var-grav; }
.#{$fa-css-prefix}-etsy:before { content: $fa-var-etsy; }
.#{$fa-css-prefix}-imdb:before { content: $fa-var-imdb; }
.#{$fa-css-prefix}-ravelry:before { content: $fa-var-ravelry; }
.#{$fa-css-prefix}-eercast:before { content: $fa-var-eercast; }
.#{$fa-css-prefix}-microchip:before { content: $fa-var-microchip; }
.#{$fa-css-prefix}-snowflake-o:before { content: $fa-var-snowflake-o; }
.#{$fa-css-prefix}-superpowers:before { content: $fa-var-superpowers; }
.#{$fa-css-prefix}-wpexplorer:before { content: $fa-var-wpexplorer; }
.#{$fa-css-prefix}-meetup:before { content: $fa-var-meetup; }

13
font-awesome/_larger.scss vendored Normal file
View file

@ -0,0 +1,13 @@
// Icon Sizes
// -------------------------
/* makes the font 33% larger relative to the icon container */
.#{$fa-css-prefix}-lg {
font-size: (4em / 3);
line-height: (3em / 4);
vertical-align: -15%;
}
.#{$fa-css-prefix}-2x { font-size: 2em; }
.#{$fa-css-prefix}-3x { font-size: 3em; }
.#{$fa-css-prefix}-4x { font-size: 4em; }
.#{$fa-css-prefix}-5x { font-size: 5em; }

19
font-awesome/_list.scss vendored Normal file
View file

@ -0,0 +1,19 @@
// List Icons
// -------------------------
.#{$fa-css-prefix}-ul {
padding-left: 0;
margin-left: $fa-li-width;
list-style-type: none;
> li { position: relative; }
}
.#{$fa-css-prefix}-li {
position: absolute;
left: -$fa-li-width;
width: $fa-li-width;
top: (2em / 14);
text-align: center;
&.#{$fa-css-prefix}-lg {
left: -$fa-li-width + (4em / 14);
}
}

Some files were not shown because too many files have changed in this diff Show more