﻿/* DEFAULTS
----------------------------------------------------------*/

body   
{
    background: #b6b7bc;
    font-size: .80em;
    font-family: "Helvetica Neue", "Lucida Grande", "Segoe UI", Arial, Helvetica, Verdana, sans-serif;
    margin: 0px;
    padding: 0px;
    color: #696969;
}

a:link, a:visited
{
    color: #034af3;
}

a:hover
{
    color: #1d60ff;
    text-decoration: none;
}

a:active
{
    color: #034af3;
}

p
{
    margin-bottom: 10px;
    line-height: 1.6em;
}


/* HEADINGS   
----------------------------------------------------------*/

h1, h2, h3, h4, h5, h6
{
    font-size: 1.5em;
    color: #666666;
    font-variant: small-caps;
    text-transform: none;
    font-weight: 200;
    margin-bottom: 0px;
}

h1
{
    font-size: 1.6em;
    padding-bottom: 0px;
    margin-bottom: 0px;
}

h2
{
    font-size: 1.5em;
    font-weight: 600;
}

h3
{
    font-size: 1.2em;
}

h4
{
    font-size: 1.1em;
}

h5, h6
{
    font-size: 1em;
}

/* this rule styles <h1> and <h2> tags that are the 
first child of the left and right table columns */
.rightColumn > h1, .rightColumn > h2, .leftColumn > h1, .leftColumn > h2
{
    margin-top: 0px;
}


/* PRIMARY LAYOUT ELEMENTS   
----------------------------------------------------------*/

.page
{
    width: 960px;
    background-color: #fff;
    margin: 20px auto 0px auto;
    border: 1px solid #496077;
}

.header
{
    position: relative;
    margin: 0px;
    padding: 0px;
    background: #4b6c9e;
    width: 100%;
}

.header h1
{
    font-weight: 700;
    margin: 0px;
    padding: 0px 0px 0px 20px;
    color: #f9f9f9;
    border: none;
    line-height: 2em;
    font-size: 2em;
}

.main
{
    padding: 0px 12px;
    margin: 12px 8px 8px 8px;
    min-height: 420px;
}

.leftCol
{
    padding: 6px 0px;
    margin: 12px 8px 8px 8px;
    width: 200px;
    min-height: 200px;
}

.footer
{
    color: #4e5766;
    padding: 8px 0px 0px 0px;
    margin: 0px auto;
    text-align: center;
    line-height: normal;
}


/* TAB MENU   
----------------------------------------------------------*/

div.hideSkiplink
{
    background-color:#3a4f63;
    width:100%;
}

div.menu
{
    padding: 4px 0px 4px 8px;
}

div.menu ul
{
    list-style: none;
    margin: 0px;
    padding: 0px;
    width: auto;
}

div.menu ul li a, div.menu ul li a:visited
{
    background-color: #465c71;
    border: 1px #4e667d solid;
    color: #dde4ec;
    display: block;
    line-height: 1.35em;
    padding: 4px 20px;
    text-decoration: none;
    white-space: nowrap;
}

div.menu ul li a:hover
{
    background-color: #bfcbd6;
    color: #465c71;
    text-decoration: none;
}

div.menu ul li a:active
{
    background-color: #465c71;
    color: #cfdbe6;
    text-decoration: none;
}

/* FORM ELEMENTS   
----------------------------------------------------------*/

fieldset
{
    margin: 1em 0px;
    padding: 1em;
    border: 1px solid #ccc;
}

fieldset p 
{
    margin: 2px 12px 10px 10px;
}

fieldset.login label, fieldset.register label, fieldset.changePassword label
{
    display: block;
}

fieldset label.inline 
{
    display: inline;
}

legend 
{
    font-size: 1.1em;
    font-weight: 600;
    padding: 2px 4px 8px 4px;
}

input.textEntry 
{
    width: 320px;
    border: 1px solid #ccc;
}

input.passwordEntry 
{
    width: 320px;
    border: 1px solid #ccc;
}

div.accountInfo
{
    width: 42%;
}

/* MISC  
----------------------------------------------------------*/

.clear
{
    clear: both;
}

.title
{
    display: block;
    float: left;
    text-align: left;
    width: auto;
}

.loginDisplay
{
    font-size: 1.1em;
    display: block;
    text-align: right;
    padding: 10px;
    color: White;
}

.loginDisplay a:link
{
    color: white;
}

.loginDisplay a:visited
{
    color: white;
}

.loginDisplay a:hover
{
    color: white;
}

.failureNotification
{
    font-size: 1.2em;
    color: Red;
}

.bold
{
    font-weight: bold;
}

.submitButton
{
    text-align: right;
    padding-right: 10px;
}

.container {
    display: flex;
    flex-direction: column; 
    align-items: center; 
    min-height: 100vh;
    justify-content: center; 
}

.middle-row {
    display: flex;
    gap: 20px; 
    justify-content: center; 
    margin: 20px 0; 
}

.middle-row img {
    max-width: 250px; 
    height: auto; 
    flex-shrink: 0;
}

.top-light,
.bottom-light {
    display: block;
}

/* 🎄 NEW TEXT STYLES 🎄 */

/* Top Heading: Heimtech.com */
.top-heading {
    /* Large text */
    font-size: 3em; 
    font-weight: 900;
    /* Margin to separate from lights */
    margin-bottom: 15px;
    /* Center text within its own container */
    text-align: center;
    /* Set the maximum width (assuming lights are ~500px, 80% is 400px) */
    max-width: 400px;
    
    /* Metallic Green Effect */
    color: #4CAF50; /* Base Green */
    background-color: #2e7d32; /* Darker green background for contrast */
    padding: 5px 10px;
    border-radius: 5px;
    
    /* Subtle metallic/3D effect using text-shadow */
    text-shadow: 
        1px 1px 0 #81c784,  /* Light green highlight */
        -1px -1px 0 #1b5e20, /* Dark green shadow */
        3px 3px 6px rgba(0, 0, 0, 0.4); /* General drop shadow */
    
    /* Ensure it doesn't try to grow in the flex container */
    flex-shrink: 0;
}

/* Bottom Message: Construction taking longer than expected. */
.bottom-message {
    /* Festive red font */
    color: #C62828; /* Deep Red */
    font-family: 'Times New Roman', serif;
    font-size: 1.5em;
    font-weight: bold;
    /* Margin to separate from lights */
    margin-top: 15px;
    /* Allow it to be as wide as the lights (assuming max-width of lights is ~500px) */
    max-width: 500px; 
    text-align: center;
    line-height: 1.4;
    
    /* Optional: Small text shadow for a 3D effect */
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
}