/* Copyright (C) Sourcemap 2011
 * This program is free software: you can redistribute it and/or modify it under the terms
 * of the GNU Affero General Public License as published by the Free Software Foundation,
 * either version 3 of the License, or (at your option) any later version.
 * 
 * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
 * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 * See the GNU Affero General Public License for more details.
 * 
 * You should have received a copy of the GNU Affero General Public License along with this
 * program. If not, see <http://www.gnu.org/licenses/>.*/

@import "sourcemap";

html,body { height:100%;}

body {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size:1em;
    line-height:1em;
    margin:0 auto;
    background: #fff url("../images/background.png") repeat-x;
    color: #3c3c3c;
}

h1,h2,h3,h4,h5,h6{
    font-weight: bold;
    margin: .25em 0;
    line-height:1.4em;
}

h1 { font-size: 32px; text-shadow: 0 1px 1px white; }
h2 { font-size: 22px; text-shadow: 0 1px 1px white; }
h3 { font-size: 18px; }
p { font-size: 16px; line-height: 26px; }
ul{ list-style: square; margin-left: 1em; }
textarea:focus, input:focus { outline: none; }

hr {
    border: 0;
    height: 1px;
    margin-top: 0;
    color: #d4d4d4;
    background-color: #d4d4d4;
}

img a:hover{
    border: 0;
    vertical-align: middle;
   /* text-underline: none; */
}

a {
    color: @link-color;
    text-decoration: none;
    &:visited{ color: @link-color; }
    &:hover{ text-decoration: underline; }
}


/* Structure -------------------------------- */
#wrapper {
    min-height: 100%;
    height: auto !important;
    height: 100%;
}
#footer, .push {
    height: 62px;
}
.container{
    width:960px;
    margin-left: auto;
    margin-right: auto;
}
#sidebar{
    float: right;
    width: 400px;
    margin-left: 64px;
    margin-bottom: 60px;
    background: #fefefe;
    border:1px solid #d4d4d4;
    .rounded(8px);
    .box_shadow(0, 1px, 12px);       
    .container{
        width:auto;
        padding: 0 20px;
		margin-bottom:20px;
    }
}
.messages{
    margin: 20px 0;
    .status-messages {
        font-size: 1.4em;
        font-weight: bold;
        list-style-type: none;
        margin: 0;
        padding: 0;
        cursor: pointer;
        display:none;
        .status-message {
            color: #fff;
            padding: 8px 0 10px 20px;
            text-shadow: -1px 0px 1px #255a76;
            .gradient(#3884ab,#4f9fc9);
            .rounded(10px);
        }
        .status-wrap {
            background: url('../images/close.png') top right transparent no-repeat;
            margin: 0 20px 0 0;  padding: 5px 0;
        }
    }
}

#masthead{
    padding: 25px 0 0;
    #header {
        #logo{
            float:left;
            h1 { display:none; }
			img { width:223px; height:56px;}
        }
        #navigation, #search { margin-top: 10px; }
        #navigation{
            float:right;
            list-style:none;
            li{
                font-size: 18px;
                font-weight: bold;
                float:left;
                text-align: center;
                margin: 12px 15px;
                a {
                    text-decoration: underline;
					text-shadow: #fff 1px 1px 1px;
                    &.existing-login{
                        font-weight:normal;
                        font-size: 0.7em;
                        text-decoration:none;
                        color:#3d3d3d;
                    }
                }
                &.register{
                    margin: -5px 15px;
                    a { 
                        text-decoration: none; 
                        color:#f7f7f7;
				        text-shadow: none;
                        &.existing-login{
                            font-weight:normal;
                            font-size: 0.7em;
                            text-decoration:none;
                            color:#3d3d3d;
                        }
                    }
                }
                a { color:#3d3d3d; }
            }
        }
    }
}

