Files
nairobi/app/assets/stylesheets/participacion.scss
2015-09-05 00:31:19 +02:00

1403 lines
22 KiB
SCSS

// Table of Contents
//
// 01. Variables
// 02. Mixins
// 03. Global styles
// 04. Header
// 05. Footer
// 06. Tags
// 07. Auth pages
// 08. Forms
// 09. Alerts
// 10. User account
// 11. Filters
// 12. Official levels
// 13. Pagination
// 14. Tables
// 15. Social
// 16. Pages
// 17. Verification
//
// 01. Variables
// - - - - - - - - - - - - - - - - - - - - - - - - -
@import "variables";
// 02. Mixins
// - - - - - - - - - - - - - - - - - - - - - - - - -
@mixin back {
color: $text-light;
font-size: rem-calc(13);
line-height: $line-height;
}
@mixin logo {
a {
color: white;
font-family: 'Lato' !important;
font-size: rem-calc(20);
font-weight: lighter;
line-height: $line-height*4;
padding-left: rem-calc(6);
span {
font-size: rem-calc(16);
font-weight: lighter;
vertical-align: top;
}
@media (min-width: $small-breakpoint) {
font-size: rem-calc(28);
span {
font-size: rem-calc(20);
}
}
}
}
// 03. Global styles
// - - - - - - - - - - - - - - - - - - - - - - - - -
*, html {
margin: 0;
padding: 0;
}
html, body {
height: 100%;
}
body {
background: $body;
font-family: $font-family-sans-serif;
font-size: rem-calc(13);
font-weight: normal;
text-rendering: optimizeLegibility;
&::selection, ::-moz-selection {
background: $brand !important;
color: white !important;
}
&.bg-white {
background: white;
}
}
p {
font-size: rem-calc(13);
line-height: $line-height;
margin-bottom: rem-calc(12);
}
a {
color: $link;
&:hover {
color: $link-hover;
}
}
h1, h2, h3, h4, h5, h6 {
font-family: $font-family-sans-serif;
font-weight: bold;
}
h1 {
font-size: rem-calc(30);
}
h2 {
font-size: rem-calc(24);
}
h3 {
font-size: rem-calc(20);
}
h4 {
font-size: rem-calc(18);
}
h5 {
font-size: rem-calc(16);
}
h6 {
font-size: rem-calc(14);
}
.button {
font-size: rem-calc(13);
padding: rem-calc(15) rem-calc(32);
}
.clear {
clear: both;
}
.inline-block {
display: inline-block;
}
.row {
max-width: 1170px;
}
.row-full {
max-width: 100% !important;
}
.sidebar {
margin-bottom: rem-calc(48);
}
.sidebar-divider {
border-top: 1px solid $border;
margin-top: rem-calc(24);
&:first-child {
margin-top: 0;
}
}
.sub-nav {
background-color: #f2f2f2;
border-radius: rem-calc(3);
padding: rem-calc(10) rem-calc(10) rem-calc(10) 0;
margin: rem-calc(12) 0;
}
.sub-nav dt, .sub-nav dd, .sub-nav li {
padding: rem-calc(3) 0;
&.active {
background: #008CBA;
border-radius: rem-calc(3);
color: white;
cursor: default;
font-weight: normal;
padding: rem-calc(3) rem-calc(14);
a:hover {
color: #737373;
}
}
}
.f-dropdown {
li a {
font-size: rem-calc(12);
&:hover {
color: $link-hover;
}
}
li:hover, .f-dropdown li:focus {
background: white;
}
&.open {
outline: none;
}
}
.margin {
margin-top: $line-height;
margin-bottom: $line-height;
}
.margin-top {
margin-top: $line-height;
}
.margin-bottom {
margin-bottom: $line-height;
}
.back, .icon-angle-left {
@include back;
& + h1 {
clear:both;
}
}
.progress {
background-color: rgba(0,0,0,.06);
border: 0;
}
.wrapper {
min-height: 100%;
margin: 0 auto rem-calc(-288);
height: auto !important;
height: 100%;
}
.footer, .push {
clear: both;
min-height: rem-calc(288);
}
.footer {
background: $brand;
}
// 04. Header
// - - - - - - - - - - - - - - - - - - - - - - - - -
header {
background: image-url('header_bg.jpg');
background-position: 50% 50%;
background-size: cover;
color: $text;
min-height: rem-calc(624);
&.results {
min-height: rem-calc(48);
@media (min-width: $small-breakpoint) {
min-height: rem-calc(216);
}
}
h1 {
font-size: rem-calc(36);
font-weight: bolder;
line-height: $line-height*2;
margin: rem-calc(24) 0;
padding: 0;
}
p {
font-size: rem-calc(14);
line-height: $line-height;
}
.button {
color: white;
font-family: inherit;
margin-top: 0;
}
.home-page {
background-color: rgba(255,255,255,.85);
clear: both;
@media (min-width: $small-breakpoint) {
margin-top: rem-calc(66);
}
.button {
color: white;
font-family: inherit;
margin-top: 0;
}
}
.selected {
position: relative;
&:before {
top: -14px;
left: 50%;
border: solid transparent;
content: " ";
height: 0;
width: 0;
position: absolute;
border-top-color: white;
border-width: 8px;
margin-left: -8px;
}
}
.locale {
float: none;
height: rem-calc(48);
padding-top: rem-calc(3);
text-align: center;
@media (min-width: $small-breakpoint) {
float: left;
}
.icon-language {
font-size: rem-calc(16);
line-height: rem-calc(24);
vertical-align: middle;
}
}
.external-links {
float: none;
padding: rem-calc(12) 0;
text-align: center;
@media (min-width: $small-breakpoint) {
float: right;
}
}
}
.contain-to-grid {
background: none;
}
.top-bar {
background: rgba(0,0,0,.5);
color: white;
height: rem-calc(48);
max-width: 1170px !important;
@media (min-width: $small-breakpoint) {
height: rem-calc(96);
}
.name {
height: rem-calc(48);
a {
color: white;
font-family: 'Lato';
font-size: rem-calc(18);
font-weight: lighter;
line-height: $line-height*2;
padding-left: 0;
span {
font-size: rem-calc(14);
font-weight: normal;
}
@media (min-width: $small-breakpoint) {
line-height: $line-height*4;
}
@media (min-width: $medium-breakpoint) {
font-size: rem-calc(30);
span {
font-size: rem-calc(20);
}
}
img {
height: 48px;
margin-right: rem-calc(6);
width: 48px;
@media (min-width: $small-breakpoint) {
height: 96px;
margin-right: rem-calc(12);
width: 96px;
}
}
}
}
&.expanded .title-area {
background: none;
}
.toggle-topbar {
a {
font-size: rem-calc(10);
}
&.menu-icon a {
padding: 0 rem-calc(24);
}
}
&.expanded .toggle-topbar a {
color: white;
}
&.expanded .toggle-topbar a span::after {
box-shadow: 0 0 0 1px #FFFFFF, 0 7px 0 1px #FFFFFF, 0 14px 0 1px #FFFFFF;
}
}
.top-bar-section {
margin-right: rem-calc(24);
width: 100%;
ul li > a {
font-size: rem-calc(14);
&.button {
border-radius: 0;
line-height: $line-height*1.5;
text-align: left;
}
@media (min-width: $small-breakpoint) {
&.button {
border-radius: rem-calc(3);
line-height: normal;
margin-top: rem-calc(24);
text-align: center;
}
}
}
ul li > a {
font-size: rem-calc(14);
}
ul li > a.button:hover, .top-bar-section ul li > a.button:focus {
background-color: #007095 !important;
}
ul li, ul li:hover:not(.has-form) > a:not(.button) {
line-height: $line-height;
@media (min-width: $small-breakpoint) {
background: none;
border: 0;
line-height: $line-height*4;
}
}
ul {
margin-left: rem-calc(12);
@media (min-width: $small-breakpoint) {
margin-left: 0;
&.right:first-child {
margin-right: rem-calc(12);
}
}
li:not(.has-form) a:not(.button) {
background: none;
color: white;
@media (min-width: $small-breakpoint) {
line-height: $line-height*4;
}
&:hover {
background: none;
color: white;
text-decoration: underline;
transition: text-decoration 275ms;
}
}
li.active:not(.has-form) a:not(.button) {
background: none;
height: rem-calc(96);
line-height: $line-height*4;
}
}
}
.top-links {
color: white;
font-size: rem-calc(14);
height: rem-calc(72);
@media (min-width: $small-breakpoint) {
height: rem-calc(48);
}
.row {
background-color: rgba(0,0,0,.5);
padding: 0 rem-calc(10);
}
a {
color: white;
&:hover {
text-decoration: underline;
}
}
}
.subnavigation {
background: white;
clear: both;
@media (min-width: $small-breakpoint) {
text-align: center;
}
a {
color: $text;
display: block;
font-size: rem-calc(14);
font-weight: bold;
min-width: rem-calc(192);
position: relative;
text-align: left;
margin-left: rem-calc(12);
@media (min-width: $small-breakpoint) {
display: inline-block;
line-height: $line-height*2;
margin-left: 0;
min-width: rem-calc(192);
text-align: center;
}
&:hover {
color: $link;
@media (min-width: $small-breakpoint) {
background: rgba(0,119,185,.25);
}
}
&.active {
color: $link;
@media (min-width: $small-breakpoint) {
background: $brand;
color: white;
&:after {
bottom: -16px;
left: 50%;
border: solid transparent;
content: " ";
height: 0;
width: 0;
position: absolute;
border-top-color: $brand;
border-width: 8px;
margin-left: -8px;
}
}
}
}
}
// 05. Footer
// - - - - - - - - - - - - - - - - - - - - - - - - -
footer {
color: white;
padding: rem-calc(24) 0 rem-calc(48) 0;
text-align: justify;
.logo {
@include logo;
a {
line-height: rem-calc(36);
padding-left: 0;
}
}
h4 {
color: white;
font-weight: normal;
}
a {
color: white;
&:hover {
color: white;
opacity: .5;
transition: opacity 275ms;
}
&:active, &:focus {
color: white;
}
}
.footer-description {
a {
text-decoration: underline;
&:hover {
color: white;
opacity: .5;
transition: opacity 275ms;
}
&:active, &:focus {
color: white;
opacity: 1;
}
}
}
.footer-sections {
padding-left: 0;
}
}
.subfooter {
padding-top: $line-height;
}
// 06. Tags
// - - - - - - - - - - - - - - - - - - - - - - - - -
.tags {
a {
background: $border;
border-radius: rem-calc(30);
color: #4d4d4d;
display: inline-block;
font-size: rem-calc(13);
font-weight: bold;
line-height: rem-calc(22);
margin-bottom: rem-calc(8);
padding: 0 rem-calc(8);
&:hover {
color: $link;
cursor: pointer;
background: #E5F1F8;
}
}
}
.tag-cloud {
@extend .tags;
h3 {
border-top: 1px solid $votes-border;
display: inline-block;
font-family: $font-family-sans-serif;
font-size: rem-calc(16);
margin: -1px 0 rem-calc(12);
padding-top: rem-calc(6);
text-transform: uppercase;
}
a {
padding: rem-calc(6) rem-calc(8);
.label {
color: white;
}
&:hover {
.label {
background: $brand;
}
}
}
}
// 07. Auth pages
// - - - - - - - - - - - - - - - - - - - - - - - - -
.auth-page {
background: #065687 image-url("auth_bg.jpg");
background-repeat: no-repeat;
background-size: cover;
padding-top: rem-calc(24);
@media (min-width: $small-breakpoint) {
padding-top: rem-calc(48);
}
h1 {
@include logo;
a {
line-height: $line-height;
span {
vertical-align: middle;
}
}
}
}
.auth {
min-height: rem-calc(480);
h2 {
clear: both;
font-size: rem-calc(18);
font-weight: bold;
line-height: $line-height;
@media (min-width: $small-breakpoint) {
font-size: rem-calc(30);
line-height: $line-height*2;
}
}
.back, .icon-angle-left {
@include back;
}
.panel {
background: white;
border: 0;
h1 {
font-size: rem-calc(30);
font-weight: bolder;
}
}
form {
.button {
margin-top: rem-calc(24);
}
}
}
// 08. Forms
// - - - - - - - - - - - - - - - - - - - - - - - - -
form.locale-form {
display: inline-block;
position: relative;
select {
background-image: image-url("language_select.png");
&.locale-switcher {
background-color: transparent;
border: 0;
color: white;
outline: none;
padding-left: rem-calc(3);
padding-right: rem-calc(24);
}
}
}
form {
label {
font-weight: bold;
line-height: $line-height;
}
input[type]:not([type=submit]):not([type=file]):not([type=checkbox]) {
background: $input-bg;
height: rem-calc(48);
margin-bottom: rem-calc(16);
&.error {
margin-bottom: rem-calc(1);
}
}
input[type="checkbox"] + label,
input[type="radio"] + label {
margin-right: 0;
}
input[type=file] {
margin: rem-calc(12) 0 rem-calc(12) rem-calc(6);
}
.note {
display: block;
font-size: rem-calc(13);
margin-bottom: rem-calc(12);
}
.ckeditor {
min-height: rem-calc(312);
}
.checkbox {
display: inline-block;
font-size: rem-calc(14);
font-weight: normal;
line-height: $line-height;
vertical-align: middle;
}
.captcha {
border: 0;
padding: rem-calc(12) 0;
input {
margin-bottom: 0 !important;
}
}
.button.margin-top {
margin-top: rem-calc(24);
}
}
.captcha {
label {
display: none;
}
}
// 09. Alerts
// - - - - - - - - - - - - - - - - - - - - - - - - -
.alert-box {
&.success {
background-color: $success-bg;
border-color: $success-border;
color: $success-color;
}
&.info {
background-color: $info-bg;
border-color: $info-border;
color: $info-color;
}
&.warning {
background-color: $warning-bg;
border-color: $warning-border;
color: $warning-color;
a {
color: $warning-color;
font-weight: bold;
text-decoration: underline;
}
}
&.alert {
background-color: $alert-bg;
border-color: $alert-border;
color: $alert-color;
}
}
.alert-layout {
position: absolute;
top: 0;
width: 100%;
}
span.error, small.error {
background: $alert-bg;
color: $alert-color;
}
.error small.error {
background: $alert-bg;
color: $alert-color;
display: inline-block;
margin: 0 rem-calc(6);
}
label.error, label.error a {
color: $alert-color;
}
// 10. User account
// - - - - - - - - - - - - - - - - - - - - - - - - -
.account {
background: white;
padding-top: rem-calc(24);
.icon-debates {
color: $debates;
font-size: rem-calc(60);
line-height: $line-height;
opacity: .5;
}
.avatar {
margin-bottom: rem-calc(24);
}
.initialjs-avatar {
margin-bottom: $line-height;
}
h3 {
clear: both;
font-size: rem-calc(20);
font-weight: bold;
line-height: $line-height;
margin: 0;
margin-bottom: rem-calc(12);
}
.recommendations {
list-style-type: none;
margin-left: 0;
margin-top: rem-calc(24);
li {
font-size: rem-calc(12);
margin: rem-calc(12) 0;
&:before {
color: $debates;
content: "l ";
font-family: "icons" !important;
}
}
}
select {
height: rem-calc(48);
margin-right: rem-calc(12);
}
.verify-account {
padding-right: rem-calc(12);
}
}
img.avatar, img.admin-avatar, img.moderator-avatar {
border-radius: rem-calc(1000);
position: relative;
}
img.initialjs-avatar {
@extend .avatar;
}
.author-deleted {
background-color: rgba(255,255,255,.5);
color: rgba(0,0,0,.4);
font-size: rem-calc(40);
left: 11px;
position: absolute;
top: 63px;
}
.user-deleted {
@extend .author-deleted;
top: -9px;
}
// 11. Filters
// - - - - - - - - - - - - - - - - - - - - - - - - -
.filters {
h2 {
display: inline-block;
font-size: rem-calc(24);
margin: rem-calc(24) 0;
}
select {
height: auto;
margin: rem-calc(24) rem-calc(6);
min-width: rem-calc(180);
outline: 0;
padding: rem-calc(12);
width: auto;
optgroup {
font-size: rem-calc(14);
}
option {
&:after {
content: "a";
font-family: "icons";
}
}
}
}
// 12. Officials levels
// - - - - - - - - - - - - - - - - - - - - - - - - -
[class^="level-"] {
color: white;
}
.is-author {
background: $author;
}
.is-association {
background: $association;
}
.is-deleted {
background: $deleted;
}
.level-1 {
background: $level-1;
}
.level-2 {
background: $level-2;
}
.level-3 {
background: $level-3;
}
.level-4 {
background: $level-4;
}
.level-5 {
background: $level-5;
}
// 13. Pagination
// - - - - - - - - - - - - - - - - - - - - - - - - -
ul.pagination {
margin-top: rem-calc(24);
li {
color: $text-medium;
}
}
// 14. Tables
// - - - - - - - - - - - - - - - - - - - - - - - - -
table {
border-collapse: collapse;
border-spacing: 0;
width: 100%;
tr {
td {
line-height: $line-height;
padding: rem-calc(12) rem-calc(6);
}
&:nth-child(odd) {
background: #F0F2F6;
}
}
.button {
margin: 0;
}
}
// 15. Social
// - - - - - - - - - - - - - - - - - - - - - - - - -
.button.button-twitter {
background: #45B0E3;
&:before {
background: #40A2D1;
content: "f";
font-family: "icons" !important;
font-size: rem-calc(24);
left: 0;
line-height: $line-height*2;
padding: 0 rem-calc(20);
position: absolute;
top: 0;
}
}
.social-share-button-twitter {
background: #45B0E3;
color: white;
height: rem-calc(48);
position: relative;
width: rem-calc(48);
&:before {
content: "f";
font-family: "icons" !important;
font-size: rem-calc(24);
left: 50%;
line-height: $line-height*2;
margin-left: rem-calc(-11);
position: absolute;
top: 0;
}
&:hover {
color: #40A2D1;
}
}
.button.button-facebook {
background: #3B5998;
&:before {
background: #354F88;
content: "A";
font-family: "icons" !important;
font-size: rem-calc(24);
left: 0;
line-height: $line-height*2;
padding: 0 rem-calc(20);
position: absolute;
top: 0;
}
}
.social-share-button-facebook {
background: #3B5998;
color: white;
height: rem-calc(48);
position: relative;
width: rem-calc(48);
&:before {
content: "A";
font-family: "icons" !important;
font-size: rem-calc(24);
left: 50%;
line-height: $line-height*2;
margin-left: rem-calc(-11);
position: absolute;
top: 0;
}
&:hover {
color: #354F88;
}
}
.button.button-google {
background: #DE4C34;
&:before {
background: #CE3E26;
content: "B";
font-family: "icons" !important;
font-size: rem-calc(24);
left: 0;
line-height: $line-height*2;
padding: 0 rem-calc(20);
position: absolute;
top: 0;
}
}
.social-share-button-google_plus {
background: #DE4C34;
color: white;
height: rem-calc(48);
position: relative;
width: rem-calc(48);
&:before {
content: "B";
font-family: "icons" !important;
font-size: rem-calc(24);
left: 50%;
line-height: $line-height*2;
margin-left: rem-calc(-11);
position: absolute;
top: 0;
}
&:hover {
color: #CE3E26;
}
}
// 16. Pages
// - - - - - - - - - - - - - - - - - - - - - - - - -
.page {
background: white;
min-height: rem-calc(480);
padding-bottom: rem-calc(48);
.menu {
margin-top: rem-calc(24);
ul {
list-style-type: none;
margin-left: 0;
& ul {
margin-left: rem-calc(12);
}
}
a {
display: block;
font-size: rem-calc(13);
margin-bottom: rem-calc(12);
}
}
.text {
margin-top: rem-calc(24);
text-align: justify;
h1, h2, h3, h4, h5, h6 {
text-align: left;
}
ul, ol {
margin-left: rem-calc(12);
li {
font-size: rem-calc(13);
margin-bottom: rem-calc(12);
}
}
}
.more-information {
margin-top: rem-calc(24);
ul {
list-style-type: none;
margin-left: 0;
a:first-child {
border-top: 1px solid $border;
display: block;
padding-top: rem-calc(12);
}
li {
border-bottom: 1px solid $border;
font-size: rem-calc(16);
padding-bottom: rem-calc(12);
padding-left: rem-calc(36);
position: relative;
text-align: left;
span {
color: $text-medium;
display: block;
font-size: rem-calc(13);
}
&:before {
content: 'D';
color: $link;
font-family: "icons" !important;
left: 0;
margin-right: rem-calc(12);
position: absolute;
}
&:after {
content: none;
color: $text-light;
font-family: "icons" !important;
position: absolute;
right: 0;
top: rem-calc(6);
@media (min-width: $small-breakpoint) {
content: 'c';
}
}
}
}
}
}
// 17. Verification
// - - - - - - - - - - - - - - - - - - - - - - - - -
.verification {
min-height: 60%;
@media (min-width: $small-breakpoint) {
.left + .left {
margin-left: rem-calc(12);
}
}
.verify-account {
padding-right: rem-calc(12);
.verified {
color: $check;
font-weight: bold;
line-height: rem-calc(42);
}
}
.date {
select {
float: left;
width: 30%;
@media (min-width: $small-breakpoint) {
width: 25%;
}
}
}
.progress {
height: rem-calc(48);
@media (min-width: $small-breakpoint) {
height: rem-calc(24);
}
.meter {
background: #63D1C4;
}
}
.verification-step {
font-size: rem-calc(12);
padding-top: rem-calc(6);
@media (min-width: $small-breakpoint) {
line-height: $line-height;
padding-top: 0;
}
&.active {
color: white;
}
&.completed {
color: rgba(255,255,255,.5);
}
}
.send-letter {
background: none;
color: $link;
&:hover {
color: $link-hover;
}
}
.button + form {
display: inline-block;
margin-left: rem-calc(12);
}
.verification-list {
font-size: rem-calc(13);
list-style-type: none;
margin-left: 0;
span {
display: inline-block;
min-width: rem-calc(288);
}
}
}