/* 
 * Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license.
 * See LICENSE in the project root for license information.
 */
* {
    font-size:1.0em !important;
}

 html,
 body {
     width: 100%;
     height: 100%;
     margin: 0;
     padding: 0;
     background-color: #FFF;
     padding-bottom:200px;
 }

 h1 {
    font-size:1.4em !important;
 }

 h2 {
    font-size:1.3em !important;
 }
 
 ul {
     margin: 0;
     padding: 0;
     list-style:none;
 }

 #reportLi, #dataLi {
  display:none;
 }

 select, input {
  width:200px;
  padding:5px;
  font-size:1.05em;
  display:block;
  margin-bottom: 5px !important;
 }

 input {
    width:190px;
 }

 ul li {
  padding-top:3px;
 }

 .runBtn {
  padding:3px;
  color:#FFF;
  background-color: #163c5b;
  width:100%;
 }

 .dyanmicWidthBtn {
    width:auto;
    padding-left:10px;
    padding-right: 10px;
 }

 #runReportBtn {
  display:none;
 }

 #btnCont {
  width:90%;
  margin:auto auto;
  margin-top:40px;
 }

 #mbLogo {
  max-width:100%;
 }

 .ms-welcome__header {
    padding: 20px;
    padding-bottom: 10px;
    padding-top: 10px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    align-items: center;
 }

 .ms-welcome__main {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex: 1 0 0;
    flex: 1 0 0;
    padding: 10px 20px;
 }
 
 .ms-welcome__main > h2 {
     width: 100%;
     text-align: center;
 }
 
 .ms-welcome__features {
     list-style-type: none;
     margin-top: 10px;
 }

 .ms-firstrun-instructionstep__header {
   padding-left: 20px;
 }

 .ms-firstrun-instructionstep__welcome-body {
   padding-left: 20px;
 }

 .ms-firstrun-instructionstep__list {
   padding-left: 20px;
 }
 
 .ms-welcome__features.ms-List .ms-ListItem {
     padding-left: 20px;
     padding-bottom: 10px;
     display: -webkit-flex;
     display: flex;
 }
 
 .ms-welcome__features.ms-List .ms-ListItem > .ms-Icon {
     margin-right: 10px;
 }
 
 .ms-welcome__action.ms-Button--hero {
     margin-top: 30px;
 }
 
.ms-Button.ms-Button--hero .ms-Button-label {
  color: #0078d7;
}

.ms-Button.ms-Button--hero:hover .ms-Button-label,
.ms-Button.ms-Button--hero:focus .ms-Button-label{
  color: #000;
  cursor: pointer;
}

b {
    font-weight: bold;
}

.objectCenter {
    margin:auto auto;
    display:block;
}

/* Tabs */
.tabs {
  display: flex;
  gap: 4px;
  border-bottom: 1px solid #e1e1e1;
  margin: 8px 8px 0 8px;
}

.tab-button {
  appearance: none;
  background: transparent;
  border: none;
  padding: 8px 12px;
  cursor: pointer;
  font: inherit;
  color: inherit;
  border-bottom: 2px solid transparent;
}

.tab-button.is-active {
  border-bottom-color: #0078d4; /* Fluent primary */
  font-weight: 600;
  outline:none;
}

.tab-panel {
  padding: 8px;
  outline:none;
  float:left;
}

.tab-panel[hidden] {
  display: none !important;
}

/* Optional: simple spacing for the upload form */
.form-row {
  margin: 8px 0;
  float:left;
  width:100%;
}

.drop-zone {
  border: 2px dashed #a6a6a6;
  border-radius: 4px;
  padding: 16px;
  text-align: center;
  color: #323130;
  background: #fafafa;
  cursor: pointer;
  user-select: none;
}

.drop-zone--over {
  border-color: #605E5C;
  background: #f3f2f1;
}

.file-list {
  list-style: none;
  padding-left: 0;
  margin: 8px 0 0 0;
}

.file-list li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 6px 8px;
  border: 1px solid #e1dfdd;
  border-radius: 2px;
  margin-bottom: 6px;
  background: #fff;
}

.file-list button.remove-file {
  background: transparent;
  border: none;
  color: #a80000;
  cursor: pointer;
  padding: 4px 6px;
}

/* Modal base */
.loading-modal {
  position: fixed;
  inset: 0;
  display: none; /* toggled via [data-open="true"] */
  align-items: center;
  justify-content: center;
  z-index: 9999;
}

.loading-modal[data-open="true"] {
  display: flex;
}

/* Backdrop */
.loading-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.35);
}

/* Dialog */
.loading-modal__dialog {
  position: relative;
  z-index: 1;
  min-width: 260px;
  max-width: 90vw;
  padding: 20px 24px;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(0,0,0,0.2);
  display: grid;
  grid-auto-flow: row;
  row-gap: 12px;
  text-align: center;
  outline: none;
}

/* Spinner */
.loading-modal__spinner {
  width: 56px;
  height: 56px;
  margin: 0 auto 4px;
  border-radius: 50%;
  border: 5px solid #e6e6e6;
  border-top-color: #0078d4; /* Office blue */
  animation: lm-spin 1s linear infinite;
}

@keyframes lm-spin {
  to { transform: rotate(360deg); }
}

/* Text */
.loading-modal__text {
  font: 14px/1.4 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
  color: #1a1a1a;
}

#mappingAddSection {
  padding: 10px;
  border: 1px solid #e1dfdd00;
  border-radius: 4px;
  background: #333;
  text-align: center; 
  display:flow-root;
  color: #fff;
}

#mappingMessage {
  background-color: #fff;
  padding: 10px 0 10px 0;
}

#mappingAddSection.hidden {
  display: none;
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
  .loading-modal__spinner { animation: none; border-top-color: #0078d4; }
}

/* Mapping Results Styles */
.mapping-results-list {
  list-style: none;
  padding-left: 0;
  margin: 8px 0 0 0;
}

.mapping-results-list li {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: 12px 8px;
  border: 1px solid #e1dfdd;
  border-radius: 4px;
  margin-bottom: 8px;
  background: #fff;
}

.mapping-result-content {
  display: flex;
  flex-direction: column;
  padding: 12px 8px;
  border: 1px solid #e1dfdd;
  border-radius: 4px;
  margin-bottom: 8px;
  background: #fff;
}

.mapping-result-info {
  flex: 1;
  font-size: 0.9em;
  line-height: 1.4;
  margin-bottom: 12px;
}

.mapping-result-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-start;
}

.mapping-result-actions button {
  padding: 4px 12px;
  font-size: 0.8em;
  min-width: 60px;
  color: #FFF;
  border: none;
  border-radius: 4px;
  cursor: pointer;
}

.mapping-result-actions button.edit-btn {
  background-color: #001c31;
}

.mapping-result-actions button.delete-btn {
  background-color: #441200;
}

.mapping-result-actions button:hover {
  opacity: 0.8;
}

.inlineBtn {
  display: inline-block;
}

button {
  border-radius: 4px;
  border:1px solid #FFF;
}

#mappingResultsList {
  max-height: 500px;
  overflow-y: auto;
}

