* { box-sizing: border-box; font-family: "PT Serif"; } body { --background-color: #1a202e; /* Deep navy night */ --primary-color: #3a4f6f; /* Rich medium blue */ --secondary-color: #2d3f5c; /* Deeper blue */ --accent-color: #5b89b3; /* Glowing blue highlight */ --text-color: #ffffff; /* Pure white */ --heading-color: #c5d5e6; /* Soft sky blue */ --form-background: #222837; /* Slightly lighter background */ --text-on-primary: #ffffff; /* White text */ --button-text: #ffffff; /* White text */ --neutral-light: #d8e1ea; /* Bright blue-white */ --neutral-medium: #8494a7; /* Muted blue-gray */ --neutral-dark: #2d364a; /* Deep blue shadow */ font-size: 24px; color: var(--text-color); background-color: var(--background-color); width: 100vw; height: 100vh; } /* Generic Structural Layout Defaults */ div, section, article, header, footer, main, nav, aside { display: block; } span, em, strong, a { display: inline; } /* Typographic Defaults */ p { display: block; margin: 1em 0px; } h1, h2, h3, h4, h5, h6 { display: block; font-weight: bold; margin: 0.83em 0px; color: var(--heading-color); } h1 { font-size: 2em; } h2 { font-size: 1.5em; } h3 { font-size: 1.17em; } h4 { font-size: 1em; } h5 { font-size: 0.83em; } h6 { font-size: 0.67em; } em { font-style: italic; } strong { font-weight: bold; } a { color: #0000ee; text-decoration: underline; } a:hover { color: #551a8b; } blockquote { display: block; margin: 1em 40px; padding-left: 10px; border-left: 2px #cccccc; color: #555555; } code, pre { font-family: "rmlui-debugger-font"; background-color: #606060; color: #000000; padding: 3px; font-style: italic; } pre { display: block; white-space: pre; margin: 1em 0px; padding: 8px; } /* Lists */ ul, ol { display: block; margin: 1em 0px; padding-left: 40px; } li { display: block; } /* ========================================================================== Tables ========================================================================== */ table { display: table; } tr { display: table-row; } td, th { display: table-cell; padding: 4px 8px; text-align: left; } th { font-weight: bold; background-color: #eaeaea; } col { display: table-column; } colgroup { display: table-column-group; } thead, tbody, tfoot { display: table-row-group; } /* ========================================================================== Form Inputs & Interactive UI Components ========================================================================== */ button, input, select, textarea { display: inline-block; /* font-family: "rmlui-debugger-font"; */ font-size: 14px; margin: 2px; vertical-align: middle; } /* Traditional gray bevel button style */ button, input[type="submit"], input[type="button"] { padding: 4px 12px; min-width: 40px; background-color: #e1e1e1; color: #000000; border: 1px #767676; text-align: center; } button:hover, input[type="submit"]:hover, input[type="button"]:hover { background-color: #d0d0d0; border: 1px #4f4f4f; } button:active, input[type="submit"]:active, input[type="button"]:active { background-color: #b5b5b5; border: 1px #000000; } /* Standard text field styling */ input[type="text"], input[type="password"], textarea { padding: 4px; background-color: #ffffff; color: #000000; border: 1px #767676; } input[type="text"]:focus, input[type="password"]:focus, textarea:focus { border: 1px #005aff; } textarea { display: block; white-space: pre-wrap; width: 300px; height: 100px; } /* Select Box & Dropdowns */ select { padding: 4px; background-color: #ffffff; color: #000000; border: 1px #767676; text-align: left; } /* ========================================================================== RmlUi Specific Elements (Tabsets, Progress Bars, etc.) ========================================================================== */ tabset { display: block; } tabset tabs { display: block; border-bottom: 1px #cccccc; } /* Simple default layout style for built-in tabs */ tab { display: inline-block; padding: 6px 12px; background-color: #f0f0f0; border: 1px #cccccc; margin-right: 2px; } tab:selected { background-color: #ffffff; border-bottom: 1px #ffffff; /* Overlap the bottom border line */ font-weight: bold; } panel { display: block; padding: 10px; background-color: #ffffff; } /* Standard HTML5 / RmlUi Progress Bar Fallback */ progress { display: inline-block; width: 160px; height: 20px; background-color: #e6e6e6; border: 1px #b0b0b0; } progress-value { display: block; height: 100%; background-color: #0078d7; /* Classic Windows Blue fill */ } /* ========================================================================== Utility & Modern Layout Helpers ========================================================================== */ .flex { display: flex; } .flex-row { flex-direction: row; } .flex-col { flex-direction: column; } .justify-center { justify-content: center; } .align-center { align-items: center; } .hidden { display: none; } /* ========================================================================== Shell ========================================================================== */ #navbar { display: flex; flex-direction: row; justify-content: space-between; align-items: center; width: 100%; height: 70px; padding: 0px 20px; background-color: transparent; box-shadow: #000a 0px 6px 8px; } #navbar h1 { color: var(--heading-color); font-size: 24px; margin: 0px; } #navbar .nav-buttons { display: flex; flex-direction: row; gap: 12px; } #navbar button { padding: 8px 16px; } #navbar svg.logo { width: 50px; height: 50px; } #page-content { display: block; padding: 2rem; background-color: var(--background-color); color: var(--text-color); margin-top: 15px; } /* Custom controls */ button.btn-primary { transition: background-color 0.2s exponential-in-out; display: inline-block; min-width: 100px; min-height: 35px; padding: 0.75rem 1.5rem; text-decoration: none; background-color: var(--primary-color); border-radius: 4px; border-color: transparent; color: var(--text-color); font-size: 16px; } button.btn-primary:hover { background-color: var(--secondary-color); cursor: pointer; } /* button.btn-primary:active { background-color: #3e8e41; border-color: #245325; } */