
    
body{
    padding:0;
    margin:0;
    font-family: 'Open Sans', sans-serif;
    color:#333333;
}

.plain-theme{
    color:#333333;
    background:#fcfcfc;
}

.zoom{
    transform: scale(0.5);
}

.scroll{
    overflow:scroll;
    
}

/*
* default form styling
*/


.welcome{
    width:100%;
    box-sizing: border-box;
    padding: 12px;
    background: #f2f0ed;
}

.plain-theme .welcome{
    background:#f3f3f3;
}
#messages{
            max-width:375px;
    box-sizing: border-box;
    display: inline-block;
        width: 100%;
    margin: 0 auto;
    position: relative;
    display: block;
    
    background: #f2f0ed;
        margin-bottom: 12px;
}

.error{
    padding: 10px;
        background: #ffe0e0;
}

.success{
    padding: 10px;
    background: #bcffe3;
}
form {
    max-width:375px;
    padding: 10px;
    box-sizing: border-box;
    display: inline-block;
        width: 100%;
    margin: 0 auto;
    position: relative;
    display: block;
    padding: 10px;
    background: #f2f0ed;
}

.plain-theme form{
     background: #f3f3f3;
}
	
form input[type="text"], form input[type="password"], form input[type="number"] {
    box-sizing: border-box;
    padding: 12px 10px;
    border: 1px solid #e3e3e3;
    width: 100%;
    font-size: 16px;
    font-family: open sans;
    border-bottom:none;
}

form input[type="number"]{
    border-bottom: 1px solid #e3e3e3;
}
form input[type="submit"] {
    box-sizing: border-box;
    border: 1px solid #e3e3e3;
    padding: 10px;
    cursor: pointer;
    width: 100%;
    font-size: 16px;
    color: #fff;
    background: #00d2ab;
    font-weight: 700;
    font-family: open sans;
}

.plain-theme form input[type="submit"]:hover {
    filter: brightness(120%);
    transform: scale(1.01, 1);
}

.plain-theme form input[type="submit"]{
     background: #000000;
     color:#ffffff;
     transition: width 0.3s, height 0.3s, background-color 0.3s, transform 0.3s;
}


.user-header{
        width: 100%;
    box-sizing: border-box;
    padding: 5px;
    display: inline-block;
    margin-bottom: 0;
    position: relative;
    display: flex;
    justify-content: space-between;
        box-shadow: 0px 0px 7px 0px #00000033;
}
.user-header a {
    float:right;
    margin-left:5px;
}
.user-header a.h1{
    font-size:2em;
    color: #807369;
    font-family: 'Kaushan Script';
    text-decoration:none;
}

.user-header-links{
    display: flex;
    justify-content: space-between;
    align-items:center;
}
.nf-messages {
    width: 100%;
    box-sizing: border-box;
    padding: 5px;
    display: inline-block;
    border-top: 1px solid #e3e3e3;
    border-bottom: 1px solid #e3e3e3;
    transition-duration:0.25s;
    height:3em;
}

.nf-messages span.message {
    background: #caffe7;
    padding: 5px;
    box-sizing: border-box;
    width: 100%;
    display: inline-block;
}
.nf-messages .error{
    background: #ffcaca;
    padding: 5px;
    box-sizing: border-box;
    width: 100%;
    display: inline-block;
}


.header {
    background: #704636;
    background: rgb(242, 240, 237);
    color: #ffffff;
    border-bottom: 5px solid #e7e7e7;
    padding: 12px;
    width: 100%;
    box-sizing: border-box;
}

.plain-theme .header {
    background: #ffffff;
    border-bottom: 1px solid #f3f3f3;
    margin-bottom: 20px;
}

.header h1{
    color: #807369;
    font-family: 'Kaushan Script';
}

.plain-theme .header h1{
     color: #333333;
}


.header h1 a{
    color: #807369;
    font-family: 'Kaushan Script';
    text-decoration:none;
    float:none;
    line-height:100px;
    
}

.plain-theme .header h1 a{
     color: #333333;
}


.header h1 a:visited{
    color: #807369;
    font-family: 'Kaushan Script';
    text-decoration:none;
    
}

.plain-theme .header h1 a:visited{
     color: #333333;
}

.header h1 img{
    width:100%;
    max-height:100%;
    max-width:300px;
    margin-left:30px;
}

