/****************************************************************************** * 0. Font faces */ /* * 0.1 Open Sans */ @font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 400; src: local('Open Sans'), local('OpenSans'), url('../font/OpenSans-Regular.ttf'); } @font-face { font-family: 'Open Sans'; src: local('Open Sans Light'), local('OpenSans-Light'), url('../font/OpenSans-Light.ttf'); font-style: normal; font-weight: 300; } @font-face { font-family: 'Open Sans'; src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url('../font/OpenSans-Bold.ttf'); font-style: normal; font-weight: bold; } @font-face { font-family: 'Open Sans'; src: local('Open Sans Italic'), local('OpenSans-Italic'), url('../font/OpenSans-Italic.ttf'); font-style: italic; } @font-face { font-family: 'Open Sans'; src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), url('../font/OpenSans-BoldItalic.ttf'); font-style: italic; font-weight: bold; } /* * 0.2 Alex Brush */ @font-face { font-family: 'Alex Brush'; font-style: normal; font-weight: 400; src: local('Alex Brush'), local('AlexBrush'), url('../font/AlexBrush-Regular.ttf'); } /****************************************************************************** * 1. Styles de base */ html, body { padding: 0; margin: 0; height: 100%; } body { background-color: #231f20; color: #d6d6d6; font-family: "Open Sans", sans-serif; } a { text-decoration: none; color: #e3834f; } a:hover { text-decoration: underline; } article { border-radius: 3px; border: none; margin: 3em 0; } h2 { color: white; font-size: 1.5em; font-weight: 200; margin-top: 2em; } main { width: 75%; margin: auto; padding-bottom: 4em; color: #b3abab; } @media screen and (max-width: 900px) { main { width: 100%; } } /****************************************************************************** * 2. Classes */ /* * 2.1 Color classes */ .yellow { color: #ffd35d; } .orange { color: #ffb43f; } .red { color: #ff7b33; } .dark-yellow { color: # } .dark-orange { color: #f59b20; } .dark-red { color: #f2541b; } .blurry { text-shadow: 0 0 0.5em; } .left { float: left; margin-left: 1em; } .no-day { background-color: transparent !important; } .empty-day { background-color: #363032 !important; } .dark-red-day { background-color: #f2541b !important; } .red-day { background-color: #ff7b33 !important; } .orange-day { background-color: #ffb43f !important; } .yellow-day { background-color: #ffd35d !important; } .dark-blue { color: #2332ff; } .blue { color: #196cff; } .light-blue { color: #5d92ff; } .dark-blue-day { background-color: #2332ff !important; } .blue-day { background-color: #196cff !important; } .light-blue-day { background-color: #5d92ff !important; } /* * 2.2 Dialog boxes */ .dialog-err { background-color: rgba(255,255,255,0.1); border-left: 3px solid #cc624d; margin: 10px 0; padding: 5px 10px; } .dialog-err h4 { font-weight: 500; margin: 0; color: #cc624d; } .dialog-err p { margin: 3px 0; font-weight: 200; color: white; } /* * 2.x Other */ .clearfix { clear: both; } /****************************************************************************** * 3. Header */ header { background-color: #5f5557; border-bottom: 5px solid #928688; display: -webkit-flex; display: flex; -webkit-flex-flow: row wrap; flex-flow: row wrap; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; } .header-logo img { margin: 2px 0; margin-left: 3em; vertical-align: top; } /* * 3.1. Menu */ #menu { font-size: 1.2em; display: -webkit-flex; display: flex; -webkit-flex-flow: row wrap; flex-flow: row wrap; } #menu>a { display: inline-block; margin-right: 1em; color: white; text-transform: uppercase; font-weight: 200; border-bottom: 3px solid #5f5557; } #menu a:hover { text-decoration: none; border-bottom: 3px solid #928688; } #menu a.active { border-bottom: 3px solid #e3834f; } #menu a.active:hover { border-bottom: 3px solid #ad7556; } /* * 3.2. Rate logo */ .rate-logo { cursor: help; position: relative; margin-left: 2em; margin-right: auto; display: none; } .rate-logo img { width: 2em; } .rate-logo span { position: absolute; width: 8em; left: 50%; margin-left: -4em; background-color: rgba(0,0,0,0.7); border-radius: 3px; padding: 3px; text-align: center; display: none; } .rate-logo:hover span { display: block; } /****************************************************************************** * 4. Footer */ footer { padding: 0; background-color: #5f5557; border-top: 5px solid #928688; position: absolute; left: 0; bottom: 0; width: 100%; font-size: 0.7em; display: flex; align-items: center; justify-content: space-between; } footer p { margin: 0.2em; } .pre-footer { margin-bottom: 2em; } /****************************************************************************** * 5. Overview */ #overview { display: flex; align-items: center; justify-content: center; margin-bottom: 1em; } #overview div { margin-left: 2em; margin-right: 2em; text-align: center; } #now, #day, #week { font-size: 3em; margin-bottom: 0; } /****************************************************************************** * 6. Graphe */ #graph { background-color: #363032; border-bottom: 3px solid #52484b; margin-bottom: 1em; position: relative; height: 300px; } /* * 6.1. Values */ #graph_values_wrapper { overflow: hidden; width: 100%; height: 100%; direction: rtl; } #graph_values { display: -webkit-inline-flex; display: inline-flex; -webkit-flex-flow: row-reverse nowrap; flex-flow: row-reverse nowrap; -webkit-justify-content: flex-end; justify-content: flex-end; -webkit-align-items: flex-end; align-items: flex-end; height: 100%; min-width: 100%; } #graph_values .rect { display: block; margin-left: 2px; height: 100%; position: relative; } #graph_values .rect { margin-left: 2px; height: 100%; position: relative; } #graph_values .rect.undefined { background-color: #5C2D2D; } #graph_values .rect.animated { transition: width 1s; width: 0; } #graph_values .rect-info { color: #ddd; background-color: rgba(0,0,0,0.8); border-radius: 3px; padding: 3px; box-sizing: border-box; text-align: center; position: absolute; top: 0; width: 7em; left: 50%; margin-left: -3.5em; z-index: 20; display: none; } #graph_values .rect:hover .rect-info { display: block; } #graph_values .rect:hover { background-color: rgba(0,0,0,0.2); } #graph_values .rect-color { position: absolute; bottom: 0; width: 100%; z-index: 10; } /* * 6.2. Axis */ #graph hr { position: absolute; margin: 0; border: 0; height: 2px; width: 100%; background-color: rgba(255,255,255,0.1); z-index: 20; } #graph hr.absolute-graduation-hr { background-color: rgba(255,0,0,0.5); } #graph_vertical_axis span { position:absolute; z-index: 20; /*text-shadow: 1px 1px 0px rgba( 0, 0, 0,0.5), -1px -1px 0px rgba(255,255,255,0.5); background-color: #363032;*/ } /* * 6.3. Loading */ #graph_loading { position: absolute; top: 0; bottom: 0; left: 0; right: 0; display: -webkit-flex; display: flex; -webkit-flex-flow: column wrap; flex-flow: column wrap; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; } #graph_loading img { width: 3em; animation-name: rotate; -webkit-animation-name: rotate; animation-duration: 5s; -webkit-animation-duration: 5s; animation-iteration-count: infinite; -webkit-animation-iteration-count: infinite; animation-timing-function: linear; -webkit-animation-timing-function: linear; z-index: 20; } /* * 6.4. Prev/Next */ #prev { position: absolute; top: 0; bottom: 0; left: -2.5em; width: 2em; background-color: rgba(0,0,0,0.5); border: none; z-index: 30; } #prev:hover { background-color: rgba(0,0,0,0.8); } #next { position: absolute; top: 0; bottom: 0; right: -2.5em; width: 2em; background-color: rgba(0,0,0,0.5); border: none; z-index: 30; } #next:hover { background-color: rgba(0,0,0,0.8); } @media screen and (max-width: 780px) { #prev { left:0; } #next { right:0; } } /****************************************************************************** * 7. Échelle du graphe */ #scale { display: -webkit-flex; display: flex; -webkit-flex-flow: rowcolumn wrap; flex-flow: row wrap; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; } #scale button { background: #363032; border: none; border-bottom: 3px solid #52484b; } #scale button.active { color: white; border-bottom: 3px solid #e3834f; } #scale button:hover { color: white; background: #60565A; } #unit-energy { margin-left: auto; color: white; } /****************************************************************************** * 8. Menu blocks */ .menu { text-transform: uppercase; color: white; } .menu img { margin: 3px 0.5em; vertical-align: middle; } .menu h1 { font-weight: 200; } .menu a { color: white; } .menu>a { color: white; display: block; margin: 0.5em 5em; line-height: 3em; } .menu>a:hover { background-color: rgba(255, 255, 255, 0.1); text-decoration: none; } .menu a img { height: 2em; } .right-column, .left-column { width: 50%; } .right-column { float: right; } .left-column { width: 50%; float: left; } @media screen and (max-width: 780px) { .right-column { width: 100%; float: none; } .left-column { width: 100%; float: none; } } /****************************************************************************** * 9. Form */ input, select { color: #444; border: 0; border-radius: 3px; padding: 4px 6px; background-color: #F8F8F8; line-height: 1.4em; } input:focus { box-shadow: 0 0 2px 2px rgba(185, 103, 59, 0.8); } input[type="submit"] { background-color: #BF6C3F; text-transform: uppercase; color: white; } .form-item { display: -webkit-flex; display: flex; -webkit-flex-flow: row wrap; flex-flow: row wrap; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; } .form-item label { width: 275px; } .form-item input { } .form-help { text-transform: none; color: #888; margin: 0 1em; font-size: 0.9em; margin-bottom: 2em; } /****************************************************************************** * 10. Tableaux */ table { text-align: center; margin: auto; } table td, table th { padding: 0.5em; border: 1px solid white; } table tr td:first-child, table tr th:first-child { border-left: none; } table tr td:last-child, table tr th:last-child { border-right: none; } table tr:first-child td, table tr:first-child th { border-top: none; } table tr:last-child td, table tr:last-child th { border-bottom: none; } /****************************************************************************** * 11. Coming soon */ .coming-soon { position: absolute; top: 0; bottom: 0; left: 0; right: 0; display: -webkit-flex; display: flex; -webkit-flex-flow: column wrap; flex-flow: column wrap; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; z-index: -10; } .coming-soon img { width: 10em; animation-name: rotate; -webkit-animation-name: rotate; animation-duration: 5s; -webkit-animation-duration: 5s; animation-iteration-count: infinite; -webkit-animation-iteration-count: infinite; animation-timing-function: linear; -webkit-animation-timing-function: linear; } .coming-soon span { display: block; text-transform: uppercase; color: white; font-size: 2em; font-weight: 300; } /****************************************************************************** * 12. Content */ .content { color: #d7d7d7; max-width: 50em; margin: auto; padding: 0 2em; text-align: justify; } /****************************************************************************** * 13. Animations */ @keyframes rotate { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } @-webkit-keyframes rotate { from { -webkit-transform: rotate(0deg); } to { -webkit-transform: rotate(360deg); } } /****************************************************************************** * X. Autre */ #page { position: relative; min-height: 100%; margin: 0; overflow: hidden; } @media screen and (max-width: 780px) { #menu { display: none; } }