/*
 * Default Theme Variables
 * --bg-color: #c0c0c0;
 * --primary-color: #000080;
 * --font-family: 'Tahoma', 'Verdana', sans-serif;
 */

:root {
    --bg-color: #c0c0c0;
    --primary-color: #000080;
    --font-family: 'Tahoma', 'Verdana', sans-serif;
}

/* General Styles */
body {
    font-family: var(--font-family);
    margin: 0;
    padding: 0;
    background-color: var(--bg-color);
    line-height: 1.6;
    font-size: 12px;
    color: #000;
}

.container {
    max-width: 800px;
    margin: auto;
    padding: 10px;
    border: 2px solid #000;
    box-shadow: inset 1px 1px #dfdfdf, inset -1px -1px #808080;
}

/* Typography */
h1 {
    font-size: 16px;
    text-align: center;
    margin: 0 0 10px 0;
    padding: 5px;
    background-color: var(--primary-color);
    color: #fff;
}

h2 {
    font-size: 14px;
    margin: 10px 0 5px 0;
    color: var(--primary-color);
}

/* Button Styles */
.button-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 5px;
    margin-bottom: 10px;
}

button {
    padding: 6px 10px;
    border: 1px solid #000;
    box-shadow: inset 1px 1px #dfdfdf, inset -1px -1px #808080;
    cursor: pointer;
    text-align: center;
    width: 100%;
}

button:active, button.active {
    box-shadow: inset -1px -1px #dfdfdf, inset 1px 1px var(--primary-color);
    background-color: var(--primary-color);
    color: #fff;
}

/* Form Styles */
.dimensions-section {
    margin-bottom: 10px;
}

input, select {
    padding: 2px;
    border: 1px solid #000;
    background-color: #fff;
}

/* Canvas Styles */
#layoutCanvas {
    border: 1px solid #000;
    background-color: #fff;
    margin-top: 10px;
    width: 100%;
    height: auto;
}

/* Table Styles */
table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 10px;
}

th, td {
    border: 1px solid #000;
    padding: 4px;
    text-align: left;
    font-size: 16px;
}

th {
    background-color: var(--primary-color);
    color: #fff;
}

/* Utility Classes */
.hidden {
    display: none;
}