.header .header-bg {
    display:none;
    background: url(https://tabletopgrids.com/pub/header-pic.png);
        background-size: auto;
    height: 100px;
    width: calc(100% - 235px);
    margin-left: 30px;
    background-size: contain;
}


.content {
    min-height: calc(100vh - 147px);
    box-sizing: border-box;
    padding: 12px;
    background: #fcfcfc;
    color: #807369;
    display: inline-block;
    width:100%;
}

.plain-theme .content{
      color: #444444;
}

.content.home{
    color:#333333;
}

.content.home .terms-desc{
    font-size:12px;
    margin-top:7px;
}

.content h2 {
    font-family: 'Sansita Swashed', cursive;
    font-family: 'Kaushan Script', cursive;
    text-align: center;
}
.content h2 span{
    font-family:arial;
}


.footer{
     background: rgb(242, 240, 237);
    border-top:5px solid #e7e7e7;
    padding:12px;
    width:100%;
    box-sizing:border-box;
    color: #807369;
}

.plain-theme .footer{
    background: #ffffff;
      color: #444444;
          min-height: 300px;
    display: flex;
    justify-content: flex-end;
}
    
    
.content .terms, .content .terms h2{
    font-family:arial;
    text-align:left;
    color:#4444444;
}

#create-grid-form h3 {
    color: #807369;
    text-align: center;
}
    
 .plain-theme #create-grid-form h3{
      color: #444444;
}   
    
.g-recaptcha {
    margin: 15px 0px 10px 0px;
}


/**
*
* PAGES
*
*
*
*
*/


/*
* Login, forgot passowrd, reset password
*/
.content .nf-form-area, .content.home .nf-form-area{
    max-width: 375px;

    box-sizing: border-box;
    display: inline-block;
    width: 100%;
    margin: 0 auto;
    position: relative;
    display: block;

}


/*
*  MY ACCOUNT
*/

.content.account .list-grids {
    width: calc(100% - 375px);
    width:100%;
    box-sizing: border-box;
    display: inline-block;
    position: relative;
    float: left;
    padding:12px;
}

.content.account .user-grid-list-item {
    position:relative;
    display: inline-block;
    box-sizing: border-box;
    padding: 12px;
    background: #ffffff;
    border: 1px solid #f6f6f6;
    margin: 5px;
    width: calc(25% - 10px);
    width:100%;
}

.user-grid-list-item .delete-grid {
    width: auto;
    display: inline-block;
    position: absolute;
    top: 0;
    right: 0;
    background: #e3e3e3;
    border: none;
}
.user-grid-list-item .delete-grid form {
    padding: 0;
    width: auto;
    display: inline-block;
    float: right;
    background: none;
}

.user-grid-list-item .delete-grid form input[type="button"]{
    background:none;
    border:none;
    border-radius:0;
    cursor:pointer;
}

.content.account .user-grid-list-item .view-grid-link {
    margin-bottom: 15px;
    display: inline-block;
}

.content.account .user-grid-list-item h3 {
    border-bottom: 1px solid #efefef;
    padding-bottom: 15px;
    margin: 5px 0 20px 0;
}

.public-input-wrap{
    width:100%;
    display:inline-block;
    box-sizing: border-box;
    padding: 3px;
    background:#fcfcfc;
    margin-bottom:7px;
}


.content.account .user-grid-list-item .public-url-area label {
    width: 75px;
    float: left;
    display: inline-block;
    margin: 0;
    box-sizing: border-box;
    font-size: 13px;
    padding: 7px 0px;
    font-weight: 700;
}
.content.account .user-grid-list-item .public-url-area input {
    width: calc(100% - 75px);
    float: left;
    display: inline-block;
    margin: 0;
    box-sizing: border-box;
    padding: 5px;
    font-size: 16px;
    color: #a5a5a5;
}

.content.account .user-grid-list-item .public-url-area button{
    float: left;
    margin: 5px;    
    border:0;
    background:#000000;
    color:#ffffff;
    padding:3px 12px;
    cursor:pointer;
    margin-left:0;
        font-weight: 700;
}
.content.account .user-grid-list-item .public-url-area a {
    float: left;
    margin: 5px;
}

 .copy-notification{
    box-sizing: border-box;
    display: inline-block;
    position:absolute;
    display:none;
        top: 0;
    left: 0;
    width: 100%;
    background: #cfffe0;
    padding: 12px;
    overflow-wrap: break-word;
    transition-duration: 0.5s;
    height:0;
}


.content.account .create-grid-area{
    max-width: 375px;
    box-sizing: border-box;
    display: block;
    position: relative;
    float:left;
}







    
    
    
    
    
    
/*
* Battle grid css
*/

.info {
    width: 100%;
    display: inline-block;
    float: left;
}