#footer {
	height: 60px;
	background-color: #454647;
	border-top:1px solid #ccc;
	font-size: 13px;
	padding:0 0 10px 0;
	font-weight: bold;
	text-shadow: 0 -1px -1px #353637;
	.container{
	    background: url("../images/logo-footer.png") top right no-repeat;
	}
	ul {
	    margin-top: 20px;
	    margin-left:0;
	    list-style: none;
	    li {
	        display:block;
	        float:left;
	        margin-right:20px;
	        border-right: 1px solid #4b4c4d;
	        &.last { border:none; }
	    }
	}
	p {
	    margin-top:0.5em;
	    clear:both;
	    color:#999;
	    font-size:0.7em;
	}
	a {  color: #7f7f7f; }
}

img.small { width:160px; height:98px; }
img.medium { width:220px; height:128px; }
img.large { width: 710px; height: 320px; }

/* Live Search ------------- */
#search-div{
    background: #fff url("../images/shadow.png") top repeat-x; 
    border: 1px solid #c9c9c9;
    float:left;
    margin-left: 48px;
    margin-top: 10px;
    height: 42px;
    .rounded;
    input{
        width: 264px;
        padding: 4px 10px 4px 36px;
        border: 0;
		font-size:12px;
        outline: none;
        background: url("../images/search.png") 12px center no-repeat; 
        -webkit-appearance: none;
    }
}

#search-results{
    border: 1px solid #ddd;
	border-bottom:none;
    background: #fff;
    z-index: 999;
    display:none;
    width: 310px; 
    line-height: 26px;
	font-size:0.9em;
	margin-top:10px;
    ul {
        list-style:none;
        margin: 0;
        li {
            float:left;
            width: 290px;
            padding: 10px;
			background:#fff;
			border-bottom:1px solid #ddd;
            &:hover{
                background:#fff;
                cursor: pointer;
            }
            &.more {
                font-size:0.8em;
                clear: both;
                text-transform: lowercase;
                border-top: 1px solid #333;
                text-align:center;
            }
        }
        .search-result {
            position: relative;
            .search-link {
                color: #333;
                position:absolute; 
                width:100%;
                padding:10px;

                height:100%; 
                top:0;
                left: 0; 
                z-index: 1;  
                &:hover{
                    text-decoration: none;
                }
            }
            .search-details {          
                .search-author {
                    color: #888;
                    font-style: italic;
                }
                .search-date {
                    color: #888;
                    font-style: italic;
                }
            }
                  
        }
    }
}


