:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}table{width:100%;border-collapse:collapse;margin-top:20px;font-size:.9em;box-shadow:0 0 20px #00000026;border-radius:5px 5px 0 0;overflow:hidden}table thead tr{border-bottom:2px solid #dddddd;color:#ddd;text-align:left;font-weight:700}table th,table td{padding:12px 15px;text-align:left}table tbody tr{border-bottom:1px solid #dddddd}table tbody tr:last-of-type{border-bottom:2px solid #dddddd}table tbody tr:hover{cursor:pointer}.badge-image-list{max-height:40px;width:auto;display:block}.login-container{display:flex;justify-content:center;align-items:center;height:100vh;background-color:#f4f4f4}.login-box{background:#fff;padding:40px;border-radius:8px;box-shadow:0 4px 8px #0000001a;text-align:center;width:400px}.login-box h2{margin-bottom:20px;font-size:24px;color:#333}.input-group{margin-bottom:20px;text-align:left}.input-group label{display:block;margin-bottom:5px;color:#666}.input-group input{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;box-sizing:border-box}.login-button{width:100%;padding:10px;background-color:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:16px}.login-button:hover{background-color:#0056b3}.error-message{color:red;margin-bottom:20px}.sidebar{width:250px;background-color:#333;color:#fff;height:100vh;padding:20px;box-sizing:border-box}.sidebar .logo{font-size:24px;font-weight:700;text-align:center;margin-bottom:30px}.sidebar nav ul{list-style:none;padding:0;margin:0}.sidebar nav ul li{padding:15px;cursor:pointer;border-radius:4px}.sidebar nav ul li:hover{background-color:#555}.sidebar nav ul li a{color:#fff;text-decoration:none;display:block}.sidebar nav ul li a.active{color:#fff;font-weight:700}.pagination-container{display:flex;justify-content:center;align-items:center;margin-top:20px}.pagination-container button{background-color:#fff;border:1px solid #ddd;color:#007bff;padding:8px 16px;text-decoration:none;transition:background-color .3s;margin:0 4px;cursor:pointer}.pagination-container button.active{background-color:#007bff;color:#fff;border:1px solid #007bff}.pagination-container button:hover:not(.active){background-color:#ddd}.pagination-container button:disabled{color:#ccc;cursor:not-allowed}.logout-button{background-color:#f44336;color:#fff;border:none;padding:10px 20px;text-align:center;text-decoration:none;display:inline-block;font-size:16px;margin:4px 2px;cursor:pointer;border-radius:8px;align-self:flex-start}.logout-button:hover{background-color:#da190b}.main-container{display:flex}.content{flex-grow:1;padding:20px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.logout-button{padding:8px 16px;background-color:#f44336;color:#fff;border:none;border-radius:4px;cursor:pointer}.controls{display:flex;justify-content:space-between;margin-bottom:20px}.sort-options label{margin-right:15px}.search-bar{display:flex}.search-bar select,.search-bar input{margin-right:10px;padding:5px}.pagination{display:flex;justify-content:center;margin-top:20px}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal{background:#3d3d3c;padding:20px;border-radius:8px;width:500px;max-width:90%;position:relative}.modal .close-button{position:absolute;top:10px;right:10px;background:none;border:none;font-size:24px;cursor:pointer}.modal h2{margin-top:0;margin-bottom:20px}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px}.form-group select,.form-group textarea{width:100%;padding:8px;border:1px solid #ccc;border-radius:4px;box-sizing:border-box}.form-group textarea{height:150px;resize:vertical}.submit-button{width:100%;padding:10px;background-color:#4caf50;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:16px}.submit-button:hover{background-color:#45a049}.success-modal{background:#fff;padding:20px 40px;border-radius:8px;text-align:center;box-shadow:0 4px 8px #0003;z-index:1001}.success-modal p{margin:0 0 20px;font-size:16px}.success-modal button{padding:10px 20px;background-color:#4caf50;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:16px}.success-modal button:hover{background-color:#45a049}.right-controls{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.create-button{background-color:#4caf50;color:#fff;padding:10px 20px;border:none;border-radius:5px;cursor:pointer}.create-button:hover{background-color:#45a049}.edit-button{background-color:#008cba;color:#fff;padding:5px 10px;border:none;border-radius:5px;cursor:pointer}.edit-button:hover{background-color:#007bb5}.table-footer{display:flex;justify-content:space-between;align-items:center;margin-top:20px}.delete-button{background-color:#f44336;color:#fff;padding:10px 20px;border:none;border-radius:5px;cursor:pointer}.delete-button:hover{background-color:#da190b}.modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:#2c2c2c;color:#f0f0f0;padding:30px;border-radius:8px;width:600px;max-height:90vh;overflow-y:auto;position:relative;border:1px solid #444}.close-button{position:absolute;top:15px;right:15px;background:none;border:none;font-size:24px;color:#f0f0f0;cursor:pointer}.modal-content h2{margin-top:0;margin-bottom:30px;font-size:24px;text-align:center}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:700}.form-group input[type=text],.form-group input[type=number],.form-group textarea,.mission-inputs select,.mission-inputs input,.mission-group textarea{width:100%;padding:12px;border:1px solid #555;border-radius:4px;background-color:#3a3a3a;color:#f0f0f0;box-sizing:border-box}.form-group input::placeholder,.mission-inputs input::placeholder,.mission-group textarea::placeholder{color:#888}.form-group input[type=file]{color:#f0f0f0}.form-group input[type=file]::file-selector-button{padding:10px 15px;margin-right:10px;background-color:#555;color:#f0f0f0;border:none;border-radius:4px;cursor:pointer}.mission-group{border:1px solid #444;padding:20px;margin-bottom:20px;border-radius:4px;position:relative}.mission-group h4{margin-top:0;margin-bottom:15px;color:#0af}.mission-inputs{display:flex;gap:10px;margin-bottom:10px}.mission-inputs select,.mission-inputs input{flex:1}.mission-group textarea{min-height:80px;resize:vertical}.remove-mission-button{position:absolute;top:15px;right:15px;background-color:#d9534f;color:#fff;border:none;border-radius:50%;width:25px;height:25px;font-size:16px;font-weight:700;cursor:pointer;display:flex;justify-content:center;align-items:center}.add-mission-button{display:flex;align-items:center;justify-content:center;margin:20px auto;background-color:#007bff;color:#fff;border:none;border-radius:50%;width:40px;height:40px;font-size:28px;font-weight:700;cursor:pointer}.form-actions{text-align:center;margin-top:30px}.submit-button{padding:12px 30px;background-color:#28a745;color:#fff;border:none;border-radius:4px;font-size:18px;cursor:pointer;width:100%}.submit-button:hover{background-color:#218838}.confirm-modal-content{background-color:#2c2c2c;color:#f0f0f0;padding:30px 40px;border-radius:8px;width:400px;text-align:center;border:1px solid #444}.confirm-modal-content p{margin:0 0 25px;font-size:18px}.confirm-modal-actions{display:flex;justify-content:center;gap:20px}.confirm-modal-actions button{padding:10px 30px;border:none;border-radius:4px;font-size:16px;cursor:pointer}.confirm-button{background-color:#d9534f;color:#fff}.cancel-button{background-color:#6c757d;color:#fff}.detail-modal-content{background-color:#2c2c2c;color:#f0f0f0;padding:30px;border-radius:8px;width:600px;max-width:90%;max-height:90vh;overflow-y:auto;position:relative;border:1px solid #444}.detail-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #444}.detail-modal-header h2{margin:0;font-size:22px}.detail-modal-actions .icon-button{background:none;border:none;color:#f0f0f0;font-size:20px;cursor:pointer;margin-left:15px}.detail-modal-body .detail-item{margin-bottom:15px;font-size:16px}.detail-modal-body .detail-item strong{margin-right:10px;color:#0af}.badge-image{max-width:50px;max-height:50px;vertical-align:middle;margin-left:10px;border-radius:4px}.missions-container{margin-top:20px;padding:15px;border:1px solid #444;border-radius:4px;max-height:300px;overflow-y:auto}.mission-item{padding:15px 0}.mission-item:not(:last-child){border-bottom:1px solid #444}.mission-header{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-weight:700}.mission-number{color:#0af}.mission-category{font-size:14px;color:#aaa}.mission-title{flex-grow:1}.mission-reward{color:#28a745;font-weight:700}.mission-content{margin:0;padding-left:10px;color:#ccc;font-size:14px}.detail-modal-footer{text-align:center;margin-top:30px}.close-action-button{padding:10px 40px;background-color:#6c757d;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer}.close-action-button:hover{background-color:#5a6268}.edit-form label{display:block;margin-bottom:5px;color:#bbb}.edit-form input[type=text],.edit-form input[type=number],.edit-form textarea,.edit-form select{width:100%;padding:8px;border-radius:4px;border:1px solid #555;background-color:#333;color:#fff;margin-bottom:10px}.edit-form input[type=file]{margin-bottom:10px}.edit-form .mission-group{background-color:#383838;border-color:#555;padding:10px;border-radius:4px;margin-bottom:15px}.submit-button{background-color:#007bff;color:#fff;border:none;padding:10px 40px;border-radius:4px;cursor:pointer;font-size:16px}.submit-button:hover{background-color:#0056b3}.challenge-container{padding:20px;background-color:#f9f9f9}.challenge-title{font-size:24px;font-weight:700;margin-bottom:20px}.challenge-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.challenge-search-filter{display:flex;align-items:center}.challenge-filter{margin-right:10px;padding:8px;border-radius:4px;border:1px solid #ccc}.challenge-search-input{padding:8px;border-radius:4px;border:1px solid #ccc;margin-right:5px}.challenge-search-button{padding:8px 12px;border-radius:4px;border:none;background-color:#007bff;color:#fff;cursor:pointer}.challenge-create-button{padding:10px 15px;border-radius:4px;border:none;background-color:#28a745;color:#fff;cursor:pointer;font-size:16px}.challenge-sort{margin-bottom:20px}.challenge-sort label{margin-right:20px}.challenge-table{width:100%;border-collapse:collapse;background-color:#fff}.challenge-table th,.challenge-table td{border:1px solid #ddd;padding:12px;text-align:center}.challenge-table th{background-color:#f2f2f2;font-weight:700}.challenge-pagination{display:flex;justify-content:center;margin-top:20px}.mission-history-container{padding:20px;background-color:#f9f9f9}.mission-history-title{font-size:24px;font-weight:700;margin-bottom:20px}.controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.sort-options label{margin-right:15px;cursor:pointer}.search-bar{display:flex;gap:10px}.search-bar select,.search-bar input{padding:8px;border:1px solid #ddd;border-radius:4px}.search-bar button{padding:8px 15px;background-color:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer}.search-bar button:hover{background-color:#0056b3}.status-ready{color:#ffc107;font-weight:700}.status-success{color:#28a745;font-weight:700}.status-fail{color:#dc3545;font-weight:700}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}#root{width:100%;height:100vh;margin:0;padding:0}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:#d3d3d3;position:relative}.login-box{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:40px;min-width:400px}.login-title{text-align:center;font-size:48px;font-weight:700;margin:0 0 30px;color:#000}.login-form{border:2px solid #000;border-radius:8px;padding:30px;position:relative}.form-header{position:absolute;top:-15px;left:20px;background-color:#fff;padding:0 10px;font-size:16px;font-weight:500}.input-group{margin-bottom:20px}.password-group{position:relative}.input-field{width:100%;padding:12px;border:2px solid #ccc;border-radius:4px;font-size:14px;box-sizing:border-box;outline:none}.input-field:focus{border-color:#666}.password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;font-size:18px;padding:5px}.login-button{width:100%;padding:12px;background-color:#e0e0e0;border:1px solid #ccc;border-radius:4px;font-size:16px;font-weight:500;cursor:pointer;margin-top:10px}.login-button:hover{background-color:#d0d0d0}.error-popup{position:fixed;left:50px;bottom:100px;background-color:#fff;border:2px dashed #ff0000;border-radius:4px;padding:20px;min-width:200px;box-shadow:0 2px 10px #0003}.error-message{margin-bottom:15px;font-size:14px;line-height:1.5;color:#333}.error-confirm{display:block;margin:0 auto;padding:8px 30px;background-color:#f0f0f0;border:1px solid #ccc;border-radius:4px;cursor:pointer;font-size:14px}.error-confirm:hover{background-color:#e0e0e0}