.content .info h2 {
    font-family: 'Sansita Swashed', cursive;
    font-family: 'Kaushan Script', cursive;
    text-align: left;
    margin: 0;
    padding: 10px;
    background: #f2f0ed;
}

 .plain-theme .content .info h2{
     background: #fcfcfc;
 }

.content .info h2 span{
    font-family:arial;
}

.utility-container {
    display: inline-block;
    width: 100%;
    float: left;
    padding: 12px;
    box-sizing: border-box;
    background: #f2f0ed;
}

 .plain-theme .utility-container{
     background: #efefef;
 }

.public-grid .utility-container{
    background: transparent;
}

	.utility-container form {
    padding: 10px;
    background: #fff;
    box-sizing: border-box;
    border: 2px solid #ebeae9;
    display: inline-block;
    width:100%;
}

 .plain-theme .utility-container form{
     border: 2px solid #e3e3e3;
 }
	
	.utility-container form input[type=text]{
	    padding:5px;
	    border:1px solid #e3e3e3;
	    width:100%;
	}
	.utility-container form input[type="submit"] {
    background: #f2f0ed;
    border: 1px solid #e3e3e3;
    padding: 10px;
    float: right;
    margin-top: 12px;
    cursor:pointer;
    background: #c4ae8c;
}



.plain-theme .utility-container form input[type="submit"]{
    background: #000000;
    color:#ffffff;
    
}




.utility-container form .color-wrap{
    display: inline-block;
margin-top: 12px;
float: right;
margin-right: 12px;
}

.utility-container form .color-wrap label
{
    height: 35px;
line-height: 35px;
float: left;
margin-right: 12px;
}
    
.utility-container form .color-wrap input[type="color"] {
    background: #f2f0ed;
    border: 1px solid #e3e3e3;
    padding: 0px;
    width: 35px;
    height: 35px;
    margin-right: 12px;
    box-sizing: border-box;
    float: left;
}
.plain-theme  form .color-wrap input[type="color"]{
    background: #ffffff;
    color:#444444;
}
.utility-container .show-titles {
    display: inline-block;
    color: #a5a5a5;
    font-size: 12px;
    width: 100%;
} 


	.utility-container .drop-spot{
		background:#fcfcfc;
		margin:10px 0px;
		padding:20px;
		max-width:80vh;
		border:1px solid #e3e3e3;
		display:inline-block;
		box-sizing:border-box;
		float:left;
		width:100%;
        max-width:375px;
	}
	

	

	
	.utility-container .drop-spot span{
		float:left;
		display:inline-block;

		margin-right:12px;
	}

	.utility-container .trash{
		background:#fcfcfc;
		margin:10px 0px;
		padding:20px;
		max-width:80vh;
		border:1px solid #e3e3e3;
		display:inline-block;
		box-sizing:border-box;
		float:left;
		width:100%;
		max-width:375px;
	}

	.utility-container .drop-spot .grid-token{
		display:inline-block;
		width:auto;
		margin-right:10px;
		margin-top:10px;
		border-radius:3px;

	}

	.utility-container .trash .grid-token{
		display:inline-block;
		width:auto;
		margin-right:10px;
		height:20px !important;
		display:none;
	}

	.utility-container .grid-token .grid-token-inner{
		position:relative;
	}
	
	
	.utility-container .image{
	    display:inline-block;
	}
	
.image-checkbox-wrap {
    box-sizing: border-box;
    display: inline-block;

    padding: 5px;
    color: #494949;
    background: #fcfcfc;
    margin-top: 10px;
    border: 1px solid #e3e3e3;
    font-size: 14px;
}
.image-checkbox-wrap input{
    margin:0;
}
	
	
	/*
	* grid style
	*/
	
	.grid {
        height: auto;
        display: inline-block;
    }
    .grid.public-grid{
        width:100%;
    }

	.grid-border {
    display: inline-block;
    border: 7px solid #e4dbcf;
    width:100%;
}

.plain-theme .grid-border{
    border: 7px solid #e3e3e3;
}

	.grid-container {
    width: 100%;
    position: relative;
    display: inline-block;

    box-sizing: border-box;
    background: #fff8ef;
        background-size: cover;
}

.plain-theme .grid-container{
   background: #ffffff;
}

.plain-theme .grid-container{
    background:#ffffff;
}
	.grid-row{
        float:left;
        width:100%;
        position:relative;
        box-sizing: border-box;

	}
    .grid-tile {
    float: left;
    box-sizing: border-box;
    position: absolute;
    border: 2px solid #e4dbcf;
    transition-duration: 0.3s;
    background-size: cover;
    background-repeat: no-repeat; 
}



