/* --------------------------------------------------

   Composition helpers
   [fr] Aides a la composition
   
   (c) 2010-2014 Tiny Typo v1.3.3 - MIT License - tinytypo.tetue.net

----------------------------------------------------- */
/* Box model
[fr] http://blog.goetter.fr/post/27612618411/box-sizing-et-pourquoi-pas
[en] http://www.paulirish.com/2012/box-sizing-border-box-ftw/ */
*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
/* Blocks */
.block {
  display: block;
  margin-bottom: 1.5em;
}
.inline {
  display: inline;
}
.inline-block {
  display: inline-block;
}
/* Positioning */
.left {
  float: left;
}
.right {
  float: right;
}
.center {
  margin-right: auto;
  margin-left: auto;
}
/* Blocks spacer
[fr] Espaceur de blocs : http://romy.tetue.net/657 */
.clear {
  clear: both;
}
br.clear {
  clear: both;
  margin: 0;
  padding: 0;
  border: 0;
  height: 0;
  line-height: 1px;
  font-size: 1px;
}
hr.clear {
  visibility: hidden;
}
/* clearfix : https://web.archive.org/web/20140214043449/https://css-101.org/articles/clearfix/latest-new-clearfix-so-far.php */
.clearfix:after {
  content: "";
  display: table;
  clear: both;
}
/* Not visible */
.offscreen {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.hidden {
  visibility: hidden;
}
.none {
  display: none;
}
/* debug */
.todo {
  opacity: 0.5;
}
.todo:hover {
  opacity: 1;
}
.blink {
  text-decoration: blink;
}