/* Form styles -------------------------------------------------------------- */
fieldset { padding:10px; }
label {
	float: left; 
	padding: 10px 0 5px 0;
	display: block;
	color:#666;
}
.sourcemap-form-error{
	font-weight:bold;
	float:right;
	padding:10px 0 5px 0;
	color:#ccc;
}
input[type=text],input[type=password], textarea {
	width:98%;
	height: 100%;
	padding:2% 1%;
	font-size: 0.8em;
	background: #fff;
	border: 1px inset #ccc;	
	color: #333;
	.box_shadow_inset(0, 3px, 12px, #eee);
	.rounded(4px);
	&:focus, &:hover { background-color:#FBF7D5; }
}
input::-webkit-input-placeholder, input:-moz-placeholder { color:#999 }
textarea { height: 55px; }

&.sourcemap-form-button{
	width: 100%;
	border: none;
	background: none;
}

.button, input[type=submit] { 
	padding: .5em 1em;
	border: none;
	font-size: 14px;
	font-weight: bold;
	cursor:pointer;
	margin:10px 0 0 0;
	color:#f7f7f7;
	.gradient(#246587,#50a3ce);
	.rounded(4px);
	.box_shadow();
	a { color:#f7f7f7; text-decoration: none; }
	&:hover { color: #f7f7f7; background:#024365; }
	&.disabled { background:#ccc; 	}
}
input[type=submit] {
	min-width:150px;
	border: none;
	float: right;
}
select {
	border: 1px solid #999;
	padding: 2%;
	color:#666;
	font-size: 0.8em;
	width: 100% ;
	line-height: 1.2em;
	background: url("../images/dropdown.png") right center no-repeat #fff;
	.gradient(#ccc, #fff);	
	background:  url("../images/dropdown.png") right center no-repeat, -moz-linear-gradient(center bottom,#ccc 0%,#fff 100%) 0 0 repeat;
	background: url("../images/dropdown.png") right center no-repeat, -webkit-gradient(linear,left bottom,left top,color-stop(0,#ccc),color-stop(1,#fff));
	-webkit-appearance: none;
	outline:none;
	.rounded(4px);
}
input[type=file] { width:100%; }
input[type=checkbox]{
	width: auto;
	margin: 1.3em 0.5em 0 0.5em;
}
  
/* register.php specific stuff */

#recaptcha_response_field {
	height: 15px;
}   

#recaptcha_area { 
	margin: 10px auto 0 auto;
}



/* Map View  ----------------------------------- */
#map-secondary {
	margin:40px auto;
    .author {
		margin-top:10px;
        padding-bottom:20px;
        img {
			width:64px; height:64px;
            vertical-align:middle;
			margin-right:5px;
        }
		.author-link { text-transform:capitalize; }
    }
	p.description {
        font-size:18px;
        line-height:1.2em;
		margin-bottom:10px;
	}
}
#sidebar #qrcode-badge {
	float:left;
    padding: 0;
    margin:26px 12px 5px 15px;
    .qrcode {
        border: 1px solid #d9d9d9;
        float:left;
        width:99px; 
        height:99px;
    }
    .qrcode-about {
        float:left;
        width:200px;
        padding:10px;
        margin-left:10px;
    }
}
#map-edit-button {
    .gradient();
	color:#2D78AF;
	vertical-align:middle;
}
#sidebar.map-view {
	padding-top:10px;
	h3 {
		padding:0 10px 5px 10px;
	}
	#share-info {
		text-decoration:none;
	}
	.impact-box {
		border:1px solid #dfdfdf;
		.rounded(4px);
		padding:0; margin:10px;
		input {
			float:left;
		}
		label {
			border-left:1px solid #dfdfdf;
			line-height:2.4;
			padding:0 0 0 10px;
			margin-left:5px;
			float: left;
		}
	}
	#tileset-select {
		margin:0 10px;
		width:379px !important;
	}
    .links{
		float:left;
        margin-bottom: 20px;
		padding-left:0 !important;
        p { font-size: 12px;}
        div{
            background: url("../images/shadow.png") top repeat-x; 
            border: 1px solid #bfbfbf;
            .rounded(3px);
            input{
                font-size: 12px;
                width: 230px;
                border: 0;
                padding: 8px 10px;
                font-style: italic;    
            }
        }
    }
    .social{
        margin-bottom: 6px;
        .social-icon{
            width: 95px;
            float:left;
            margin-left: 20px;
        }
    }
}

#discussion-section {
    width:505px;
    padding: 20px 20px 20px 0;
    background: url("../images/news_background.png") top left no-repeat;
    h3 {
        font-size:1.2em;
    }
    #comments {
        list-style:none;
        padding:10px 0 0 0;
        margin:10px 0 0 0;
        border-top:1px solid #eee;
        .comment {
            position:relative;
            .rounded(4px);
            border:1px solid #ccc;
            background:#eee;
            margin-bottom:10px;
            padding:10px 10px 10px 50px;
            .user-avatar {
				width:32px; height:32px;
                position:absolute; 
                top:10px; left:10px;
                vertical-align:middle;
            }
        }
    }
    #comment-form {
        width:462px;
        #comment-area {
            width:485px;
            padding:10px;
            font-size:inherit;
            font-family:inherit;
            .rounded(4px);
			border:1px solid #999;
            &:focus { outline: none; }        
        }
		fieldset { padding:0; }
    }
    #comment-submit { float:right; }
}

/* Welcome Styles  --------------------------------------------------------- */
h1#site-tagline { font-size:30px; }

