@import url(//fonts.googleapis.com/css?family=Open+Sans:300,400);
@import url(//fonts.googleapis.com/css?family=Port+Lligat+Slab);

*, html, body, h1, h2, h3, h4, div, p, span, a, button {
	font-family: 'Open Sans', sans-serif;
}
body {
	background-color: #eee;
	background-image: url('/static/cubes.png');
}

/* RANDOM STUFF */
#frontPages {
	padding-top: 20px;
}

h2 {
	margin: 0 0 10px 0;
}
h4 {
	margin-top: 30px;
}
.popover {
	max-width: 450px;
	-webkit-box-shadow: 0 1px 10px rgba(0, 0, 0, 0.8);
	box-shadow: 0 1px 10px rgba(0, 0, 0, 0.8);
}

.label {
	font-size: 13px;
	font-weight: normal;
}

.label-info {
	background-color: #4EA4EE;
}

.label-info[href]:hover, .label-info[href]:focus {
	background-color: #428BCA;
}

/* LOGIN FORM */
.form-signin .form-signin-heading, .form-signin .checkbox {
	margin-bottom: 10px;
}
.form-signin .checkbox {
	font-weight: normal;
}
.form-signin .form-control {
	position: relative;
	font-size: 16px;
	height: auto;
	padding: 10px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.form-signin .form-control:focus {
	z-index: 2;
}
/* FOOTER */
.footer {
	margin-top: 20px;
}

/* Control Panel */
.panel-default .panel-heading {
	font-size: 24px;
}
#loggedIn {
	margin: 15px 15px 0 0;
}

#navPanel {
	margin: 0;
	padding: 0;
}
.table thead > tr:first-child > th, .table tbody > tr:first-child > th, .table tfoot > tr:first-child > th, .table thead > tr:first-child > td, .table tbody > tr:first-child > td, .table tfoot > tr:first-child > td {
	vertical-align: top;
	border-top: 0;
}
#tableInfo td {
	vertical-align: middle;
}
#tableInfo td:first-child {
	font-weight: bold;
	padding-right: 10px;
	text-align: right;
	width: 25%;
}

#tableInfoNorm td {
	vertical-align: middle;
}
#tableInfoNorm td:first-child {
	font-weight: bold;
	padding-right: 10px;
}

#tableInfoMemos td {
	vertical-align: top;
}
#tableInfoMemos td:first-child {
	font-weight: bold;
	padding-right: 10px;
}
#tableInfoMemos th small {
	font-weight: normal;
}

#tableNSAccess td {
	vertical-align: middle;
}
#tableNSAccess td:first-child {
	padding-right: 10px;
	text-align: left;
}
#tableNSAccess td:last-child {
	padding-right: 10px;
	text-align: right;
}
#tableNSAccess th small {
	font-weight: normal;
}

#channelList li {
	margin-top: 10px;
}

/* NAVBAR */
.navbar, .well {
	background-color: white;
}

.navbar {
	-webkit-box-shadow: 0 8px 6px -8px black;
	-moz-box-shadow: 0 8px 6px -8px black;
	box-shadow: 0 8px 6px -8px black;
}
.navbar-brand {
	font-size: 25px;
}
.navbar-brand, .navbar-brand small {
	font-family: 'Port Lligat Slab', serif;
}

.navbar-default .nav {
	margin-bottom: -1px;
}

.navbar-default .nav > li > a {
	color: #428BCA;
}

.navbar-default .nav > li > a:hover, .navbar-default .nav > li > a:focus {
	color: #428BCA;
	border-top: 3px solid #0082D9;
	margin-top: -3px;
}

.navbar-default .nav > li.active > a, .navbar-default .nav > li.active > a:hover, .navbar-default .nav > li.active > a:focus {
	color: #428BCA;
	background-color: transparent;
	background-color: rgba(66, 139, 202, 0.1);
	border-bottom-color: transparent;
}

/* =========================================================
   ChatLife WebPanel - Responsive Mobile Fix
   ========================================================= */

html {
        -webkit-text-size-adjust: 100%;
        -ms-text-size-adjust: 100%;
}

body {
        margin: 0;
        overflow-x: hidden;
}

#frontPages {
        width: 100%;
        max-width: 1170px;
        margin: 0 auto;
}

/* Keep navbar contents inside the screen */
.navbar {
        min-height: 50px;
        overflow: hidden;
}