.plain-theme .grid-tile{
    float: left;
    box-sizing: border-box;
    position: absolute;
    border: 1px solid #00000040;
    transition-duration: 0.3s;
}

    .grid-token{
    		position:relative;
    		box-sizing:border-box;
    		border:1px solid #fffffff;
    		border-radius: 10px 10px 10px 10px;
    		float:left;
    		padding:5px;
    		width:100%;
    		cursor:grab;
    		transition-duration:0.3s;
    	}
    	
    	.influencer {
       	     position: absolute;
       	     box-sizing:border-box;
        	left: 0;
       	     top: 0;
       	     height: 27.333px;
       	     width: 27.3333px;
        	background: #b07766;
        	    opacity: 0.2;
            border: 1px solid #ff0000;
    	}
    	
    	.utility-container .drop-spot .influencer {
            display:none;
       }

       .utility-container .trash .influencer{
            display:none;
        }

    	.grid-token:hover{
    		filter: brightness(110%);
    		z-index:3;
    	}
    	
    	.grid-token:active{
    	    filter: brightness(110%);
    	}

    	.utility-container .grid-token{
    		min-height:30px;
    	}
    	.grid-token-inner{
    	    width:auto;	
    	    position:absolute;
    	}

    	.too-big{
    		visibility:hidden;
    	}

    	.grid-tile .grid-token:nth-of-type(n+5){
            display:none;
    	}
    	


    	.grid-token:hover .grid-token-inner.too-big, .ctrl-on .grid-token .grid-token-inner.too-big{
    		visibility: visible;
position: absolute;
color: #333333;
background: #fcfcfc;
border: 2px solid #959595;
box-sizing: border-box;
padding: 3px;
width: auto;
display: inline-block;
top: 0;
left: 0;
transform: translate3d(50%,-107% ,0);
z-index: 4;

    	}
    	
.ctrl-on .grid-token .grid-token-inner.too-big{
opacity:0.75;    
}
.ctrl-on .grid-token:nth-child(3) .grid-token-inner.too-big{
  transform: translate3d(-100%,0% ,0);  
}
.ctrl-on .grid-token:nth-child(2) .grid-token-inner.too-big{
  transform: translate3d(50%,-107% ,0 );  
}
.ctrl-on .grid-token:nth-child(4) .grid-token-inner.too-big{
  transform: translate3d(50%,0% ,0);
}
.ctrl-on .grid-token:nth-child(1) .grid-token-inner.too-big{
  transform: translate3d(-100%,-107% ,0);  
}
    
    	
    	.zoom .grid-token:hover .grid-token-inner.too-big{

    	    transform:scale(2) translate3d(50%,-107% ,0);
    	}

    	.grid-tile.too-many:hover, .ctrl-on .grid-tile.too-many{
    		width: 200px !important;
    		height: 200px !important;
    		z-index: 3;
    		background: #fff;
    		box-shadow: 0px 0px 10px 5px #33333357;
    		padding: 5px 5px;
    		overflow-y: scroll;
    	}
    	
    	.grid-tile.too-many:hover .influencer,  .ctrl-on .grid-tile.too-many .influencer{
    	    display:none;
    	}
    	
    	.ctrl-on .grid-tile.too-many
    	{
    	    opacity:0.75;
    	}

    	.grid-tile.too-many:hover .grid-token, .ctrl-on .grid-tile.too-many .grid-token{
    		width: 100% !important;
    		height: auto !important;
    		min-height:20px;
    		margin-bottom:5px;
    	}
    	.grid-tile.too-many:hover .grid-token .grid-token-inner.too-big, .ctrl-on .grid-tile.too-many .grid-token .grid-token-inner.too-big{
    	    visibility: visible;
    		position:relative;
    	}

    	.grid-tile.too-many:hover .grid-token:nth-child(n+5), .ctrl-on .grid-tile.too-many .grid-token:nth-child(n+5){
            display:inline-block;
    	}
    	
    	.grid-tile.too-many:hover .grid-token:hover .grid-token-inner.too-big, .ctrl-on .grid-tile.too-many .grid-token .grid-token-inner.too-big{
    	        visibility: visible;
    	        position: relative;
    	        color: inherit;
    	        background: inherit;
    	        border: none;
    	        box-sizing: border-box;
    	        padding: initial;
    	        width: auto;
    	        display: inline-block;
    	        top: auto;
    	        left: auto;
    	        transform: none;
    	        z-index: 4;
    	    
    	}
    	
    	
    	/*
    	* hiders
    	*/
    	
    	.hider{
            position: absolute;
            top: 0;
            left: 0;
            z-index: 5;
            background: #000000;
            border: 5px solid #ff9191;
            box-sizing: border-box;
            
    	}
    	
    	.private-hider{
            background: #0000001c;
            pointer-events: none 
    	}
    	
    	.hider-list-item {
    min-width: 20px;
    min-height: 12px;
    padding: 5px;
    background: #e3e3e3;
    display: inline-block;
    position:relative;
    margin-bottom:10px;
        }
        
        .hider-list-item:hover:before{
                content: "remove";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
     padding: 5px;
    box-sizing: border-box;
    background: #000000;
    color: #ffffff;
    opacity:0.8;
    cursor:pointer;
            
        }
        
        .hider-list-item:last-child{
            margin-bottom:10px;
        }
        
    .hider-maker-ui div#hider-list-area {
    box-sizing: border-box;
    padding: 10px;
    background: #fcfcfc;
    border: 1px solid #e3e3e3;
    margin-top: 10px;
    padding-top:0;
    padding-bottom:0;
}