#featured-maps {
    width: 1040px;
    margin: 0 auto 40px auto;
    padding: 4px;
    background: #fefefe;
    .rounded(12px);
    border: 1px solid #d4d4d4;
    .box_shadow(3px, 1px, 10px);
	overflow:hidden;
	height:330px;
    .anythingWindow {
		border:4px solid #fff;        
        .rounded(12px);
		ul { list-style:none; }
    }

}

#popular-maps { height: 246px; }

h2.section-title{
    font-weight:bold;
    font-size: 22px;
	color:#328CBB;
	margin:40px 0 0 0;
}

.preview-map-item{
    float:left;
    .preview-map {
        padding: 4px;
        margin-right: 10px;
        background: #fff;
        border: 1px solid #d9d9d9;
        .rounded(3px);
        &:hover {
            border-color:#bbb;   
        }

    }
    .preview-title, .preview-author{
        margin-left: 4px;
        font-weight: normal;
		text-transform:capitalize;
    }
    .preview-title {
        line-height:1.2em;
        margin-bottom:0;
    }
    .preview-author {
        margin-top: 0;
        font-size:0.7em;
        font-style: italic;
        color:#888;
        a {
            color:#888;
            text-decoration:underline;
        }
    }
    .preview-teaser {
        margin-top: 0;
        font-size:0.8em;
    }       
}
.news {
    clear: left;
    padding-top: 20px;
    background: url("../images/news_background.png") top left no-repeat;
    ul{
        list-style: none;
        margin-left: 0;
        li{
            padding: 0 0 20px;
            img{
                width:40px;
                float: left;
                padding: 10px 15px 10px 0;
            }
            p{
                color:#909090;
                font-size: 0.8em;
                font-style: italic;
            }
        }
    }
    a { color: #3c3c3c; font-weight: normal; }
}

/* Browse page --------- */
#category-list {
    margin-bottom:2em;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    padding: 15px; 
	line-height:1.4em;
	background-color:#fff;
    background-image: -moz-linear-gradient(top,white,#EFEFEF);
    background-image: -webkit-gradient(linear,left top,left bottom,from(white),to(#EFEFEF));
    a{
        padding-left: 10px;
        border-left: 1px solid #ccc;
        &.last{
            padding-right: 10px;
            border-right: 1px solid #ccc;
        }
    }
    #category-list-content{
        float:left;
        padding: 0 10px;
    }
}

ul#browse-list {
    margin:2em auto 0 auto;
	list-style:none;
	li {
		display:block;
		float:left;
		width:25%;
	}
}

/* Document pages -------------- */
#document-content {
    font-size:0.8em;
    #document-title {
        border-bottom: 1px solid #ccc;
    }
    h2,h3,h4,h5 {
        border-bottom:0;
        margin-top:1em;
    }
}
.about-sourcemap{
    h1 { margin: 30px 0; }
    ol {
        margin: 0 40px;
        li{ margin: 20px 0; line-height: 28px; }
    }
    p { margin-bottom: 20px; }
}

/* Dashboard ----------------------------------------------------- */
.dashboard-title { margin-bottom: 30px; }
.dashboard-top{
    padding: 0px 0 10px;
    background: #fefefe;
    border: 1px solid #d4d4d4;
    .rounded(12px);
    .box_shadow(3px, 1px, 10px);
    .dashboard-top-left{
        width: 470px;
        margin-right: 30px;
        float: left;
        > div { margin: 0 20px; }
        .user-name{
            margin-top: 10px;
            text-transform: capitalize;
            text-transform:capitalize;
            color: #595959;
        }
        #user-profile {
            float:left;
            padding: 10px;
            background: #fefefe;
            width: 420px;
            border: 1px solid #d4d4d4;
            .rounded(4px);
            .box_shadow_inset(0, 3px, 10px, #eee);    
            .anythingWindow{
                .rounded(12px);
            }
            .user-gravatar {
                float:left;
                margin: 0;
                padding: 4px;
				width:128px;
				height:128px;
                .box_shadow(0, 1px, 5px);
                .rounded(4px);
            }
            .user-details {
                float:left;
                margin: 0;
                padding: 20px;
                list-style:none;
				line-height:1.4em;
                font-size: 14px;
                color: #949494;
				span {
					color:#328cbb;
				}
            }
        }
        .upload-photo.button{
            float: left;
            width: 106px;
            font-size: 14px;
            text-align:center;
            border: 1px solid #d4d4d4;
            color: #328cbb;
            margin: 10px;
            .gradient();
            a{
                color: #328cbb;
            }
        }  
        .reset-password.button{
            float: left;
            width: 136px;
            font-size: 14px;
            text-align:center;
            border: 1px solid #d4d4d4;
            color: #328cbb;
            margin: 10px;
            .gradient();
            a{
                color: #328cbb;
            }
        }      
    }
    .dashboard-top-right{
        float: right;
        width: 445px;
        h2 { margin-top: 10px; }
        #user-stream {
            margin-top: 25px;
            .date { font-size:0.8em; }
            .event {
                line-height:1.2em;
                font-size:0.8em;
                font-style: italic;
            }
        }
    }
}

