body {
    background-color: #f5f5dc; /* Default light background */
    font-family: 'Verdana', sans-serif;
    color: #333;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    margin: 0;
    padding: 20px;
    transition: background-color 0.3s, color 0.3s;
}

.container {
    width: 100%;
    max-width: 100%; /* Makes the container fill the screen */
    background-color: #e0e0e0;
    border: 2px solid #a0a0a0;
    padding: 10px;
    box-shadow: 5px 5px 10px rgba(0,0,0,0.2);
}

.controls {
    text-align: right;
    margin-bottom: 10px;
}

#writing-area {
    width: 100%;
    height: 75vh; /* Larger writing area */
    background-color: #ffffff;
    border: 1px solid #c0c0c0;
    padding: 20px;
    box-sizing: border-box;
    font-family: 'Verdana', sans-serif;
    /* Font size is now regular/default */
    line-height: 1.5;
    resize: none;
    outline: none;
    transition: background-color 0.3s, color 0.3s;
}

.footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 10px;
    font-size: 14px;
}

#logo-art {
    font-family: 'Lucida Console', 'Courier New', monospace;
    font-size: 12px;
    white-space: pre;
    color: inherit;
    padding-right: 10px;
}

.info-container {
    position: relative;
    cursor: pointer;
    display: flex;
    align-items: center;
}

.info-icon {
    font-size: 1.5em;
    padding: 5px;
}

.hidden-info {
    display: none;
    position: absolute;
    bottom: 100%;
    left: 0;
    background-color: #36393f;
    border: 1px solid #555;
    padding: 10px;
    white-space: nowrap;
    box-shadow: 0 0 10px rgba(0,0,0,0.5);
    margin-bottom: 5px;
    z-index: 10;
    color: #c9d1d9;
}

.info-container:hover .hidden-info {
    display: block;
}

hr {
    border: none;
    height: 1px;
    background-color: #555;
    margin: 5px 0;
}

button {
    background-color: #c0c0c0;
    border: 1px solid #808080;
    padding: 5px 15px;
    font-family: 'Verdana', sans-serif;
    cursor: pointer;
    box-shadow: 2px 2px 5px rgba(0,0,0,0.1);
}

button:hover {
    background-color: #d0d0d0;
}

#confirmation-message {
    text-align: center;
    margin-top: 10px;
    padding: 10px;
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
    border-radius: 5px;
}

.hidden {
    display: none;
}

/* Theme styles */
.light-mode {
    background-color: #b8cef2;
    color: #333;
}
.light-mode .container {
    background-color: #e0e0e0;
    border-color: #a0a0a0;
}
.light-mode #writing-area {
    background-color: #ffffff;
    color: #333;
    border-color: #c0c0c0;
}

.dark-mode {
    background-color: #2c2f33;
    color: #c9d1d9;
}

.dark-mode .container {
    background-color: #36393f;
    border-color: #555;
}

.dark-mode #writing-area {
    background-color: #23272a;
    color: #c9d1d9;
    border-color: #555;
}

.sepia-mode {
    background-color: #5B3A29;
    color: #5b4636;
}

.sepia-mode .container {
    background-color: #D2B48C;
    border-color: #bfa88c;
}

.sepia-mode #writing-area {
    background-color: #fff9ed;
    color: #704214;
    border-color: #bfa88c;
}