body, html { height: 100%; margin: 0; } /* Stuff for message boxes */ #chat-messages .message-content pre { overflow-x: auto; white-space: pre; max-width: 662px; position: relative; border-radius: 8px; } #chat-messages .message-content pre code { display: inline-block; min-width: 100%; white-space: inherit; } .copy-button { position: absolute; top: 5px; right: 5px; } .content { font-size: 14px; line-height: 1.5; color: #ffffff; } /* Style for the overall chat container */ #chat-messages { max-width: 780px; margin: auto; width: 95%; margin-bottom: 180px; } /* Primary color */ :root { --bulma-body-background-color: #202020; --bulma-primary: #126d0f; } /* Chat input stuff */ .chat-input-container { display: flex; flex-direction: column; justify-content: center; align-items: center; position: fixed; bottom: 10px; left: 0; right: 0; padding: 10px; max-width: 800px; margin: 0 auto; z-index: 1; } .textarea-wrapper { position: relative; width: 100%; } .textarea { width: 100%; padding-right: 140px; /* Adjust this value based on the button and dropdown width */ box-sizing: border-box; } .button-group { position: absolute; bottom: 10px; right: 10px; display: flex; align-items: center; gap: 10px; } /* Indicator */ .my-indicator { display: none; } .htmx-request .my-indicator { display: inline; } .htmx-request.my-indicator { display: inline; } /* Logo */ svg text { font-family: 'Russo One', sans-serif; text-transform: uppercase; fill: #000; stroke: #000; font-size: 240px; } /* Custom Checkbox Styles */ .custom-checkbox { display: flex; align-items: center; font-size: 1rem; cursor: pointer; user-select: none; /* Prevent text selection */ } .custom-checkbox input { position: absolute; opacity: 0; /* Hide the default checkbox */ cursor: pointer; } .custom-checkbox .checkmark { position: relative; height: 14px; width: 14px; background-color: #eee; /* Light grey background */ border-radius: 4px; /* Rounded corners */ margin-right: 8px; /* Space between checkmark and label text */ border: 2px solid #ccc; /* Grey border */ } /* On mouse-over, add a grey background color */ .custom-checkbox:hover input~.checkmark { background-color: #ccc; } /* When the checkbox is checked */ .custom-checkbox input:checked~.checkmark { background-color: var(--bulma-primary, #126d0f); /* Primary color background */ border-color: var(--bulma-primary, #126d0f); } /* Create the checkmark/indicator (hidden when not checked) */ .custom-checkbox .checkmark:after { content: ""; position: absolute; display: none; } /* Show the checkmark when checked */ .custom-checkbox input:checked~.checkmark:after { display: block; } /* Style the checkmark/indicator */ .custom-checkbox .checkmark:after { left: 4px; top: 1px; width: 3px; height: 6px; border: solid white; border-width: 0 2px 2px 0; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); } /* Message button styles */ .message-button { opacity: 0; transition: opacity 0.3s ease; } .message-user:hover .message-button { opacity: 1; } .message-bot:hover .message-button { opacity: 1; } /***** MODAL DIALOG ****/ #modal { /* Underlay covers entire screen. */ position: fixed; top: 0px; bottom: 0px; left: 0px; right: 0px; background-color: rgba(0, 0, 0, 0.5); z-index: 1000; /* Flexbox centers the .modal-content vertically and horizontally */ display: flex; flex-direction: column; align-items: center; /* Animate when opening */ animation-name: fadeIn; animation-duration: 150ms; animation-timing-function: ease; } #modal>.modal-underlay { /* underlay takes up the entire viewport. This is only required if you want to click to dismiss the popup */ position: absolute; z-index: -1; top: 0px; bottom: 0px; left: 0px; right: 0px; } #modal>.modal-content { /* Position visible dialog near the top of the window */ margin-top: 10vh; /* Sizing for visible dialog */ width: 80%; max-width: 600px; /* Display properties for visible dialog*/ border: solid 1px #999; border-radius: 8px; box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.3); background-color: white; padding: 20px; /* Animate when opening */ animation-name: zoomIn; animation-duration: 150ms; animation-timing-function: ease; } #modal.closing { /* Animate when closing */ animation-name: fadeOut; animation-duration: 150ms; animation-timing-function: ease; } #modal.closing>.modal-content { /* Animate when closing */ animation-name: zoomOut; animation-duration: 150ms; animation-timing-function: ease; } @keyframes fadeIn { 0% { opacity: 0; } 100% { opacity: 1; } } @keyframes fadeOut { 0% { opacity: 1; } 100% { opacity: 0; } } @keyframes zoomIn { 0% { transform: scale(0.9); } 100% { transform: scale(1); } } @keyframes zoomOut { 0% { transform: scale(1); } 100% { transform: scale(0.9); } }