.navbar-brand {
        white-space: nowrap;
}

#loggedIn {
        line-height: 20px;
        padding: 15px;
        margin: 0;
}

/* Prevent tables and long content from breaking the page */
.table-responsive {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
}

.table {
        max-width: 100%;
}

/* Forms should never exceed the viewport */
.form-control,
select,
textarea,
input[type="text"],
input[type="password"],
input[type="email"] {
        max-width: 100%;
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

        #frontPages {
                width: 100%;
                padding: 0 10px;
                margin: 0;
        }

        /* Navbar */
        .navbar {
                margin-bottom: 15px;
                border-radius: 6px;
                overflow: visible;
        }

        .navbar-brand {
                display: block;
                float: none;
                width: 100%;
                height: auto;
                padding: 12px 15px;
                font-size: 23px;
                line-height: 28px;
                text-align: center;
        }

        .navbar-brand small {
                font-size: 13px;
        }

        .navbar-default .nav {
                float: none;
                width: 100%;
                margin: 0;
                padding: 0;
        }

        .navbar-default .nav > li {
                float: none;
                display: block;
                width: 100%;
                border-top: 1px solid #eee;
        }

        .navbar-default .nav > li > a {
                display: block;
                padding: 11px 15px;
                text-align: center;
        }

        .navbar-default .nav > li > a:hover,
        .navbar-default .nav > li > a:focus {
                border-top: 0;
                margin-top: 0;
        }

        /* Logged-in information */
        #loggedIn {
                float: none !important;
                display: block;
                width: 100%;
                margin: 0;
                padding: 10px 12px;
                text-align: center;
                border-top: 1px solid #eee;
                font-size: 13px;
                line-height: 22px;
        }

        /* Main Bootstrap columns */
        .row {
                margin-left: -10px;
                margin-right: -10px;
        }

        .row > [class*="col-"] {
                width: 100%;
                float: none;
                padding-left: 10px;
                padding-right: 10px;
        }

        /* Sidebar */
        #navPanel {
                margin-bottom: 15px;
        }

        #navPanel .well {
                margin-bottom: 15px;
                border-radius: 6px;
        }

        #navPanel .nav > li > a {
                padding: 10px 12px;
                border-bottom: 1px solid #eee;
        }

        /* Main panels */
        .panel {
                width: 100%;
                margin-bottom: 15px;
        }

        .panel-default .panel-heading {
                font-size: 20px;
                line-height: 1.4;
                padding: 12px 15px;
        }

        .panel-body {
                padding: 15px;
        }

        /* Headings */
        h1 {
                font-size: 27px;
                line-height: 1.3;
        }

        h2 {
                font-size: 23px;
                line-height: 1.35;
        }

        h3 {
                font-size: 20px;
                line-height: 1.4;
        }

        h4 {
                font-size: 17px;
                line-height: 1.4;
        }

        /* Buttons */
        .btn {
                white-space: normal;
                max-width: 100%;
        }

        /* Tables */
        #tableInfo,
        #tableInfoNorm,
        #tableInfoMemos,
        #tableNSAccess {
                width: 100%;
                display: block;
                overflow-x: auto;
                -webkit-overflow-scrolling: touch;
        }

        #tableInfo td:first-child {
                width: auto;
                white-space: nowrap;
        }

        /* Login/register forms */
        .form-signin {
                width: 100%;
                max-width: 100%;
        }

        .form-signin .form-control {
                width: 100%;
                margin-bottom: 8px;
        }

        /* Footer */
        .footer {
                margin-bottom: 15px;
                padding: 10px;
                text-align: center;
        }

        /* Long strings such as nicknames, channels and emails */
        .panel,
        .panel-body,
        .well,
        td,
        th,
        p,
        a {
                overflow-wrap: break-word;
                word-wrap: break-word;
        }
}

/* Very small phones */
@media (max-width: 400px) {

        #frontPages {
                padding-left: 6px;
                padding-right: 6px;
        }

        .navbar-brand {
                font-size: 20px;
                padding-left: 8px;
                padding-right: 8px;
        }

        .navbar-brand small {
                font-size: 11px;
        }

        #loggedIn {
                font-size: 12px;
        }

        .panel-default .panel-heading {
                font-size: 18px;
        }

        .panel-body {
                padding: 12px;
        }

        .btn {
                width: 100%;
                margin-bottom: 6px;
        }
}

