/* General Styling */ body { font-family: 'Roboto', sans-serif; margin: 0; padding: 0; background-color: #f4f4f9; color: #333; } h1 { text-align: center; color: #4A90E2; margin: 20px 0; } h2 { color: #4A90E2; margin: 10px 0; } /* Container Layout */ .container { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 20px; width: 90%; max-width: 1200px; margin: 0 auto; } /* Columns */ .left-column { flex: 1; min-width: 300px; } .right-column { flex: 1; min-width: 300px; } /* Sections */ .section { background: #fff; border: 1px solid #ddd; border-radius: 8px; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); padding: 20px; margin-bottom: 20px; } /* Buttons Inline */ .button-group { display: flex; flex-wrap: wrap; gap: 10px; padding: 10px 15px; } button { background: #4A90E2; color: #fff; cursor: pointer; padding: 10px 15px; font-size: 1em; border: 1px solid #ddd; border-radius: 5px; outline: none; transition: all 0.3s ease; } button:hover { background: #357ABD; } /* Delete Button */ .delete-button { background: #e74c3c; /* Red color */ color: #fff; cursor: pointer; border: none; padding: 10px 15px; border-radius: 5px; font-size: 1em; transition: all 0.3s ease; } .delete-button:hover { background: #c0392b; /* Darker red on hover */ } select, input[type="file"] { display: block; width: 100%; max-width: 300px; padding: 10px; margin: 10px 0; font-size: 1em; border: 1px solid #ddd; border-radius: 5px; outline: none; } /* File List */ ul { list-style: none; padding: 0; margin: 0; } li { padding: 10px; border-bottom: 1px solid #ddd; cursor: pointer; transition: all 0.3s ease; } li:hover { background: #f1f1f1; } li.selected { background: #4A90E2; color: white; font-weight: bold; padding: 5px; border-radius: 5px; } /* Status Log */ #status_log { display: none; position: fixed; bottom: 0; left: 0; right: 0; background: #fff; border-top: 1px solid #ddd; padding: 10px; max-height: 150px; overflow-y: scroll; /* Use scroll explicitly */ box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.1); -webkit-overflow-scrolling: touch; /* Enables smooth scrolling on mobile */ touch-action: auto; /* Ensures touch gestures are handled properly */ } #status_log p { margin: 0.5em 0; font-size: 0.9em; color: #444; } #theta_rho_files { max-height: 507px; overflow-y: auto; border: 1px solid #ddd; border-radius: 5px; background-color: #fff; padding: 10px; } /* Search Bar */ #search_pattern { display: block; width: 100%; max-width: 300px; padding: 10px; margin: 10px 0; font-size: 1em; border: 1px solid #ddd; border-radius: 5px; outline: none; transition: all 0.3s ease; } #search_pattern:focus { border-color: #4A90E2; box-shadow: 0 0 5px rgba(74, 144, 226, 0.5); } /* Radio Buttons and Labels */ .pre-execution-toggles { margin: 10px 0; padding: 10px; background: #fff; border: 1px solid #ddd; border-radius: 8px; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); } .pre-execution-toggles h3 { margin: 0 0 10px 0; color: #4A90E2; font-size: 1.1em; } .pre-execution-toggles label { display: flex; align-items: center; gap: 10px; margin: 5px 0; font-size: 1em; color: #333; cursor: pointer; transition: all 0.3s ease; } .pre-execution-toggles label:hover { color: #4A90E2; } input[type="radio"] { appearance: none; width: 16px; height: 16px; border: 2px solid #4A90E2; border-radius: 50%; outline: none; cursor: pointer; transition: all 0.3s ease; } input[type="radio"]:checked { background-color: #4A90E2; border-color: #4A90E2; box-shadow: 0 0 3px rgba(74, 144, 226, 0.5); } .coordinate-input { display: flex; align-items: center; gap: 10px; margin-top: 10px; } .coordinate-input label, .coordinate-input input, .coordinate-input button { font-size: 1rem; padding: 5px; } .coordinate-input input { width: 80px; } /* Speed Control Section */ .speed-control { display: flex; align-items: center; gap: 15px; margin-top: 10px; background: #fff; /* Matches section background */ border: 1px solid #ddd; border-radius: 8px; padding: 15px; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); } .speed-control label { font-weight: bold; font-size: 1rem; color: #333; flex-shrink: 0; } .speed-control input[type="number"] { width: 100px; /* Consistent input width */ padding: 8px; font-size: 1rem; border: 1px solid #ddd; border-radius: 5px; outline: none; transition: all 0.3s ease; } .speed-control input[type="number"]:focus { border-color: #4A90E2; /* Highlighted border */ box-shadow: 0 0 5px rgba(74, 144, 226, 0.5); } .speed-control button { background: #4A90E2; color: #fff; padding: 10px 15px; font-size: 1rem; border: none; border-radius: 5px; cursor: pointer; transition: all 0.3s ease; } .speed-control button:hover { background: #357ABD; } #speed_status { margin-top: 10px; font-size: 0.9rem; color: #444; } /* Responsive Layout for Small Screens */ @media (max-width: 768px) { .container { flex-direction: column; /* Stack columns vertically */ } .left-column, .right-column { width: 100%; } #status_log { display: none; /* Completely hides the status log on small screens */ } }