/* Lists ---------------------------------- */
.user-map-list {
    font-size:0.8em;
    margin: 20px 0;
    padding: 20px 0;
    border-top: 1px solid #d4d4d4;
    .map-item{
        float: left;
        padding: 4px;
        border: 1px solid #d7d7d7;
        background: #fff;
        margin-right: 20px;
        .rounded(4px);
    }
    .map-description{
        float: left;
        width: 375px;
        color: #909090;
        font-size: 15px;
        font-weight: normal;
        .map-details{
            margin: 0 0 0 0;
            font-weight: normal;
            font-style: italic;
            font-size: 13px;
        }
        .map-teaser { clear: left; }
    }
    .map-controls {
        float: right;
        text-align:right;
        div{
            float:left;
            margin-left: 7px;
            border: 1px solid #d7d7d7;
            .rounded(4px);
            .gradient();
            &.map-controls-publish {
                background: #f8f8f8;
                border: 1px solid #bfbfbf;
                width: 135px;
                input,a { float:left; }
                input { margin: 12px 9px 0; }
                a { 
					cursor:pointer;
					text-decoration:none;
                    border-left: 1px solid #d7d7d7; 
                    color: #777a7e;
                }
            }
            a {
                padding: 10px 12px;
                display: block;
                color: #328cbb;
                font-weight: bold;
            }
        }
    }
}
#search-page, .user-profile-view {
	.user-map-list .map-description { width:765px;}
}

/* Edit map ---------------- */
#edit-map{
    h1 { margin-bottom: 20px; }
    .edit-map-form{
        float:left;
        width: 550px;
		padding: 10px;
	    background: #fefefe;
	    border: 1px solid #d4d4d4;
	    .box_shadow(3px, 1px, 10px);
	    .rounded(12px);
    }
    .edit-map-details{
        margin-left: 40px;
        float: left;
        width: 300px;
        padding: 10px;
        > div{
            margin-left: 20px;
        }
    } 
}


/* Form pages ---------------- */
div.form-page {
	margin-top:20px;
	div.copy-section {
	    float:left;
	    width: 505px;
		p { font-size:20px; }
		ul {
			margin:20px;
			li { margin:0 0 10px 0;	}
		}
	}
	div.box-section {
	    float:left;
		width:405px;
	    margin: 20px 0 0 40px;
		padding: 4px;
	    background: #fefefe;
	    border: 1px solid #d4d4d4;
	    .box_shadow(3px, 1px, 10px);
	    .rounded(12px);
	}
}


/* Api Docs */
.classic-list {
    li {
        list-style-position: inside;
        list-style-type: upper-alpha;
        ol {
            margin: .3em;
            margin-left: .8em;
            li {
                list-style-type: decimal;
                ol {
                    li {
                        list-style-type: lower-alpha;
                    }
                }
            }
        }
    }
}

.codeface {
    font-family: monospace;
    background-color: #efefef;
}