.hider-maker-ui div#hider-list-area h4 {
    margin: 10px 0px 10px 0px;
    padding: 0;
    
    font-weight: 500;

}
        
        .hider-maker-ui {
    background: #ffffff;
    box-sizing: border-box;
    display: inline-block;
    width: 100%;
    border: 1px solid #e3e3e3;
    margin-bottom: 10px;
    margin-top:20px;
    padding: 10px;
    max-width:375px;
}

h3#hide-map-areas-header {
    font-size: 16px;
    color: #333333;
}
        
        .hider-maker-ui .hider-input-wrap{
            display:inline-block;
            width:50%;
            box-sizing:border-box;
            margin-bottom:10px;
            
        }
        
        .hider-maker-ui .hider-input-wrap label{
            display:inline-block;
            width:auto;
            float:left;
            box-sizing:border-box;
            margin-right:10px;
        }
        .hider-maker-ui .hider-input-wrap input{
            width:40px;
            border:1px solid #e3e3e3;
            padding:2px;
        }
        .hider-maker-ui input[type="button"]{
            width:100%;
            background:#000000;
            color:#ffffff;
                padding: 10px;
                border:none;
                font-weight:700;
            font-size:16px;
            cursor:pointer;
        }
        .hider-maker-ui .hider-input-wrap label{
            text-align:right;
        }

    	
    	
    	
    	
    	
/*
* context menu
*/
.context-menu{
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    background: #ffffff;
    box-shadow: 2px 2px 0px 0px #00000059;
    max-width: 175px;
    box-sizing: border-box;
  
    font-size: 12px;
        z-index: 100;
}

.context-menu .item-wrap{
    width:100%;
    box-sizing: border-box;
    padding: 5px;    
    
}

.context-menu .item-wrap:hover{
    background:#fcfcfc;
}

    .context-menu label{
        display:inline-block;
        padding-right:5px;
        
    }	
    .context-menu input{
        display-inline-block;
        max-width:50%;
    }		
    	
    	
.tile-bg-grabber{
    width:20px;
    height:20px;
    display:inline-block;
    float:left;
    margin:3px;
    box-sizing: border-box;
    border: 2px solid #e3e3e3;
        background-size: cover;
    background-repeat: no-repeat; 
}    	
    	
/*
* loading
*/
.grid-border.loading{
filter: brightness(90%);    
}

.grid-border.loading::before {
    content: "Loading...";
    position: absolute;
    color: #333;
    top: -2em;
    z-index: 100;
    left: 0px;
}


/*
* toggles
*/

.toggle-area-open{
    display:inline-block;
}

.toggle-area-close{
    display:none;
}
.toggle-button-open, .toggle-button-close{
    cursor:pointer;
}
.toggle-button-open:after{
    content:"[ - ]";
    margin-left:10px;
    
    
}

.toggle-button-close:after{
    content:"[+]";
    margin-left:10px;
}



/*
*  Helper
*/
.help-button span{
    cursor:pointer;
    color: #6d6d6d;
    font-size: 14px;
    text-decoration: underline;
}

.help-content{
    display:none;
    
}

    	
    	
/*
* Desktop
*/
@media (min-width:961px){
    
    
    .header .header-bg {
            display: inline-block;
    }
    
    .welcome{
        width: 50%;
    margin-left: 25%;
    }
    .info{
        width:25%;
    }
    .utility-container {
    display: inline-block;
    width: 100%;
    float: left;
    }
    
    .header h1 a {

        float: left;

    }
    
    .content.account .list-grids {
        width: calc(100% - 375px);
    
    }
    .content.account .user-grid-list-item {
        width: calc(25% - 10px);
    }
}
