/* ========================================= */ /* CHALLENGER: MASTER CONFIGURATION FILE */ /* ========================================= */ /* 1. MASTER FONT AND BACKGROUND SETTINGS */ body { background-color: #0000AA; color: #FFFFFF; font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 18px; /* CHANGE THIS NUMBER TO RESIZE THE ENTIRE SYSTEM */ font-weight: bold; margin: 20px; overflow: hidden; } /* 2. GLOBAL COMPANY NAME (WHITE-LABEL SETTING) */ .company-name::after { content: ""; } /* 3. SHARED HEADER SETTINGS */ .header { display: flex; justify-content: space-between; color: #55FFFF; margin-bottom: 20px; font-size: 24px; } .title-center { text-align: center; } .search-bar { margin-bottom: 20px; display: flex; align-items: center; } /* 4. SHARED INPUT BOX SETTINGS */ input { background-color: transparent; color: #FFFFFF; border: none; font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 22px; font-weight: bold; outline: none; text-transform: uppercase; } input:focus { background-color: #0000CC; } input[readonly] { color: #FFFF55; } input[type="search"]::-webkit-search-cancel-button { display: none; } /* 5. SHARED BUTTON SETTINGS */ button { background: transparent; color: #55FFFF; border: none; font-family: inherit; font-size: inherit; font-weight: bold; cursor: pointer; text-align: left; padding: 0; } button:hover { color: #FFFFFF; } /* 6. VT320 TERMINAL STATUS BAR */ .terminal-bar { position: absolute; bottom: 0; left: 0; width: 100%; background-color: #55FFFF; color: #0000AA; font-size: 18px; font-weight: bold; display: flex; justify-content: space-between; padding: 2px 10px; box-sizing: border-box; } /* 7. GLOBAL SCREENSAVER */ #screensaver { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: #0000AA; z-index: 9999; overflow: hidden; } #bouncing-text { position: absolute; color: #FFFF55; /* Authentic bold yellow */ font-size: 28px; font-weight: normal; /* Removes the bold styling */ white-space: nowrap; text-shadow: 2px 2px 0px #000; /* Classic terminal pop */ } /* OVERRIDE FOR SCREENSAVER TEXT ONLY */ #bouncing-text.company-name::after, #bouncing-text::after { content: "" !important; } /* ========================================= */ /* SYSTEM-WIDE LAYOUT & GRID RULES */ /* ========================================= */ .grid-container { display: grid; grid-template-columns: 50% 50%; gap: 10px; } .form-group { display: grid; grid-template-columns: 220px 1fr; margin-bottom: 2px; align-items: center; } label { color: #55FFFF; text-align: right; margin-right: 15px; white-space: pre; } .full-width-group { display: grid; grid-template-columns: 220px 1fr; margin-top: 20px; align-items: center; } /* FIXED STATUS BOX & FOOTER (GLOBALLY MODERNIZED) */ .status-box { position: absolute; border: 2px solid #FFFFFF; padding: 10px 20px; text-align: center; background-color: #0000AA; z-index: 100; box-shadow: 8px 8px 0px rgba(0,0,0,0.5); height: fit-content; width: fit-content; font-size: 20px; text-transform: uppercase; } .footer-grid { position: absolute; bottom: 40px; /* Safely above terminal bar */ left: 20px; right: 20px; white-space: pre; /* Honors exact spaces universally */ line-height: 1.4; font-size: 20px; display: block; /* Overrides the old 5-column grid layout */ } .footer-grid span { cursor: pointer; } /* ========================================= */ /* POPUP LOOKUP MENU */ /* ========================================= */ #lookup-box { display: none; position: absolute; top: 130px; left: 50px; width: 650px; max-height: 400px; background-color: #0000AA; border: 3px solid #55FFFF; box-shadow: 10px 10px 0px rgba(0,0,0,0.5); z-index: 1000; overflow-y: auto; padding: 10px; } .lookup-header { color: #FFFF55; border-bottom: 1px dashed #FFFFFF; margin-bottom: 10px; padding-bottom: 5px; display: grid; grid-template-columns: 400px 200px; } .lookup-item { display: grid; grid-template-columns: 400px 200px; color: #FFFFFF; padding: 5px 0; cursor: pointer; } .lookup-item.active, .lookup-item:hover { background-color: #55FFFF; color: #0000AA; } /* ========================================= GLOBAL SYSTEM PRINT STYLING ========================================= */ @media print { /* Standardize paper margins */ @page { margin: 0.5in auto; } /* Force body to top-left, 100% width, no left-side screen margins */ body, #screensaver, #screensaver div, #bouncing-text { background-color: #FFFFFF !important; color: #000000 !important; overflow: visible !important; height: auto !important; font-size: 12px !important; margin: 0 auto !important; padding: 0 !important; width: 100% !important; max-width: 100% !important; display: block !important; } /* Destroy any screen grids/flexboxes that push content to the right */ .grid-container, .form-group, .full-width-group, .report-container, .history-container, #detail-screen { display: block !important; width: 100% !important; margin: 0 auto !important; padding: 0 !important; height: auto !important; overflow: visible !important; border: none !important; } .header *, th, td, span, div { color: #000000 !important; text-shadow: none !important; font-size: 12px !important; } /* Format table borders for paper */ th { border-bottom: 1px solid #000000 !important; padding-bottom: 2px !important; font-weight: bold !important; } .totals-row td { border-top: 1px solid #000000 !important; } td { padding: 2px 0 !important; } /* Hide all terminal UI elements that shouldn't be printed */ .legacy-top, .footer-grid, .terminal-bar, #status-box, .footer-keys { display: none !important; } /* Ensure tables break cleanly across multiple pages */ table { width: 100% !important; page-break-inside: auto; margin: 0 auto !important; } tr { page-break-inside: avoid; page-break-after: auto; } thead { display: table-header-group; } }