.code-sample {
    white-space: pre;
    font-family: monospace;
    background-color: #efefef;
    margin-top: .25em;
    margin-bottom: .25em;
    .rounded(.5em);
    font-weight: bold;
}

.documentation {
    .toc {
        border: 1px solid #D4C272;
        padding-left: .2em;
        .rounded(.2em);
    }
    a {
        color: orange;
    }
    .section {
        h2 {
            text-align: right;
            background-color: #efefef;
            border-bottom: .1em solid #888;
            color: #bbb;
            padding-right: .5em;
            font-size: 2em;
        }
        h3 {
            font-size: 2em;
            font-weight: bold;
            border-bottom: 1px solid #ddd;
        }
        h4 {
            font-size: 1.6em;
            font-weight: bold;
            color: #D4C272;
        }
        p {
            margin-top: 1em;
            margin-bottom: 1em;
        }
        margin-bottom: 1em;
    }
    margin-bottom: 2em;
}

/* Blog styles ------------------- */
#blog-overview {
    width: 1008px; 
    margin: 0 auto;
    padding: 0 20px 10px 20px;
    background: #fefefe;
    border: 1px solid #d4d4d4;
    .rounded(12px);
    .box_shadow(3px, 1px, 10px);
}
#blog-container {
    width: 960px; 
    margin: 20px auto;
    .stop, .hop {
       border-bottom:1px solid #aaa;
       padding:10px 0;
       .placename {
           font-size:16px;
           font-weight: normal;
           color: #666;
           padding-left: 15px;
       }
    }
    .stop {
        h2 {            
            padding-left:28px;
            min-height:28px;
        }
    }
}

/* Goolge Import styles ------------------- */
table.google-spreadsheets-list {
  	width:960px;
    margin: 0 auto;
	tr { padding:5px;}
	td { padding:5px; }
	tr.even { background:#fff; }
	th { font-weight:bold; padding-bottom:10px; }
}

/* Admin styles ------------------- */
body.admin {
    .gradient(#333, #777);	
	color:#ccc;
	#wrapper {
		width: 960px;
	    margin: 10px auto;
	}
	#admin-head {
	    padding: 20px 10px;
	    background: #444;
		color:#fff;
	    .rounded(12px);
	    border: 1px solid #222;
	    .box_shadow(3px, 1px, 10px);
		a {
			color:rgb(0,190,250);
			font-size:20px;
			font-weight:bold;
		}
	}
	label { color:#fff; }
	#masthead #header #navigation li a { text-shadow:none; }
	#summary {
		border-bottom:1px solid #eee;
		padding-bottom:10px;
		margin-bottom:10px;
		font-size:18px;
		color:#fff;
		line-height:1.2em;
	}
	.button, input[type="submit"] { float:none;}
	a { color:rgb(0,190,250); text-decoration:none; }	
	table {
		width:100%;
		tr { padding:5px; }
		td { padding:5px; }
		tr.even { background:#333; }
		th {
			font-weight:bold;
			padding-bottom:10px;
		}
	}
	fieldset { margin:15px 0; border:1px solid #999; .rounded(4px)}
	ol,ul,dl { margin-left:25px; }
	ol { margin:10px 0 10px 40px; }
	dl {		
		dt { font-weight:bold; }
		dd { margin-bottom:20px; }
	}
	.delete-taxonomy {
		display:inline-block;
		width:30px;
		input[type="submit"] {
			background: url('../images/close-grey.png') top left transparent no-repeat !important;
	        height:30px !important;
			width:20px !important;
			padding:0 !important;
			box-shadow:none;
		}
	}
	input[type="submit"] {
		padding: .5em 1em;
	    border: none;
	    font-size: 14px;
	    font-weight: bold;
	    cursor:pointer;
	    color:#f7f7f7;
	    .gradient(#246587,#50a3ce);
	    .rounded(4px);
	    .box_shadow();
	    a { color:#f7f7f7; text-decoration: none; }
		&:hover { color: #f7f7f7; }
	}
}
