@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@200..800&display=swap');@tailwind base;
@tailwind components;
@tailwind utilities;

:root {
  --foreground-rgb: 0, 0, 0;
  --background-start-rgb: 214, 219, 220;
  --background-end-rgb: 255, 255, 255;
  line-height: 1.5;

  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  margin: 0;
  color: rgb(var(--foreground-rgb));
  background: linear-gradient(
      to bottom,
      transparent,
      rgb(var(--background-end-rgb))
    )
    rgb(var(--background-start-rgb));
}

a {
  color: #56b2bb;
  transition: color 0.15s ease;
}

a:hover {
  color: rgb(60, 124, 130) !important;
}

.light {
  background: #fff !important;
  color-scheme: light;
}

.dark {
  background: #0a0f22 !important;
  color-scheme: dark;
}

::-webkit-scrollbar {
  width: 7px;
  height: 7px;
  color: #56b2bb;
}

::-webkit-scrollbar-track {
  box-shadow: inset 50px 50px 50px rgb(246, 244, 244);
  border-radius: 10px;
}

::-webkit-scrollbar-thumb {
  background: #56b2bb;
  background: linear-gradient(0deg, rgba(255, 255, 255, 0.4) 0%, rgba(255, 255, 255, 0.4) 100%), var(--light-solid-color-primary-500-base, #56b2bb);
  border-radius: 10px;
}

/* Class for drop area in e-commerce settings */
.drop_area {
  width: 100%;
  height: 50px;
  border: 1px dashed #56b2bb;
  border-radius: 5px;
  opacity: 1;
  transition: all 0.2s ease-in-out;
  padding: 10px;
}

.drop_hide {
  opacity: 0;
  height: 0px;
  transition: all 0.2s ease-in-out;
}

/* Add smooth transitions for theme changes */
* {
  transition: background-color 0.3s ease, color 0.3s ease;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* .shadow {
  position: absolute;
  z-index: 6;
  content: "";
  background: #314455;
  opacity: 0.5;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  clip-path: polygon(91% 0, 100% 50%, 91% 100%, 91% 100%, 99% 50%, 91% 0);
} */


.shadow {
  position: absolute;
  z-index: 6;
  content: "";
  background: #314455;
  opacity: 0.5;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  clip-path: polygon(92% 0, 100% 50%, 92% 100%, 91% 100%, 97% 50%, 91% 0);
}

.custom-range {
  -webkit-appearance: none;
}

.custom-range::-webkit-slider-runnable-track {
  height: 4px;
  background: grey;
  border-radius: 2px;
}

.custom-range::-webkit-slider-thumb {
  -webkit-appearance: none;
  height: 10px;
  width: 10px;
  border-radius: 50%;
  background: #fff;
  cursor: pointer;
  margin-top: -3px; /* to align with the track */
}

.custom-range::-moz-range-track {
  height: 4px;
  background: grey;
  border-radius: 2px;
}

.custom-range::-moz-range-thumb {
  height: 10px;
  width: 10px;
  border-radius: 50%;
  background: #fff;
  cursor: pointer;
}
  

  /* Reset & Base */

  body,
  html,
  .dashboard {
    margin: 0;
    padding: 0;
    height: 100vh;
    font-family: "Manrope", "Manrope Placeholder", sans-serif;
    color: #fff;
    display: grid;
    /* flex-direction: column; */
    grid-template-rows: auto 1fr;
    background: #0d0d0d;
    /* Neutral background */
    position: relative;
    overflow: hidden;
  }

  .dashboard ::-webkit-scrollbar {
    width: 7px;
    height: 7px;
    color: #0d0d0d;
  }

  .dashboard  ::-webkit-scrollbar-track {
    box-shadow: inset 50px 50px 50px rgb(15, 14, 14);
    border-radius: 10px;
  }

  .dashboard ::-webkit-scrollbar-thumb {
    background: #0d0d0d;
    background: linear-gradient(0deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.1) 100%), var(--light-solid-color-primary-500-base, #0d0d0d);
    border-radius: 10px;
  }

  /* Navbar */

  .navbar {
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 24px;
    /* background: rgba(0, 0, 0, 0.1); */
    background: transparent;
    /* backdrop-filter: blur(6px); */
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.6);
    border-bottom: 0.5px solid #3333339c;
  }

  .logo {
    font-weight: bold;
    font-size: 18px;
  }

  /* Segmented Buttons */

  .nav-center {
    border: 2px solid #333;
    border-radius: 5px;

    overflow: hidden;
  }

  .nav-btn {
    background: #333; /* default grey for inactive */
    color: #aaa;
    border: none;
    padding: 6px 18px;
    font-size: 12px;
    cursor: pointer;
    transition: all 0.3s ease;
    font-family: "Manrope", "Manrope Placeholder", sans-serif;
    min-width: 140px;
  }

  .nav-btn:not(:last-child) {
    border-right: 2px solid #222;
  }

  .nav-btn:hover {
    background: #444; /* slightly lighter on hover */
    color: #fff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  }

  .nav-btn.active {
    background: #0d0d0d; /* solid black for active */
    color: #fff;
  }

  .profile {
    width: 40px;
    height: 40px;
    background: transparent;
    border-radius: 50%;
    border: 1px solid #666;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 12px;
  }

  /* Main Layout */

  .main {
    display: grid;
    grid-template-columns: 60% 40%;
    /* flex: 1; */
    overflow: hidden;
    background: rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
  }

  @media (max-width: 1024px) {
    .main {
      grid-template-columns: 55% 45%;
    }
  }

  @media (max-width: 768px) {
    .main {
      grid-template-columns: 100%;
      grid-template-rows: 1fr auto;
    }
    
    .right {
      display: none;
    }
  }

  .left-container {
  height: 100%;
  width: 100%;
  display: flex;
  /* box-shadow: 0 6px 16px rgba(0, 0, 0, 0.6); */
  transition: all 0.3s ease;
  max-width: 100%;
  overflow: hidden;
}

  /* Left Chat Panel */

  .left {
  /* flex: 3; */
  width: 100%;
  display: grid;
  grid-template-rows: 1fr auto;
  /* border-radius: 12px; */
  padding: 20px 0;
  position: relative;
  overflow: hidden; /* important so background doesn't leak */
  background: url("https://th.bing.com/th/id/R.b907a8eee7c099a8ec6a479c85d3396c?rik=H0QqEuivcxrqjw&riu=http%3a%2f%2fnew-drop.com%2fassets%2fdroow%2fimg%2fwe-are.jpg&ehk=a6yfaa3BHH%2fJvYJmyH4Pn6UhP41s%2furdQKCckKZyRh8%3d&risl=&pid=ImgRaw&r=0");
            background-size: cover;
            background-repeat: no-repeat;

  /* background:  radial-gradient(
          circle at 30% 30%, 
          rgba(0, 128, 0, 0.15),   
          transparent 30%
        ),
        radial-gradient(
          circle at 50% 20%, 
          rgba(255, 165, 0, 0.1), 
          transparent 40%
        ),
        radial-gradient(
          circle at 70% 30%, 
          rgba(128, 0, 128, 0.15), 
          transparent 50%
        );  */

        /* backdrop-filter: blur(20px); */
  /* background-size: 200% 200%; */
  /* animation: gradientShift 10s ease infinite; */
}

  .left::before {
  content: '';
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          background: #050505c7;
          /* z-index: -1; */
}

  /* Chat */

  .chat {
  /* flex: 1; */
  height: 100%;
  width: 100%;
  overflow: auto;
  display: flex;
  flex-direction: column;
  gap: 16px;
  position: relative;
  z-index: 1;
  padding: 20px 20px;
  scroll-behavior: smooth;
}

  .chat-bubble {
  padding: 14px 18px;
  max-width: 70%;
  font-size: 14px;
  margin-bottom: 4px;
  transition: transform 0.2s ease;
}

  .chat-bubble.ai, .chat-bubble.user {
  align-self: flex-start;
  font-family: "Manrope", "Manrope Placeholder", sans-serif;
  font-size: 14px;
  font-weight: 400;
  position: relative;
  color: #e0e0e0;
  padding-left: 0;
  margin-left: 15px;
  border-left: 3px solid rgba(250, 79, 0, 0.5);
  padding-left: 15px;
  max-width: 100%;
}

  .chat > div {
  display: flex;
  flex-direction: column;
}

  .chat-bubble.user {
  /* background: linear-gradient(145deg, #333333, #222222); */
  /* color: #ffffff; */
  display: flex;
  /* align-self: flex-end; */
  /* font-family: "Manrope", "Manrope Placeholder", sans-serif; */
  /* font-size: 16px; */
  /* font-weight: 400; */
  /* border-radius: 12px; */
  /* border-bottom-right-radius: 4px; */
  /* position: relative; */
  /* box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3); */
  border-left: none;
  border-right: 3px solid rgba(88, 52, 218, 0.5);
  margin-left: auto;
  margin-right: 15px;
  max-width: 70%;
  width: auto;
}

  /* 
.chat-bubble.user::before {
  content: '';
  position: absolute;
  bottom: 0;
  right: -8px;
  width: 16px;
  height: 16px;
  background: linear-gradient(145deg, #333333, #222222);
  clip-path: polygon(0 100%, 0 0, 100% 100%);
  z-index: -1;
} */

  /* Address suggestions */

  .suggestions-container {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 10px;
  margin-left: 35px;
  margin-bottom: 14px;
  align-self: flex-start;
  animation: fadeIn 0.3s ease-in-out;
}

  @keyframes fadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

  /* Loading indicator */

  .chat-bubble.ai:last-child:has(span.loading-dots) {
  background: transparent;
}

  .loading-dots {
  display: inline-flex;
  align-items: center;
  height: 20px;
  margin-left: 5px;
}

  .loading-dots span {
  width: 6px;
  height: 6px;
  margin: 0 2px;
  background-color: #a9a9a9;
  border-radius: 50%;
  display: inline-block;
  animation: loadingDots 1.4s infinite ease-in-out both;
}

  .loading-dots span:nth-child(1) {
  animation-delay: -0.32s;
}

  .loading-dots span:nth-child(2) {
  animation-delay: -0.16s;
}

  @keyframes loadingDots {
  0%, 80%, 100% { 
    transform: scale(0);
    opacity: 0.5;
  }
  40% { 
    transform: scale(1); 
    opacity: 1;
  }
}

  .suggestion-btn {
  background: rgba(51, 51, 51, 0.4);
  color: #fff;
  border: 1px solid rgba(169, 169, 169, 0.3);
  border-radius: 5px;
  padding: 8px 16px;
  font-size: 13px;
  cursor: pointer;
  transition: all 0.3s ease;
  /* max-width: 300px; */
  white-space: nowrap;
  overflow: hidden;
  /* text-overflow: ellipsis; */
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  font-family: "Manrope", "Manrope Placeholder", sans-serif;
}

  .suggestion-btn:hover {
  background: #444;
  /* transform: translateY(-2px); */
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.3);
  border-color: #666;
}

  .chat-input {
  display: flex;
  margin-top: 16px;
  position: relative;
  z-index: 1;
  /* background: rgba(17, 17, 17, 0.7); */
  /* padding: 12px; */
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  border-radius: 10px;
  border: 1px solid #444;
  background: #0d0d0d;
  margin: 0 20px;
}

  .chat-input input {
  flex: 1;
  padding: 12px 16px;
  border: none;
  outline: none;
  background-color: transparent;
  font-family: "Manrope", "Manrope Placeholder", sans-serif !important;
  color: #fff;
  font-size: 15px;
  transition: all 0.3s ease;
  outline: none;
  /* margin: 20px; */
}

  .chat-input input:focus {
  border-color: #444;
  box-shadow: 0 0 0 2px rgba(68, 68, 68, 0.2);
}

  .chat-input button {
  margin-left: 10px;
  margin: 5px;
  padding: 0px 10px;
  border: none;
  border-radius: 5px;
  background: linear-gradient(145deg, #333333, #222222);
  color: #ffffff;
  cursor: pointer;
  font-family: "Manrope", "Manrope Placeholder", sans-serif;
  font-size: 18px;
  font-weight: 500;
  transition: all 0.3s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

  .chat-input button:hover {
  background: linear-gradient(145deg, #444444, #333333);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
}

  /* Right Panel */

  .right {
  flex: 2;

  display: grid;
  /* grid-template-rows: 70% 30%; */
  /* gap: 12px; */
}

  .no-data {
  color: #888;
  font-style: italic;
  text-align: center;
  padding: 20px;
  width: 100%;
}

  .top,
.bottom {
  flex: 1;
  /* border-radius: 12px; */
  background: transparent;
  /* padding: 20px; */
  border-left: 0.5px solid #3333339c;
}

  .bottom {
  padding: 20px 0;
  overflow: auto;
}

  .top .box {
  background: #1a1a1a;
  border-radius: 12px;
  width: 100%;
  height: calc(100% - 40px);
  margin-top: 12px;
  /* box-shadow: inset 0 2px 6px rgba(0, 0, 0, 0.5); */
}

  .details-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

  .details-table tr {
  border: 1px solid #333;
}

  .details-table tr td:first-child {
  border: 1px solid #333;
}

  .details-table td {
  padding: 8px 10px;
}

  .details-table .key {
  color: #aaa;
  font-weight: 500;
  width: 40%; /* label column narrower */
}

  .details-table .value {
  font-weight: 400;
  color: #fff;
}

  /* Report Modal Styles */

  .report-modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.7);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1000;
}

  .report-modal {
  background-color: #0d0d0d;
  border-radius: 8px;
  width: auto;
  max-width: 1000px;
  max-height: 80vh;
  display: flex;
  flex-direction: column;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
}

  .report-modal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px 20px;
  border-bottom: 1px solid #333;
}

  .report-modal-header h2 {
  margin: 0;
  color: #a9a9a9;
  font-size: 1.2rem;
}

  .close-modal {
  background: none;
  border: none;
  font-size: 1.5rem;
  color: #a9a9a9;
  cursor: pointer;
}

  .close-modal:hover {
  color: #fff;
}

  .report-modal-content {
  padding: 20px;
  overflow-y: auto;
  flex-grow: 1;
  color:rgb(148, 146, 146);
}

  .report-modal-content pre {
  white-space: pre-wrap;
  word-break: break-word;
  font-family: monospace;
  font-size: 0.9rem;
  line-height: 1.5;
}

  /* Report Button Styles */

  .report-buttons {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 15px;
  padding: 10px;
}

  .report-btn {
  background-color: #1e1e1e;
  color: #a9a9a9;
  border: 1px solid #333;
  border-radius: 4px;
  padding: 8px 12px;
  font-size: 0.9rem;
  cursor: pointer;
  transition: all 0.2s ease;
}

  .report-btn:hover {
  background-color: #333;
  color: #fff;
}

  .no-map-message {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  /* background-color: #1a1a1a; */
  border-bottom: 1px solid #3333339c;
  color: #666;
  font-size: 16px;
  text-align: center;
  padding: 20px;
  /* border-radius: 12px; */
}

  .welcome-message-container {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 20px;
  z-index: 1;
  overflow: hidden;

  /* background: radial-gradient(circle at center, 
                rgba(85, 107, 47, 0.3),    
                rgba(139, 69, 19, 0.2),    
                rgba(75, 0, 130, 0.3),     
                black 80%), url("./Cc2PWtVxiDrzLtySBWUTfls6ma4.svg");
            background-size: 200% 200%;
            animation: gradientShift 10s ease infinite;
          
            background-size: cover;
  background-repeat: no-repeat;
  background-position: center; */

  /* background: radial-gradient(
      circle at 20% 20%,
      rgb(189 174 76 / 30%),
      rgb(151 93 24 / 20%),
      rgb(90 7 90 / 15%),
      rgb(0 0 0)
    ),
    radial-gradient(circle at 10% 90%, rgb(33 56 33 / 40%), transparent 70%),
    url("./Cc2PWtVxiDrzLtySBWUTfls6ma4.svg");

  background-size: cover;
  background-repeat: no-repeat;
  background-position: center; */

  /* background: radial-gradient(
            circle at 40% 50%,
            rgba(0, 128, 0, 0.3),
            transparent 70%
          ),
          radial-gradient(
            circle at 60% 45%,
            rgba(255, 165, 0, 0.25),
             transparent 70%
          ),
          radial-gradient(
            circle at 50% 40%,
            rgba(128, 0, 128, 0.25),
             transparent 75%
          ),
        url("./Cc2PWtVxiDrzLtySBWUTfls6ma4.svg"); 
        background-repeat: no-repeat;
        background-size: cover; */

  background:  radial-gradient(
          circle at 30% 30%, 
          rgba(0, 128, 0, 0.15),   
          transparent 30%
        ),
        radial-gradient(
          circle at 50% 20%, 
          rgba(255, 165, 0, 0.1), 
          transparent 40%
        ),
        radial-gradient(
          circle at 70% 30%, 
          rgba(128, 0, 128, 0.15), 
          transparent 50%
        ); 
}

  .welcome-message {
  /* max-width: 600px; */
  text-align: center;
  /* background-color: white; */
  padding: 2rem;
  border-radius: 12px;
  position: relative;
  /* overflow-y: hidden; */
  /* box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1); */
}

  /* .left0 {
  position: relative;
  width: 100%;
  height: 100%;
}
.left0::after{
   background: url("./Cc2PWtVxiDrzLtySBWUTfls6ma4.svg");
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center;
        transform: scale(2);
        z-index: -1;
} */

  .welcome-message::after {
  content: '';
  position: absolute;
  
  background: url("/assets/Cc2PWtVxiDrzLtySBWUTfls6ma4-9TCd9dMY.svg");
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center;
        transform: scale(2);
        z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

  .welcome-message p {
  font-size: 15px;
  color: #adadad;
  margin: 20px 0;
}

  .welcome-message-container div {
  font-size: 36px;
}

  /* button */

  .startchat {
  border-radius: 800px;
  border: none;
  padding: 10px 40px;
  cursor: pointer;
  font-family: "Manrope", "Manrope Placeholder", sans-serif;
  font-size: 16px;
  background-color: #0d0d0d;
  border: 1px solid #3333339c;
  color: white;
  margin-top: 20px;
  font-weight: 500;
  transition: all 0.3s ease;
}

  .startchat:hover {
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.7); /* darker glow */
  background-color: #111111; /* subtle dark lift */
}

  .gradient-background {
  /* background: radial-gradient(
    circle at 30% 30%, 
    rgba(0, 128, 0, 0.15),   
    transparent 30%
  ),
  radial-gradient(
    circle at 50% 20%, 
    rgba(255, 165, 0, 0.1), 
    transparent 40%
  ),
  radial-gradient(
    circle at 70% 30%, 
    rgba(128, 0, 128, 0.15), 
    transparent 50%
  ); */
            /* position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%; */
            /* background: radial-gradient(circle at center, 
                rgba(85, 107, 47, 0.3),    
                rgba(139, 69, 19, 0.2),    
                rgba(75, 0, 130, 0.3),     
                black 80%); */
            /* background: url("https://wallpaperaccess.com/full/1255605.jpg"); */
            /* background: url("https://rechtsanwalt-book.de/wp-content/uploads/2021/10/jan-philipp-book-artikel-strafanzeige-it-strafrecht.jpg"); */
            /* background: url("https://th.bing.com/th/id/R.b907a8eee7c099a8ec6a479c85d3396c?rik=H0QqEuivcxrqjw&riu=http%3a%2f%2fnew-drop.com%2fassets%2fdroow%2fimg%2fwe-are.jpg&ehk=a6yfaa3BHH%2fJvYJmyH4Pn6UhP41s%2furdQKCckKZyRh8%3d&risl=&pid=ImgRaw&r=0"); */
            background: url("https://th.bing.com/th/id/R.b907a8eee7c099a8ec6a479c85d3396c?rik=H0QqEuivcxrqjw&riu=http%3a%2f%2fnew-drop.com%2fassets%2fdroow%2fimg%2fwe-are.jpg&ehk=a6yfaa3BHH%2fJvYJmyH4Pn6UhP41s%2furdQKCckKZyRh8%3d&risl=&pid=ImgRaw&r=0");
            background-size: cover;
            background-repeat: no-repeat;
            /* background-position: 0px 80px; */
            /* background-position: center; */
            /* animation: gradientShift 10s ease infinite; */
            z-index: 1;
        }

  /* .gradient-background::after{
          content: '';
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          background: #0a0909b2;
          z-index: -1;
        } */

  /* @keyframes gradientShift {
            0% {background-position: 0% 50%;}
            50% {background-position: 100% 50%;}
            100% {background-position: 0% 50%;}
        } */

  /* From Uiverse.io by kennyotsu */

  .card {
  /* color used to softly clip top and bottom of the .words container */
  /* --bg-color: #111; */
  background-color: #0d0d0d;
  /* padding: 1rem 2rem; */
  border-radius: 5px;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px;
  /* width: auto; */
  /* justify-content: space-between; */
}

  .loader {
  /* color: rgb(124, 124, 124); */
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-size: 16px;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  height: 20px;
  padding: 10px 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-radius: 8px;
}

  .words {
  overflow: hidden;
  position: relative;
  width: auto;
}

  .words::after {
  content: "";
  position: absolute;
  inset: 0;
  /* background: linear-gradient(
    var(--bg-color) 10%,
    transparent 30%,
    transparent 70%,
    var(--bg-color) 90%
  ); */
  z-index: 20;
}

  .word {
  display: block;
  height: 100%;
  padding-left: 6px;
  color: rgba(250, 79, 0, 0.9);
  animation: spin_4991 4s infinite;
}

  @keyframes spin_4991 {
  10% {
    -webkit-transform: translateY(-102%);
    transform: translateY(-102%);
  }

  25% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }

  35% {
    -webkit-transform: translateY(-202%);
    transform: translateY(-202%);
  }

  50% {
    -webkit-transform: translateY(-200%);
    transform: translateY(-200%);
  }

  60% {
    -webkit-transform: translateY(-302%);
    transform: translateY(-302%);
  }

  75% {
    -webkit-transform: translateY(-300%);
    transform: translateY(-300%);
  }

  85% {
    -webkit-transform: translateY(-402%);
    transform: translateY(-402%);
  }

  100% {
    -webkit-transform: translateY(-400%);
    transform: translateY(-400%);
  }
}

  /* Center container */

  .loader-container {
  display: flex;
  flex-direction: column;
  gap: 0.2rem; /* same as gap-4 */
  width: 100%;
  align-items: center;
  justify-content: center;
  margin-left: 10px;
}

  /* Outer spinning circle */

  .outer-circle {
  width: 30px;              /* 20 * 0.25rem = 5rem */
  height: 30px;
  border: 2px solid transparent;
  border-top-color: rgba(250, 79, 0, 0.9); /* Tailwind text-blue-400 */
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  animation: spin 1.2s linear infinite;
  font-size: 2rem; /* text-4xl */
  color: #60a5fa;
}

  /* Inner spinning circle */

  .inner-circle {
  width: 25px;             /* 16 * 0.25rem = 4rem */
  height: 25px;
  border: 1.5px solid transparent;
  border-top-color: #fff; /* Tailwind text-red-400 */
  border-radius: 50%;
  animation: spin 1.2s linear infinite;
  font-size: 1.5rem; /* text-2xl */
  color: #f87171;
}

  /* Spin animation */

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

  .preview {
  background: rgba(250, 79, 0, 0.3);
  color: #fff;
}

  .preview:hover {
  
  background: rgba(250, 79, 0, 0.5);
}

  .mde-preview-content * {
  border-color: #3333339c !important;
  border-width: 1px !important
}

  .mde-header {
  display: none !important
}

  .react-mde-tabbed-layout {
  border:none !important
}

  /* From Uiverse.io by adamgiebl */

  .cssbuttons-io-button {
  color: #fff;
  background: rgba(250, 79, 0, 0.25);
  font-family: inherit;
  padding: 0.35em;
  padding-left: 1.2em;
  font-size: 12px;
  font-weight: 500;
  border-radius: 0.7em;
  border: 1px solid rgba(169, 169, 169, 0.3);
  letter-spacing: 0.05em;
  display: flex;
  align-items: center;
  box-shadow: inset 0 0 1.6em -0.6em #0d0d0d;
  overflow: hidden;
  position: relative;
  height: 2.8em;
  padding-right: 3.3em;
  cursor: pointer;
  padding-top: 15px;
  padding-bottom: 15px;
}

  .cssbuttons-io-button .icon {
  background: white;
  margin-left: 1em;
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 2.2em;
  width: 2.2em;
  border-radius: 0.7em;
  box-shadow: 0.1em 0.1em 0.6em 0.2em #0d0d0d;
  right: 0.3em;
  transition: all 0.3s;
}

  .cssbuttons-io-button:hover .icon {
  width: calc(100% - 0.6em);
}

  .cssbuttons-io-button .icon svg {
  width: 1.1em;
  transition: transform 0.3s;
  color: #7b52b9;
}

  .cssbuttons-io-button:hover .icon svg {
  transform: translateX(0.1em);
}

  .cssbuttons-io-button:active .icon {
  transform: scale(0.95);
}

  .disabled {
  color: rgb(75, 74, 74);
  background-color: rgba(5, 5, 5, 0.103);
  border: 1px solid rgb(46, 45, 45);
}.mde-header {
  flex-shrink: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  border-bottom: 1px solid #c8ccd0;
  border-radius: 2px 2px 0 0;
  background: #f9f9f9; }
  .mde-header .mde-tabs {
    display: flex;
    flex-direction: row; }
    .mde-header .mde-tabs button {
      border-radius: 2px;
      margin: 6px 3px;
      background-color: transparent;
      border: 1px solid transparent;
      cursor: pointer; }
      .mde-header .mde-tabs button:first-child {
        margin-left: 6px; }
      .mde-header .mde-tabs button.selected {
        border: 1px solid #c8ccd0; }
  .mde-header .svg-icon {
    width: 1em;
    height: 1em;
    display: inline-block;
    font-size: inherit;
    overflow: visible;
    vertical-align: -.125em; }
  .mde-header ul.mde-header-group {
    margin: 0;
    padding: 10px;
    list-style: none;
    display: flex;
    flex-wrap: nowrap; }
    .mde-header ul.mde-header-group.hidden {
      visibility: hidden; }
    .mde-header ul.mde-header-group li.mde-header-item {
      display: inline-block;
      position: relative;
      margin: 0 4px; }
      .mde-header ul.mde-header-group li.mde-header-item button {
        text-align: left;
        cursor: pointer;
        height: 22px;
        padding: 4px;
        margin: 0;
        border: none;
        background: none;
        color: #242729; }

@keyframes tooltip-appear {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
        .mde-header ul.mde-header-group li.mde-header-item button.tooltipped:hover::before {
          animation-name: tooltip-appear;
          animation-duration: 0.2s;
          animation-delay: 0.5s;
          animation-fill-mode: forwards;
          opacity: 0;
          position: absolute;
          z-index: 1000001;
          width: 0;
          height: 0;
          color: rgba(0, 0, 0, 0.8);
          pointer-events: none;
          content: "";
          border: 5px solid transparent;
          top: -5px;
          right: 50%;
          bottom: auto;
          margin-right: -5px;
          border-top-color: rgba(0, 0, 0, 0.8); }
        .mde-header ul.mde-header-group li.mde-header-item button.tooltipped:hover::after {
          animation-name: tooltip-appear;
          animation-duration: 0.2s;
          animation-delay: 0.5s;
          animation-fill-mode: forwards;
          font-size: 11px;
          opacity: 0;
          position: absolute;
          z-index: 1000000;
          padding: 5px 8px;
          color: #fff;
          pointer-events: none;
          content: attr(aria-label);
          background: rgba(0, 0, 0, 0.8);
          border-radius: 3px;
          right: 50%;
          bottom: 100%;
          transform: translateX(50%);
          margin-bottom: 5px;
          white-space: nowrap; }

.mde-textarea-wrapper {
  position: relative; }
  .mde-textarea-wrapper textarea.mde-text {
    width: 100%;
    border: 0;
    padding: 10px;
    vertical-align: top;
    resize: vertical;
    overflow-y: auto; }

.mde-preview .mde-preview-content {
  padding: 10px; }
  .mde-preview .mde-preview-content p, .mde-preview .mde-preview-content blockquote, .mde-preview .mde-preview-content ul, .mde-preview .mde-preview-content ol, .mde-preview .mde-preview-content dl, .mde-preview .mde-preview-content table, .mde-preview .mde-preview-content pre {
    margin-top: 0;
    margin-bottom: 16px; }
  .mde-preview .mde-preview-content h1, .mde-preview .mde-preview-content h2, .mde-preview .mde-preview-content h3 {
    margin-top: 24px;
    margin-bottom: 16px;
    font-weight: 600;
    line-height: 1.25;
    border-bottom: 1px solid #eee;
    padding-bottom: 0.3em; }
  .mde-preview .mde-preview-content h1 {
    font-size: 1.6em; }
  .mde-preview .mde-preview-content h2 {
    font-size: 1.4em; }
  .mde-preview .mde-preview-content h3 {
    font-size: 1.2em; }
  .mde-preview .mde-preview-content ul, .mde-preview .mde-preview-content ol {
    padding-left: 2em; }
  .mde-preview .mde-preview-content blockquote {
    margin-left: 0;
    padding: 0 1em;
    color: #777;
    border-left: 0.25em solid #ddd; }
    .mde-preview .mde-preview-content blockquote > :first-child {
      margin-top: 0; }
    .mde-preview .mde-preview-content blockquote > :last-child {
      margin-bottom: 0; }
  .mde-preview .mde-preview-content code {
    padding: 0.2em 0 0.2em 0;
    margin: 0;
    font-size: 90%;
    background-color: rgba(0, 0, 0, 0.04);
    border-radius: 3px; }
    .mde-preview .mde-preview-content code::before, .mde-preview .mde-preview-content code::after {
      letter-spacing: -0.2em;
      content: "\00a0"; }
  .mde-preview .mde-preview-content pre {
    padding: 16px;
    overflow: auto;
    font-size: 85%;
    line-height: 1.45;
    background-color: #f7f7f7;
    border-radius: 3px; }
    .mde-preview .mde-preview-content pre code {
      display: inline;
      padding: 0;
      margin: 0;
      overflow: visible;
      line-height: inherit;
      word-wrap: normal;
      background-color: transparent;
      border: 0; }
      .mde-preview .mde-preview-content pre code::before, .mde-preview .mde-preview-content pre code::after {
        content: none; }
    .mde-preview .mde-preview-content pre > code {
      padding: 0;
      margin: 0;
      font-size: 100%;
      word-break: normal;
      white-space: pre;
      background: transparent;
      border: 0; }
  .mde-preview .mde-preview-content a {
    color: #4078c0;
    text-decoration: none; }
    .mde-preview .mde-preview-content a:hover {
      text-decoration: underline; }
  .mde-preview .mde-preview-content > *:first-child {
    margin-top: 0 !important; }
  .mde-preview .mde-preview-content > *:last-child {
    margin-bottom: 0 !important; }
  .mde-preview .mde-preview-content::after {
    display: table;
    clear: both;
    content: ""; }
  .mde-preview .mde-preview-content table {
    display: block;
    width: 100%;
    border-spacing: 0;
    border-collapse: collapse; }
    .mde-preview .mde-preview-content table thead th {
      font-weight: bold; }
    .mde-preview .mde-preview-content table th, .mde-preview .mde-preview-content table td {
      padding: 6px 13px;
      border: 1px solid #c8ccd0; }

.react-mde {
  border: 1px solid #c8ccd0;
  border-radius: 2px; }
  .react-mde * {
    box-sizing: border-box; }
  .react-mde .invisible {
    display: none; }
  .react-mde .image-tip {
    user-select: none;
    display: flex !important;
    padding: 7px 10px;
    margin: 0;
    font-size: 13px;
    line-height: 16px;
    color: gray;
    background-color: #f9f9f9;
    border-top: 1px solid #c8ccd0;
    position: relative; }
    .react-mde .image-tip .image-input {
      min-height: 0;
      opacity: .01;
      width: 100% !important;
      position: absolute;
      top: 0;
      left: 0;
      padding: 5px;
      cursor: pointer; }

ul.mde-suggestions {
  position: absolute;
  min-width: 180px;
  padding: 0;
  margin: 20px 0 0;
  list-style: none;
  cursor: pointer;
  background: #fff;
  border: 1px solid #c8ccd0;
  border-radius: 3px;
  box-shadow: 0 1px 5px rgba(27, 31, 35, 0.15); }
  ul.mde-suggestions li {
    padding: 4px 8px;
    border-bottom: 1px solid #e1e4e8; }
    ul.mde-suggestions li:first-child {
      border-top-left-radius: 2px;
      border-top-right-radius: 2px; }
    ul.mde-suggestions li:last-child {
      border-bottom-right-radius: 2px;
      border-bottom-left-radius: 2px; }
    ul.mde-suggestions li:hover, ul.mde-suggestions li[aria-selected=true] {
      color: white;
      background-color: #0366d6; }
