﻿/*  PAGE LAYOUT: PUZZLE ON LEFT (IN .CONTAINER FORMAT) SOLUTION OR ERRORS ON RIGHT  */
body {
    padding-left:50px;
    display:grid;
    font-family:tahoma;
    background-color:#F8F8FF;
    grid-template-columns:350px 1550px ;
    grid-template-areas:
        "sidebar puzzution";
    grid-column-gap:20px;
    justify-items: start;
    }
/* Grid for each grid areas blank, puzzle, solution */
.container{
    display:grid;
    grid-template-columns: repeat(9, 35px);
    grid-template-rows: repeat(9, 33px);
    grid-gap:0px;
    border:none;
    font-weight: bold
    }
/*#header {
    grid-area:header;
    width:100%;
    display:block;
    margin:5px auto;
    }*/
#sidebar {
    grid-area:sidebar;
    border:4px double powderblue;
    border-radius:10px;
    background:azure;
    width:300px;
    padding:5px;
    }
/*  Blank input grid
#blank,          */
#solution {
    display:none;
    }
#puzzle {
    display:inline-block;
    }

/*  Initial display of unsolved puzzle */
/*  Display of solved puzzle */
#puzzution {
    grid-area:puzzution;
    }
/* display poss: additional col/row for row/col nos */
.pcontainer{
    display:grid;
    grid-template-columns: repeat(9, 38px);
    grid-template-rows: repeat(9, 38px);
    grid-gap:0px;
    border:none;
    }
.box {
    display:inline-block;
    background: transparent;
    width:100%;
    height:100%;
    padding:5px 0px 0px 0px; margin:0px;
    text-align:center;
    vertical-align: middle;
    }
.maskbox {
    display:grid;
    grid-template-columns: repeat(3,12px);
    grid-template-rows:repeat(3,12px);
    align-items: center;
    border-right:1px dotted white;
    border-bottom:1px dotted white;
    background-color:lightgrey;
    }
.zero {font-size:9px; color: red; font-weight:bold;}
.one  {font-size:8px; color: gray;font-weight:normal;}
h1 {
    text-align:center;
    margin:auto;
    color:#0000CD
    }
h4 {
    font-weight:normal;
    color:#DCDCDC;
}

input {
    position:relative;
    width:25px;
    height:25px;
    border-radius: 50%;
    border: 1px solid #D8EDF8;
    font-weight:bold;
    color:#00008B;
    text-align:center;
    vertical-align:middle;
    z-index:10;
    }

button {
    display:inline;
    width:100px;
    height:30px;
    background-color: initial;
    background-image: linear-gradient(rgba(179, 132, 201, .84), rgba(57, 31, 91, .84) 50%);
    border-radius: 42px;
    border-width: 0;
    box-shadow: rgba(57, 31, 91, 0.24) 0 2px 2px,rgba(179, 132, 201, 0.4) 0 8px 12px;
    color: #FFFFFF;
    cursor: pointer;
    font-family: Quicksand,sans-serif;
    font-size: 18px;
    font-weight: 700;
    padding: 5px 18px;
    text-align: center;
    vertical-align:middle;
    text-shadow: rgba(255, 255, 255, 0.4) 0 0 4px,rgba(255, 255, 255, 0.2)
                                          0 0 12px,rgba(57, 31, 91, 0.6)
                                          1px 1px 4px,rgba(57, 31, 91, 0.32) 4px 4px 16px;
    user-select: none;
    -webkit-user-select: none;
    touch-action: manipulation;
    vertical-align: baseline;
    }

button:hover {
    background-image: linear-gradient(#B384C9, #391F5B 50%);
    }
.smallbutton {
    width: 75px;
    height:20px;
    font-size:14px;
    padding:3px;
    }
/*  input string version */
#ptext{
    width:200px;
    height:150px;
    }

.orig {
    background-color:#FF8C00;
    border:2px solid navy;
    color:#FFFF00;
    }
.soln{
    background-color:transparent;
    border:1px solid #B0C4DE;
    color:black;
    }

.err {
    background:red;
    color:white;
    font-weight:bold;
    }


.rb {border-right:3px solid lightblue;}
.bb {border-bottom:3px solid lightblue;}

/* Puzzle selected */
.Easy    {background:yellow;color:red;}
.Moderate{background:lightblue;color:yellow;}
.Hardest {background:black;color:white;}
.clear {
    display: inline-block;
    width:min-content;
    }
