@font-face {
    font-family: 'Cyberpunk';
    src: url('data:font/woff2;charset=utf-8;base64,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') format('woff2'),
        url('data:font/woff;charset=utf-8;base64,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') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Iomanoid';
    src: url('data:font/woff2;charset=utf-8;base64,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') format('woff2'),
        url('data:font/woff;charset=utf-8;base64,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') format('woff');

    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
  font-family: 'Simpsonfont';
  src: url(/assets/simpsonfont-fa09a75e1726b5b0948cd3c0b0a8cfbba967481ee477954bebaeb28e02856826.woff2) format('woff2'),
       url(/assets/simpsonfont-48af02c8fb875bfb752b8fe0653cdc493538f5bdaecc32c620cee80692b7eff6.woff) format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

/* AI GIFs Page Styles - Duplicated from auth styles with unique class names */

body.ai-gifs-page {
  background: #000;
 
  margin: 0;
  padding: 0;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  color: #fff;
  position: relative;
}

.ai-gifs-container {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 500px;
  margin: 20px;
  padding: 30px;
  background: rgba(0, 0, 0, 0.85);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 4px;
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.5);
  margin-bottom: 20px;
  line-height: 1.6;
  text-align: center;
  text-wrap: balance;
}

.ai-gifs-container:last-of-type {
  margin-bottom: 0;
}

.ai-gifs-header-section {
  text-align: center;
  margin-bottom: 30px;
}

.ai-gifs-header-section h2 {
  font-size: 24px;
  line-height: 1.5;
  text-wrap: balance;
  color: #fff;
  font-family: 'Space Mono', monospace;
  letter-spacing: -0.02em;
}

.ai-gifs-header-section h1 {
  font-size: 28px;
  color: #fff;
  font-family: 'Space Mono', monospace;
  letter-spacing: -0.02em;
}

.ai-gifs-field {
  margin-bottom: 20px;
}

.ai-gifs-field label {
  display: block;
  margin-bottom: 8px;
  color: rgba(255, 255, 255, 0.7);
  font-size: 14px;
  font-family: 'Space Mono', monospace;
}

.ai-gifs-field input[type="email"],
.ai-gifs-field input[type="text"],
.ai-gifs-field input[type="password"] {
  width: 100%;
  padding: 12px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 4px;
  color: #fff;
  font-family: 'Space Mono', monospace;
  font-size: 16px;
  transition: all 0.2s ease;
}

.ai-gifs-field input[type="email"]:focus,
.ai-gifs-field input[type="password"]:focus {
  outline: none;
  border-color: rgba(255, 255, 255, 0.3);
  background: rgba(255, 255, 255, 0.1);
}

.ai-gifs-actions input[type="submit"] {
  width: 100%;
  padding: 12px;
  background: #FF912D;
  color: #000;
  border: none;
  border-radius: 4px;
  font-family: 'Space Mono', monospace;
  font-size: 16px;
  font-weight: bold;
  cursor: pointer;
  transition: all 0.2s ease;
}

.ai-gifs-actions input[type="submit"]:hover {
  background: #ff9f47;
}

.ai-gifs-links {
  margin-top: 20px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 20px;
}

.ai-gifs-links a {
  color: #fff;
  text-decoration: none;
  font-size: 14px;
  font-family: 'Space Mono', monospace;
  transition: all 0.2s ease;
  display: inline-block;
  padding-bottom: 2px;
  background-color: rgba(255, 255, 255, 0.18);
  padding: 8px 12px;
  border-radius: 5px;
}

.ai-gifs-links a:hover {
  color: #ff9f47;
}

/* Page inner container */
.ai-gifs-page-inner {
  width: 100%;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding: 30px 20px;
  position: relative;
}

/* Back to home link */
.ai-gifs-back-home {
  display: flex;
  align-items: center;
  gap: 8px;
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  font-family: 'Space Mono', monospace;
  font-size: 13px;
  transition: all 0.2s ease;
  z-index: 10;
}

.ai-gifs-back-home svg {
  width: 16px;
  height: 16px;
}

.ai-gifs-back-home:hover {
  color: #fff;
}

/* Mobile styles */
@media (max-width: 768px) {
  .ai-gifs-container {
    margin: 10px;
    padding: 20px;
  }
  
  .ai-gifs-page-inner {
    padding: 20px 0;
  }
  
  .ai-gifs-back-home {
    top: 10px;
    left: 10px;
  }
}

/* Additional helper classes */
.ai-gifs-small {
  color: rgba(255, 255, 255, 0.5);
  text-decoration: none;
  font-size: 12px;
  font-family: 'Space Mono', monospace;
}

.ai-gifs-password-hint {
  text-align: left;
  margin-top: 8px;
}

/* Error styles */
.ai-gifs-error-explanation {
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid rgba(248, 81, 73, 0.2);
  border-radius: 4px;
  background-color: rgba(248, 81, 73, 0.1);
  color: #f85149;
  font-family: 'Space Mono', monospace;
}

.ai-gifs-error-explanation h2 {
  font-size: 14px;
  margin-bottom: 10px;
  font-weight: normal;
  color: #f85149;
  line-height: 1.4;
}

.ai-gifs-error-explanation ul {
  margin: 0;
  padding-left: 20px;
  list-style-type: none;
}

.ai-gifs-error-explanation ul li {
  font-size: 13px;
  margin-bottom: 5px;
  position: relative;
}

.ai-gifs-error-explanation ul li:before {
  content: "•";
  position: absolute;
  left: -15px;
  color: rgba(248, 81, 73, 0.5);
}

/* Current avatar styles */
.ai-gifs-current-avatar {
  text-align: center;
  margin: 20px 0;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   gap: 10px;
}

.ai-gifs-avatar-preview {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  object-fit: cover;
  margin-bottom: 15px;
  border: 3px solid rgba(255, 255, 255, 0.2);
}

.ai-gifs-remove-avatar-button {
  background: rgba(248, 81, 73, 0.2);
  color: #f85149;
  border: 1px solid rgba(248, 81, 73, 0.3);
  padding: 8px 16px;
  border-radius: 4px;
  font-family: 'Space Mono', monospace;
  font-size: 14px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.ai-gifs-remove-avatar-button:hover {
  background: rgba(248, 81, 73, 0.3);
  border-color: rgba(248, 81, 73, 0.5);
} 


#ai-gifs-avatar {
   position: relative;
 }

 #ai-gifs-avatar svg {
   z-index: 1;
   position: relative;
 }

 

 #ai-gifs-header {
   display: flex;
   gap: 20px;
   margin-top: 20px;
 }

 #ai-gifs-stats {
   position: relative;
 }

 .stats-text {
   position: absolute;
   width: 100%;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   text-align: center;
   color: white;
   z-index: 10;
 }

 .stats-number {
   font-size: 19px;
   line-height: 1;
   margin-bottom: 4px;
   line-height: 1;
 }

 .stats-label {
   font-size: 11px;
   line-height: 1;
   font-weight: 600;
 }

 #ai-gifs-stats svg,
 #ai-gifs-avatar svg {
   height: 67px;
   width: auto;
 }

 #ai-gifs-banner {
   width: 100%;
   display: flex;
   align-items: center;
   justify-content: center;
 }
 #ai-gifs-banner svg {
   width: 100%;
   height: auto;
   max-width: 360px;
 }

  

 /* Desktop/Mobile version visibility */
 #ai-gifs-banner .desktop-only {
   display: block;
 }

 #ai-gifs-banner .mobile-only {
   display: none;
 }

 body.ai-gifs-page {
   background-image: none !important;
 }

 .upload-face-link {
   color: #FF912D;
   text-decoration: none;
   font-weight: 600;
   transition: all 0.2s ease;
 }

 .upload-face-link:hover {
   color: #ff9f47;
   text-decoration: underline;
 }

 /* AI GIF Gallery Styles */
 .ai-gifs-gallery {
   max-width: 100vw;
   margin: 40px 0 0;
   width: 100vw;
   margin-left: calc(50% - 50vw);
   padding: 0 20px;
 }

 .gifs-grid {
   column-count: 5;
   column-gap: 10px;
   margin-top: 20px;
 }

 .gif-item {
   background: rgb(41 41 41 / 5%);
   border: 1px solid rgba(255,255,255,0.1);
   border-radius: 8px;
    
   transition: all 0.3s ease;
   margin-bottom: 10px;
   break-inside: avoid;
   position: relative;
   cursor: pointer;
   /* Aspect ratio container for consistent heights */
   aspect-ratio: 1 / 1;
 }
 

 .gif-item:hover {
   border-color: #FF912D;
   transform: translateY(-2px);
   box-shadow: 0 4px 12px rgba(255,145,45,0.3);
 }

 .gif-item img {
   width: 100%;
   height: 100%;
   display: block;
   opacity: 1;
   border-radius: 8px;
   transition: opacity 0.3s ease;
   /* Use cover to eliminate black bars */
   object-fit: cover;
   /* Center the image within the container */
   object-position: center;

 }
 

 /* Loading spinner */
 .gif-loading-spinner {
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   width: 40px;
   height: 40px;
   display: block;
   z-index: 10;
 }

 .gif-item.full-loaded .gif-loading-spinner {
   display: none;
 }

 .spinner {
   width: 100%;
   height: 100%;
   border: 3px solid rgba(255,255,255,0.1);
   border-top-color: #FF912D;
   border-radius: 50%;
   animation: spin 1s linear infinite;
 }

 .gifs-grid {
   margin-top: 0 !important;
}

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

 /* No blur effect needed since we're only showing thumbnails until expansion */
 .gif-thumbnail {
   transition: filter 0.3s ease;
 }

 /* Alternative aspect ratios for variety */
 .gif-item:nth-child(3n) {
   aspect-ratio: 4 / 5;
 }

 .gif-item:nth-child(5n) {
   aspect-ratio: 3 / 4;
 }

 .gif-item:nth-child(7n) {
   aspect-ratio: 5 / 4;
 }

 /* Expanded GIF state */
 .gif-item.expanded {
   aspect-ratio: auto !important;
   column-span: all;
   width: 100%;
   max-width: 600px;
   margin: 20px auto;
   cursor: zoom-out;
   position: relative;
   background: rgba(70, 70, 70, 0.3); /* Gray background */
   padding: 15px 15px 70px; /* Extra bottom padding for buttons */
   border-radius: 12px; /* Slightly larger radius for expanded state */
   transition: none !important; /* Remove transition for expanded state */
 }

 .gif-item.expanded img {
   object-fit: contain;
   max-height: 80vh;
   border-radius: 8px; /* Round the image corners */
 }

 .gif-item.expanded:hover {
   transform: none;
   border: 1px solid rgba(255,255,255,0.1);
   box-shadow: none;
 }

 /* Action buttons for expanded GIFs - Inside the gray area at bottom */
 .gif-actions {
   position: absolute;
   right: auto;
   top: auto;
   bottom: 15px;
   left: 50%;
   transform: translateX(-50%);
   display: flex;
   flex-direction: row;
   gap: 10px;
 }

 .gif-action-btn {
   background: rgba(0, 0, 0, 0.8);
   border: 1px solid rgba(255, 255, 255, 0.2);
   color: white;
   padding: 10px 16px;
   border-radius: 8px;
   cursor: pointer;
   display: flex;
   align-items: center;
   gap: 8px;
   font-family: 'Space Mono', monospace;
   font-size: 14px;
   transition: all 0.2s ease;
   white-space: nowrap;
 }

 .gif-action-btn:hover {
   background: rgba(0, 0, 0, 0.9);
   border-color: #FF912D;
   color: #FF912D;
 }

 .gif-action-btn.success {
   background: rgba(0, 255, 106, 0.2);
   border-color: #00ff6a;
   color: #00ff6a;
 }

 .gif-action-btn.error {
   background: rgba(248, 81, 73, 0.2);
   border-color: #f85149;
   color: #f85149;
 }

 .gif-action-btn svg {
   width: 16px;
   height: 16px;
 }

 @media (max-width: 1200px) {
  .gifs-grid {
    column-count: 4;
  }
  .gif-item.expanded {
    max-width: 500px;
  }
}

 @media (max-width: 900px) {
   .gifs-grid {
     column-count: 3;
   }
   .gif-item.expanded {
     max-width: 400px;
   }
 }

 @media (max-width: 600px) {
   .gifs-grid {
     column-count: 2;
     column-gap: 8px;
   }
   .gif-item {
     margin-bottom: 8px;
   }
     .gif-item.expanded {
    max-width: calc(100vw - 20px);
    margin: 10px auto;
  }
   .gif-item.expanded img {
     max-height: 60vh;
   }
   .ai-gifs-gallery {
     padding: 0 10px;
   }
   
   /* Smaller buttons on mobile */
   .gif-action-btn {
     padding: 8px 12px;
     font-size: 12px;
   }
   
   .gif-action-btn svg {
     width: 14px;
     height: 14px;
   }
 }

 
@media (max-width: 700px) {
    #ai-gifs-banner {
      width: unset;
    }

    #ai-gifs-banner svg {
       height: 9.2svw;
       max-width: unset;
    }
    
    /* Hide desktop version on mobile */
    #ai-gifs-banner .desktop-only {
      display: none;
    }
    
    /* Show mobile version on mobile */
    #ai-gifs-banner .mobile-only {
      display: block;
    }

#ai-gifs-stats svg, #ai-gifs-avatar svg {
   height: 9.2svw;
}

div#ai-gifs-stats .stats-label {
   font-size: 1.5svw;
}

div#ai-gifs-stats .stats-number {
   font-size: 2.8svw;
}

#ai-gifs-header {
   gap: 3svw;
   width: 100%;
   align-items: center;
   justify-content: center;
}
.ai-gifs-back-home {
   font-size: 12px;
}

.ai-gifs-back-home svg {
   width: 14px;
   height: auto;
}

#ai-gifs-header {
   margin-top: 18px;
}
.ai-gifs-gallery {
   margin-top: 20px;
}

}

@media (max-width: 500px) {
   #ai-gifs-banner svg {
      height: 11.2svw;
   }

   #ai-gifs-stats svg, #ai-gifs-avatar svg {
      height: 11.2svw;
   }
}

.ai-gifs-page svg {
  vertical-align: bottom;
}

 

.ai-gifs-avatar-gear {
  position: absolute;
  left: 0;
  width: 100%;
  top: 0;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

#ai-gifs-avatar .ai-gifs-avatar-gear svg {
  width: 38%;
  height: auto;
}

/* Progress banner styles */
#generation-progress-banner {
  position: fixed;
  bottom: 0;
  margin: 0;
  border-bottom: 0;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
 
 
.generation-progress-banner {
  background: rgb(0 40 17 / 90%);
  border: 1px solid rgba(0, 255, 106, 0.3);
  border-radius: 8px;
  padding: 12px 20px;
  margin: 20px auto;
  max-width: 800px;
  animation: fadeIn 0.3s ease-in;
}

.progress-content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
  flex-wrap: wrap;
}

.spinner-small {
  width: 20px;
  height: 20px;
  border: 2px solid rgba(255, 255, 255, 0.2);
  border-top: 2px solid #00ff6a;
  border-radius: 50%;
  animation: spin 1s linear infinite;
}

.progress-text {
  color: rgba(255, 255, 255, 0.9);
  font-size: 14px;
}

.progress-text strong {
  color: #00ff6a;
  font-weight: 600;
}

@media (max-width: 700px) {
  .spinner-small {
    width: 12px;
    height: 12px;
  }
  
  .progress-text {
    font-size: 12px;
  }
}

.refresh-button {
  background: rgba(0, 255, 106, 0.2);
  color: #00ff6a;
  text-decoration: none;
  padding: 4px 12px;
  border-radius: 4px;
  font-size: 13px;
  font-weight: 600;
  transition: all 0.2s ease;
  border: 1px solid rgba(0, 255, 106, 0.3);
}

.refresh-button:hover {
  background: rgba(0, 255, 106, 0.3);
  border-color: #00ff6a;
}

.upload-face-link, .refresh-link {
  color: #00ff6a;
  text-decoration: none;
  font-weight: bold;
  transition: color 0.2s ease;
}

.upload-face-link:hover, .refresh-link:hover {
  color: #2aff7e;
  text-decoration: underline;
}

.no-gifs-message {
  animation: fadeIn 0.5s ease-in;
}

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

/* AI GIF Confirmation Prompt */
.ai-gif-confirmation-prompt {
  max-width: 600px;
  margin: 60px auto;
  padding: 40px;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  text-align: center;
}

.ai-gif-confirmation-prompt h2 {
  color: white;
  font-size: 28px;
  margin-bottom: 16px;
  font-weight: 600;
}

.ai-gif-confirmation-prompt p {
  color: rgba(255, 255, 255, 0.8);
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 24px;
}

.ai-gif-confirmation-prompt p.confirmation-question {
  font-size: 18px;
  font-weight: 500;
  margin-top: 24px;
  color: white;
}

.preview-gif-container {
  display: flex;
  justify-content: center;
  margin: 32px 0;
}

.preview-gif-container .gif-item.preview {
  width: 300px;
  height: 300px;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}

.confirmation-buttons {
  display: flex;
  gap: 16px;
  justify-content: center;
  align-items: center;
  margin-top: 32px;
}

.confirm-button {
  background: #00d084;
  color: white;
  border: none;
  padding: 16px 32px;
  font-size: 15px;
  font-weight: 600;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.confirm-button:hover {
  background: #00b872;
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0, 208, 132, 0.3);
}

.confirm-button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.try-different-photo {
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  font-size: 14px;
  transition: color 0.2s ease;
}

.try-different-photo:hover {
  color: white;
  text-decoration: underline;
}

/* Reset limit notice */
.reset-limit-notice {
  margin-top: 12px;
  text-align: center;
}

.reset-limit-notice small {
  color: rgba(255, 255, 255, 0.5);
  font-size: 14px;
  font-style: italic;
}

.preview-gif-container .gif-item.preview {
  width: 100%;
}
body.auth-page {
  background: #000;
  background-image: 
    linear-gradient(rgba(255, 255, 255, .12) 1px, transparent 1px), 
    linear-gradient(90deg, rgba(255, 255, 255, .12) 1px, transparent 1px);
  background-size: 2em 2em;
  background-position: 0 0;
  image-rendering: crisp-edges; /* For Firefox */
  image-rendering: pixelated; /* For Chrome/Safari */
  margin: 0;
  padding: 0;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #fff;
  position: relative;
}
 
.auth-container {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 500px;
  margin: 20px;
  padding: 30px;
  background: rgba(0, 0, 0, 0.85);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 4px;
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.5);
  margin-bottom: 20px;
}

.auth-container:last-of-type {
  margin-bottom: 0;
}

.auth-header {
  text-align: center;
  margin-bottom: 30px;
}

.auth-header h2 {
  font-size: 24px;
  line-height: 1.5;
  text-wrap: balance;
  color: #fff;
  font-family: 'Space Mono', monospace;
  letter-spacing: -0.02em;
}

.auth-header h1 {
  font-size: 28px;
  color: #fff;
  font-family: 'Space Mono', monospace;
  letter-spacing: -0.02em;
}

.field {
  margin-bottom: 20px;
}

.field label {
  display: block;
  margin-bottom: 8px;
  color: rgba(255, 255, 255, 0.7);
  font-size: 14px;
  font-family: 'Space Mono', monospace;
}

.field input[type="email"],
.field input[type="text"],
.field input[type="password"] {
  width: 100%;
  padding: 12px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 4px;
  color: #fff;
  font-family: 'Space Mono', monospace;
  font-size: 16px;
  transition: all 0.2s ease;
}

.field input[type="email"]:focus,
.field input[type="password"]:focus {
  outline: none;
  border-color: rgba(255, 255, 255, 0.3);
  background: rgba(255, 255, 255, 0.1);
}

.actions input[type="submit"] {
  width: 100%;
  padding: 12px;
  background: #00ff6a;
  color: #000;
  border: none;
  border-radius: 4px;
  font-family: 'Space Mono', monospace;
  font-size: 16px;
  font-weight: bold;
  cursor: pointer;
  transition: all 0.2s ease;
}

.actions input[type="submit"]:hover {
  background: #2aff7e;
}

.auth-links {
  margin-top: 20px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 20px;
}

.auth-links a {
  color: #fff;
  text-decoration: none;
  font-size: 14px;
  font-family: 'Space Mono', monospace;
  transition: all 0.2s ease;
  display: inline-block;
  /* border-bottom: 1px solid rgba(255, 255, 255, .4); */
  padding-bottom: 2px;
  background-color: rgba(255, 255, 255, 0.18);
  padding: 8px 12px;
  border-radius: 5px;
}

.auth-links a:hover {
  color: #00ff6a;
}

.field input[type="checkbox"] {
  margin-right: 8px;
}

.field input[type="checkbox"] + label {
  display: inline;
  color: rgba(255, 255, 255, 0.7);
}
 

/* For the remember me checkbox */
.field input[type="checkbox"] {
  margin-right: 8px;
}

/* For error messages */
#error_explanation {
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid rgba(248, 81, 73, 0.2);
  border-radius: 4px;
  background-color: rgba(248, 81, 73, 0.1);
  color: #f85149;
  font-family: 'Space Mono', monospace;
}

#error_explanation h2 {
  font-size: 14px;
  margin-bottom: 10px;
  font-weight: normal;
  color: #f85149;
  line-height: 1.4;
}

#error_explanation ul {
  margin: 0;
  padding-left: 20px;
  list-style-type: none;
}

#error_explanation ul li {
  font-size: 13px;
  margin-bottom: 5px;
  position: relative;
}

#error_explanation ul li:before {
  content: "•";
  position: absolute;
  left: -15px;
  color: rgba(248, 81, 73, 0.5);
}

/* Small helper text */
.password-hint {
  text-align: left;
  margin-top: 8px;
}

.small {
  color: rgba(255, 255, 255, 0.5);
  text-decoration: none;
  font-size: 14px;
  transition: all 0.2s ease;
  display: inline-block;
}

.forgot-password {
  text-align: left;
  margin-top: 8px;
}

.forgot-password a {
  color: rgba(255, 255, 255, 0.5);
  text-decoration: none;
  font-size: 14px;
  transition: all 0.2s ease;
}

.forgot-password a:hover {
  color: rgba(255, 255, 255, 0.8);
}

.auth-links .horizontal {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 7px;
  flex-direction: row;
}

.auth-links .horizontal .separator {
  color: rgba(255, 255, 255, 0.3);
}

.danger-container {
  border: 1px solid rgba(248, 81, 73, 0.2);
  
}

.danger-container .auth-header h2 {
  color: #f85149;
}

.danger-text {
  color: rgba(255, 255, 255, 0.7);
  font-size: 14px;
  line-height: 1.4;
  margin-bottom: 20px;
  text-align: center;
}

.delete-account-button {
  width: 100%;
  padding: 12px;
  background: transparent;
  color: #f85149;
  border: 1px solid rgba(248, 81, 73, 0.3);
  border-radius: 4px;
  font-family: 'Space Mono', monospace;
  font-size: 14px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.delete-account-button:hover {
  background: rgba(248, 81, 73, 0.1);
  border-color: rgba(248, 81, 73, 0.5);
}

.password-hint {
  margin-top: 4px;
  margin-bottom: 8px;
}

.password-hint .small {
  color: rgba(255, 255, 255, 0.5);
  font-size: 13px;
}

.field label {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.field + .field {
  margin-top: 24px;
}

.actions {
  margin-top: 32px;
}

.danger-container .auth-header {
   margin-bottom: 12px;
}
.danger-container .auth-header h2 {
  font-size: 18px;
  color: #f85149;
}

.back-to-home {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  font-size: 14px;
  font-family: 'Space Mono', monospace;
  margin-bottom: 0px;
  transition: color 0.2s ease;
}

.back-to-home:hover {
  color: rgba(255, 255, 255, 0.9);
}

.back-to-home svg {
  width: 16px;
  height: 16px;
}

.secondary-actions {
  margin-bottom: 30px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.logout-button {
  width: 100%;
  padding: 12px;
  background: transparent;
  color: rgba(255, 255, 255, 0.7);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 4px;
  font-family: 'Space Mono', monospace;
  font-size: 14px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.logout-button:hover {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 255, 255, 0.2);
  color: rgba(255, 255, 255, 0.9);
}

.auth-page-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 30px 20px 60px;
  width: 100%;
}

.pricing-details {
}

.pricing-details h3 {
  color: #fff;
  font-size: 18px;
  margin-bottom: 15px;
}

.pricing-details ul {
  list-style: none;
  padding: 0;
  margin: 20px 0 40px 0;
}

.pricing-details li {
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.4;
  margin-bottom: 10px;
  padding-left: 20px;
  position: relative;
  text-align: left;
}

.pricing-details li:before {
  content: "✓";
  position: absolute;
  left: 0;
  color: #00ff6a;
}

.price {
  font-size: 24px;
  color: #fff;
  text-align: center;
  font-weight: bold;
  margin-bottom: 20px;
}

#card-element {
  background: rgba(255, 255, 255, 0.05);
  padding: 12px;
  border-radius: 4px;
  margin-bottom: 20px;
  margin-top: 15px;
  color: white;
}

/* Ensure Stripe card element text is white */
.StripeElement {
  color: white !important;
}

.StripeElement--focus {
  border-color: rgba(255, 255, 255, 0.3);
}

#card-errors {
  color: #f85149;
  margin-bottom: 20px;
  font-size: 14px;
}
 

/* Renamed from cancel-subscription-button and made default style gray */
.membership-action-button {
  background: rgba(128, 128, 128, 0.1); /* Gray background */
  color: #808080; /* Gray text */
  border: 1px solid rgba(128, 128, 128, 0.2); /* Gray border */
  padding: 10px 20px;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.2s ease;
  margin-top: 20px;
  display: inline-block; /* Ensure buttons align properly if needed */
  text-align: center;
  font-weight: 500;
}

.membership-action-button:hover {
  background: rgba(128, 128, 128, 0.2);
  border-color: rgba(128, 128, 128, 0.3);
}

/* Modifier class for red buttons */
.membership-action-button.red {
  background: rgba(255, 65, 65, 0.1);
  color: #ff4141;
  border: 1px solid rgba(255, 65, 65, 0.2);
}

.membership-action-button.red:hover {
  background: rgba(255, 65, 65, 0.2);
  border-color: rgba(255, 65, 65, 0.3);
}

/* Modifier class for green buttons */
.membership-action-button.green {
  background: rgba(0, 255, 106, 0.1);
  color: #00ff6a;
  border: 1px solid rgba(0, 255, 106, 0.2);
}

.membership-action-button.green:hover {
  background: rgba(0, 255, 106, 0.2);
  border-color: rgba(0, 255, 106, 0.3);
}

.upgrade-button {
  display: inline-block;
  width: 100%;
  padding: 12px;
  background: #00ff6a;
  color: #000;
  border: none;
  border-radius: 4px;
  font-family: 'Space Mono', monospace;
  font-size: 16px;
  font-weight: bold;
  cursor: pointer;
  transition: all 0.2s ease;
  text-align: center;
  text-decoration: none;
  margin-top: 15px;
}

.upgrade-button:hover {
  background: #2aff7e;
}

.submit-button {
  display: inline-block;
  width: 100%;
  padding: 12px;
  background: #00ff6a;
  color: #000;
  border: none;
  border-radius: 4px;
  font-family: 'Space Mono', monospace;
  font-size: 16px;
  font-weight: normal;
  cursor: pointer;
  transition: all 0.2s ease;
  text-align: center;
  text-decoration: none;
  margin-top: 15px;
}

.submit-button:hover {
  background: #2aff7e;
}

.subscription-status {
  text-align: center;
 
}

.subscription-status .free-plan {
  color: red;
}


.subscription-status-backdrop {
 
}

.subscription-status h3 {
  margin-bottom: 15px;
  color: #fff;
}
 

.subscription-status.active h3 {
  color: #00ff6a;
}

.field select {
  width: 100%;
  padding: 12px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 4px;
  color: #fff;
  font-family: 'Space Mono', monospace;
  font-size: 16px;
  transition: all 0.2s ease;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 16px;
  padding-right: 40px;
}

.field select:focus {
  outline: none;
  border-color: rgba(255, 255, 255, 0.3);
  background-color: rgba(255, 255, 255, 0.1);
}

.field select option {
  background-color: #000;
  color: #fff;
}

.setting-hint {
  margin-top: 4px;
  color: rgba(255, 255, 255, 0.5);
  font-size: 13px;
  font-family: 'Space Mono', monospace;
}

 

.auth-container.auth-confirm-email ul.list-disc.list-inside {
  padding-left: 20px;
  list-style: disc;
  font-size: 75%;
  line-height: 1.2;
}

.auth-container.auth-confirm-email ul.list-disc.list-inside li:not(:last-child) {
  margin-bottom: 11px;
}


.auth-container.auth-confirm-email p {
  margin-bottom: 20px;
}

.auth-container.auth-confirm-email p.lol {
  font-size: 75%;
  opacity: 0.6;
}

.auth-container.auth-confirm-email p.mt-2 {
  margin-top: 20px;
}

.auth-container.auth-confirm-email {
  max-width: 500px;
  line-height: 1.4;
}

.auth-container.auth-confirm-email .help-section {
 display: none;
}

.auth-container.auth-confirm-email .auth-links {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding-top: 30px;
  margin-top: 30px;
}

.auth-container.auth-confirm-email p.mini {
  font-size: 87%;
  opacity: .9;
}

.auth-container.auth-confirm-email p.help {
  cursor: pointer;
  background: rgba(255,255,255,0.2);
  color: rgba(255,255,255,0.7);
  display: inline-block;
  border-radius: 3px;
  padding: 6px 12px;
  transition: all 0.2s ease;
}

.auth-container.auth-confirm-email p.help:hover {
  background: rgba(255,255,255,0.5);
}

.auth-container.auth-confirm-email .help-section {
  display: none;
  opacity: 0;
  transition: opacity 0.2s ease;
}

.auth-container.auth-confirm-email .help-section[style*="display: block"] {
  opacity: 1;
}

.auth-container.auth-confirm-email .help-section ul li { 
  color: #8f8f8f;
}

.auth-container.auth-confirm-email .help-section p:first-child {
  margin-bottom: 0;
}


.auth-container.auth-confirm-email .help-section p.mb-0 {
  margin-bottom: 0;
}
 
.auth-container.auth-confirm-email  .almost-green {
  color: #00ff59;
  text-shadow: 2px 0px 10px #30ff33;
  font-size: 120%;
}

.auth-container.auth-confirm-email  .almost-yellow {
  color: #00ff59;
  text-shadow: 2px 0px 10px #00ff59;
}

.auth-container.auth-confirm-email  .help-section form#new_user {
  margin-top: 12px;
}

.current-avatar img {
  max-width: 180px;
}


.auth-container h3.roast {
  line-height: 1.4;
  font-size: 80%;
  margin-top: 17px;
  opacity: .6;
  text-wrap: balance;
}

.oauth-buttons {
  margin: 20px 0;
  text-align: center;
}

.auth-container .oauth-account-info {
  text-align: center;
}

.auth-container .account-username {
  display: inline-block;
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 20px;
  padding: 8px 16px 11px;
  font-weight: bold;
  margin-top: 16px;
  text-decoration: none;
  color: white;
  transition: background-color 0.2s ease;
  border: 1px solid #fff;
   }

   .auth-container .account-username:hover {
  background-color: rgba(255, 255, 255, 0.2);
   }

   .auth-container .continue-button {
  width: 100%;
  border: 1px solid #fff;
  font-size: 16px;
  font-weight: normal;
      display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
 border-radius: 4px;
   padding: 10px;
   background-color: #000;
   color: #fff;
   cursor: pointer;
   font-weight: bold;
   }

   .auth-container svg.continue-button-logo {
  height: 21px;
  width: auto;
   }

   .auth-container .mini-auth-header {
  margin-bottom: 20px;
  font-size: 17px;
   }

   .auth-container div#email-form-container {
  border-top: 1px solid rgb(255 255 255 / 40%);
  padding-top: 30px;
  margin-top: 30px;
   }

   .auth-container .oauth-buttons {
  display: flex;
  flex-direction: column;
  gap: 16px;
   }

/* Avatar section styling */
.current-avatar {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 20px;
  padding: 15px;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.avatar-preview {
  max-width: 180px;
  max-height: 180px;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  margin-bottom: 15px;
}

.remove-avatar-button {
  background-color: rgba(248, 81, 73, 0.1);
  color: #f85149;
  border: 1px solid rgba(248, 81, 73, 0.3);
  border-radius: 4px;
  padding: 8px 16px;
  font-family: 'Space Mono', monospace;
  font-size: 14px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.remove-avatar-button:hover {
  background-color: rgba(248, 81, 73, 0.2);
  border-color: rgba(248, 81, 73, 0.5);
}

.profile-picture-field {
  margin-top: 10px;
}

/* Token Dashboard Styles */
.token-dashboard {
  text-align: center;
}

.token-stats {
  display: flex;
  gap: 15px;
  margin-bottom: 30px;
  justify-content: center;
}

.token-stat {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 8px;
  padding: 30px 60px;
  text-align: center;
  transition: all 0.2s ease;
}

.token-stat:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.2);
}

.token-stat h4 {
  color: rgba(255, 255, 255, 0.7);
  font-size: 14px;
  font-family: 'Space Mono', monospace;
  margin-bottom: 10px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.token-count {
  font-size: 32px;
  font-weight: bold;
  color: #fff;
  font-family: 'Space Mono', monospace;
  margin-bottom: 5px;
}

.token-stat small {
  color: rgba(255, 255, 255, 0.5);
  font-size: 12px;
  font-family: 'Space Mono', monospace;
}

.token-stat.highlight {
  background: rgba(0, 255, 106, 0.1);
  border-color: rgba(0, 255, 106, 0.3);
}

.token-stat.highlight .token-count {
  color: #00ff6a;
}

.token-purchase-form {
  margin-bottom: 20px;
}

.token-purchase-button {
  width: 100%;
  background: #00ff6a !important;
  color: #000 !important;
}

.token-purchase-button:hover {
  background: #2aff7e !important;
}

.token-info {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 4px;
  padding: 15px;
  margin-bottom: 20px;
}

.token-info p {
  margin: 0 0 10px;
  line-height: 1.4;
    color: gray;
    font-size: 14px;
    text-align: left;
}

.token-info p:last-child {
  margin-bottom: 0;
}

.link-button {
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  font-size: 14px;
  font-family: 'Space Mono', monospace;
  transition: all 0.2s ease;
  background-color: rgba(255, 255, 255, 0.05);
  padding: 8px 16px;
  border-radius: 4px;
  display: inline-block;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.link-button:hover {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.2);
}

.back-link {
  text-align: center;
  margin-top: 20px;
}

.back-link a {
  color: rgba(255, 255, 255, 0.6);
  text-decoration: none;
  font-size: 14px;
  font-family: 'Space Mono', monospace;
  transition: color 0.2s ease;
}

.back-link a:hover {
  color: rgba(255, 255, 255, 0.9);
}

/* Payment Method Update Section */
.payment-method-update-section {
  text-align: left;
}

.payment-method-info {
  color: rgba(255, 255, 255, 0.7);
  margin-bottom: 20px;
  font-size: 14px;
  line-height: 1.4;
  font-family: 'Space Mono', monospace;
}

.payment-method-update-section .form-row {
  margin-bottom: 20px;
}

.payment-method-update-section .form-row > label {
  display: block;
  margin-bottom: 20px;
  color: rgba(255, 255, 255, 0.7);
  font-size: 14px;
  font-family: 'Space Mono', monospace;
}

#payment-element-inline {
  background: rgba(255, 255, 255, 0.05);
  padding: 12px;
  border-radius: 4px;
  margin-top: 15px;
  margin-bottom: 20px;
}

#payment-message-inline {
  margin-top: 10px;
  font-size: 14px;
  font-family: 'Space Mono', monospace;
  min-height: 20px;
}

#payment-message-inline:not(:empty) {
  color: #f85149;
}

#update-payment-button {
  margin-top: 10px;
}

.current-payment-method {
  background: rgba(0, 255, 106, 0.1);
  border: 1px solid rgba(0, 255, 106, 0.3);
  border-radius: 4px;
  padding: 12px;
  margin-bottom: 15px;
}

.current-payment-method .payment-method-info {
  margin: 0;
  color: #00ff6a;
  font-weight: bold;
}

.avatar-upload {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 4px;
  padding: 10px;
  width: 100%;
  color: rgba(255, 255, 255, 0.7);
  font-family: 'Space Mono', monospace;
  margin-top: 8px;
}

.avatar-upload::-webkit-file-upload-button {
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 4px;
  color: white;
  padding: 8px 12px;
  margin-right: 10px;
  font-family: 'Space Mono', monospace;
  cursor: pointer;
  transition: all 0.2s ease;
}

.avatar-upload::-webkit-file-upload-button:hover {
  background: rgba(255, 255, 255, 0.2);
}

.avatar-upload::file-selector-button {
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 4px;
  color: white;
  padding: 8px 12px;
  margin-right: 10px;
  font-family: 'Space Mono', monospace;
  cursor: pointer;
  transition: all 0.2s ease;
}

.avatar-upload::file-selector-button:hover {
  background: rgba(255, 255, 255, 0.2);
}

.field.profile-picture-field label {
  display: block;
  margin-bottom: 8px;
  color: rgba(255, 255, 255, 0.7);
  font-size: 14px;
}

.field.profile-picture-field .small {
  display: block;
  margin-top: 8px;
  line-height: 1.4;
}

/* Google Auth Button */

.continue-google-logo {
  width: 18px;
  height: 18px;
}

.pricing-details h4 {
  font-size: 24px;
  text-align: center;
  margin-bottom: 16px;
  font-weight: 600;
}


.pricing-details  {
  font-size: 15px;
  line-height: 1.4;
   
}

.pricing-details h5 {
  font-size: 18px;
  text-align: left;
  margin-top: 30px;
}

.auth-container.has-h1-absolute {
  margin-top: 64px;
}

.auth-header h1 {
  font-size: 24px;
  width: 100%;
  position: relative;
  display: block;
  top: -70px;
  color: rgba(255,255,255,0.6);
}


.trial-offer {
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  margin-bottom: 32px;
  padding-bottom: 15px;
}

.trial-offer strong {
  font-weight: bold;
  color: #00ff6a;
}

.cancel-subscription-info {
  font-size: 14px;
  color: rgba(255, 255, 255, 0.7);
  margin-bottom: 15px;
  line-height: 1.4;
}

.churn-fighter-img {
  display: block;
  max-width: 200px; /* Adjust as needed */
  margin: 15px auto 15px; /* Center and add space */
  border-radius: 4px;
}

/* Styles for the pro pitch list items */
.pricing-details li .pitch-item-main {
  /* Main text style (mostly inherits from li) */
  display: block; /* Ensure it takes full width if needed */
}

.pricing-details li .pitch-item-sub {
  display: block; /* Makes it appear on a new line */
  font-size: 13px; /* Smaller font size */
  color: rgba(255, 255, 255, 0.6); /* Slightly dimmer color */
  margin-top: 4px; /* Add a little space above */
  padding-left: 15px; /* Indent the subtext */
}

/* Styles for mystery upcoming features */
@keyframes subtle-focus-shift {
  0% { filter: blur(5px); opacity: 0.7; } /* Increased min blur */
  50% { filter: blur(7px); opacity: 0.6; } /* Max blur remains */
  100% { filter: blur(5px); opacity: 0.7; } /* Increased min blur */
}

.mystery-feature {
  display: flex;
  align-items: baseline;
  position: relative;
}

.mystery-feature .pitch-item-main {
  animation: subtle-focus-shift 2.5s infinite ease-in-out;
  transition: filter 0.3s ease, opacity 0.3s ease;
  cursor: default;
  opacity: 0.8;
}

.mystery-feature:hover .pitch-item-main {
  animation-play-state: paused;
  filter: blur(2px);
  opacity: 0.8;
}

.coming-soon-tag {
  color: #00ff6a;
  font-weight: bold;
  font-size: 11px;
  margin-left: 10px;
  opacity: 0.9;
  animation: pulse-text 1.8s infinite ease-in-out;
}

@keyframes pulse-text {
  0% { opacity: 0.6; }
  50% { opacity: 1.0; }
  100% { opacity: 0.6; }
}

/* Style the mystery feature list item for layout */
.mystery-feature {
  display: flex;        /* Arrange children horizontally */
  align-items: baseline; /* Align text baselines */
  /* Inherits padding/margin/bullet from default li unless overridden */
}

/* Adjust main item within flex container */
.mystery-feature .pitch-item-main {
  /* Animation and base styles remain */
  animation: subtle-focus-shift 2.5s infinite ease-in-out;
  transition: filter 0.3s ease, opacity 0.3s ease;
  cursor: default;
}

.mystery-feature:hover .pitch-item-main {
  animation-play-state: paused;
  filter: blur(2px);
  opacity: 0.8;
}

/* Remove styles for the old sub-element if they still exist */
/* .mystery-feature .pitch-item-sub.coming-soon { ... } */

/* Style for the new Coming Soon tag */
.coming-soon-tag {
  color: #00ff6a;        /* Green color */
  font-weight: bold;
  font-size: 11px;       /* Slightly smaller */
  margin-left: 10px;     /* Space from the blurred text */
  flex-shrink: 0;      /* Prevent tag from shrinking */
  animation: pulse-text 1.8s infinite ease-in-out; /* Add pulse animation */
}

/* Ensure pulse-text keyframes are defined */
@keyframes pulse-text {
  0% { opacity: 0.6; }
  50% { opacity: 1.0; }
  100% { opacity: 0.6; }
}

/* Ensure blur keyframes are defined */
@keyframes subtle-focus-shift {
  0% { filter: blur(5px); opacity: 0.7; } /* Increased min blur */
  50% { filter: blur(7px); opacity: 0.6; } /* Max blur remains */
  100% { filter: blur(5px); opacity: 0.7; } /* Increased min blur */
}


form#payment-form .form-row > label {
  margin-bottom: 20px !important;
  display: block;
}

form#payment-form .TermsText {
  font-size: 12px !important;
}

/* Marquee for Account Page */
.auth-container .generic-marquee-header {
  overflow: hidden;
  padding: 0;
  border-bottom: none;
  position: relative; 
  top: 0;
  z-index: 3;
  display: flex;
  align-items: center;
  padding: 22px 0;
  font-weight: 300;
  margin-top: 20px;
  width: calc(100% + 40px);
  margin-left: -20px;
}

.auth-container .generic-marquee-header .marquee-container {
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
}

.auth-container .generic-marquee-header .marquee-content {
  display: inline-block;
  animation: marquee 60s linear infinite;
  padding: 0;
  white-space: nowrap;
}

.auth-container .generic-marquee-header .marquee-content .opaque-text {
  color: #ffffffba;
}

.auth-container .generic-marquee-header .marquee-content > span {
  display: inline-block;
  font-size: 17px;
  color: #fff;
  margin-right: 26px;
  position: relative;
}

.auth-container .generic-marquee-header .marquee-content > span::after {
  content: "";
  margin-left: 0;
}

/* Using existing marquee keyframes from onboarding_drawer.css, ensure that file is loaded if keyframes are not duplicated here */
/* @keyframes marquee { ... } */

p.key-pitch {
    font-size: 16px;
    color: #f0f0f0;
    margin-top: 20px;
}
/* Responsive adjustments for account page marquee */
@media (max-width: 768px) {
  .pricing-details h4 {
    font-size: 21px;
  }


p.key-pitch {
  font-size: 15px;
}
  .auth-container .generic-marquee-header {
    padding: 15px 0;
  }
  
  .auth-container .generic-marquee-header .marquee-content > span {
    font-size: 14px;
    margin-right: 20px;
  }
}
 

.token-info-yellow, 
.token-info-yellow * {
  color: #ffcc02;
}
/* Magic Prompt Dialog Styles */
.magic-prompt-dialog,
.result-dialog {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
}

.magic-prompt-dialog-content,
.result-dialog-content {
  background-color: white;
  padding: 20px;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  width: 100%;
  max-width: 600px;
  max-height: 80vh;
  overflow-y: auto;
}

.magic-prompt-dialog-content h3,
.result-dialog-content h3 {
  margin-top: 0;
  margin-bottom: 16px;
  font-size: 18px;
  font-weight: 600;
}

.magic-prompt-dialog-content p {
  margin-bottom: 10px;
  color: #555;
}

.magic-prompt-dialog-content textarea {
  width: 100%;
  padding: 10px;
  margin-bottom: 20px;
  border: 1px solid #ddd;
  border-radius: 4px;
  background-color: #f9f9f9;
  font-size: 14px;
  resize: vertical;
  font-family: inherit;
}

.magic-prompt-dialog-content textarea.error {
  border-color: #f44336;
  animation: shake 0.5s;
}

@keyframes shake {
  0%, 100% { transform: translateX(0); }
  10%, 30%, 50%, 70%, 90% { transform: translateX(-5px); }
  20%, 40%, 60%, 80% { transform: translateX(5px); }
}

.magic-prompt-dialog-content select {
  width: 100%;
  padding: 10px;
  margin-bottom: 20px;
  border: 1px solid #ddd;
  border-radius: 4px;
  background-color: #f9f9f9;
  font-size: 14px;
}

.dialog-buttons,
.result-dialog-buttons {
  display: flex;
  justify-content: flex-end;
  margin-top: 20px;
}

.dialog-buttons button,
.result-dialog-buttons button {
  padding: 8px 16px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  font-weight: 500;
  margin-left: 10px;
  transition: background-color 0.2s;
}

.dialog-buttons button:first-child,
.result-dialog-buttons button:first-child {
  background-color: #f0f0f0;
  color: #333;
}

.dialog-buttons button:last-child,
.copy-result-btn {
  background-color: #4a8cff;
  color: white;
}

.close-result-btn {
  background-color: #f0f0f0;
  color: #333;
}

.dialog-buttons button:hover,
.result-dialog-buttons button:hover {
  opacity: 0.9;
}

/* Result content styling */
.result-dialog-content > div {
  margin: 20px 0;
  white-space: pre-wrap;
  line-height: 1.5;
  font-size: 14px;
  background-color: #f9f9f9;
  padding: 15px;
  border-radius: 4px;
  border-left: 3px solid #4a8cff;
}

/* Styles for the generated image */
.result-image-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 15px 0;
  padding: 15px;
  background-color: #f9f9f9;
  border-radius: 4px;
}

.result-image {
  max-width: 100%;
  max-height: 400px;
  border-radius: 4px;
  margin-bottom: 15px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.add-to-canvas-btn {
  background-color: #4a8cff;
  color: white;
  border: none;
  border-radius: 4px;
  padding: 8px 16px;
  cursor: pointer;
  font-weight: 500;
  transition: background-color 0.2s;
}

.add-to-canvas-btn:hover {
  background-color: #3a7ced;
}

.copy-result-btn {
  background-color: #4a8cff;
  color: white;
  border: none;
  border-radius: 4px;
  padding: 8px 16px;
  margin-top: 10px;
  cursor: pointer;
  font-weight: 500;
  transition: background-color 0.2s;
  display: inline-block;
}

.copy-result-btn:hover {
  background-color: #3a7ced;
} 
/* Color Picker V2 Styles */
/* Standalone version with v2 class naming */

.color-picker-v2-container {
  position: absolute;
  overflow: hidden;
  background-color:rgb(241 241 241);
  border: 1px solid rgb(143 139 136 / 45%);
  border-radius: 12px;
  padding: 15px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease-out, transform 0.2s ease-out;
  z-index: 9999;
  color: #000;
  visibility: hidden;
  transform: translateY(10px);
}

.color-picker-v2-container.open {
  opacity: 1;
  pointer-events: auto !important;
  transform: translateY(0);
  visibility: visible;
   
}

/* Closing animation state keeps it on-screen to allow fade/slide, then CSS returns it off-screen */
.color-picker-v2-container.closing {
  opacity: 0;
  transform: translateY(10px);
  pointer-events: none;
  transition: opacity 0.2s ease-out, transform 0.2s ease-out;
}

.color-picker-v2-panel {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 250px;
}

.color-picker-v2-gradient {
  height: 150px;
  border-radius: 8px;
  cursor: crosshair;
  position: relative;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1);
}

.color-selector-v2-dot {
  position: absolute;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 2px solid white;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(0, 0, 0, 0.3);
  transform: translate(-50%, -50%);
  pointer-events: none;
  transition: border-color 0.2s ease-in-out;
  z-index: 2;
}

.color-picker-v2-slider {
  padding: 5px 0;
}

.hue-slider-v2 {
  width: 100%;
  height: 10px;
  -webkit-appearance: none;
  appearance: none;
  background: linear-gradient(to right,
      #ff0000, #ffff00, #00ff00, #00ffff, #0000ff, #ff00ff, #ff0000);
  border-radius: 5px;
  outline: none;
}

.hue-slider-v2::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 18px;
  height: 18px;
  background: white;
  border-radius: 50%;
  cursor: pointer;
  border: 2px solid rgba(0, 0, 0, 1);
   
}

.hue-slider-v2::-moz-range-thumb {
  width: 18px;
  height: 18px;
  background: white;
  border-radius: 50%;
  cursor: pointer;
  border: 2px solid rgba(0, 0, 0, 0.2);
   
}

.color-presets-v2 {
  width: 100%;
  position: relative;
}

 

.color-preset-v2s-inner {
  display: grid;
  grid-template-columns: repeat(9, 1fr);
   gap: 4px;
}


.color-preset-v2 {
  width: 100%;
  aspect-ratio: 1;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
 
}

.color-preset-v2-swatch {
  width: 100%;
  height: 100%;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.2);
 border-radius: 6px;
   
}
 
.color-preset-v2 {
   border-radius: 6px;
   position: relative;
   overflow: hidden;
}

.color-preset-v2.active  {
  border: 2px solid rgb(250 132 24);
 
   
}

.color-preset-v2.active .color-preset-v2-swatch {
   box-shadow: none;
   border-radius: 0px;
}

/* Color dropper preset styles */
.color-dropper-preset-v2 {
  background-color: #f0f0f0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.2);
}

.color-dropper-preset-v2 svg {
  width: 12px;
  height: 12px;
  opacity: 1;
}

.color-dropper-preset-v2:hover {
  background-color: #e0e0e0;
}

.color-dropper-preset-v2:active {
  background-color: #d0d0d0;
}

/* Mobile optimizations */
@media (max-width: 767px) {
  .color-picker-v2-container {
    padding: 12px;
  }

  .color-presets-v2 {
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
    overflow: hidden;
    width: calc(100% + 24px);
    margin-right: -12px;
    margin-left: -12px;
    position: relative;
    height: auto;
  }

  /* Add the shadow element styles */
  .color-presets-v2-shadow,
  .color-preset-v2s-shadow {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 30px;
    pointer-events: none;
    z-index: 2;
     
  }

  .color-presets-v2-shadow-right,
  .color-preset-v2s-shadow-right {
    right: 0;
    background: linear-gradient(to right, rgba(224, 224, 224, 0), rgba(224, 224, 224, 0.85));
  }

  .color-presets-v2-shadow-left,
  .color-preset-v2s-shadow-left {
    left: 0;
    background: linear-gradient(to left, rgba(224, 224, 224, 0), rgba(224, 224, 224, 0.85));
  }

  .color-presets-v2-inner::-webkit-scrollbar,
  .color-preset-v2s-inner::-webkit-scrollbar {
    display: none;
  }

  .color-presets-v2-inner,
  .color-preset-v2s-inner {
    -ms-overflow-style: none;
    /* Internet Explorer 10+ */
    scrollbar-width: none;
    /* Firefox */
    overflow-x: scroll;
    overflow-y: hidden;
    width: 100%;
    display: grid;
    grid-template-rows: repeat(3, 1fr);
    grid-auto-flow: column;
    gap: 4px;
    height: auto;
    padding: 4px 0;
  }

  .color-preset-v2 {
    min-width: 30px;
    width: 30px;
    height: 30px;
  }

  .color-preset-v2:last-child {
    margin-right: 15px;
  }

  .color-preset-v2:first-child,
  .color-preset-v2:nth-child(2),
  .color-preset-v2:nth-child(3) {
    margin-left: 15px;
  }

  .color-picker-v2-gradient {
   height: 110px;
  }


.color-picker-v2-panel {
 
   gap: 6px;
   width: 230px;
 }
}

/* Context Menu Container - Simple paste button */
#context-menu-container {
    display: none; /* Hidden by default, shown via JS */
}

/* Animation for context menu */
@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Apply animation to the context menu when it has the show class */
#context-menu-container.show {
    animation: slideIn 0.2s ease forwards;
}

#context-menu-container .canvas-control-button {
    margin-top: 6px;
}
#cropping-toolbar.hidden {
  display: none;
}

#cropping-toolbar {
  position: fixed;
  bottom: 0;
  width: auto;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 99999998; /* Same level as other toolbars */
  transform: translateY(100px) translateX(-50%);
  opacity: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
  pointer-events: none;
}

#cropping-toolbar.visible {
  transform: translateY(0) translateX(-50%);
  opacity: 1;
}

#cropping-toolbar button {
  background: transparent;
  border: none;
  color: #000;
  padding: 10px 11px;
  display: flex;
  align-items: center;
  justify-content: center;
}

#cropping-toolbar .cropping-label {
  background: rgba(156, 39, 176, 0.2); /* Purple background to match crop theme */
  padding: 6px 12px;
  border-radius: 8px;
  color: #9C27B0; /* Purple text */
  font-size: 15px;
  font-weight: 500;
  margin: 9px 0;
}

#cropping-toolbar-inner {
  pointer-events: auto;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 30px;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  backdrop-filter: brightness(100%) opacity(300%) blur(20px);
  border-radius: 18px;
  color: #000;
  padding: 0px 16px;
  margin-bottom: 60px;
  gap: 16px;
}

/* Close button styles */
#cropping-toolbar-inner #cropping-close-button {
  position: absolute;
  right: -52px;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 22px;
  padding: 0;
  transition: background-color 0.2s ease, border-color 0.2s ease;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  backdrop-filter: brightness(100%) opacity(300%) blur(20px);
  border-radius: 14px;
  color: #fff;
}

#cropping-toolbar-inner #cropping-close-button:hover {
  background-color: #9C27B0; /* Purple on hover */
  border-color: #7B1FA2;
}

#cropping-toolbar-inner #cropping-close-button:active {
  transform: scale(0.95);
}

#cropping-close-button svg * {
  fill: #7f7f7f;
}

#cropping-close-button:hover svg * {
  fill: #fff; /* White on hover */
}

#cropping-close-button svg {
  width: 16px;
  height: 16px;
}

button#cropping-close-button > span {
  display: block;
  line-height: 0;
}

/* Hide other controls when cropping toolbar is active */
body.cropping-toolbar-active #all-canvas-controls {
  transform: translateY(100px);
  opacity: 0;
  pointer-events: none;
}

body.cropping-toolbar-active #object-toolbar {
  display: none !important;
}

/* Hide cropping toolbar when other toolbars are active */
body.text-toolbar-active #cropping-toolbar,
body.drawing-toolbar-active #cropping-toolbar,
body.eraser-toolbar-active #cropping-toolbar,
body.magic-face-toolbar-active #cropping-toolbar {
  display: none;
}

/* Hide other toolbars when cropping toolbar is active */
body.cropping-toolbar-active #text-toolbar,
body.cropping-toolbar-active #drawing-toolbar,
body.cropping-toolbar-active #eraser-toolbar,
body.cropping-toolbar-active #magic-face-toolbar,
body.cropping-toolbar-active #prompt-toolbar {
  display: none !important;
}

/* Also hide top canvas controls */
body.cropping-toolbar-active #layers-toolbar {
  display: none;
}

/* Mobile overrides */
@media (max-width: 768px) {
  #cropping-toolbar-inner {
    margin-bottom: 20px;
     
    gap: 12px;
    width: auto;
     
  }
  
  #cropping-toolbar .cropping-label {
    padding-left: 8px;
    padding-right: 8px;
    font-size: 13px;
  }
  
  #cropping-toolbar button {
    font-size: 13px;
    padding: 10px;
  }
  
  div#cropping-toolbar {
    padding: 0 16px;
  }
 
  body.cropping-toolbar-active #all-canvas-controls {
    transform: none;
    opacity: 1;
    pointer-events: auto;
  }
  
  body.cropping-toolbar-active #all-canvas-controls .canvas-controls {
    margin-bottom: -100%;
  }
  
  body.cropping-toolbar-active #all-canvas-controls .canvas-controls,
  body.cropping-toolbar-active #all-canvas-controls #info {
    pointer-events: none;
  }
} 
/* @media (prefers-color-scheme: dark) {

body .dimensional-grid-wrap {
  background: #101215;
}
body svg.dimensional-grid  {
  background: transparent; opacity: 0.1
}
body svg.dimensional-grid * {stroke: rgb(255 255 255 / 100%) !important;}


body .canvas-control[data-control="search"] input {
  background: #333;
  color: #fff;
}

body .canvas-control .floating-label {
  background: rgb(51 51 51 / 50%);
  color: rgb(255 255 255 / 50%);
}

body .loading-spinner-wrap {
  background: #333;
}

body .loading-spinner {
  border: 2px solid #444;
  border-top: 2px solid #ff912d;
}

body .layers-toolbar--header {
  background: rgb(51 51 51 / 100%);
  color: rgb(160 160 160);
}

body .layers-toolbar--header .collapse-arrow * {
  fill: rgb(160 160 160);
}

body .layers-toolbar--layers {
  background: rgb(51 51 51 / 50%);
}

body .layers-empty-state {color: rgb(160 160 160)}

body .layer {
  background: rgb(51 51 51 / 100%);
}

body .layer .layer-name {
  color: #fff;
}

body .help-button {
  background: #111;
}
 

body #text-toolbar-inner {
  box-shadow: 0px 4px 10px rgb(255 255 255 / 15%);
  border: 2px solid #3f3f3f;
}



} */
.drawer {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  visibility: hidden;
  transition: visibility 0s linear 0.3s;
}

.drawer, .drawer *:not(#export-preview-image) {
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}

#export-preview-image {
  -webkit-touch-callout: default;
}

.drawer[data-drawer-state="open"] {
  visibility: visible;
  transition-delay: 0s;
}

.drawer-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.18);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.drawer[data-drawer-state="open"] .drawer-overlay {
  opacity: 1;
}

/* Container for better centering */
.drawer-container {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: center;
  pointer-events: none; /* Allow clicks to pass through to overlay */
}

.drawer-content {
  position: relative;
  width: calc(100% - 32px);
  max-width: 1200px;
  min-height: 0px;
  background: white;
  border-radius: 34px 34px 0 0;
  transition: transform 0.3s ease, height 0.3s cubic-bezier(0.1, 0.7, 0.1, 1);
  touch-action: none;
  will-change: transform;
  overflow: hidden;
  pointer-events: auto; /* Re-enable clicks for the drawer content */
  
  /* Use only Y transform to avoid fractional pixel values */
  transform: translateY(100%);
}

.drawer[data-drawer-state="open"] .drawer-content {
  transform: translateY(0);
}

.drawer-handle-pill {
  width: 42px;
  height: 5px;
  background: #c2c2c2;
  border-radius: 14px;
}
.drawer-handle {
  width: 100%;
  height: 5px;
  padding: 14px 0 14px;
  cursor: grab;
  touch-action: none;
  position: sticky;
  top: 0;
  margin-bottom: -1px;
  z-index: 2;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #f9f9f9;
  border-top-left-radius: 32px;
  border-top-right-radius: 32px;
}

.drawer-handle:active {
  cursor: grabbing;
}

.drawer-inner {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.drawer-content-inner {
  display: flex;
  flex-direction: column;
  overflow: scroll;
  position: relative;
  height: 100%;
}

.drawer-content-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 32px;
  border-bottom: 1px solid #E1E4ED;
  background: white;
  position: sticky;
  top: 0;
  z-index: 3;
}

#library-drawer .drawer-content-header {
  border-top: 1px solid #E1E4ED;
}


.drawer-content-header h2 {
  font-size: 21px;
  margin: 0;
}

/* Adjust the sign-in-prompt padding to match grid padding */
.sign-in-prompt {
  padding: 32px;
}

.drawer[data-fetching="true"] {
  pointer-events: none;
}

.drawer[data-fetching="true"] .drawer-content {
  opacity: 0.6;
}

.drawer-content-heading p {
  font-size: 14px;
  color: #3f3f3f;
  margin-top: 10px;
}

@media screen and (max-width: 768px) {
  .drawer-content-header {
    padding: 16px 16px;
  }
  .drawer-handle {
    padding: 18px 0 18px;
  }
  .drawer-content-header h2 {
    font-size: 18px;
  }
 
}
#drawing-toolbar.hidden {
  display: none;
}

#drawing-toolbar {
  position: fixed;
  bottom: 0;
  width: auto;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 99999998; /* Same level as eraser toolbar */
  transform: translateY(100px) translateX(-50%);
  opacity: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
  pointer-events: none;
}

#drawing-toolbar.visible {
  transform: translateY(0) translateX(-50%);
  opacity: 1;
}

#drawing-toolbar button {
  background: transparent;
  border: none;
  color: #000;
  padding: 10px 11px;
  display: flex;
  align-items: center;
  justify-content: center;
}


#drawing-toolbar button#drawing-toolbar-size {
  padding-left: 0;
  padding-right: 0;
}

#drawing-toolbar .drawing-label {
  background: #e0f2ff; /* Light blue background to match drawing theme */
  padding: 6px 12px;
  border-radius: 8px;
  color: #007bff; /* Bright blue text */
  font-size: 15px;
  font-weight: 500;
  margin: 9px 0;
}

#drawing-toolbar-inner {
  pointer-events: auto;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 30px;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  backdrop-filter: brightness(100%) opacity(300%) blur(20px);
  border-radius: 18px;
  color: #000;
  padding: 0px 16px;
  margin-bottom: 60px;
  gap: 16px;
  }
 
  
  .drawing-toolbar-block button {
  font-size: 17px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.drawing-size-text {
  font-weight: normal;
}

.drawing-size-current {
  color: #000;
  min-width: 51px;
  text-align: center;
}

/* Drawing toolbar blocks */
.drawing-toolbar-block {
  position: relative;
}

/* Drawing toolbar slider block */
.drawing-toolbar-slider-block {
  display: flex;
  align-items: center;
  min-width: 120px;
  max-width: 200px;
  flex: 1;
}

.drawing-toolbar-slider-block input[type="range"]::-webkit-slider-runnable-track {
  margin-right: -1px;
  margin-left: -1px; 
} 

.drawing-toolbar-slider-block input[type="range"] {
  width: 100%;
  -webkit-appearance: none;
  appearance: none;
  height: 6px;
  outline: none;
  -webkit-transition: .2s;
  transition: opacity .2s;
  background-color: rgb(237 237 237 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  border-radius: 4px;
}

.drawing-toolbar-slider-block input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background-color: #000;
  border: 1px solid rgb(143 139 136 / 45%);
  cursor: pointer;
}

/* Drawing size picker styles */
.drawing-size-picker-container {
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  border-radius: 12px;
  padding: 15px;
  margin-bottom: 10px;
  display: none;
  flex-direction: column;
  align-items: center;
  width: 150px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease-out, transform 0.2s ease-out;
  z-index: 9999;
  transform: translateY(10px) translateX(-50%);
  backdrop-filter: brightness(100%) opacity(300%) blur(20px);
}

.drawing-size-picker-container.visible {
  display: flex;
  opacity: 1;
  transform: translateY(0) translateX(-50%);
  pointer-events: auto;
}

/* Add a class for the drawing size container content */
.drawing-size-content {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.drawing-size-preview {
  min-width: 50px;
  min-height: 50px;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  border: 1px solid #000;
  margin: 10px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.drawing-size-preview::after {
  content: '';
  display: block;
  background-color: #000;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  position: absolute;
}

.drawing-size-value {
  color: #000;
  margin-top: 5px;
  font-size: 14px;
  font-weight: bold;
}

/* Color picker styles - Updated */
.drawing-color-picker-container {
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  background-color: rgb(224 224 224 / 100%);
  border: 1px solid rgb(143 139 136 / 45%);
  border-radius: 12px;
  padding: 15px;
  margin-bottom: 10px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease-out, transform 0.2s ease-out;
  z-index: 9999;
  color: #000;
  transform: translateY(10px) translateX(-50%);
  overflow: hidden;
}

.drawing-color-picker-container.open {
  opacity: 1;
  pointer-events: auto !important;
  transform: translateY(0) translateX(-50%);
  animation: dropdown-appear 0.2s ease-out;
}

.drawing-color-picker-container.closing {
  opacity: 0;
  transform: translateY(10px) translateX(-50%);
  pointer-events: none;
  transition: opacity 0.2s ease-out, transform 0.2s ease-out;
}

.drawing-color-picker-panel {
  padding-top: 25px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 250px;
  max-width: 100%;
}

.drawing-color-picker-gradient {
  height: 150px;
  border-radius: 8px;
  cursor: crosshair;
  position: relative;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1);
}

.drawing-color-selector-dot {
  position: absolute;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 2px solid white;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(0, 0, 0, 0.3);
  transform: translate(-50%, -50%);
  pointer-events: none;
  transition: border-color 0.2s ease-in-out;
  z-index: 2;
}

.drawing-color-picker-slider {
  padding: 5px 0;
}

.drawing-hue-slider {
  width: 100%;
  height: 10px;
  -webkit-appearance: none;
  appearance: none;
  background: linear-gradient(
    to right,
    #ff0000, #ffff00, #00ff00, #00ffff, #0000ff, #ff00ff, #ff0000
  );
  border-radius: 5px;
  outline: none;
}

.drawing-hue-slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 18px;
  height: 18px;
  background: white;
  border-radius: 50%;
  cursor: pointer;
  border: 2px solid rgba(0, 0, 0, 1);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.drawing-hue-slider::-moz-range-thumb {
  width: 18px;
  height: 18px;
  background: white;
  border-radius: 50%;
  cursor: pointer;
  border: 2px solid rgba(0, 0, 0, 0.2);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.drawing-color-presets {
  width: 100%;
  position: relative;
}

.drawing-color-presets-inner {
  display: grid;
  grid-template-columns: repeat(9, 1fr);
  gap: 4px;
}

.drawing-color-preset {
  width: 100%;
  aspect-ratio: 1;
  border-radius: 6px;
  cursor: pointer;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.2);
  transition: transform 0.15s ease, box-shadow 0.2s ease;
}

 

.drawing-color-preset.active {
  border: 2px solid #000;
  position: relative;
  z-index: 2;
}

/* Drawing color dropper preset styles */
.drawing-color-dropper-preset {
  background-color: #f0f0f0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.drawing-color-dropper-preset svg {
  width: 15px;
  height: 15px;
  opacity: 1;
}

.drawing-color-dropper-preset:hover {
  background-color: #e0e0e0;
 
}

.drawing-color-dropper-preset:active {
  background-color: #d0d0d0;
}



/* Color indicator box */
.drawing-color-indicator {
  width: 24px;
  height: 24px;
  border-radius: 5px;
  display: inline-block;
  vertical-align: middle;
  border: 1px solid rgba(0, 0, 0, 0.3);
}

/* Add styles for when drawing toolbar is active */
body.drawing-toolbar-active #all-canvas-controls {
  transform: translateY(100px);
  opacity: 0;
  pointer-events: none;
}

body.drawing-toolbar-active #object-toolbar.fixed-toolbar {
  bottom: 80px !important;
}

/* Close button styles */
#drawing-toolbar-inner #drawing-close-button {
  position: absolute;
  right: -52px;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 22px;
  padding: 0;
  transition: background-color 0.2s ease, border-color 0.2s ease;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  backdrop-filter: brightness(100%) opacity(300%) blur(20px);
  border-radius: 14px;
  color: #fff;
}

#drawing-toolbar-inner #drawing-close-button:hover {
  background-color: rgba(0, 0, 0, 0.9);
  border-color: #000;
}

#drawing-toolbar-inner #drawing-close-button:active {
  transform: scale(0.95);
}

#drawing-close-button svg * {
  fill: #7f7f7f;
}

#drawing-toolbar-inner #drawing-close-button:hover svg * {
  fill: #fff;
}

#drawing-close-button svg {
  width: 16px;
  height: 16px;
}

button#drawing-close-button > span {
  display: block;
  line-height: 0;
}



/* Hide drawing toolbar when other toolbars are active */
body.text-toolbar-active #drawing-toolbar,
body.eraser-toolbar-active #drawing-toolbar,
body.magic-face-toolbar-active #drawing-toolbar {
  display: none;
}

/* Hide other toolbars when drawing toolbar is active */
body.drawing-toolbar-active #text-toolbar,
body.drawing-toolbar-active #eraser-toolbar,
body.drawing-toolbar-active #magic-face-toolbar,
body.drawing-toolbar-active #prompt-toolbar {
  display: none !important;
}

/* Also hide top canvas controls except undo/redo */
body.drawing-toolbar-active #layers-toolbar {
  display: none;
}

/* Mobile overrides */
@media (max-width: 768px) {
  #drawing-toolbar-inner {
    margin-bottom: 20px;
    padding: 0 8px;
    gap: 12px;
    width: 100%;
    justify-content: space-between;
  }
  
  #drawing-toolbar .drawing-label {
    padding-left: 8px;
    padding-right: 8px;
    font-size: 13px;
  }

  .drawing-toolbar-slider-block {
    min-width: 80px;
  }
  
  #drawing-toolbar button {
    font-size: 13px;
    padding: 10px;
  }
  
  .drawing-toolbar-block button {
    font-size: 13px;
    gap: 4px;
  }
  
  .drawing-size-text {
    display: none; /* Hide "Size" text on mobile to save space */
  }
  
  .drawing-size-current {
    min-width: 40px;
    font-size: 14px;
  }
  
  .drawing-toolbar-slider-block {
    position: relative;
    padding: 10px 0;
    margin: 0 8px;
  }
  
  .drawing-toolbar-slider-block::before {
    content: '';
    position: absolute;
    top: 0;
    left: -10px;
    right: -10px;
    bottom: 0;
    z-index: 1;
  }
  
  .drawing-toolbar-slider-block input[type="range"] {
    position: relative;
    z-index: 2;
  }
  
  div#drawing-toolbar {
    padding: 0 16px;
  }
  
 
  body.drawing-toolbar-active #all-canvas-controls {
    transform: none;
    opacity: 1;
    pointer-events: auto;
  }
  
  body.drawing-toolbar-active #all-canvas-controls .canvas-controls {
    margin-bottom: -100%;
  }
  
  body.drawing-toolbar-active #all-canvas-controls .canvas-controls,
  body.drawing-toolbar-active #all-canvas-controls #info {
    pointer-events: none;
  }

  #drawing-toolbar-size-block {
    display: none;
  }

  /* Ensure popup is centered properly on mobile */
  .drawing-size-picker-container,
  .drawing-color-picker-container {
    left: 50%;
    transform: translateX(-50%);
    max-width: 280px;
  }
  
  .drawing-size-picker-container.visible,
  .drawing-color-picker-container.open {
    transform: translateX(-50%);
  }

  .drawing-size-picker-container,
  .drawing-color-picker-container {
    padding: 12px;
  }



  /* Visual hint for drag area on mobile */
  #drawing-toolbar-inner {
    position: relative;
  }
  
  /* Add subtle hint that toolbar is draggable */
 
  

  /* Color presets mobile optimization */
  .drawing-color-presets {
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
    overflow: hidden;
    width: calc(100% + 24px);
    margin-right: -12px;
    margin-left: -12px;
    position: relative;
  }

  /* Add the shadow element styles */
  .drawing-color-presets-shadow {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 30px;
    pointer-events: none;
    z-index: 2;
    transition: transform 0s ease-in-out;
  }

  .drawing-color-presets-shadow-right {
    right: 0;
    background: linear-gradient(to right, rgba(224,224,224,0), rgba(224,224,224,0.85));
  }

  .drawing-color-presets-shadow-left {
    left: 0;
    background: linear-gradient(to left, rgba(224,224,224,0), rgba(224,224,224,0.85));
  }

  .drawing-color-presets-inner::-webkit-scrollbar {
    display: none;
  }

  .drawing-color-presets-inner {
    -ms-overflow-style: none;  /* Internet Explorer 10+ */
    scrollbar-width: none;  /* Firefox */
    overflow: scroll;
    height: 30px;
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
    gap: 5px;
  }

  .drawing-color-preset {
    min-width: 30px;
  }

  .drawing-color-preset:last-child {
    margin-right: 15px;
  }

  .drawing-color-preset:first-child {
    margin-left: 15px;
  }

  #drawing-toolbar-inner .drawing-color-indicator {
    width: 18px;
    height: 18px;
  }

 
}

/* Animation for dropdown appearance */
@keyframes dropdown-appear {
  from {
    opacity: 0;
    transform: translateY(10px) translateX(-50%);
  }
  to {
    opacity: 1;
    transform: translateY(0) translateX(-50%);
  }
}

/* Ensure handles work properly */
.drawing-color-picker-handle {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: grab;
  z-index: 1001;
  background-color: rgba(200, 200, 200, 0.5);
  border-bottom: 1px solid rgba(143, 139, 136, 0.3);
  border-radius: 11px 11px 0 0;
  pointer-events: auto !important;
}

.drawing-color-picker-handle:active {
  cursor: grabbing;
}

/* Add the visual indicator in the handle */
.drawing-color-picker-handle::after {
  content: '';
  width: 40px;
  height: 4px;
  background-color: rgba(143, 139, 136, 0.6);
  border-radius: 4px;
  opacity: 0.6;
}
/* Eraser Toolbar Styles - Adapted from drawing-toolbar.css */

#eraser-toolbar.hidden {
  display: none;
}

#eraser-toolbar {
  position: fixed;
  bottom: 0;
  width: auto;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 99999998; /* Same level as drawing toolbar */
  transform: translateY(100px) translateX(-50%);
  opacity: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
  pointer-events: none;
}

#eraser-toolbar.visible {
  transform: translateY(0) translateX(-50%);
  opacity: 1;
}

#eraser-toolbar button {
  background: transparent;
  border: none;
  color: #000;
  padding: 10px 11px;
  display: flex;
  align-items: center;
  justify-content: center;
}

#eraser-toolbar button#eraser-toolbar-size {
  padding-left: 0;
  padding-right: 0;
}

#eraser-toolbar .eraser-label {
  background: rgba(255, 79, 80, 0.2); /* Light pink/red background to match eraser theme */
  padding: 6px 12px;
  border-radius: 8px;
  color: #FF4F50; /* Pink/red text to match eraser color */
  font-size: 15px;
  font-weight: 500;
  margin: 9px 0;
}
#eraser-toolbar-inner {
  pointer-events: auto;
  position: relative;
   
  
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 30px;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  backdrop-filter:brightness(100%)  opacity(300%) blur(20px);
  border-radius: 18px;
  color: #000;
   
  padding: 0px 16px;
   
  margin-bottom: 60px;
  gap: 16px;
}

#eraser-toolbar-inner .eraser-icon {
  padding-left: 16px;
  color: #FF4F50;
  font-size: 17px;
}

.eraser-toolbar-block button {
  font-size: 17px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.eraser-size-text {
  font-weight: normal;
}

.eraser-size-current {
  color: #FF4F50;
  min-width: 51px;
  text-align: center;
}

/* Eraser toolbar blocks */
.eraser-toolbar-block {
  position: relative;
}

/* Eraser toolbar slider block */
.eraser-toolbar-slider-block {
  display: flex;
  align-items: center;
  min-width: 120px;
  max-width: 200px;
  flex: 1;
}

 
.eraser-toolbar-slider-block input[type="range"]::-webkit-slider-runnable-track {
  margin-right: -1px;
  margin-left: -1px; 
} 

.eraser-toolbar-slider-block input[type="range"] {
  width: 100%;
  -webkit-appearance: none;
  appearance: none;
  height: 6px;
  outline: none;
  -webkit-transition: .2s;
  transition: opacity .2s;
  background-color: rgb(237 237 237 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  border-radius: 4px;
}

.eraser-toolbar-slider-block input[type="range"]::-webkit-slider-thumb{
  -webkit-appearance: none;
  appearance: none;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background-color: #FF4F50;
  border: 1px solid rgb(143 139 136 / 45%);
  cursor: pointer;
}
 
/* Eraser size picker styles */
.eraser-size-picker-container {
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  border-radius: 12px;
  padding: 15px;
  margin-bottom: 10px;
  display: none;
  flex-direction: column;
  align-items: center;
  width: 150px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease-out, transform 0.2s ease-out;
  z-index: 9999;
  transform: translateY(10px) translateX(-50%);
}

.eraser-size-picker-container.visible {
  display: flex;
  opacity: 1;
  transform: translateY(0) translateX(-50%);
}

/* Add a class for the eraser size container content */
.eraser-size-content {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.eraser-size-preview {
  min-width: 50px;
  min-height: 50px;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  border: 1px solid #FF4F50;
  margin: 10px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.eraser-size-preview::after {
  content: '';
  display: block;
  background-color: #FF4F50;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  position: absolute;
}

.eraser-size-value {
  color: #fff;
  margin-top: 5px;
  font-size: 14px;
  font-weight: bold;
  color: #FF4F50;
}

/* Add styles for when eraser toolbar is active */
body.eraser-toolbar-active #all-canvas-controls {
  transform: translateY(100px);
  opacity: 0;
  pointer-events: none;
}

body.eraser-toolbar-active #object-toolbar.fixed-toolbar {
  bottom: 80px !important;
}

/* Close button styles */
#eraser-toolbar-inner #eraser-close-button {
  position: absolute;
  right: -52px;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 22px;
  padding: 0;
  transition: background-color 0.2s ease, border-color 0.2s ease;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  backdrop-filter:brightness(100%)  opacity(300%) blur(20px);
  border-radius: 14px;
  color: #fff;
}

/* Split button styles */
#eraser-toolbar-inner #eraser-split-button {
  position: absolute;
  right: -60px;
  bottom: 52px;
  width: 100px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 11px;
  padding: 0 6px;
  transition: background-color 0.2s ease, border-color 0.2s ease;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  backdrop-filter:brightness(100%)  opacity(300%) blur(20px);
  border-radius: 10px;
  color: #7f7f7f;
  gap: 2px;
}

#eraser-split-button span[aria-hidden="true"] {
  display: flex;
  align-items: center;
  gap: 2px;
  line-height: 0;
}

#eraser-split-button .eraser-split-plus {
  font-size: 13px;
  font-weight: normal;
  line-height: 1;
}

#eraser-split-button svg {
  width: 15px;
  height: 15px;
}

#eraser-split-button svg * {
  fill: #7f7f7f;
}

#eraser-split-button .eraser-split-text {
  font-size: 11px;
  font-weight: 500;
}

#eraser-toolbar-inner #eraser-split-button:hover {
  background-color: rgba(255, 79, 80, 0.9);
  border-color: #FF4F50;
  color: #fff;
}

#eraser-toolbar-inner #eraser-split-button:hover svg * {
  fill: #fff;
}

#eraser-toolbar-inner #eraser-split-button:active {
  transform: scale(0.95);
}

#eraser-toolbar-inner #eraser-close-button:hover {
  background-color: rgba(255, 79, 80, 0.9);
  border-color: #FF4F50;
}

#eraser-toolbar-inner #eraser-close-button:active {
  transform: scale(0.95);
}

#eraser-toolbar-inner #eraser-close-button:hover svg *{
  fill: #000;
}

#eraser-close-button svg * {
  fill: #7f7f7f;
}

#eraser-close-button svg {
  width: 16px;
  height: 16px;
}

button#eraser-close-button > span {
  display: block;
  line-height: 0;
}

.eraser-icon svg {
  fill: #FF4F50;
  width: 20px;
  height: 20px;
}

/* Hide eraser toolbar when other toolbars are active */
body.drawing-toolbar-active #eraser-toolbar,
body.text-toolbar-active #eraser-toolbar,
body.magic-face-toolbar-active #eraser-toolbar {
  display: none;
}

/* Hide other toolbars when eraser toolbar is active */
body.eraser-toolbar-active #drawing-toolbar,
body.eraser-toolbar-active #text-toolbar,
body.eraser-toolbar-active #magic-face-toolbar,
body.eraser-toolbar-active #prompt-toolbar {
  display: none !important;
}

/* Also hide top canvas controls except undo/redo */
body.eraser-toolbar-active #layers-toolbar {
  display: none;
}

/* Mobile overrides */
@media (max-width: 768px) {
  #eraser-toolbar-inner {
    margin-bottom: 20px;
     padding-left: 8px;
     padding-right: 8px;
    gap: 12px;
    width: 100%;
    justify-content: space-between;
  }
  
  #eraser-toolbar-inner .eraser-icon {
    padding-left: 8px;
    padding-right: 4px;
    font-size: 13px;
  }
  
  #eraser-toolbar button {
    font-size: 13px;
    padding: 10px;
  }
  
  .eraser-toolbar-block button {
    font-size: 13px;
    gap: 4px;
  }
  
  .eraser-size-text {
    display: none; /* Hide "Size" text on mobile to save space */
  }
  
  .eraser-size-current {
    min-width: 40px;
    font-size: 14px;
  }
  
  .eraser-toolbar-slider-block {
    position: relative;
    padding: 10px 0;
    margin: 0 8px;
  }
  
  .eraser-toolbar-slider-block::before {
    content: '';
    position: absolute;
    top: 0;
    left: -10px;
    right: -10px;
    bottom: 0;
    z-index: 1;
  }
  
  .eraser-toolbar-slider-block input[type="range"] {
    position: relative;
    z-index: 2;
  }
  
  div#eraser-toolbar {
    padding: 0 16px;
  }
 
  body.eraser-toolbar-active #all-canvas-controls {
    transform: none;
    opacity: 1;
    pointer-events: auto;
  }
  
  body.eraser-toolbar-active #all-canvas-controls .canvas-controls {
    margin-bottom: -100%;
  }
  
  body.eraser-toolbar-active #all-canvas-controls .canvas-controls,
  body.eraser-toolbar-active #all-canvas-controls #info {
    pointer-events: none;
  }

  /* Ensure popup is centered properly on mobile */
  .eraser-size-picker-container {
    left: 50%;
    transform: translateX(-50%);
    max-width: 280px;
  }
  
  .eraser-size-picker-container.open {
    transform: translateX(-50%);
  }

  .eraser-size-picker-container {
    padding: 12px;
  }

  .eraser-icon svg {
    width: 18px;
    height: 18px;
  }

  /* Visual hint for drag area on mobile */
  #eraser-toolbar-inner {
    position: relative;
  }
  
  #eraser-toolbar .eraser-label {
    font-size: 13px;
    padding-left: 8px;
    padding-right: 8px;
  }

  .eraser-toolbar-slider-block {
    min-width: 25svw;
  }

  .eraser-toolbar-block {
    display: none;
  }
 
 
}

/* Animation for dropdown appearance */
@keyframes dropdown-appear {
  from {
    opacity: 0;
    transform: translateY(10px) translateX(-50%);
  }
  to {
    opacity: 1;
    transform: translateY(0) translateX(-50%);
  }
} 
.export-preview {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #000000;
  position: relative;
  padding: 20px;
}

.export-preview img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  background: #111;
}

/* Remove the max-height media queries since we want it to be fluid */
@media (max-width: 768px) {
  .export-buttons {
    gap: 4px;
  }
}

.export-controls {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.export-option {
  display: flex;
  align-items: center;
  color: #888;
  font-size: 14px;
}

.export-option span {
  user-select: none;
}

/* Update export buttons container */
.export-buttons {
  display: flex;
  gap: 24px;
  align-items: center;
}

/* Mobile responsiveness */
@media (max-width: 768px) {
  .export-controls {
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    gap: 16px;
  }
  
  .export-buttons {
    width: 100%;
    align-items: stretch;
    gap: 12px;
  }
  
  .export-button  {
    width: 100%;
  }

 
}

.toggle-switch {
  position: relative;
  display: inline-block;
  width: 48px;
  height: 24px;
  margin-right: 12px;
}

.toggle-switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

.toggle-slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #DDD;
  transition: .4s;
  border-radius: 24px;
}

.toggle-slider:before {
  position: absolute;
  content: "";
  height: 18px;
  width: 18px;
  left: 3px;
  bottom: 3px;
  background-color: #FF912D;
  transition: .4s;
  border-radius: 50%;
  filter: blur(0px);
}

input:checked + .toggle-slider {
  background-color: #000;
}

input:checked + .toggle-slider:before {
  transform: translateX(24px);
  background-color: #00ff6a;
  filter: blur(0.7px);
  box-shadow: 0 0 8px rgba(0, 255, 106, 0.5);
}

.toggle-slider:before {
  transition: all .4s cubic-bezier(0.19, 1, 0.22, 1);
  will-change: filter, background-color, transform;
}

.export-button {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5px 18px 8px;
  border: none;
  border-radius: 30px;
  cursor: pointer;
  font-weight: 500;
  font-size: 14px;
  height: 36px;
  transition: 0.2s ease all;
  background-color: #b0b0b0;
}

/* Copy button specific styles */
#copy-to-clipboard {
  background: #000;
  color: #fff;
}
 

/* Save button specific styles */
#save-image {
  background: #ff912d;
  color: #000;
}
 

.export-button svg {
  width: 16px;
  height: 16px;
  fill: currentColor;
}

@media (max-width: 768px) {
  .export-button {
    font-size: 12px;
    padding: 5px 9px;
    height: 27px;
  }
  
  .export-buttons {
    gap: 24px;
  }
}
 

/* Add these specific styles for export drawer */
#export-drawer .drawer-content-inner {
  flex-direction: column-reverse;
  height: 100%;
  overflow: hidden;
}

#export-drawer .drawer-inner {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
}

#export-drawer .drawer-content-header {
  flex-shrink: 0;
  border-top: 1px solid #E1E4ED;
  border-bottom: none;
}


/* Add new styles for export drawer */
#export-drawer .drawer-container {
  top: 0;
  bottom: auto;
}

#export-drawer .drawer-content {
  bottom: auto;
  top: 0;
  transform: translateY(-100%);
  border-radius: 0 0 34px 34px;
  display: flex;
  flex-direction: column;
}

#export-drawer[data-drawer-state="open"] .drawer-content {
  transform: translateY(0);
}

/* Move handle to bottom for export drawer */
#export-drawer .drawer-handle {
  order: 2;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-left-radius: 32px;
  border-bottom-right-radius: 32px;
}

/* Adjust content order for export drawer */
#export-drawer .drawer-content-inner {
  order: 1;
  flex-direction: column-reverse;
}

#export-drawer .download-count {
  color: #888;
}

#export-drawer .drawer-content-header {
  border-top: 1px solid #4a4a4a;
  background: #222222;
}

#export-drawer .drawer-handle {
  background: #282828;
  border-top: 1px solid #4a4a4a;
}

#export-drawer .drawer-content {
  background: #000;
}

#export-drawer .drawer-content-header h2 {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
}

#export-drawer .export-option {
  color: #a8a8a8;
}

#export-drawer .drawer-overlay {
  background-color: rgba(0, 0, 0, 0.68);
}

#export-drawer .drawer-handle-pill {
  background: #555;
}

#export-drawer #copy-to-clipboard {
  background: #11dc66;
    color: #000;
}

#export-drawer .public-share {
  display: inline-flex;
  position: relative;
  margin-left: 4px;
}

#export-drawer .public-share-icon {
  background: #454545;
  padding: 4px 8px;
  border: 1px solid #585858;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  cursor: pointer;
}

#export-drawer .public-share-label {
  display: none;
  background: rgb(255 255 255 / 50%);
     transition: 0.2s ease all;
    opacity: 0;
    font-size: 13px;
    text-wrap: nowrap;
    color: #000;
    padding: 4px 8px;
    border-radius: 10px;
    position: absolute;
  bottom: 100%;
  margin-bottom: 8px;
  left: 50%;
  transform: translateX(-50%);
}

#export-drawer .public-share-icon svg {
  width: 18px;
  height: auto;
}

#export-drawer .public-share-icon svg * {
  fill: #999999;
}

#export-drawer .public-share-icon.share-active {
  background: #11DC66;
   
}

#export-drawer .public-share-icon.share-active svg * {
  fill: #333;
}

/* Pending pulse while saving/sharing */
@keyframes sharePulse {
  0% { box-shadow: 0 0 0 0 rgba(255, 221, 0, 0.8); }
  70% { box-shadow: 0 0 0 8px rgba(255, 221, 0, 0); }
  100% { box-shadow: 0 0 0 0 rgba(255, 221, 0, 0); }
}

#export-drawer .public-share-icon.share-pending {
  border-color: #ffdd00;
  animation: sharePulse 1s ease-out infinite;
}
#export-drawer .public-share-icon.share-pending svg * {
  fill: #ffdd00;
}

@media (hover: hover) and (pointer: fine) {
  #export-drawer .public-share-icon:hover {
    background: #11DC66;
    border: 1px solid #11DC66;
  }
  
  #export-drawer .public-share-icon:hover svg * {
    fill: #333;
  }

  #export-drawer .public-share-icon:hover .public-share-label { 
    display: block;
    opacity: 1;
  }

  /* When already shared, show red hover to indicate unshare */
  #export-drawer .public-share-icon.share-active:hover:not(.just-toggled) {
    background: #ff5f5f;
    border: 1px solid #ff5f5f;
  }
  #export-drawer .public-share-icon.share-active:hover:not(.just-toggled) svg * {
    fill: #fff;
  }
  #export-drawer .public-share-icon.share-active:hover:not(.just-toggled) .public-share-label {
    color: #fff;
  }
}

 

@media (max-width: 768px) {

  #export-drawer .public-share-icon { 
    padding: 2px 6px;
  }

  #export-drawer .public-share-icon svg {
    width: 14px;
  }

  #export-drawer .drawer-content-header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

#export-drawer .drawer-content-header-row {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 16px;
}

#export-drawer .drawer-content-header-row.align-end {
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}
 

.export-buttons {
    margin-top: 22px;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.export-button {
    font-size: 14px;
    height: 36px;
    padding: 6px 9px 9px;
}
}

#magic-video-button {
  background: #7209b7;
  color: #fff;
}

@media (max-width: 768px) {
  .export-buttons {
    flex-direction: column;
    gap: 12px;
  }
  
  .export-button {
    width: 100%;
  }

  .generating-text {
    width: 100%;
    text-align: center;
    font-size: 12px;
  }
}

/* Style for the background indicator square */
.bg-indicator {
  display: inline-block;
  width: 24px;
  height: 24px;
  border-radius: 4px; /* Rounded corners */
  border: 1px solid #666; /* Subtle border */
  vertical-align: middle;
  margin-right: 12px;
  background-size: cover;
  background-position: center;
  box-shadow: inset 0 0 0 1px rgba(0,0,0,0.1); /* Inner shadow for depth */
}

/* Watermark upgrade prompt styles */
.watermark-option {
  position: relative;
  /* Keep the default flex-direction: row for inline layout */
}

.upgrade-prompt {
  display: inline-flex;
  align-items: center;
  margin-left: 12px;
  padding: 4px 8px;
  background: rgba(160, 160, 160, 0.1);
  border: 1px solid rgba(160, 160, 160, 0.2);
  border-radius: 4px;
  text-decoration: none;
  transition: all 0.3s ease;
  cursor: pointer;
}

.upgrade-prompt.show-upgrade {
  /* Animation class for when user tries to click toggle */
  animation: upgradePromptPulse 0.6s ease-out;
}

@keyframes upgradePromptPulse {
  0% { 
    background: rgba(160, 160, 160, 0.1);
    border-color: rgba(160, 160, 160, 0.2);
  }
  50% { 
    background: rgba(160, 160, 160, 0.2);
    border-color: rgba(160, 160, 160, 0.4);
  }
  100% { 
    background: rgba(160, 160, 160, 0.1);
    border-color: rgba(160, 160, 160, 0.2);
  }
}

.upgrade-prompt:hover {
  background: rgba(160, 160, 160, 0.15);
  border-color: rgba(160, 160, 160, 0.3);
}

.upgrade-prompt-text {
  font-size: 11px;
  color: #a0a0a0;
  font-weight: 500;
  white-space: nowrap;
}

/* Disabled watermark toggle styles */
.toggle-switch input:disabled + .toggle-slider {
  opacity: 0.5;
  cursor: not-allowed;
}

.toggle-switch input:disabled + .toggle-slider:before {
  opacity: 0.7;
}

/* Watermark option styling - no extra margin needed since prompt is inline */
.export-option.watermark-option {
  align-items: center; /* Ensure toggle, label, and prompt are vertically aligned */
}

/* Mobile responsive styles for watermark option */
@media (max-width: 768px) {
  /* Keep the drawer header row items inline */
  .drawer-content-header-row.align-end {
    position: relative; /* For absolute positioning when needed */
  }
  
  /* When background option is visible AND upgrade prompt exists: stack the upgrade prompt below */
  .drawer-content-header-row.align-end:has(#toggle-background-button:not([style*="display: none"])):has(.upgrade-prompt) {
    padding-bottom: 45px; /* Extra space to prevent overlap */
  }
  
  .drawer-content-header-row.align-end:has(#toggle-background-button:not([style*="display: none"])) .upgrade-prompt {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin-left: 0;
    margin-top: 8px;
    justify-content: center;
  }
  
  /* When background option is hidden or not present: keep upgrade prompt inline like desktop */
  .drawer-content-header-row.align-end:has(#toggle-background-button[style*="display: none"]) .export-option.watermark-option,
  .drawer-content-header-row.align-end:not(:has(#toggle-background-button)) .export-option.watermark-option {
    flex-direction: row;
    align-items: center;
  }
  
  .drawer-content-header-row.align-end:has(#toggle-background-button[style*="display: none"]) .upgrade-prompt,
  .drawer-content-header-row.align-end:not(:has(#toggle-background-button)) .upgrade-prompt {
    position: static; /* Reset to normal flow */
    margin-left: 12px;
  }
  
  .upgrade-prompt-text {
    font-size: 12px;
  }
}

/* State: Transparent */
.bg-indicator.transparent {
  /* Use a DARK checkerboard pattern */
  background-color: #333; /* Fallback */
  background-image: linear-gradient(45deg, #444 25%, transparent 25%),
                    linear-gradient(-45deg, #444 25%, transparent 25%),
                    linear-gradient(45deg, transparent 75%, #444 75%),
                    linear-gradient(-45deg, transparent 75%, #444 75%);
  background-size: 8px 8px; /* Smaller squares for the indicator */
  background-position: 0 0, 0 4px, 4px -4px, -4px 0px;
}

/* State: White */
.bg-indicator.white {
  background-color: #ffffff;
  background-image: none;
}

/* State: Black */
.bg-indicator.black {
  background-color: #000000;
  background-image: none;
}


.drawer-content-header.has-rows {
  flex-direction: column;
  width: 100%;
  align-items: flex-start;
  padding: 0;
}

.drawer-content-header-row {
  padding: 16px 32px;
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
}

.drawer-content-header-row:not(:last-child) {
  border-bottom: 1px solid #323232;
}

.drawer-content-header-row.align-end {
  justify-content: flex-end;
  gap: 32px;
}

#export-preview-image {
  /* Dark mode checkerboard background for transparency */
  background-color: #333; /* Fallback */
  background-image: linear-gradient(45deg, #444 25%, transparent 25%),
                    linear-gradient(-45deg, #444 25%, transparent 25%),
                    linear-gradient(45deg, transparent 75%, #444 75%),
                    linear-gradient(-45deg, transparent 75%, #444 75%);
  background-size: 16px 16px; /* Adjust size as needed */
  background-position: 0 0, 0 8px, 8px -8px, -8px 0px;
}

 
#face-swap-toolbar.hidden {
  display: none;
}

#face-swap-toolbar {
  position: fixed;
  bottom: 0;
  width: auto;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 99999998; /* Same level as other toolbars */
  transform: translateY(100px) translateX(-50%);
  opacity: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
  pointer-events: none;
}

#face-swap-toolbar.visible {
  transform: translateY(0) translateX(-50%);
  opacity: 1;
  pointer-events: auto; /* Enable pointer events when visible */
}

#face-swap-toolbar button {
  background: transparent;
  border: none;
  color: #000;
  padding: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border-radius: 8px;
  transition: background-color 0.2s ease;
}

#face-swap-toolbar button:hover {
  background-color: rgba(255, 140, 0, 0.1);
}

#face-swap-toolbar .face-swap-label {
  background: rgba(255, 140, 0, 0.2); /* Orange background to match face detection theme */
  padding: 6px 12px;
  border-radius: 8px;
  color: #FF8C00; /* Orange text */
  font-size: 15px;
  font-weight: 500; /* Reduced from 600 to match other toolbars */
  margin: 9px 0;
}

#face-swap-toolbar-inner {
  pointer-events: auto;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 30px;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  backdrop-filter: brightness(100%) opacity(300%) blur(20px);
  border-radius: 18px;
  color: #000;
  padding: 0px 16px;
  margin-bottom: 60px;
  gap: 16px;
}

/* Absolutely positioned buttons outside toolbar - matching magic face pattern */
#face-swap-toolbar #face-swap-cancel-button,
#face-swap-toolbar #face-swap-confirm-button {
  position: absolute;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 22px;
  padding: 0;
  transition: background-color 0.2s ease, border-color 0.2s ease;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  backdrop-filter: brightness(100%) opacity(300%) blur(20px);
  border-radius: 14px;
  color: #fff;
  pointer-events: auto; /* Ensure buttons are clickable */
}

#face-swap-toolbar #face-swap-cancel-button {
  right: -52px;
  top: 3.5px;
}

#face-swap-toolbar #face-swap-confirm-button {
  right: -100px;
  top: 3.5px;
}

#face-swap-toolbar #face-swap-cancel-button:hover,
#face-swap-toolbar #face-swap-confirm-button:hover {
  background-color: rgba(255, 140, 0, 0.9); /* Orange hover to match face swap theme */
  border-color: #FF8C00;
}

#face-swap-cancel-button svg,
#face-swap-confirm-button svg {
  width: 16px;
  height: 16px;
}

button#face-swap-cancel-button > span,
button#face-swap-confirm-button > span {
  display: block;
  line-height: 0;
}

#face-swap-cancel-button svg * {
  stroke: #7f7f7f;
}

#face-swap-confirm-button svg * {
  fill: #7f7f7f;
}

#face-swap-toolbar #face-swap-cancel-button:hover svg *,
#face-swap-toolbar #face-swap-confirm-button:hover svg * {
  stroke: #fff;
  fill: #fff;
}

/* Button span styling */
#face-swap-toolbar button > span {
  display: flex;
  align-items: center;
  line-height: 0;
}

/* Hide other controls when face swap toolbar is active */
body.face-swap-toolbar-active #all-canvas-controls {
  transform: translateY(100px);
  opacity: 0;
  pointer-events: none;
}

body.face-swap-toolbar-active #object-toolbar {
  display: none !important;
}

/* Hide face swap toolbar when other toolbars are active */
body.text-toolbar-active #face-swap-toolbar,
body.drawing-toolbar-active #face-swap-toolbar,
body.eraser-toolbar-active #face-swap-toolbar,
body.magic-face-toolbar-active #face-swap-toolbar,
body.cropping-toolbar-active #face-swap-toolbar,
body.snipe-toolbar-active #face-swap-toolbar {
  display: none;
}

/* Hide other toolbars when face swap toolbar is active */
body.face-swap-toolbar-active #text-toolbar,
body.face-swap-toolbar-active #drawing-toolbar,
body.face-swap-toolbar-active #eraser-toolbar,
body.face-swap-toolbar-active #magic-face-toolbar,
body.face-swap-toolbar-active #cropping-toolbar,
body.face-swap-toolbar-active #prompt-toolbar,
body.face-swap-toolbar-active #snipe-toolbar {
  display: none !important;
}

/* Also hide top canvas controls */
body.face-swap-toolbar-active #layers-toolbar {
  display: none;
}

/* Mobile overrides */
@media (max-width: 768px) {
  #face-swap-toolbar-inner {
    margin-bottom: 20px;
    padding: 0 8px;
    width: 100%;
  }
  
  #face-swap-toolbar .face-swap-label {
    font-size: 13px;
  }
  
 
  /* Mobile button adjustments - positioned left and right of toolbar */
  #face-swap-toolbar #face-swap-cancel-button {
    left: -52px;
    top: 2.5px;
    
    transform: none;
    margin-right: 0;
  }

  #face-swap-toolbar #face-swap-confirm-button {
    right: -52px;
    
    top: 2.5px;
    transform: none;
    margin-right: 0;
  }
  
  body.face-swap-toolbar-active #all-canvas-controls {
    transform: none;
    opacity: 1;
    pointer-events: auto;
  }
  
  body.face-swap-toolbar-active #all-canvas-controls .canvas-controls {
    margin-bottom: -100%;
  }
  
  body.face-swap-toolbar-active #all-canvas-controls .canvas-controls,
  body.face-swap-toolbar-active #all-canvas-controls #info {
    pointer-events: none;
  }
}

/* Show/hide animations */
#face-swap-toolbar:not(.hidden) {
  animation: slideUpFadeIn 0.3s ease-out forwards;
}

@keyframes slideUpFadeIn {
  from {
    transform: translateY(100px) translateX(-50%);
    opacity: 0;
  }
  to {
    transform: translateY(0) translateX(-50%);
    opacity: 1;
  }
}

/* Disabled undo/redo buttons during face swap mode */
.face-swap-disabled {
  opacity: 0.3 !important;
  pointer-events: none !important;
  cursor: not-allowed !important;
}

.flash-messages {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 516;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 34px;
  pointer-events: none;
  opacity: 1;
}

@media (max-width: 768px) {
  .flash-messages {
    padding: 8px;
    bottom: 0px;
    align-items: center;
  }
}

.flash-message {
  display: flex;
  align-items: center;
  text-align: center;
  max-width: 25rem;
  margin: 0.5rem;
  padding: 0.6rem 1.25rem;
  background-color: #000;
  /* Slightly lighter black */
  border-radius: 30px;
  font-size: 13px;
  line-height: 1.25rem;
  font-family: 'Space Mono', monospace;
  pointer-events: none;
  color: #ffffff;
  opacity: 0;
  transform: translateY(1rem);
  animation: flash-message-slide-up 0.2s cubic-bezier(0.25, 0.1, 0.25, 1) forwards;
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.1),
    /* Subtle white outline */
    0 4px 6px rgba(0, 0, 0, 0.1),
    /* Soft shadow */
    0 1px 3px rgba(0, 0, 0, 0.1);
  /* Additional depth */
  backdrop-filter: blur(8px);
}

@keyframes flash-message-slide-up {
  0% {
    opacity: 0;
    transform: translateY(1rem);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.flash-success {
  background-color: rgba(32, 32, 32, 0.95);
  /* Keep consistent with base flash-message */
}

.flash-error {
  background-color: rgba(32, 32, 32, 0.95);
  /* Keep consistent with base flash-message */
}
.help-content {
  padding: 32px;
}

.help-section {
  margin-bottom: 32px;
}

.help-section h3 {
  font-size: 28px;
  margin-bottom: 16px;
  color: #fff;
}

.help-section ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.help-section p {
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 8px;
  color: #bbbbbb;
}

.help-section li {
  padding: 12px 0;
  color: #bbbbbb;
  font-size: 16px;
  line-height: 1.5;
}

.help-section h3:not(:first-child) {
  margin-top: 40px;
}

.help-section li i {
  font-style: italic;
}

.help-section li:last-child {
  border-bottom: none;
}

.help-section ul {
  list-style: disc;
  margin-left: 30px;
}


@media (max-width: 768px) {
  .help-content {
    padding: 24px 16px;
  }
  
  .help-section h3 {
    font-size: 19px;
  }
  
  .help-section li {
    font-size: 14px;
    padding: 10px 0;
  }
}

.help-button span {
  
  font-size: 18px;
  
  color: #666;
}





#help-drawer .drawer-handle {
  order: 2;
  
  background: #141414; /* Lighter orange for handle */
  border-bottom: 1px solid #565656; /* Light orange border */
}

 

 
#help-drawer .drawer-handle-pill {
  background: #666; /* Medium orange for handle pill */
}

#help-drawer .drawer-content-header {
  border-top: 1px solid #565656;
  border-bottom: 1px solid #565656;
  background: #000; /* Lighter orange for header */
}

#help-drawer .drawer-content-heading {
  color: #fff;
}

#help-drawer .drawer-content {
  background: #141414;
}

.help-section-brand {
  display: flex;
  gap: 20px;
  align-items: center;
  margin-bottom: 30px;
}

.help-section-brand h2 {
  font-size: 32px;
  font-weight: bold;
  color: #fff;
}

.help-section-brand img {
  width: 54px;
  margin-bottom: -20px;
}

.help-section p.help-section-brand-p {
  margin-bottom: 10px;
  font-size: 20px;
}

.help-section ul.help-section-brand-ul li {
  font-size: 16px;
}

@media (max-width: 768px) {
  .help-section-brand {
    margin-bottom: 18px;
  }

  .help-section ul.help-section-brand-ul li {
    font-size: 14px;
  }

  .help-section p {
    font-size: 15px;
  }
  .help-section p.help-section-brand-p {
    font-size: 16px;
  }
  .help-section-brand img {
    width: 48px;
    height: auto;
    margin-bottom: -16px;
  }

.help-section-brand h2 {
  font-size: 28px;
}
}
#layers-toolbar {
  position: absolute;
  right: 42px;
  top: 18px;
  max-height: 80vh;
  z-index: 100;
  
  display: flex;
  flex-direction: column;
  pointer-events: none; /* Allow clicks to pass through */
}

#layers-toolbar-inner {
  max-height: 80vh; /* Overall max height for the inner part */
  height: auto; /* Allow natural height calculation */
  display: flex;
  flex-direction: column;
  pointer-events: none; /* Allow clicks to pass through */
  align-items: flex-end;
}

.layers-toolbar--layers {
  display: flex; /* To contain the inner scrolling div */
  flex-direction: column; /* Align inner div vertically */
  background-color: rgb(176 176 176 / 50%);
  border: 1px solid rgb(143 139 136 / 35%);
  border-radius: 14px;
  margin-top: 10px;
  margin-left: -20px;
  margin-right: 10px;
  width: 190px;
  max-height: calc(46vh - 80px); /* Set explicit max-height accounting for header and margins */
  position: relative; /* Ensure position relative for marker positioning */
  pointer-events: auto; /* Capture clicks on layers panel */
}

/* New inner container for scrolling */
.layers-list-container {
  overflow-y: auto; /* Enable vertical scrolling */
  flex: 1; /* Take remaining space in flex container */
  min-height: 0; /* Allow shrinking below content size */
  /* Hide scrollbar while maintaining functionality */
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* IE and Edge */
  border-radius: 14px;
  /* Prevent shift-key from triggering scroll */
  overflow-x: hidden;
  position: relative; /* Keep position relative for content */
}

/* Hide scrollbar for Chrome, Safari and Opera */
.layers-list-container::-webkit-scrollbar {
  display: none;
}

.layers-toolbar--header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 15px;
  font-weight: bold;
  cursor: pointer;
  user-select: none;
  font-size: 12px;
  background-color: rgb(176 176 176 / 50%);
  border: 1px solid rgb(143 139 136 / 35%);
  border-radius: 30px;
  width: 150px;
  position: relative;
  pointer-events: auto; /* Capture clicks on header */
}

.layer-count {
  font-weight: normal;
  margin-left: 2px;
}

.collapse-arrow {
  transition: transform 0.3s ease;
  display: inline-block;
  font-size: 12px;
  margin-left: 5px;
  transform: rotate(90deg);
}

.collapse-arrow svg {
  width: 6px;
  height: auto;
  opacity: 0.6;
}

#layers-toolbar:not(.layers-toolbar-collapsed) .collapse-arrow {
  transform: rotate(-90deg);
}

.layer {
  display: flex;
  align-items: center;
  padding: 8px;
  background-color: rgba(255, 255, 255, 0.1);
  cursor: pointer;
  transition: all 0.2s ease;
  position: relative;
  -webkit-touch-callout: none; /* iOS Safari */
  -webkit-user-select: none; /* Safari */
  -moz-user-select: none; /* Firefox */
  -ms-user-select: none; /* Internet Explorer/Edge */
  user-select: none; /* Non-prefixed version, currently supported by Chrome, Edge, Opera and Firefox */
}

.layer:hover {
  background-color: rgba(255, 255, 255, 0.2);
  
}

.layer.active {
  background-color: rgb(250 132 24 / 49%); /* Orange for single selection */
}

/* Blue highlight for group selections / multiple selected layers */
.layer.group-active {
  background-color: rgb(255 221 2 / 59%); /* Light blue */
}

.layer.dragging {
  opacity: 0.7;
  background-color: rgba(100, 100, 100, 0.7);
  border: 1px dashed rgba(250, 132, 24, 0.5); /* Updated orange */
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Ensure active layers retain their exact active style when dragged */
.layer.active.dragging {
  background-color: rgb(250 132 24 / 49%); /* Updated orange, same as .layer.active */
  opacity: 1; /* Override dragging opacity */
  border: none; /* Override dragging border */
  transform: none; /* Override dragging transform */
  box-shadow: none; /* Override dragging glow */
}

/* Style for group-active layers when dragged */
.layer.group-active.dragging {
  background-color: rgba(80, 150, 255, 0.35); /* Light blue, same as .layer.group-active */
  opacity: 1;
  border: none;
  transform: none;
  box-shadow: none;
}

.layer-img {
  width: 24px;
  height: 24px;
  border-radius: 4px;
  background-color: #333;
  margin-right: 10px;
  overflow: hidden;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.layer-img img, .layer-img canvas {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.layer-name {
  flex-grow: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 14px;
}

.layer-icon {
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: auto;
  fill: white;
}

svg.layer-icon.drawing-icon {
  width: 18px;
  height: auto;
  opacity: 0.6;
}

.text-layer-icon {
  font-size: 15px;
  color: #ADADAD;
  text-align: center;
  
}

.layer-handle {
  cursor: grab;
  margin-right: 5px;
  opacity: 0.6;
  transition: opacity 0.2s;
  background-color: rgba(255, 255, 255, 0.3);
  border-radius: 3px;
  padding: 0 3px;
  font-size: 14px;
}

.layer-handle:hover {
  opacity: 1;
}

.layer-handle:active {
  cursor: grabbing;
}

/* For when the toolbar is collapsed */
.layers-toolbar-collapsed .layers-toolbar--layers {
  display: none;
}

/* Style mods for touch devices */
@media (pointer: coarse) {
  .layer-handle {
    font-size: 18px;
    padding: 0 5px;
  }
  
  .layer {
    padding: 6px 7px;
  }

  .layers-toolbar--layers {
    border-radius: 8px;
  }
}

.layer-insert-marker {
  position: absolute;
  left: 0px;
  right: 0px;
  width: calc(100% + 0px); /* Adjust width to prevent overflow */
  height: 4px; /* The line height */
  background-color: rgb(250, 132, 24); /* Orange */
  border-radius: 2px;
  z-index: 1000;
  pointer-events: none;
  box-shadow: 0 0 6px rgba(250, 132, 24, 0.6);
  transition: top 0.1s linear;
}

/* Remove pulsing animation to reduce jank */

/* Add small arrow indicators to the marker to make it more visible */
.layer-insert-marker::before,
.layer-insert-marker::after {
  content: "";
  position: absolute;
  width: 8px;
  height: 8px;
  background-color: rgb(250, 132, 24); /* Orange */
  border-radius: 50%;
  top: -2px;
  box-shadow: 0 0 4px rgba(250, 132, 24, 0.6);
}

.layer-insert-marker::before {
  left: -4px;
}

.layer-insert-marker::after {
  right: -4px;
}

/* Style for the empty state message */
.layers-empty-state {
  padding: 6px;
  text-align: center;
  font-size: 12px;
  user-select: none;
}

.layer.layer-reordering:hover {
  background-color: rgba(255, 255, 255, 0.15);
  border-color: rgba(250, 132, 24, 0.4); /* Updated orange */
}

/* New style for the index column */
.layer-index {
  font-size: 12px;
  margin-left: 8px; /* Space between name and index */
  text-align: right; /* Align index to the right */
  flex-shrink: 0; /* Prevent shrinking */
  padding: 3px;
    color: #222;
    /* font-weight: bold; */
    font-size: 13px;
    transition: opacity 0.2s;
  background-color: rgba(255, 255, 255, 0.3);
  border-radius: 3px;
}

/* Prevent page scroll on touch devices while dragging a layer */
.layers-list-container.is-touch-dragging {
  touch-action: none;
}

.layers-toolbar--more {
  position: absolute;
  bottom: -6px;
  width: 44px;
  left: 50%;
  margin-left: -22px;
  padding: 2px;
  border-radius: 14px;
  
  border: 1px solid rgb(143 139 136 / 35%);
  background: rgb(176 176 176 / 80%);
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Place the top indicator at the top when using more-above */
.layers-toolbar--more.more-above {
  top: -6px;
  bottom: auto;
}

.layers-toolbar--more svg {
  width: auto;
  height: 8px;
  
}
.layers-toolbar--more svg * {
  fill: #1f1f1f;
}
/* Mobile responsiveness */
@media screen and (max-width: 768px) {
  #layers-toolbar {
    right: 16px;
    left: unset;
    width: unset;
    top: 60px;
  }
  #layers-toolbar-inner {
    align-items: flex-end;
  }
  .layers-toolbar--layers {
    margin-right: 0px;
    margin-left: 0px;
    position: relative;
    width: 60px;
    max-height: calc(50vh - 120px); /* Account for mobile header space */
  }
  .layer-img {
    width: 20px;
    height: 20px;
  }

  .layers-toolbar--header {
    width: 126px;
    font-size: 12px;
    padding: 6px 16px;
  }

  .layer {
    padding: 8px 7px;
  }

  .layers-list-container {
    position: relative;
    overflow-y: auto; /* Keep vertical scrolling */
    overflow-x: visible; /* Allow insert marker to extend beyond container */
    flex: 1; /* Take remaining space in flex container */
    min-height: 0; /* Allow shrinking below content size */
  }
  
  /* Enhanced marker for mobile */
  .layer-insert-marker {
    height: 5px; /* Slightly taller line for easier visibility */
    width: 60px; /* Fixed width for mobile */
    left: 0px;
    right: auto;
    background-color: rgb(250, 132, 24, 0.8); /* More visible orange */
    box-shadow: 0 0 8px rgba(250, 132, 24, 0.8); /* Softer glow */
    z-index: 2000; /* Ensure higher z-index on mobile */
  }
  
  /* Adjust marker indicators for mobile */
  .layer-insert-marker::before,
  .layer-insert-marker::after {
    width: 10px;
    height: 10px;
    top: -2.5px;
  }
  
  .layer-insert-marker::before {
    left: -5px;
  }
  
  .layer-insert-marker::after {
    right: -5px;
  }
}

/* Locked state styles */
.layer.locked { cursor: default; }

.layer.locked:hover {
  background-color: rgba(244, 67, 54, 0.4); /* Slightly darker red on hover */
}

/* Override active styles when locked */
.layer.locked.active,
.layer.locked.group-active {
  background-color: rgba(244, 67, 54, 0.6) !important; /* Darker red when active AND locked, use !important to ensure override */
}

/* Lock Icon Placeholder styles */
.layer-lock-icon {
  display: none;
      align-items: center;
      justify-content: center;
      width: 20px;
      height: 20px;
      margin-left: 6px;
      flex-shrink: 0;
      text-align: right;
      flex-shrink: 0;
       
}

.layer.locked .layer-lock-icon {
  padding: 4px;
  color: #222;
  font-size: 13px;
  transition: opacity 0.2s;
  background-color: rgb(244 67 54 / 80%);
  border-radius: 6px;
  border: 1px solid #fff;
}

.layer-lock-icon svg {
  width: 100%;
  height: 100%;
  fill: #333; /* Dark icon color */
}

.layer.locked .layer-lock-icon  {
  display: flex; /* Show icon only when layer is locked */
}
.layers-empty-state svg {
  width: 13px;
  height: auto;
}
@media screen and (max-width: 768px) {
  .layer-index {
    font-size: 11px;
  }
  
  .layers-empty-state {
      padding: 3px;
  }

  .layers-list-container {
    border-radius: 8px;
  }
  .layer-img {
    margin-right: 0;
  }
  .layer-handle {
    display: none;
  }

  .layer-name {
    display: none;
  }
  
}
/* Magic Erase Toolbar - Adapted from eraser-toolbar.css */

#magic-erase-toolbar.hidden {
  display: none;
}

#magic-erase-toolbar {
  position: fixed;
  bottom: 0;
  width: auto;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 99999998; /* Same level as drawing/eraser toolbar */
  transform: translateY(100px) translateX(-50%);
  opacity: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
  pointer-events: none;
}

#magic-erase-toolbar.visible {
  transform: translateY(0) translateX(-50%);
  opacity: 1;
}

#magic-erase-toolbar button {
  background: transparent;
  border: none;
  color: #000;
  padding: 10px 11px;
  display: flex;
  align-items: center;
  justify-content: center;
}

#magic-erase-toolbar button#magic-erase-toolbar-size {
  padding-left: 0;
  padding-right: 0;
}

#magic-erase-toolbar-inner {
  pointer-events: auto;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 30px;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  backdrop-filter:brightness(100%)  opacity(300%) blur(20px);
  border-radius: 18px;
  color: #000;
  padding: 0px 16px;
  margin-bottom: 60px;
  gap: 16px;
}

#magic-erase-toolbar .magic-erase-label {
  background: rgba(255, 0, 128, 0.2); /* Light pink background to match magic erase theme */
  padding: 6px 12px;
  border-radius: 8px;
  color: #FF0080; /* Pink text to match magic erase color */
  font-size: 15px;
  font-weight: 500;
  margin: 9px 0;
}

.magic-erase-toolbar-block button {
  font-size: 17px;
  display: flex;
  align-items: center;
  gap: 8px;
}

/* Remove the size text styles completely */

.magic-erase-size-current {
  color: #FF0080;
  min-width: 51px;
  text-align: center;
}

/* Magic erase toolbar blocks */
.magic-erase-toolbar-block {
  position: relative;
}

/* Magic erase toolbar slider block */
.magic-erase-toolbar-slider-block {
  display: flex;
  align-items: center;
  min-width: 120px;
  max-width: 200px;
  flex: 1;
}

.magic-erase-toolbar-slider-block input[type="range"]::-webkit-slider-runnable-track {
  margin-right: -1px;
  margin-left: -1px; 
} 

.magic-erase-toolbar-slider-block input[type="range"] {
  width: 100%;
  -webkit-appearance: none;
  appearance: none;
  height: 6px;
  outline: none;
  -webkit-transition: .2s;
  transition: opacity .2s;
  background-color: rgb(237 237 237 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  border-radius: 4px;
}

.magic-erase-toolbar-slider-block input[type="range"]::-webkit-slider-thumb{
  -webkit-appearance: none;
  appearance: none;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background-color: #FF0080;
  border: 1px solid rgb(143 139 136 / 45%);
  cursor: pointer;
}

/* Magic erase size picker styles */
.magic-erase-size-picker-container {
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  border-radius: 12px;
  padding: 15px;
  margin-bottom: 10px;
  display: none;
  flex-direction: column;
  align-items: center;
  width: 150px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease-out, transform 0.2s ease-out;
  z-index: 9999;
  transform: translateY(10px) translateX(-50%);
}

.magic-erase-size-picker-container.visible {
  display: flex;
  opacity: 1;
  transform: translateY(0) translateX(-50%);
}

/* Add a class for the magic erase size container content */
.magic-erase-size-content {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.magic-erase-size-preview {
  min-width: 50px;
  min-height: 50px;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  border: 1px solid #FF0080;
  margin: 10px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.magic-erase-size-preview::after {
  content: '';
  display: block;
  background-color: #FF0080;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  position: absolute;
}

.magic-erase-size-value {
  margin-top: 5px;
  font-size: 14px;
  font-weight: bold;
  color: #FF0080;
}

/* Add styles for when magic erase toolbar is active */
body.magic-erase-toolbar-active #all-canvas-controls {
  transform: translateY(100px);
  opacity: 0;
  pointer-events: none;
}

body.magic-erase-toolbar-active #object-toolbar.fixed-toolbar {
  bottom: 80px !important;
}

/* Close button styles - positioned on right for desktop */
#magic-erase-toolbar-inner #magic-erase-close-button {
  position: absolute;
  right: -100px; /* On right for desktop */
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 22px;
  padding: 0;
  transition: background-color 0.2s ease, border-color 0.2s ease;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  backdrop-filter:brightness(100%)  opacity(300%) blur(20px);
  border-radius: 14px;
  color: #fff;
}

#magic-erase-toolbar-inner #magic-erase-close-button:hover {
  background-color: rgba(255, 0, 128, 0.9);
  border-color: #FF0080;
}

#magic-erase-toolbar-inner #magic-erase-close-button:hover svg *{
  fill: #000;
}

#magic-erase-toolbar-inner #magic-erase-close-button:active {
  transform: scale(0.95);
}

#magic-erase-close-button svg * {
  fill: #7f7f7f;
}

#magic-erase-close-button svg {
  width: 16px;
  height: 16px;
}

button#magic-erase-close-button > span {
  display: block;
  line-height: 0;
}

/* Reset button styles - positioned further right for desktop */
#magic-erase-toolbar-inner #magic-erase-reset-button {
  position: absolute;
  right: -52px; /* Further right to make room for close button */
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 22px;
  padding: 0;
  transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  backdrop-filter:brightness(100%)  opacity(300%) blur(20px);
  border-radius: 14px;
  color: #fff;
}

#magic-erase-toolbar-inner #magic-erase-reset-button:hover {
  background-color: rgba(255, 0, 128, 0.9);
  border-color: #FF0080;
}

#magic-erase-toolbar-inner #magic-erase-reset-button:hover svg *{
  fill: #000;
}

#magic-erase-toolbar-inner #magic-erase-reset-button:active {
  transform: scale(0.95);
}

#magic-erase-reset-button svg * {
  fill: #7f7f7f;
}

#magic-erase-reset-button svg {
  width: 16px;
  height: 16px;
}

button#magic-erase-reset-button > span {
  display: block;
  line-height: 0;
}

/* Remove confirm button - not needed to match eraser toolbar */



/* Processing indicator styles */
.magic-erase-processing {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 12px;
  height: 12px;
  flex-shrink: 0; /* Prevent shrinking */
}

.processing-dot {
  width: 8px;
  height: 8px;
  background-color: #999; /* Darker gray when idle for better visibility */
  border-radius: 50%;
  border: 1px solid rgb(143 139 136 / 45%); /* Gray outline like pluck toolbar */
  transition: background-color 0.2s ease;
}

/* When waiting for additional input (pending state), flash yellow */
.magic-erase-processing.pending .processing-dot {
  background-color: #FFB800; /* Yellow when waiting for input */
  animation: pulse 1s ease-in-out infinite;
}

/* When processing (visible class), make dot green and animate */
.magic-erase-processing.visible .processing-dot {
  background-color: #00C851; /* Brighter green when processing */
  animation: pulse 1.5s ease-in-out infinite;
}

@keyframes pulse {
  0%, 100% {
    opacity: 0.3;
    transform: scale(0.8);
  }
  50% {
    opacity: 1;
    transform: scale(1.2);
  }
}

/* Hide magic erase toolbar when other toolbars are active */
body.drawing-toolbar-active #magic-erase-toolbar,
body.text-toolbar-active #magic-erase-toolbar,
body.eraser-toolbar-active #magic-erase-toolbar,
body.magic-face-toolbar-active #magic-erase-toolbar {
  display: none !important;
}

/* Hide other toolbars when magic erase toolbar is active */
body.magic-erase-toolbar-active #drawing-toolbar,
body.magic-erase-toolbar-active #text-toolbar,
body.magic-erase-toolbar-active #eraser-toolbar,
body.magic-erase-toolbar-active #magic-face-toolbar,
body.magic-erase-toolbar-active #prompt-toolbar {
  display: none !important;
}

/* Also hide top canvas controls except undo/redo */
body.magic-erase-toolbar-active #layers-toolbar {
  display: none;
}

/* Disable undo/redo buttons when magic erase toolbar is active */
body.magic-erase-toolbar-active #undo-button,
body.magic-erase-toolbar-active #redo-button {
  opacity: 0.5 !important;
  cursor: not-allowed !important;
  pointer-events: none !important;
}

/* Mobile overrides */
@media (max-width: 768px) {
  #magic-erase-toolbar-inner {
    margin-bottom: 20px;
     padding-left: 8px;
     padding-right: 8px;
    gap: 12px;
    width: 100%;
    justify-content: space-between;
  }
  
  #magic-erase-toolbar .magic-erase-label {
    
    font-size: 13px;
    padding-left: 8px;
    padding-right: 8px;
  }
  
  #magic-erase-toolbar button {
    font-size: 13px;
    padding: 10px;
  }
  
  .magic-erase-toolbar-block button {
    font-size: 13px;
    gap: 4px;
  }
  
  /* Remove size text styles on mobile too */
  
  .magic-erase-size-current {
    min-width: 40px;
    font-size: 14px;
  }
  
  .magic-erase-toolbar-slider-block {
    position: relative;
    padding: 10px 0;
    margin: 0 8px;
  }
  
  .magic-erase-toolbar-slider-block::before {
    content: '';
    position: absolute;
    top: 0;
    left: -10px;
    right: -10px;
    bottom: 0;
    z-index: 1;
  }
  
  .magic-erase-toolbar-slider-block input[type="range"] {
    position: relative;
    z-index: 2;
  }
  
  div#magic-erase-toolbar {
    padding: 0 16px;
  }
  
  /* Mobile close button adjustments - on right for mobile */
  #magic-erase-toolbar-inner #magic-erase-close-button {
    right: -52px; /* On right for mobile */
    left: auto;
  }
  
  /* Mobile reset button adjustments - on left for mobile */
  #magic-erase-toolbar-inner #magic-erase-reset-button {
    left: -52px; /* On left for mobile */
    right: auto;
  }
   
  body.magic-erase-toolbar-active #all-canvas-controls {
    transform: none;
    opacity: 1;
    pointer-events: auto;
  }
  
  body.magic-erase-toolbar-active #all-canvas-controls .canvas-controls {
    margin-bottom: -100%;
  }
  
  body.magic-erase-toolbar-active #all-canvas-controls .canvas-controls,
  body.magic-erase-toolbar-active #all-canvas-controls #info {
    pointer-events: none;
  }

  /* Ensure popup is centered properly on mobile */
  .magic-erase-size-picker-container {
    left: 50%;
    transform: translateX(-50%);
    max-width: 280px;
  }
  
  .magic-erase-size-picker-container.visible {
    transform: translateX(-50%);
  }

  .magic-erase-size-picker-container {
    padding: 12px;
  }



  /* Visual hint for drag area on mobile */
  #magic-erase-toolbar-inner {
    position: relative;
  }
  
  /* Adjust processing indicator for mobile */
  .magic-erase-processing {
    width: 10px;
    height: 10px;
    margin-left: -4px;
    margin-right: 4px;
  }
  
  .processing-dot {
    width: 6px;
    height: 6px;
  }
  
  #magic-erase-toolbar .magic-erase-label {
    font-size: 13px;
    padding-left: 8px;
    padding-right: 8px;
    text-wrap: nowrap;
    display: block;
  }
  
  /* Change label text to shorter version on mobile */
  #magic-erase-toolbar .magic-erase-label {
    font-size: 0; /* Hide original text */
  }
  
  #magic-erase-toolbar .magic-erase-label::before {
    content: "M. Eraser";
    font-size: 13px; /* Restore font size for new text */
  }

  .magic-erase-toolbar-slider-block {
    min-width: 80px;
    margin: 0;
  }

  .magic-erase-toolbar-block {
    display: none;
  }
}
 

/* Landscape mode adjustments */
@media (max-width: 768px) and (orientation: landscape) {
  #magic-erase-toolbar {
    bottom: 50px;
  }
}  
/* Basic styles adapted from drawing-toolbar.css */

#magic-face-toolbar.hidden {
  display: none;
}

#magic-face-toolbar {
  position: fixed;
  bottom: 0;
  left: 50%;
  display: flex;
  width: auto;
  align-items: center;
  justify-content: center;
  z-index: 99999998; /* Same level as drawing/eraser toolbar */
  transform: translateY(100px) translateX(-50%);
  opacity: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
  pointer-events: none;
}

#magic-face-toolbar.visible {
  transform: translateY(0) translateX(-50%);
  opacity: 1;
  pointer-events: auto; /* Enable pointer events when visible */
}

#magic-face-toolbar button {
  background: transparent;
  border: none;
  color: #000;
  padding: 10px 11px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

#magic-face-toolbar .magic-face-label {
  background: rgba(29, 16, 149, 0.15); /* Light purple background based on #1D1095 */
  padding: 6px 12px;
  border-radius: 8px;
  color: #1D1095; /* Dark purple text */
  font-size: 15px;
  font-weight: 500;
  margin: 9px 0;
}

#magic-face-toolbar-inner {
  pointer-events: auto;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 30px;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  backdrop-filter: brightness(100%) opacity(300%) blur(20px);
  border-radius: 18px;
  color: #000;
  padding: 0px 16px;
  margin-bottom: 60px;
  gap: 16px;
}

/* Example icon style - adapt as needed */
#magic-face-toolbar-inner .magic-face-icon {
  padding-left: 8px; /* Adjust if needed */
  color: #8a8a8a;
  font-size: 17px;
}

.magic-face-toolbar-block button {
  font-size: 17px;
}

/* Toolbar blocks */
.magic-face-toolbar-block {
  position: relative;
}

/* Style for active state */
body.magic-face-toolbar-active #all-canvas-controls {
  transform: translateY(100px);
  opacity: 0;
  pointer-events: none;
}

body.magic-face-toolbar-active #object-toolbar.fixed-toolbar {
  bottom: 80px !important;
}

/* Close button styles - matching drawing/eraser toolbar style */
#magic-face-toolbar #magic-face-close-button,
#magic-face-toolbar #magic-face-reset-button {
  position: absolute;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 22px;
  padding: 0;
  transition: background-color 0.2s ease, border-color 0.2s ease;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  backdrop-filter: brightness(100%) opacity(300%) blur(20px);
  border-radius: 14px;
  color: #fff;
}

#magic-face-toolbar #magic-face-close-button {
  right: -100px;
  bottom: 60px; /* Align with toolbar */
}

#magic-face-toolbar #magic-face-reset-button {
  right: -52px;
  bottom: 60px; /* Align with toolbar */
}

/* Pulsing effect for the close button when request is in progress */
#magic-face-toolbar #magic-face-close-button.processing {
  cursor: not-allowed;
  pointer-events: none;
  overflow: hidden;
}

#magic-face-toolbar #magic-face-close-button.processing::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  border-radius: 50%;
  animation: pulse-fade 1.5s ease-in-out infinite;
}

@keyframes pulse-fade {
  0% {
    opacity: 0.2;
    background-color: rgba(255, 133, 46, 0.2);
  }
  50% {
    opacity: 0.6;
    background-color: rgba(255, 133, 46, 0.5);
  }
  100% {
    opacity: 0.2;
    background-color: rgba(255, 133, 46, 0.2);
  }
}

/* Add new animation for processing state (used by both reset and close buttons) */
@keyframes magicFacePulsate {
  0% { opacity: 0.2; }
  50% { opacity: 1; }
  100% { opacity: 0.2; }
}

/* Replace animation with simple opacity setting */
.magic-face-processing {
  opacity: 0.3 !important;
  cursor: not-allowed !important;
  pointer-events: none !important;
  transition: opacity 0.2s ease-in-out !important; /* Smooth opacity transitions */
}

/* Modifier class for smooth exit from animation */
.magic-face-processing-exit {
  opacity: 1 !important;
  transition: opacity 0.3s ease-out !important;
}

#magic-face-toolbar #magic-face-close-button:hover,
#magic-face-toolbar #magic-face-reset-button:hover {
  background-color: rgba(29, 16, 149, 0.9); /* Dark purple hover based on #1D1095 */
  border-color: #1D1095;
}

#magic-face-close-button svg *,
#magic-face-reset-button svg * {
  fill: #7f7f7f;
}

#magic-face-toolbar #magic-face-close-button:hover svg *,
#magic-face-toolbar #magic-face-reset-button:hover svg * {
  fill: #fff;
}

#magic-face-close-button svg,
#magic-face-reset-button svg {
  width: 16px;
  height: 16px;
}

button#magic-face-close-button > span,
button#magic-face-reset-button > span {
  display: block;
  line-height: 0;
}

/* Magic Face Config Dropdown Styles (similar to color-picker-container) */
.magic-face-config-dropdown {
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  overflow: hidden;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  border-radius: 12px;
  padding: 15px;
  margin-bottom: 10px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease-out, transform 0.2s ease-out;
  z-index: 9999;
  color: #000;
  transform: translateY(10px) translateX(-50%);
  backdrop-filter: brightness(100%) opacity(300%) blur(20px);
}

.magic-face-config-dropdown.open {
  opacity: 1;
  pointer-events: auto !important;
  transform: translateY(0) translateX(-50%);
  animation: dropdown-appear 0.2s ease-out;
}

.magic-face-config-dropdown.closing {
  opacity: 0;
  transform: translateY(10px) translateX(-50%);
  pointer-events: none;
  transition: opacity 0.2s ease-out, transform 0.2s ease-out;
}

/* Handle styles for swipe-to-close functionality */
.magic-face-handle {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: grab;
  z-index: 1001;
  background-color: rgba(200, 200, 200, 0.5);
  border-bottom: 1px solid rgba(143, 139, 136, 0.3);
  border-radius: 11px 11px 0 0;
  pointer-events: auto !important;
}

.magic-face-handle:active {
  cursor: grabbing;
}

/* Add the visual indicator in the handle */
.magic-face-handle::after {
  content: '';
  width: 40px;
  height: 4px;
  background-color: rgba(143, 139, 136, 0.6);
  border-radius: 4px;
  opacity: 0.6;
}
 
/* Adjust padding for content to make room for handle */
.magic-face-config-container {
  padding-top: 15px;
}

/* Hide other toolbars when magic face toolbar is active */
body.magic-face-toolbar-active #drawing-toolbar,
body.magic-face-toolbar-active #eraser-toolbar,
body.magic-face-toolbar-active #text-toolbar,
body.magic-face-toolbar-active #prompt-toolbar {
  display: none !important;
}

/* Also hide top canvas controls except undo/redo */
body.magic-face-toolbar-active #layers-toolbar {
  display: none;
}

/* Mobile Overrides */
@media (max-width: 768px) {
  #magic-face-toolbar-inner {
    margin-bottom: 20px;
    padding: 0 8px;
    gap: 0;
    width: 100%;
    justify-content: space-between;
  }

  #magic-face-toolbar-inner .magic-face-icon {
    padding-left: 8px;
    padding-right: 4px;
    font-size: 13px;
  }

  #magic-face-toolbar button {
    font-size: 13px;
    padding: 10px;
  }

  div#magic-face-toolbar {
    padding: 0 16px;
  }
  
  /* Mobile close button adjustments - positioned left and right of toolbar */
  #magic-face-toolbar #magic-face-close-button {
    right: -52px;
    bottom: 20px;
    top: auto;
    transform: none;
    margin-right: 0;
  }

  #magic-face-toolbar #magic-face-reset-button {
    left: -52px;
    right: auto;
    bottom: 20px;
    top: auto;
    transform: none;
    margin-right: 0;
  }
 
  body.magic-face-toolbar-active #all-canvas-controls {
    transform: none;
    opacity: 1;
    pointer-events: auto;
  }

  body.magic-face-toolbar-active #all-canvas-controls .canvas-controls {
    margin-bottom: -100%;
  }
  
  body.magic-face-toolbar-active #all-canvas-controls .canvas-controls,
  body.magic-face-toolbar-active #all-canvas-controls #info {
    pointer-events: none;
  }

  body.magic-face-toolbar-active #object-toolbar.fixed-toolbar {
    transform: translateY(100%);
    opacity: 0;
    pointer-events: none;
  }

  .magic-face-config-dropdown {
    bottom: 100%;
    left: 50%;
    width: 80svw !important;
    padding: 12px;
    top: auto;
    transform: translateX(-50%);
  }
  
  .magic-face-config-dropdown.open {
    transform: translateY(0) translateX(-50%);
  }

  .magic-face-inputs {
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .magic-face-menu-buttons {
    flex-direction: column;
    flex-wrap: nowrap;
  }

  #magic-face-badge {
    margin-bottom: 6px;
  }

  .magic-face-section h3 {
    font-size: 14px;
    margin-bottom: 18px;
  }

  #magic-face-menu-container .magic-face-menu-buttons {
    align-items: flex-end;
  }
}

@media (min-width: 769px) {
  body.magic-face-toolbar-active #all-canvas-controls .canvas-controls,
  body.magic-face-toolbar-active #all-canvas-controls #info {
    opacity: 0;
    transform: translateY(-100%);
    pointer-events: none;
  }
  body.magic-face-toolbar-active #object-toolbar.fixed-toolbar {
    transform: translateY(-120%); /* Adjust as needed */
    opacity: 0;
    pointer-events: none;
  }
}

/* Ensure toolbars don't overlap visually */
body.drawing-toolbar-active #magic-face-toolbar,
body.text-toolbar-active #magic-face-toolbar,
body.eraser-toolbar-active #magic-face-toolbar,
body.magic-face-toolbar-active #drawing-toolbar,
body.magic-face-toolbar-active #text-toolbar,
body.magic-face-toolbar-active #eraser-toolbar {
  display: none !important;
}

/* Add specific styles for magic face buttons/elements here */
/* Example: */
/* #magic-face-find { ... } */
/* .magic-face-option { ... } */

/* Keyframe for dropdown appearance (if needed) */
@keyframes dropdown-appear {
  from {
    opacity: 0;
    transform: translateY(10px) translateX(-50%);
  }
  to {
    opacity: 1;
    transform: translateY(0) translateX(-50%);
  }
} 


#magic-face-menu-container {
  display: none;
}

#magic-face-menu-container .magic-face-menu-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

#magic-face-menu button {
  display: flex;
  align-items: center;
  justify-content: center;
}

#magic-face-badge {
  display: flex;
  align-items: center;
  align-self: flex-start;
  margin-top: 2px;
  margin-right: 6px;
}

#magic-face-badge svg {
  width: auto;
  height: 18px;
  margin-right: 4px;
}

/* Magic Face sections and inputs styling */
.magic-face-sections {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.magic-face-section {
  display: none;
  position: relative;
}
 
.magic-face-section-inner {
  position: relative;
  top: 0;
  left: 0;
  z-index: 4;
}

.magic-face-section.active {
  display: block;
}

.magic-face-section h3 {
  font-size: 16px;
  margin-top: 0;
  margin-bottom: 12px;
  font-weight: 500;
  color: #000;
  letter-spacing: 0.5px;
}

.magic-face-input {
  display: flex;
  justify-content: space-between;
}

/* Tab styles */
.magic-face-tabs {
  display: flex;
  gap: 6px;
}

.magic-face-tab {
  background: transparent;
  border: none;
  padding: 8px 15px;
  margin-right: 5px;
  border-radius: 6px 6px 0 0;
  font-size: 14px;
  color: rgba(0, 0, 0, 0.7);
  position: relative;
  cursor: pointer;
  transition: all 0.2s ease;
}

.magic-face-tab.active {
  color: #000;
  font-weight: 500;
  background: rgba(29, 16, 149, 0.15); /* Light purple background based on #1D1095 */
}

.magic-face-tab:hover:not(.active) {
  color: rgba(0, 0, 0, 0.9);
  background: rgba(0, 0, 0, 0.05);
}

.magic-face-input-group {
  position: relative;
}

.magic-face-input-group label {
  display: block;
  margin-bottom: 8px;
  font-size: 11px;
  font-weight: 500;
  color: #000;
}

.magic-face-input-group input {
  -webkit-appearance: none !important;
  appearance: none !important;
  outline: none;
  background: rgba(0, 0, 0, 0.1) !important;
}

.magic-face-input-group input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #1D1095; /* Dark purple thumb */
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  cursor: pointer;
  border: none;
}

.magic-face-input-group input[type="range"][orient="vertical"]::-webkit-slider-thumb {
  background: transparent !important;
  box-shadow: none !important;
}

.magic-face-input-group.circular {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  width: 100px;
}

.tilt-slider-container {
  position: relative;
  height: 80px;
  bottom: -10px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
}

.tilt-slider-container::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 50px;
  background: transparent;
  border-top-left-radius: 100px;
  border-top-right-radius: 100px;
  border: 2px solid transparent;
  border-top: 2px dashed rgba(0, 0, 0, 0.3);
  transform: translateY(10px);
  z-index: 0;
}

.magic-face-input-group.circular input[type="range"].circular-slider::-webkit-slider-runnable-track {
  -webkit-appearance: none;
  height: 8px;
  background: transparent;
  border-radius: 30px;
}

.magic-face-input-group.circular input[type="range"].circular-slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 26px;
  height: 26px;
  background-image: url("data:image/svg+xml,%3Csvg width='106' height='121' viewBox='0 0 106 121' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M100.709 50.9333C101.11 42.7979 100.178 28.0013 90.4432 16.1307C82.3077 6.0004 69.7765 0.666667 53.2405 0H52.9749H52.7092C36.1732 0.666667 23.6412 6 15.3759 16.136C5.64151 28.0005 4.70924 42.8027 5.11031 50.9387C2.70924 53.0741 1.11031 55.7408 0.443643 58.9387C-0.358437 62.5376 -0.0876104 66.4075 1.37594 71.7408C3.24047 78.4075 7.11034 82.1419 11.1103 83.8763C16.3082 96.8085 25.3757 108.142 36.4437 115.21C41.3759 118.407 47.1103 120.142 52.9743 120.142C58.8383 120.142 64.5733 118.407 69.505 115.21C80.5727 108.142 89.641 96.8083 94.8383 83.8763C98.8383 82.1419 102.703 78.2773 104.573 71.7408C106.042 66.5429 106.307 62.5429 105.505 58.9387C104.708 55.7356 103.11 52.9333 100.709 50.9333Z' fill='%23FF852E'/%3E%3Cpath d='M100.709 50.9333C101.11 42.7979 100.178 28.0013 90.4432 16.1307C82.3077 6.0004 69.7765 0.666667 53.2405 0H52.9749H52.7092C36.1732 0.666667 23.6412 6 15.3759 16.136C5.64151 28.0005 4.70924 42.8027 5.11031 50.9387C2.70924 53.0741 1.11031 55.7408 0.443643 58.9387C-0.358437 62.5376 -0.0876104 66.4075 1.37594 71.7408C3.24047 78.4075 7.11034 82.1419 11.1103 83.8763C16.3082 96.8085 25.3757 108.142 36.4437 115.21C41.3759 118.407 47.1103 120.142 52.9743 120.142C58.8383 120.142 64.5733 118.407 69.505 115.21C80.5727 108.142 89.641 96.8083 94.8383 83.8763C98.8383 82.1419 102.703 78.2773 104.573 71.7408C106.042 66.5429 106.307 62.5429 105.505 58.9387C104.708 55.7356 103.11 52.9333 100.709 50.9333ZM96.7088 69.4693C94.9744 75.7349 91.1098 76.9381 88.9744 76.9381C88.839 76.9381 88.5733 77.0736 88.5733 77.2038C83.7712 91.8704 74.0427 102.537 65.104 108.272C61.3696 110.673 57.104 111.871 52.9685 111.871C48.8331 111.871 44.4373 110.673 40.8331 108.272C31.9008 102.537 22.1664 91.8704 17.3637 77.2038C17.3637 77.0684 17.0981 76.9381 16.9627 76.9381C14.9627 76.9381 10.9627 75.6048 9.22828 69.4693C7.36375 62.6672 7.49388 57.4693 13.4939 55.3333C13.6293 55.3333 13.7595 55.0677 13.7595 54.9323C13.0928 50.9323 8.02511 9.86429 52.9568 8.12963C97.8888 9.86403 92.8209 50.7963 92.1542 54.9323C92.1542 55.0677 92.2896 55.3333 92.4198 55.3333C98.4406 57.4688 98.5709 62.6667 96.7062 69.4693H96.7088Z' fill='white'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-color: transparent;
  cursor: pointer;
  border: none;
  box-shadow: none;
  margin-top: -24px;
}

.slider-value {
  display: inline-block;
  font-size: 10px;
  color: #888;
  margin-top: 3px;
  min-width: 20px;
  text-align: center;
}
 

.magic-face-button-group {
  display: flex;
  justify-content: center;
  gap: 10px;
}
 

div#magic-face-menu {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.magic-face-section h3 {
  margin-bottom: 14px;
}

.magic-face-inputs {
  display: flex;
  gap: 18px;
}

/* Joystick Control - Clean Dynamic Version */
.joystick-control {
  position: relative;
  width: 80px;
  height: 80px;
  margin: 0 auto;
  --handle-size: 25px;
  perspective: 400px;
}

.joystick-background {
  position: relative;
  width: 100%;
  height: 100%;
  border: 1px solid rgb(143 139 136 / 45%);
  border-radius: 50%;
  transform-style: preserve-3d;
}

.joystick-handle {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 26px;
  height: 26px;
  border-radius: 50%;
  cursor: grab;
  background-color: transparent;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transform-style: preserve-3d;
  z-index: 100;
  pointer-events: auto;
}

.joystick-labels {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  pointer-events: none;
  font-size: 10px;
  color: #555;
  text-align: center;
  z-index: -1;
}

.joystick-labels span {
  position: absolute;
  display: block;
  width: 12px;
  height: 12px;
  line-height: 12px;
}

.joystick-labels .label-left {
  left: 0;
  top: 50%;
  margin-top: -6px;
}

.joystick-labels .label-right {
  right: 0;
  top: 50%;
  margin-top: -6px;
}

.joystick-labels .label-top {
  left: 50%;
  top: 0;
  margin-left: -6px;
}

.joystick-labels .label-bottom {
  left: 50%;
  bottom: 0;
  margin-left: -6px;
}

/* Replace the problematic eye-slider styles with these */
.eye-slider-container {
  position: relative;
  width: 40px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Keep the eye thumb icon positioning */
.eye-thumb-icon {
  position: absolute;
  width: 24px;
  height: 24px;
  pointer-events: none;
  z-index: 4;
  left: 50%;
  transform: translateX(-50%);
  margin-top: -10px;
}

.magic-face-input-group input:not([orient="vertical"]) {
  border-radius: 5px !important;
  background: rgb(237 237 237 / 85%) !important;
  border: 1px solid rgb(143 139 136 / 45%) !important;
}

.magic-face-inputs input[orient="vertical"].eye-slider {
  background: rgb(237 237 237 / 85%) !important;
  border: 1px solid rgb(143 139 136 / 45%) !important;
  writing-mode: vertical-lr;
  direction: rtl;
  appearance: slider-vertical;
  width: 8px !important;
  overflow: hidden;
  border-radius: 5px !important;
  vertical-align: bottom;
  height: 80px !important;
}

.magic-face-eye-inputs-container {
  display: flex;
  gap: 24px;
}

 .magic-face-input-group.circular input[type="range"].circular-slider {
  -webkit-appearance: none;
  appearance: none;
  width: 100px;
  height: 60px;
  background: transparent;
  position: relative;
  outline: none;
  margin: 10px auto;
  z-index: 2;
  background: transparent !important;
  border: none !important;
}

@media (max-width: 768px) {
  .magic-face-config-dropdown {
    width: 100%;
  }
  
  .magic-face-inputs {
    justify-content: center;
    display: flex;
    flex-wrap: wrap;
    padding-top: 16px;
    padding-bottom: 16px;
  }
 
  .magic-face-menu-buttons {
    flex-direction: column;
    flex-wrap: nowrap;
  }
 
  #magic-face-badge {
    margin-bottom: 6px;
  }

  .magic-face-section h3 {
    font-size: 14px;
    margin-bottom: 18px;
  }

  #magic-face-menu-container .magic-face-menu-buttons {
    align-items: flex-end;
  }
}

/* Onboarding-specific styles */
 

/* Utility classes */
.hidden {
  display: none !important;
}

/* Container adjustments */
.auth-container.auth-page-alt {
  max-width: 580px;
  padding: 20px;
}

/* Header styles */
.auth-page-alt .auth-header {
  margin-bottom: 15px;
}

.auth-page-alt .auth-header h1 {
  font-size: 28px;
  margin-bottom: 8px;
}

.auth-page-alt .auth-header h2 {
  font-size: 18px;
}

/* Pricing section */
.auth-page-alt .pricing-details {
  padding-top: 15px !important;
}

.auth-page-alt .pricing-details h4 {
  font-size: 28px;
  margin-bottom: 16px;
  font-weight: normal;
}

.auth-page-alt h4 {
  margin: 0;
}

/* Pricing row */
.auth-page-alt .pricing-row {
  display: flex;
  align-items: baseline;
  gap: 15px;
  margin-bottom: 15px;
}

.auth-page-alt .price {
  font-size: 24px;
  margin: 0;
}

/* Trial offer badge */
.auth-page-alt .trial-offer {
  flex: 1;
  margin: 0;
  padding: 8px 10px;
  background: rgba(0, 255, 106, 0.1);
  border: 1px solid rgba(0, 255, 106, 0.3);
  border-radius: 8px;
  font-size: 13px;
}

.auth-page-alt .trial-offer strong {
  color: #00ff6a;
}

/* Pro pitch wrapper */
.auth-page-alt .pro-pitch-wrapper {
  font-size: 14px;
  line-height: 1.4;
}

/* Pro features styling */
.auth-page-alt .key-pitch {
  font-size: 15px;
  margin-bottom: 12px;
  line-height: 1.5;
}

.auth-page-alt .pricing-details h5 {
  font-size: 15px;
  margin-top: 12px;
  margin-bottom: 8px;
}

.auth-page-alt .pricing-details ul {
  margin: 8px 0 12px 0;
}

.auth-page-alt .pricing-details li {
  margin-bottom: 5px;
  font-size: 14px;
}

.auth-page-alt .pitch-item-sub {
  font-size: 12px;
  margin-top: 2px;
  padding-left: 10px;
}

.auth-page-alt .mystery-feature {
  margin-bottom: 3px;
}

.auth-page-alt .coming-soon-tag {
  font-size: 10px;
  margin-left: 8px;
}

/* Inline feature descriptions */
.auth-page-alt .pricing-details ul li {
  color: rgba(255, 255, 255, 0.9);
}

.auth-page-alt .feature-desc {
  color: rgba(255, 255, 255, 0.5);
  font-size: 13px;
}

/* Global feature description styling */
.feature-desc {
  color: rgba(255, 255, 255, 0.6);
  font-size: 13px;
}

/* Winback video styling */
.winback-video {
  margin: 10px 0 20px 0;
  border-radius: 8px;
  overflow: visible;
  position: relative;
}

.winback-video video {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 8px;
}

/* Unmute button styling */
.unmute-button {
  position: absolute;
  bottom: 10px;
  right: 10px;
  background: rgba(0, 0, 0, 0.7);
  border: none;
  color: white;
  font-size: 20px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  z-index: 10;
}

.unmute-button:hover {
  background: rgba(0, 0, 0, 0.9);
  transform: scale(1.1);
}

.unmute-button.unmuted {
  background: rgba(255, 68, 68, 0.8);
}

.unmute-button.unmuted:hover {
  background: rgba(255, 68, 68, 1);
}

/* Pulse animation to draw attention */
@keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 68, 68, 0.7);
  }
  70% {
    box-shadow: 0 0 0 10px rgba(255, 68, 68, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255, 68, 68, 0);
  }
}

.unmute-button:not(.unmuted) {
  animation: pulse 2s infinite;
}

/* Sound hint styling */
.sound-hint {
  position: absolute;
  bottom: 60px;
  right: 10px;
  background: rgba(255, 68, 68, 0.9);
  color: white;
  padding: 6px 12px;
  border-radius: 20px;
  font-size: 14px;
  font-weight: bold;
  white-space: nowrap;
  pointer-events: none;
  animation: bounce 1s ease-in-out infinite;
  z-index: 11;
}

@keyframes bounce {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-5px);
  }
}

/* Winback page red theme */
.winback-theme {
  background: #1a0505 !important;
}

 

.winback-theme h4 {
  color: #ff6b6b !important;
}

.winback-theme .trial-offer {
  background: rgba(255, 0, 0, 0.1) !important;
  border: 1px solid rgba(255, 0, 0, 0.3) !important;
  color: #ff6b6b !important;
}

.winback-theme .payment-section {
  border-top: 1px solid rgba(255, 0, 0, 0.1) !important;
}

.winback-theme .submit-button {
  background: #ff4444 !important;
  border: 1px solid #ff6666 !important;
}

.winback-theme .submit-button:hover {
  background: #ff5555 !important;
  border-color: #ff7777 !important;
}

.winback-theme .membership-action-button {
  color: rgba(255, 255, 255, 0.7) !important;
  border-color: rgba(255, 0, 0, 0.3) !important;
}

.winback-theme .membership-action-button:hover {
  color: rgba(255, 255, 255, 0.9) !important;
  border-color: rgba(255, 0, 0, 0.5) !important;
}

.winback-theme .generic-marquee-header {
  background: rgba(40, 0, 0, 0.5) !important;
}

.winback-theme .opaque-text {
  color: rgba(255, 100, 100, 0.7) !important;
}

.winback-theme .arrow {
  color: #ff4444 !important;
}

.winback-theme .price {
  color: #ffffff !important;
}

.winback-theme .trial-offer strong {
  color: #ff6b6b !important;
}

.winback-theme .form-row label {
  color: rgba(255, 255, 255, 0.8) !important;
}

/* Payment form section */
.auth-page-alt .payment-section {
  border-top: 1px solid rgba(255,255,255,0.1);
  margin-top: 15px;
  padding-top: 15px;
}

/* Payment form transitions */
.auth-page-alt #payment-form {
  animation: fadeIn 0.3s ease-in;
  margin-top: 40px;
}

.auth-page-alt .generic-marquee-header.hidden {
  animation: fadeOut 0.2s ease-out forwards;
}

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

@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

/* Removed - using regular payment-section class now
.auth-page-alt .winback-payment-section {
  border-top: 1px solid rgba(255,255,255,0.1);
  margin-top: 12px;
  padding-top: 12px;
} */

.auth-page-alt #payment-form {
  margin-bottom: 0;
}

.auth-page-alt #payment-form .form-row {
  margin-bottom: 12px;
}

.auth-page-alt #payment-form .form-row > label {
  font-size: 13px;
  margin-bottom: 8px !important;
  opacity: 0.8;
  display: block;
}

.auth-page-alt #payment-element {
  background: rgba(255,255,255,0.05);
  border-radius: 8px;
  padding: 12px;
}

/* Submit buttons */
.auth-page-alt .submit-button {
  width: 100%;
  font-size: 16px;
  padding: 12px;
  margin-top: 10px;
}

.auth-page-alt .submit-button.danger {
  background: #ff4141;
}

/* Free account button */
.auth-page-alt .auth-links {
  margin-top: 12px;
  gap: 15px;
}

.auth-page-alt .winback-auth-links {
  margin-top: 10px;
}



.auth-page-alt .membership-action-button {
  font-size: 13px;
  padding: 8px 16px;
}

.auth-page-alt .winback-free-button {
  font-size: 12px;
  padding: 6px 12px;
}

/* Marquee adjustments */
.auth-page-alt .generic-marquee-header {
  margin-top: 12px;
  margin-bottom: 12px;
  padding: 15px 0;
}

.auth-page-alt .generic-marquee-header .marquee-content > span {
  font-size: 14px;
}

/* Winback specific */
.auth-page-alt .winback-pricing {
  padding-top: 0;
}

/* Mobile adjustments */
@media (max-width: 768px) {
  .auth-container.auth-page-alt {
    padding: 15px;
  }
  
  .auth-page-alt .pricing-details h4 {
    font-size: 24px;
  }
  
  .auth-page-alt .price {
    font-size: 20px;
  }
  
  .auth-page-alt .pricing-row {
    flex-wrap: wrap;
    gap: 10px;
  }
  
  .auth-page-alt .trial-offer {
    width: 100%;
  }
}
/* Onboarding drawer styles - top positioning like export drawer */
#onboarding-drawer .drawer-container {
  top: 0;
  bottom: auto;
}

#onboarding-drawer .drawer-content {
  bottom: auto;
  top: 0;
  transform: translateY(-100%);
  border-radius: 0 0 34px 34px;
  display: flex;
  flex-direction: column;
  background: transparent; /* Light orange background */
}

#onboarding-drawer[data-drawer-state="open"] .drawer-content {
  transform: translateY(0);
}

/* Move handle to bottom for onboarding drawer */
#onboarding-drawer .drawer-handle {
  order: 2;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-left-radius: 32px;
  border-bottom-right-radius: 32px;
  background: #000; /* Lighter orange for handle */
  border-top: 1px solid #565656; /* Light orange border */
}

/* Adjust content order for onboarding drawer */
#onboarding-drawer .drawer-content-inner {
  order: 1;
  flex-direction: column-reverse;

}

@media (min-width: 1000px) {
  #onboarding-drawer .drawer-content-inner {
   height: 100%;
  }
}
/* Onboarding header styling */
#onboarding-drawer .drawer-content-header {
  border-top: 1px solid #565656;
  border-bottom: none;
  background: #4b4b4b; /* Lighter orange for header */
}

#onboarding-drawer .drawer-content-header h2 {
  color: #ff7b00; /* Darker orange for title */
}

 
#onboarding-drawer .drawer-handle-pill {
  background: #666; /* Medium orange for handle pill */
}

/* Onboarding content styles */
 

.onboarding-section h3 {
  font-size: 18px;
  margin-bottom: 16px;
  color: #ff7b00; /* Darker orange for headings */
}

.onboarding-section p {
  margin-bottom: 16px;
  color: #b4b4b4;
  font-size: 15px;
  line-height: 1.5;
}

.onboarding-section ul,
.onboarding-section ol {
  margin-left: 30px;
  color: #666;
  font-size: 15px;
  line-height: 1.5;
}

.onboarding-section li {
  padding: 8px 0;
}

.onboarding-actions {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 0px;
}

/* Updated styling for the "Start Creating Without Account" button */
#start-creating {
  background-color: transparent;
  color: #888;
  border: none;
  font-size: 14px;
  padding: 8px 16px;
  text-decoration: underline;
  cursor: pointer;
  transition: color 0.2s ease;
}

#start-creating:hover {
  color: #555;
}

.onboarding-button {
  padding: 12px 24px;
  border-radius: 30px;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
  cursor: pointer;
  transition: all 0.2s ease;
  border: none;
  text-decoration: none;
}

.onboarding-button.primary {
  background-color: #ff912d;
  color: #000;
}

.onboarding-button.primary:hover {
  background-color: #ffab5d;
}

.onboarding-button.secondary {
  background-color: #f5f5f5;
  color: #333;
  border: 1px solid #ddd;
}

.onboarding-button.secondary:hover {
  background-color: #e9e9e9;
}

@media (max-width: 768px) {
 
  
  .onboarding-section h3 {
    font-size: 16px;
  }
  
  .onboarding-section p,
  .onboarding-section li {
    font-size: 14px;
  }
  
  .onboarding-button {
    font-size: 14px;
    padding: 10px 20px;
  }
}

/* Add these styles to your onboarding_drawer.css file */

.onboarding-pitch {
  font-size: 16px;
  line-height: 1.6;
  color: #333;
  margin-bottom: 24px;
}

.onboarding-auth-buttons {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 16px;
  margin-bottom: 12px;
 
}

.onboarding-section-col:last-child {
   padding: 0px 60px 0px 90px;
}

.auth-button {
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: center;
  padding: 10px 16px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 500;
  text-decoration: none;
  transition: all 0.2s ease;
  border: 1px solid #ddd;
  background-color: #000;
  color: #fff;
}

.auth-button svg {
  margin-right: 12px;
  flex-shrink: 0;
}

    

@media (max-width: 768px) {
  .onboarding-pitch {
    font-size: 14px;
  }
  
  .auth-button {
    font-size: 14px;
    padding: 8px 12px;
  }
  
  .auth-button svg {
    width: 20px;
    height: 20px;
  }
}

.ex-image img {
  max-width: 576px; /* 620px reduced by 20% */
}

.ex-image {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 60px 0;
}

/* Add CSS variables for scaling control */
:root {
  --onboarding-scale: 1;
  --image-container-scale: 0.9;
  --floating-image-size: 40%;
  --top-right-x: -60px;
  --top-right-y: -70px;
  --top-right-secondary-x: 0px;
  --top-right-secondary-y: -110px;
  --bottom-left-x: 30px;
  --bottom-left-y: -102px;
  --main-image-width: 100%; /* Add this new variable for main image width */
}

/* Image container with relative scaling */
.image-container {
  position: relative;
  width: 100%;
  height: 100%;
  transform: scale(calc(var(--image-container-scale) * var(--onboarding-scale)));
  transform-origin: center center;
}

.main-image {
  width: var(--main-image-width); /* Use the variable instead of hardcoded value */
  display: block;
}

.floating-image {
  position: absolute;
  max-width: var(--floating-image-size);
}

.top-right {
  top: var(--top-right-y);
  right: var(--top-right-x);
  animation: float-diagonal-1 28s linear infinite;
}

.top-right-secondary {
  top: var(--top-right-secondary-y);
  right: var(--top-right-secondary-x);
  animation: float-diagonal-1 28s linear infinite;
}

.bottom-left {
  bottom: var(--bottom-left-y);
  left: var(--bottom-left-x);
  animation: float-diagonal-2 18s linear infinite;
}

.bottom-left-secondary {
  animation: float-diagonal-2 6s linear infinite;
}

@keyframes float-diagonal-1 {
  0% {
    transform: translate(0, 0);
  }
  25% {
    transform: translate(30px, 15px);
  }
  50% {
    transform: translate(0, 30px);
  }
  75% {
    transform: translate(-30px, 15px);
  }
  100% {
    transform: translate(0, 0);
  }
}

@keyframes float-diagonal-2 {
  0% {
    transform: translate(0, 0);
  }
  25% {
    transform: translate(20px, -10px);
  }
  50% {
    transform: translate(40px, 0);
  }
  75% {
    transform: translate(20px, 10px);
  }
  100% {
    transform: translate(0, 0);
  }
}

.onboarding-section-cols {
  display: flex;
}

.onboarding-section-col {
  width: 100%;
 
  display: flex;
  flex-direction: column;;
  
  justify-content: center;
  color: #fff;
}


.onboarding-section-col-header h2 {
  font-size: 42px;
  font-weight: bold;
  font-weight: 600;
}

.onboarding-section-col-header img {
  width: 78px;
  margin-bottom: -26px;
}

.onboarding-section-col-header {
  display: flex;
  align-items: center;
  gap: 20px;
  
  margin-bottom: 20px;
}
 
.onboarding-section p {
  font-size: 16px;
}

.onboarding-section-col:last-child {
  background: #141414;
  border-left: 1px solid #666;
  padding-top: 40px;
  padding-bottom: 40px;
}

.onboarding-section-col {
  /* background: #717173; */
  background: transparent;
}

.onboarding-content {
  height: 100%;
}

.onboarding-section {
  height: 100%;
  display: flex;
}

.onboarding-auth-buttons {
  width: 100%;
}
 

/* Modern marquee header for onboarding drawer only */
#onboarding-drawer .onboarding-marquee-header {
  overflow: hidden;
  padding: 0;
  border-bottom: none;
  background: #141414;
  position: sticky;
  top: 0;
  z-index: 3;
  
  display: flex
;
  align-items: center;
  padding: 22px 0;
  font-weight: 300;
}

#onboarding-drawer .marquee-container {
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
}

#onboarding-drawer .marquee-content {
  display: inline-block;
  animation: marquee 120s linear infinite;
  padding: 0;
  white-space: nowrap;
}

#onboarding-drawer .marquee-content .opaque-text {
  color: #ffffffba;
}
#onboarding-drawer .marquee-content > span {
  display: inline-block;
  font-size: 21px;
  color: #fff;
  margin-right: 36px;
  position: relative;
}

/* Remove the bullets */
#onboarding-drawer .marquee-content > span::after {
  content: "";
  margin-left: 0;
}

@keyframes marquee {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

/* Responsive adjustments */
@media (max-width: 768px) {
  #onboarding-drawer .onboarding-marquee-header {
    height: 40px;
  }
  
  #onboarding-drawer .marquee-content > span {
    font-size: 14px;
    margin-right: 20px;
  }
}


@media (max-width: 1000px) {
  .onboarding-section-cols {
    flex-direction: column;
  }
  
  .onboarding-section {
    height: auto;
    overflow-y: auto;
  }
  
  .onboarding-content {
    height: auto;
    overflow-y: auto;
  }
  
  .drawer-inner {
    overflow-y: auto;
    max-height: 80vh;
  }
  
  .onboarding-section-col {
    width: 100%;
    padding: 20px !important;
  }
  
  .onboarding-section-col:last-child {
    padding: 20px !important;
  }
  
  .ex-image {
    padding: 20px 0;
    transform: scale(0.8);
    transform-origin: center center;
    margin: -14% -10% -18% -10%;
    width: 120%;
  }
}

/* Responsive adjustments using the same variables */
@media (max-width: 1000px) {
  .onboarding-section-col {
    background: #303030;
}

  :root {
    --onboarding-scale: 0.8;
    --image-container-scale: 1.0;
    --floating-image-size: 30%; /* Reduced to ~60% of original 35% */
    --top-right-x: -40px;
    --top-right-y: -50px;
    --top-right-secondary-x: 0px;
    --top-right-secondary-y: -70px;
    --bottom-left-x: -80px; /* Changed from 120px to -80px to move in the opposite direction */
    --bottom-left-y: -70px;
    --main-image-width: 130%;
  }
  
  /* Slow down animation durations on mobile */
  .top-right, .top-right-secondary {
    animation: float-diagonal-1 12s linear infinite; /* Increased from 6s */
  }
  
  .bottom-left {
    max-width: calc(var(--floating-image-size) * 0.8);
  }
  
  /* Scale down 2A and 2B floating images to 50% of their current size */
  .top-right, .top-right-secondary {
    max-width: calc(var(--floating-image-size) * 0.5);
  }
  
  .ex-image {
    padding: 20px 0;
  }
  
  .image-container {
    max-width: 90%;
    margin: 0 auto;
    transform-origin: center center;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .main-image {
    margin: 0 auto;
  }
  
  .onboarding-section-col:first-child {
    overflow: hidden;
}

.onboarding-section-col:last-child {
    border-left: none;
}

.onboarding-section-col-header img {
  width: 42px;
  height: auto;
  margin-bottom: -16px;
}

.onboarding-section-col-header h2 {
  font-size: 26px;
}



.onboarding-section p {
  font-size: 14px;
}

button#start-creating {
  font-size: 12px;
}
}

/* Add a new media query for even smaller screens if needed */
@media (max-width: 600px) {
  :root {
    --onboarding-scale: 0.7;
    --image-container-scale: 1.0;
    --floating-image-size: 18%; /* Reduced to ~60% of original 30% */
    --main-image-width: 140%;
    --bottom-left-x: -60px; /* Changed to move in the opposite direction */
  }
}

/* Add a specific class for mobile scaling of 2A and 2B images */
@media (max-width: 1000px) {
 
  .onboarding-section-col:first-child {
    padding: 0 !important; 
    order: 3 !important;
}
  .mobile-small {
    max-width: 60% !important; /* Base size for mobile-small class */
  }
  
  /* Specific override for the 2B image */
  .top-right-secondary.mobile-small {
    max-width: 150% !important; /* Larger size specifically for 2B */
    width: 150% !important;
    left: -80px !important;
    top: -80px;
  }

  .mobile-medium {
    max-width: 120% !important; /* Medium scaling for Example-3 */
    width: 120% !important;
    left: -30px;
  }
}
.onboarding-section-col:first-child {
  border-left: 1px solid #666;
}
.onboarding-section-col:first-child::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.4); /* Lighter overlay to see more of the background */
  backdrop-filter: blur(2px); /* Reduced blur */
  -webkit-backdrop-filter: blur(2px); /* For Safari */
  z-index: -1;
}

@media (max-width: 1000px) {
  .onboarding-section-col:first-child {
    border-left: none;
}

  .onboarding-section-col:first-child::before {
    background: rgba(0, 0, 0, 0.2); /* Even lighter on mobile */
    backdrop-filter: blur(1px); /* Minimal blur on mobile */
    -webkit-backdrop-filter: blur(1px);
  }
}
 
 
#prompt-toolbar.hidden {
  display: none;
}

#prompt-toolbar {
  position: fixed;
  bottom: 0;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 99999999;
  transform: translateY(100px);
  opacity: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
  padding-right: calc(92px + 30px);
  padding-left: calc(92px + 30px);
}

#prompt-toolbar.visible {
  transform: translateY(0);
  opacity: 1;
}

#prompt-toolbar-inner {
  border: none;
  box-shadow: 0 4px 10px rgba(0, 0, 0, .15);
  padding: 0px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 24px;
  cursor: pointer;
  position: relative;
  margin-bottom: 45px;
  width: 100%;
  max-width: 600px;
}

#prompt-toolbar .prompt-toolbar-cancel {
  position: absolute;
  left: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

#prompt-toolbar #prompt-toolbar-cancel {
  margin: auto auto auto 20px;
  border-radius: 30px;
  background: #313131;
  color: #fff;
  font-size: 14px;
  padding: 5px 9px;
}

#prompt-toolbar-main {
  width: 100%;
}

#prompt-toolbar-main button {
  position: absolute;
  height: 100%;
  background: none;
  border: none;
  color: #000;
  right: 0;
  padding: 0;
  margin: 0;
  padding-right: 8px;
  z-index: 3;
}

#prompt-toolbar-main button .button-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  cursor: pointer;
  border: none;
  background: #8f49ee;
  font-weight: 500;
  border-radius: 39px;
  color: #fff;
  border: 2px outset #b075ff;
  box-shadow: 0 5px 13px rgba(0, 0, 0, .15);
  font-size: 21px;
  padding: 0 17px;
  height: 42px;
}

#prompt-toolbar-main input {
  border: none;
  padding: 13px 170px 13px 21px;
  border-radius: 30px;
  font-size: 21px;
  background: #fff;
  width: 100%;
  position: relative;
  z-index: 2;
  outline: none !important;
}

#prompt-toolbar .prompt-toolbar-message {
  position: absolute;
  bottom: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: default;
}

#prompt-toolbar .prompt-toolbar-message-inner {
  font-size: 16px;
  background-color: rgb(242 242 242 / 90%);
  border: 1px solid #d6d6d6;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  border-radius: 10px;
  margin-bottom: 10px;
  padding: 8px 16px;
}

/* Mobile styles */
@media (max-width: 1000px) {
  #prompt-toolbar {
    padding-right: 15px;
    padding-left: 15px;
  }

  #prompt-toolbar .prompt-toolbar-cancel {
    left: unset;
    right: 8px;
    top: 100%;
  }

  #prompt-toolbar-inner {
    margin-bottom: 60px;
  }

  #prompt-toolbar-main input {
    font-size: 18px;
    padding: 11px 140px 11px 18px;
  }

  #prompt-toolbar #prompt-toolbar-cancel {
    margin-top: 12px;
  }

  #prompt-toolbar-main button .button-inner {
    font-size: 18px;
    padding: 0 14px;
    height: 36px;
  }

  #prompt-toolbar .prompt-toolbar-message-inner {
    font-size: 14px;
    padding: 6px 12px;
  }
}

/* Add transition properties for the controls */
#all-canvas-controls {
  transition: transform 0.2s ease, opacity 0.2s ease;
}

#object-toolbar {
  transition: transform 0.2s ease, opacity 0.2s ease;
}

/* Add styles for when prompt is active */
body.prompt-active #all-canvas-controls {
  transform: translateY(100px);
  opacity: 0;
  pointer-events: none;
}

body.prompt-active #object-toolbar {
  transform: translateY(100px);
  opacity: 0;
  pointer-events: none;
}

/* Mobile override for info div */
@media (max-width: 768px) {
  body.prompt-active #all-canvas-controls {
    transform: none;
    opacity: 1;
    pointer-events: auto;
  }
  
  body.prompt-active #all-canvas-controls .canvas-controls,
  body.prompt-active #all-canvas-controls #info {
    transform: translateY(-100px);
    opacity: 0;
    pointer-events: none;
  }

  /* Position prompt at top for mobile */
  #prompt-toolbar {
    top: 0;
    bottom: unset;
    transform: translateY(-100px);
  }

  #prompt-toolbar.visible {
    transform: translateY(0);
  }

  #prompt-toolbar-inner {
    margin-bottom: 0;
    margin-top: 60px;
  }

  #prompt-toolbar .prompt-toolbar-cancel {
    top: unset;
    bottom: -100%;
  }
 
  #prompt-toolbar #prompt-toolbar-cancel {
    margin-top: 12px;
    margin-bottom: 0;
  }
}

/* Mode selector styles */
.prompt-toolbar-mode {
  position: absolute;
  top: -45px;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.prompt-mode-selector {
  position: relative;
}

.prompt-mode-toggle {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  background: rgba(255, 255, 255, 0.95);
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 20px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.prompt-mode-toggle:hover {
  background: #fff;
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.12);
}

.prompt-mode-toggle svg {
  transition: transform 0.2s ease;
}

.prompt-mode-toggle.menu-open svg {
  transform: rotate(180deg);
}

.prompt-mode-toggle.mode-flash {
  color: #22c55e;
}

.prompt-mode-toggle.mode-nano-banana {
  color: #f59e0b;
}

.prompt-mode-menu {
  position: absolute;
  bottom: calc(100% + 8px);
  left: 0;
  background: rgba(255, 255, 255, 0.98);
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 12px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
  overflow: hidden;
  min-width: 220px;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.prompt-mode-menu.hidden {
  display: none;
}

.prompt-mode-option {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 10px 16px;
  border: none;
  background: transparent;
  font-size: 14px;
  cursor: pointer;
  transition: background 0.2s ease;
  gap: 8px;
}

.prompt-mode-option:hover {
  background: rgba(0, 0, 0, 0.04);
}

.prompt-mode-option.active {
  background: rgba(143, 73, 238, 0.08);
  color: #8f49ee;
}

.prompt-mode-option:not(:last-child) {
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.prompt-mode-option .mode-name {
  font-weight: 500;
  flex: 1;
  text-align: left;
}

.prompt-mode-option .mode-tag {
  font-size: 11px;
  padding: 2px 8px;
  border-radius: 10px;
  background: rgba(0, 0, 0, 0.06);
  font-weight: 500;
  white-space: nowrap;
}

.prompt-mode-option[data-mode="flash"] .mode-tag {
  background: rgba(34, 197, 94, 0.1);
  color: #16a34a;
}

.prompt-mode-option[data-mode="nano_banana"] .mode-tag {
  background: rgba(251, 191, 36, 0.15);
  color: #d97706;
}

/* Mobile adjustments */
@media (max-width: 768px) {
  .prompt-toolbar-mode {
    top: unset;
    bottom: -40px;
  }
  
  .prompt-mode-menu {
    bottom: unset;
    top: calc(100% + 8px);
  }
  
  .prompt-mode-toggle {
    font-size: 13px;
    padding: 5px 10px;
  }
}
.saved-items-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
  gap: 12px;
  padding: 16px;
}


.saved-item {
  border: 1px solid #dddddd;
  border-radius: 8px;
  cursor: pointer;
  position: relative;
  display: flex;
  flex-direction: column;
}

.saved-item img {
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
}

/* .saved-item:hover {
  transform: scale(1.05);
  transition: transform 0.2s;
} */
.saved-item img {
  width: 100%;
  height: 110px;
  object-fit: cover;
  background: #f0f0f0;
}

/* Public badge for shared items */
/* Badge row container */
.saved-item .badge-row {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  padding: 6px 10px;
  justify-content: center;
  display: flex;
  align-items: center;
  gap: 6px;
  z-index: 1;
}

/* Public badge (orange) */
.saved-item .badge-row .public-badge {
  background: #06E257;
  color: #000;
  border: 1px solid #009135;
  border-radius: 6px;
  font-size: 11px;
  padding: 2px 6px;
}

/* Views badge (white with eye) */
.saved-item .badge-row .views-badge {
  background: rgb(176 176 176 / 50%);
  color: #fff;
  margin-left: auto;
  border-radius: 6px;
  font-size: 12px;
  padding: 2px 6px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.saved-item .badge-row .views-badge svg {
  width: 12px;
  height: 12px;
  display: block;
}

.saved-item-info {
  padding: 8px;
  position: relative;
  height: 100%;
}

.saved-item-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.saved-item-header h3 {
  margin: 0;
  font-size: 13px;
  line-height: 1.2;
  color: #333333;
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  white-space: normal;
}

.saved-items-controls {
  padding: 16px;
  margin: -16px;
}

.sign-in-prompt {
  text-align: center;
  padding: 32px;
}

.sign-in-prompt p {
  margin-bottom: 16px;
  color: #666666;
}

#save-new-item {
  background: transparent;
  border: none;
  padding: 0;
  cursor: pointer;
}

#save-new-item .button-inner,
#save-current-canvas .button-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #ff912d;
  font-weight: 500;
  border-radius: 30px;
  padding: 5px 13px 6px;
  height: 29px;
  font-size: 13px;
  color: #000;
  transition: 0.2s ease all;
}

@media (hover: hover) and (pointer: fine) {
  #save-new-item .button-inner:hover,
  #save-current-canvas .button-inner:hover {
    background: #111;
    color: #fff;
  }
}

#save-new-item .button-inner:active,
#save-current-canvas .button-inner:active {
  background: #111;
  color: #fff;
}

.saved-item-menu-trigger {
  position: static;
  background: transparent;
  border: none;
  border-radius: 4px;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  opacity: 1;
  padding: 0;
}

.saved-item-menu-trigger svg {
  width: 16px;
  height: 16px;
  fill: #666;
}

.saved-item-menu-trigger:hover svg {
  fill: #333;
}

.saved-item-menu {
  position: absolute;
  top: 100%;
  top: calc(100% - 20px);
  margin-top: 4px;
  right: 0px;
  cursor: pointer;
  display: none;
  z-index: 100;
  flex-direction: column;
}

.saved-item-menu.active {
  display: flex;
  gap: 6px;
  padding-top: 10px;
}

.saved-item-menu button {
  display: block;
  padding: 8px;
  border: none;
  background: none;
  text-align: left;
  cursor: pointer;
  color: #333;
  font-size: 13px;
}

.saved-item-menu button.restore-canvas {
  background: #4CAF50; /* Green for restore */
  color: white;
  border: 1px solid #3e8e41;
  border-radius: 8px;
  margin-bottom: 0px; /* Add spacing between buttons */
}

.saved-item-menu button.restore-canvas:hover {
  background: #45a049;
}

.saved-item-menu button.delete {
  background: #d02525;
  color: white;
  border: 1px solid #ad0505;
  border-radius: 8px;
}

.saved-item-menu button.delete:hover {
  background: #b01010;
}

/* Share/Unshare buttons styled consistently */
.saved-item-menu button.share-canvas {
  background: #ff912d;
  color: #000;
  border: 1px solid #de6c05;
  border-radius: 8px;
}

.saved-item-menu button.share-canvas:hover {
  background: #ffab5d;
}

.saved-item-menu button.unshare-canvas {
  background: #666;
  color: #fff;
  border: 1px solid #555;
  border-radius: 8px;
}

.saved-item-menu button.unshare-canvas:hover {
  background: #555;
}

/* Copy link button */
.saved-item-menu button.copy-link {
  background: #ffffff;
  color: #111;
  border: 1px solid #8b8b8b;
  border-radius: 8px;
}

.saved-item-menu button.copy-link:hover {
  background: #f2f2f2;
}

.saved-items-empty-state {
  text-align: center;
  padding: 48px 24px;
  color: #666666;
  width: 100%;
  max-width: 505px;
  margin-left: auto;
  margin-right: auto;
}

.saved-items-empty-state p {
  margin: 0;
  font-size: 16px;
  line-height: 1.5;
}

p.saved-items-empty-subtitle.first+p.saved-items-empty-subtitle.second {
  margin-top: 14px;
}

.saved-items-empty-state p.saved-items-empty-subtitle {
  margin-top: 18px;
}

.saved-items-empty-state .saved-items-empty-subtitle {
  margin-top: 8px;
  font-size: 13px;
  color: #888888;
}

@media screen and (max-width: 768px) {
  .saved-items-empty-state p {
    font-size: 14px;
  }

  .saved-items-empty-state .saved-items-empty-subtitle {
    font-size: 11px;
  }

  .saved-item-header h3 {
    font-size: 11px;
  }
}

.video-thumbnail {
  position: relative;
  width: 100%;
}

.video-play-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.3);
}

.video-play-overlay svg {
  width: 48px;
  height: 48px;
  fill: white;
}

.video-drawer {
  position: fixed;
  right: 0;
  top: 0;
  bottom: 0;
  width: 80%;
  max-width: 800px;
  background: white;
  box-shadow: -2px 0 5px rgba(0, 0, 0, 0.2);
  z-index: 1000;
  padding: 20px;
}

#library-drawer .download-button {
  display: block;
  margin-top: 20px;
  padding: 10px 20px;
  background: #007bff;
  color: white;
  text-align: center;
  text-decoration: none;
  border-radius: 4px;
}

#library-drawer .download-button:hover {
  background: #0056b3;
}

.video-generating-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.5);
  color: white;
}

.spinner {
  width: 40px;
  height: 40px;
  border: 3px solid rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  border-top-color: white;
  animation: spin 1s linear infinite;
  margin-bottom: 10px;
}

.generating-text {
  font-size: 14px;
  font-weight: 500;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

.bulk-actions {
  padding: 12px 16px;
  background: #f5f5f5;
  border-bottom: 1px solid #ddd;
  display: none;
  align-items: center;
  gap: 12px;
  justify-content: space-between;
}

.saved-item.selectable {
  position: relative;
}

.saved-item.selectable::before {
  content: '';
  position: absolute;
  bottom: 8px;
  right: 8px;
  width: 20px;
  height: 20px;
  border: 1px solid #ddd;
  border-radius: 4px;
  background: white;
  z-index: 1;
  transition: all 0.2s ease;
}

.saved-item.selected::before {
  background: #000;
  border-color: #000;
}

.saved-item.selected::after {
  content: '';
  position: absolute;
  bottom: 8px;
  right: 8px;
  width: 20px;
  height: 20px;
  border: 1px solid transparent;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmZmZmYiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cG9seWxpbmUgcG9pbnRzPSIyMCA2IDkgMTcgNCAxMiI+PC9wb2x5bGluZT48L3N2Zz4=);
  background-size: 80%;
  background-repeat: no-repeat;
  background-position: center;
}

.bulk-delete-button {
  background: #d02525;
  color: white;
  border: none;
  padding: 6px 14px;
  border-radius: 24px;
  cursor: pointer;
  font-size: 13px;
  margin-left: auto;
}

.bulk-delete-button:disabled {
  background: #999;
  cursor: not-allowed;
}

button#select-items-button .button-inner,
.cancel-selection-button {
  cursor: pointer;
  background: #fff;
  border-radius: 30px;
  color: #111;
  font-weight: 500;
  font-size: 13px;
  display: inline-block;
  border: 1px solid #8b8b8b;
  padding: 3px 12px 4px;
}

@media (hover: hover) and (pointer: fine) {

  button#select-items-button .button-inner:hover,
  .cancel-selection-button:hover {
    background: #000;
    color: #fff;
  }
}

button#select-items-button .button-inner:active,
.cancel-selection-button:active {
  background: #000;
  color: #fff;
}

.select-controls {
  padding: 4px 32px;
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: flex-end;
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: center;
}

span#bulk-select-label {
  opacity: .6;
  margin-right: 30px;
}

.select-controls {
  padding: 12px 16px;
  background: #f5f5f5;
  border-bottom: 1px solid #ddd;
  align-items: center;
  gap: 12px;
}

@media screen and (max-width: 768px) {
  div#bulk-actions {
    flex-direction: column;
    align-items: flex-start;
  }

  .bulk-actions-bottom {
    display: flex;
    width: 100%;
  }

  .bulk-delete-button {
    margin-left: 0;
    margin-right: auto;
    width: 100%;
  }

  .bulk-actions-top {
    width: 100%;
    display: flex;
    justify-content: space-between;
  }

  .bulk-actions-top {
    font-size: 13px;
  }

  button#select-items-button .button-inner,
  .cancel-selection-button {
    font-size: 12px;
    padding: 0px 10px;
  }

  .bulk-delete-button {
    font-size: 12px;
  }

  .saved-items-controls button#select-items-button {
    display: none;
  }

  #saved-items-controls-mobile {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 8px 16px;
    background: #fff;
    border-top: 1px solid #ddd;
    display: flex;
    z-index: 4;
  }
}

.saved-items--desktop-only {
  display: inline-block;
}

.saved-items--mobile-only {
  display: none;
}

#select-items-button-mobile {
  margin-left: auto;
  background: transparent;
  border: none;
  padding: 0;
}

#select-items-button-mobile .button-inner {
  cursor: pointer;
  background: #fff;
  border-radius: 14px;
  color: #666;
  border: 1px solid #acacac;
  font-size: 13px;
  display: inline-block;
  padding: 2px 12px;
  font-size: 11px;
  color: #111;
  border-color: #8b8b8b;
}

@media screen and (max-width: 768px) {
  .saved-items--desktop-only {
    display: none;
  }

  .saved-items--mobile-only {
    display: inline-block;
  }

  .saved-items-controls {
    padding: 8px;
    margin: -8px;
  }

  .bulk-actions {
    border-top: 1px solid #ddd;
  }
}

.bulk-select-active button.saved-item-menu-trigger {
  visibility: hidden;
  pointer-events: none;
}

#saved-items-grid.bulk-select-active {
  padding-top: 72px;
}

#bulk-actions {
  display: flex;
  position: fixed;
  left: 0;
  width: 100%;
  z-index: 2;
}

@media screen and (min-width: 769px) {
  #bulk-actions {
    top: 90px;
  }
}

@media screen and (max-width: 768px) {
  #bulk-actions {
    bottom: 38px;
  }

  #saved-items-grid.bulk-select-active {
    padding-top: 16px;
  }

  #masterpieces-grid.bulk-select-active {
    padding-top: 16px;
    padding-bottom: 79px; /* Add padding for mobile bulk select */
  }
}

.saved-items-sections {
  display: flex;
  flex-direction: column;
  gap: 0px;
  height: 100%;
}

.saved-items-section:empty {
  display: none;
}

div#saved-items-grid:empty {
  display: none;
}

/* Hide section headers if their grid is empty */
.saved-items-section .drawer-content-header {
  height: 63px;
}

@media screen and (max-width: 768px) {
  div#saved-items-grid .saved-item img {
    height: 60px
  }

  div#masterpieces-grid .saved-item img {
    height: 60px
  }
}


@media screen and (max-width: 768px) {
  .saved-items-grid {
    grid-template-columns: repeat(4, 1fr);
  }

  .saved-item-header h3 {
    display: none;
  }

  .saved-item-menu-trigger {
    margin-left: auto;
    margin-right: auto;
    height: 18px;
  }

  .saved-item-menu-trigger svg {
    transform: rotate(90deg);
  }

  .saved-item-info {
    padding: 0;
  }
}

/* Styles for Saved Canvas items */
/* Removed:
   - .saved-canvas img
   - .saved-canvas .saved-item-menu button.load
   - .saved-canvas .saved-item-menu button.delete
   - #saved-canvases-grid specific styles
*/

/* Skeleton UI Loading States */
.skeleton-item {
  background: #f5f5f5;
  border-radius: 8px;
  overflow: hidden;
  position: relative;
  animation: skeleton-pulse 1.5s ease-in-out infinite;
  height: auto;
}

.skeleton-item::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(255, 255, 255, 0.4) 50%,
    transparent 100%
  );
  animation: skeleton-wave 1.5s ease-in-out infinite;
}

.skeleton-thumbnail {
  width: 100%;
  aspect-ratio: 1;
  background: #e0e0e0;
}

.skeleton-info {
  padding: 12px;
  height: 60px;
}

.skeleton-title {
  height: 20px;
  background: #e0e0e0;
  border-radius: 4px;
  margin-bottom: 8px;
  width: 80%;
}

@keyframes skeleton-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.8;
  }
}

@keyframes skeleton-wave {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(100%);
  }
}

/* Load More Button */
.load-more-button {
  width: auto;
  margin: 20px auto;
  padding: 12px 24px;
  background: #ff912d;
  border: 1px solid #de6c05;
  border-radius: 30px;
  color: #000;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 14px;
  text-align: center;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Add spacing between sections when load more button is present */
.saved-items-section {
  margin-bottom: 20px;
}

.saved-items-section:last-child {
  margin-bottom: 0;
}

.load-more-button:hover:not(:disabled) {
  background: #ffab5d;
}

.load-more-button:active {
  background: #ff9f48;
}

.load-more-button:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

.load-more-button .button-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.saved-items-section:last-child {
  padding-bottom: 50px;
}

@media screen and (max-width: 768px) {
  .saved-item .badge-row {
    flex-direction: column;
    gap: 2px;
    padding: 3px;
    align-items: flex-start;
}

.saved-item .badge-row .views-badge {
    margin-left: 0;
}
}
#shape-toolbar.hidden {
  display: none;
}

#shape-toolbar {
  position: fixed;
  bottom: 0;
  left: 50%;

  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 99999999;
  transform: translateY(100px) translateX(-50%);
  opacity: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
}

#shape-toolbar.visible {
  transform: translateY(0) translateX(-50%);
  opacity: 1;
}

#shape-toolbar button {
  background: transparent;
  border: none;
  color: #000;
  padding: 10px 11px;
  display: flex;
  align-items: center;
  justify-content: center;
}

#shape-toolbar-inner {
  pointer-events: auto;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 30px;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  backdrop-filter: brightness(100%) opacity(300%) blur(20px);
  border-radius: 18px;
  color: #000;
  padding: 0px 16px;
  margin-bottom: 60px;
  gap: 16px;
}

#shape-toolbar .shape-icon {
  background: rgba(255, 255, 255, 0.3); /* Clean white/light gray background */
  padding: 6px 12px;
  border-radius: 8px;
  color: #8a8a8a; /* Light gray text */
  font-size: 15px;
  font-weight: 500;
  margin: 9px 0;
}

.shape-toolbar-block button {
  font-size: 17px;
}

/* Color indicator box - match drawing toolbar size */
.shape-toolbar-color-icon {
  width: 24px;
  height: 24px;
  border-radius: 5px;
  display: inline-block;
  vertical-align: middle;
  border: 1px solid rgba(0, 0, 0, 0.3);
  background: var(--shape-color, #000000);
}

/* Shape toolbar blocks */
.shape-toolbar-block {
  position: relative;
}
 
/* Add styles for when shape toolbar is active */
body.shape-toolbar-active #all-canvas-controls {
  transform: translateY(100px);
  opacity: 0;
  pointer-events: none;
}

body.shape-toolbar-active #object-toolbar.fixed-toolbar {
  bottom: 80px !important;
}

/* Mobile override for info div */
@media (max-width: 768px) {
  #shape-toolbar-inner {
    margin-bottom: 20px;
    padding: 0 8px;
  }

  #shape-toolbar-inner {
    gap: 0;
    justify-content: space-between;
  }

  #shape-toolbar-inner .shape-icon {
    padding-left: 8px;
    padding-right: 4px;
    font-size: 13px;
  }

  #shape-toolbar button {
    font-size: 13px;
    padding: 10px;
  }

  div#shape-toolbar {
    padding: 0 16px;
    width: 100%;
  }

  body.shape-toolbar-active #all-canvas-controls {
    transform: none;
    opacity: 1;
    pointer-events: auto;
  }

  body.shape-toolbar-active #all-canvas-controls .canvas-controls {
    margin-bottom: -100%;
  }

  body.shape-toolbar-active #all-canvas-controls .canvas-controls,
  body.shape-toolbar-active #all-canvas-controls #info {
    pointer-events: none;
  }
  
}
#snipe-toolbar.hidden {
  display: none;
}

#snipe-toolbar {
  position: fixed;
  bottom: 0;
  width: auto;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 99999998; /* Same level as other toolbars */
  transform: translateY(100px) translateX(-50%);
  opacity: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
  pointer-events: none;
}

#snipe-toolbar.visible {
  transform: translateY(0) translateX(-50%);
  opacity: 1;
}

#snipe-toolbar button {
  background: transparent;
  border: none;
  color: #000;
  padding: 10px 11px;
  display: flex;
  align-items: center;
  justify-content: center;
}
 
#snipe-toolbar .snipe-icon svg {
  width: 15px;
  height: 15px;
}

#snipe-toolbar .snipe-icon svg path {
  fill: #1D4E89; /* Dark blue to match theme */
}

#snipe-toolbar .snipe-label {
  background: rgba(29, 78, 137, 0.2); /* Dark blue background to match snipe theme */
  padding: 6px 12px;
  border-radius: 8px;
  color: #1D4E89; /* Dark blue text */
  font-size: 15px;
  font-weight: 500;
  margin: 9px 0;
}

/* Status dot styles */
.snipe-status-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  border: 1px solid rgb(143 139 136 / 45%);
  background-color: #FFD700; /* Yellow by default */
  display: none; /* Hidden by default */
  position: relative;
  transition: background-color 0.3s ease;
}

.snipe-status-dot.processing {
  display: inline-block;
  animation: pulsateStatusDot 1.2s ease-in-out infinite;
  background-color: #FFD700; /* Yellow for processing */
}

.snipe-status-dot.ready {
  display: inline-block;
  animation: none;
  background-color: #00BC7C; /* Green for ready */
}

@keyframes pulsateStatusDot {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  50% {
    transform: scale(1.2);
    background: transparent;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}

#snipe-toolbar-inner {
  pointer-events: auto;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 30px;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  backdrop-filter: brightness(100%) opacity(300%) blur(20px);
  border-radius: 18px;
  color: #000;
  padding: 0px 16px;
  margin-bottom: 60px;
  gap: 10px;
}

/* Close button styles */
#snipe-toolbar-inner #snipe-close-button {
  position: absolute;
  right: -52px;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 22px;
  padding: 0;
  transition: background-color 0.2s ease, border-color 0.2s ease;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  backdrop-filter: brightness(100%) opacity(300%) blur(20px);
  border-radius: 14px;
  color: #fff;
}

#snipe-toolbar-inner #snipe-close-button:hover {
  background-color: #1D4E89; /* Dark blue on hover */
  border-color: #163A61;
}

#snipe-toolbar-inner #snipe-close-button:active {
  transform: scale(0.95);
}

#snipe-close-button svg * {
  fill: #7f7f7f;
}

#snipe-close-button:hover svg * {
  fill: #fff; /* White on hover */
}

#snipe-close-button svg {
  width: 16px;
  height: 16px;
}

button#snipe-close-button > span {
  display: block;
  line-height: 0;
}

/* Hide other controls when snipe toolbar is active */
body.snipe-toolbar-active #all-canvas-controls {
  transform: translateY(100px);
  opacity: 0;
  pointer-events: none;
}

body.snipe-toolbar-active #object-toolbar {
  display: none !important;
}

/* Hide snipe toolbar when other toolbars are active */
body.text-toolbar-active #snipe-toolbar,
body.drawing-toolbar-active #snipe-toolbar,
body.eraser-toolbar-active #snipe-toolbar,
body.magic-face-toolbar-active #snipe-toolbar,
body.cropping-toolbar-active #snipe-toolbar {
  display: none;
}

/* Hide other toolbars when snipe toolbar is active */
body.snipe-toolbar-active #text-toolbar,
body.snipe-toolbar-active #drawing-toolbar,
body.snipe-toolbar-active #eraser-toolbar,
body.snipe-toolbar-active #magic-face-toolbar,
body.snipe-toolbar-active #cropping-toolbar,
body.snipe-toolbar-active #prompt-toolbar {
  display: none !important;
}

/* Also hide top canvas controls */
body.snipe-toolbar-active #layers-toolbar {
  display: none;
}

/* Mobile overrides */
@media (max-width: 768px) {
  #snipe-toolbar-inner {
    margin-bottom: 20px;
    padding-left: 8px;
    padding-right: 8px;
     
    gap: 8px;
    width: auto;
     
  }
  
  #snipe-toolbar .snipe-label {
    padding-left: 8px;
    padding-right: 8px;
    font-size: 13px;
  }
  
  .snipe-status-dot {
    width: 6px;
    height: 6px;
    margin-right: 4px;
  }
  
  #snipe-toolbar button {
    font-size: 13px;
    padding: 10px;
  }
  
  div#snipe-toolbar {
    padding: 0 16px;
  }
 
   
  body.snipe-toolbar-active #all-canvas-controls {
    transform: none;
    opacity: 1;
    pointer-events: auto;
  }
  
  body.snipe-toolbar-active #all-canvas-controls .canvas-controls {
    margin-bottom: -100%;
  }
  
  body.snipe-toolbar-active #all-canvas-controls .canvas-controls,
  body.snipe-toolbar-active #all-canvas-controls #info {
    pointer-events: none;
  }
} 
#text-toolbar.hidden {
  display: none;
}

#text-toolbar {
  position: fixed;
  bottom: 0;
  left: 50%;

  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 99999999;
  transform: translateY(100px) translateX(-50%);
  opacity: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
}

#text-toolbar.visible {
  transform: translateY(0) translateX(-50%);
  opacity: 1;
}


#text-toolbar button {
  background: transparent;
  border: none;
  color: #000;
  padding: 10px 11px;
  display: flex;
  align-items: center;
  justify-content: center;
}

#text-toolbar-inner {
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgb(0 0 0);
  position: relative;
  overflow: hidden;
  padding: 0px 16px;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  backdrop-filter: brightness(100%) opacity(300%) blur(20px);
  border-radius: 18px;
  position: relative;
  margin-bottom: 60px;
  gap: 16px;
}

#text-toolbar-inner .text-icon {
  background: rgba(255, 255, 255, 0.3);
  padding: 6px;
  border-radius: 8px;
  color: #8a8a8a;
  font-size: 17px;
}




.text-toolbar-block button {
  font-size: 17px;
}

/* Color indicator box */
.color-indicator {
  width: 18px;
  height: 18px;
  border-radius: 4px;
  display: inline-block;
  vertical-align: middle;
  border: 1px solid rgba(255, 255, 255, 0.3);
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1);
}

/* Text toolbar blocks */
.text-toolbar-block {
  position: relative;

}

/* Color picker styles */
.color-picker-container {
  position: absolute;
  bottom: 100%;
  left: -9999px;
  overflow: hidden;
  background-color: rgb(224 224 224 / 100%);
  border: 1px solid rgb(143 139 136 / 45%);
  border-radius: 12px;
  padding: 15px;
  margin-bottom: 10px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease-out, transform 0.2s ease-out;
  z-index: 9999;
  color: #000;
  transform: translateY(10px) translateX(-50%);
}

.color-picker-container.open {
  left: 50%;
  opacity: 1;
  pointer-events: auto !important;
  transform: translateY(0) translateX(-50%);
  animation: dropdown-appear 0.2s ease-out;
}

/* Closing animation state keeps it on-screen to allow fade/slide, then CSS returns it off-screen */
.color-picker-container.closing {
  left: 50%;
  opacity: 0;
  transform: translateY(10px) translateX(-50%);
  pointer-events: none;
  transition: opacity 0.2s ease-out, transform 0.2s ease-out;
}

.color-picker-panel {
  padding-top: 25px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 250px;
}

.color-picker-gradient {
  height: 150px;
  border-radius: 8px;
  cursor: crosshair;
  position: relative;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1);
}

.color-selector-dot {
  position: absolute;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 2px solid white;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(0, 0, 0, 0.3);
  transform: translate(-50%, -50%);
  pointer-events: none;
  transition: border-color 0.2s ease-in-out;
  z-index: 2;
}

.color-picker-slider {
  padding: 5px 0;
}

.hue-slider {
  width: 100%;
  height: 10px;
  -webkit-appearance: none;
  appearance: none;
  background: linear-gradient(to right,
      #ff0000, #ffff00, #00ff00, #00ffff, #0000ff, #ff00ff, #ff0000);
  border-radius: 5px;
  outline: none;
}

.hue-slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 18px;
  height: 18px;
  background: white;
  border-radius: 50%;
  cursor: pointer;
  border: 2px solid rgba(0, 0, 0, 1);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.hue-slider::-moz-range-thumb {
  width: 18px;
  height: 18px;
  background: white;
  border-radius: 50%;
  cursor: pointer;
  border: 2px solid rgba(0, 0, 0, 0.2);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.color-presets {
  width: 100%;
  position: relative;
}

.color-presets-inner {
  display: grid;
  grid-template-columns: repeat(9, 1fr);
  gap: 4px;
}


.color-preset {
  width: 100%;
  aspect-ratio: 1;
  border-radius: 6px;
  cursor: pointer;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.2);
  transition: transform 0.15s ease, box-shadow 0.2s ease;
}

.color-preset.active {
  border: 2px solid #000;
  position: relative;
  z-index: 2;
}

/* Color dropper preset styles */
.color-dropper-preset {
  background-color: #f0f0f0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.color-dropper-preset svg {
  width: 12px;
  height: 12px;
  opacity: 1;
}

.color-dropper-preset:hover {
  background-color: #e0e0e0;
}

.color-dropper-preset:active {
  background-color: #d0d0d0;
}

/* Font dropdown styles */

/* Font Dropdown Styles */
.font-dropdown-inner {
  position: relative;
  overflow-y: overlay;
  /* Change from auto to overlay */

}



.font-option {
  padding: 10px 16px;
  cursor: pointer;
  transition: background-color 0.2s;
  font-size: 16px;
  white-space: nowrap;
  width: 100%;
}

.font-option:active {
  background-color: #333;
}

@media (hover: hover) and (pointer: fine) {

  .font-option:hover {
    background-color: #333;

  }
}

/* Preload web fonts with zero opacity to prevent FOUT */
.font-preload {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  left: -9999px;
  bottom: -9999px;
}

.font-option-selected {
  background-color: #333;
  font-weight: bold;
}

/* /Font dropdown styles */

/* Add styles for when text toolbar is active */
body.text-toolbar-active #all-canvas-controls {
  transform: translateY(100px);
  opacity: 0;
  pointer-events: none;
}

body.text-toolbar-active #object-toolbar.fixed-toolbar {
  bottom: 80px !important;
  ;
}


/* Mobile override for info div */
@media (max-width: 768px) {
  #text-toolbar-inner {
    margin-bottom: 20px;
    padding: 0 8px;
  }

  #text-toolbar-inner .color-indicator {
    width: 18px;
    height: 18px;
  }



  #text-toolbar-inner {
    gap: 0;
    width: 100%;
    justify-content: space-between;
  }

  #text-toolbar-inner .text-icon {
    padding-left: 8px;
    padding-right: 4px;
    font-size: 13px;
  }

  #text-toolbar button {
    font-size: 13px;
    padding: 10px;
  }

  div#text-toolbar {
    padding: 0 16px;
    width: 100%;
  }

  body.text-toolbar-active #all-canvas-controls {
    transform: none;
    opacity: 1;
    pointer-events: auto;

  }

  body.text-toolbar-active #all-canvas-controls .canvas-controls {
    margin-bottom: -100%;
  }

  body.text-toolbar-active #all-canvas-controls .canvas-controls,
  body.text-toolbar-active #all-canvas-controls #info {
    pointer-events: none;
  }

  .color-picker-container {
    left: -9999px;
  }

  .color-picker-container.open {
    left: 50%;
    transform: translateX(-50%);
  }
  
  .color-picker-container.closing {
    left: 50%;
    transform: translateX(-50%);
  }

  .color-picker-container {
    padding: 12px;
  }



  .color-presets {
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
    overflow: hidden;
    width: calc(100% + 24px);
    margin-right: -12px;
    margin-left: -12px;
    position: relative;
  }


  /* Add the shadow element styles */
  .color-presets-shadow {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 30px;
    pointer-events: none;
    z-index: 2;
    transition: transform 0s ease-in-out;
  }

  .color-presets-shadow-right {
    right: 0;
    background: linear-gradient(to right, rgba(224, 224, 224, 0), rgba(224, 224, 224, 0.85));
  }

  .color-presets-shadow-left {
    left: 0;
    background: linear-gradient(to left, rgba(224, 224, 224, 0), rgba(224, 224, 224, 0.85));
  }

  .color-presets-inner::-webkit-scrollbar {
    display: none;
  }

  .color-presets-inner {
    -ms-overflow-style: none;
    /* Internet Explorer 10+ */
    scrollbar-width: none;
    /* Firefox */
    overflow: scroll;
    height: 30px;
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
    gap: 5px;
  }

  .color-preset {
    min-width: 30px;
  }

  .color-preset:last-child {
    margin-right: 15px;
  }

  .color-preset:first-child {
    margin-left: 15px;
  }
}

/* Weight and Style dropdown styles */
.weight-style-dropdown {
  background-color: #000000;
  border-radius: 12px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);
  padding: 10px 0;
  margin-bottom: 10px;
  opacity: 1;
  pointer-events: all;
  z-index: 9999;
  border: 1px solid #333;
  color: #fff;
  width: 300px;
}

.weight-style-panels {
  display: flex;
  gap: 10px;
  padding: 0 10px;
}

.weight-panel,
.style-panel {
  flex: 1;
  min-width: 0;
  padding-bottom: 10px !important;
}

.dropdown-section-header {
  font-size: 12px;
  font-weight: normal;
  margin-bottom: 8px;
  padding: 12px 0 12px;
  border-bottom: 1px dashed rgb(143 139 136 / 30%);
  width: calc(100% + 20px);
  margin-left: -10px;
  padding-left: 12px;

}

.menu-option {
  padding: 7px 11px;
  cursor: pointer;
  transition: background-color 0.2s ease;
  white-space: nowrap;
  border-radius: 6px;
  font-size: 14px;

}

.menu-option:hover {
  background-color: rgba(0, 0, 0, 0.08);
  transform: translateX(2px);
  transition: transform 0.15s ease, background-color 0.2s ease;
}

.option-selected {
  background-color: rgba(0, 0, 0, 0.06);
  position: relative;
}

.option-selected::after {
  content: '';
  position: absolute;
  right: 12px;
  transform: translateY(-50%);
  top: 50%;
  width: 14px;
  height: 11px;
  background-image: url("data:image/svg+xml,%3Csvg width='87' height='71' viewBox='0 0 87 71' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24.224 70.7759L0.890625 47.4425L8.66663 39.6665L24.224 55.2239L78.6666 0.775879L86.4426 8.55708L24.224 70.7759Z' fill='%23fff'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  filter: invert(1);
}

.no-options-message {
  padding: 8px 12px;
  color: #888;
  font-style: italic;
  font-size: 14px;
}

/* Media query for mobile */
@media (max-width: 768px) {
  .weight-style-dropdown {
    width: 260px;
  }

  .weight-style-panels {
    gap: 5px;
  }

  .menu-option {
    padding: 8px 10px;
  }
}

/* Font dropdown styles for desktop */
.font-dropdown {
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);



  padding: 0px 0;
  margin-bottom: 10px;
  z-index: 9999;
  border: 1px solid rgb(143 139 136 / 45%);
  color: #000;
  max-width: 90vw;
  animation: dropdown-appear 0.2s ease-out;
  opacity: 1;

  max-height: 300px;
  transition: opacity 0.2s ease-out, transform 0.2s ease-out;

  display: flex;
  overflow: hidden;
  width: 180px;
  text-align: left;
  z-index: 99;
  background-color: rgb(224 224 224 / 85%);
  backdrop-filter: brightness(100%) opacity(300%) blur(20px);
  border-radius: 12px;

  /* Add new cursor property to indicate draggability */
  cursor: grab;
}

/* Add a visual indicator at the top of the dropdown */
.font-dropdown::before {
  content: '';
  position: absolute;
  top: 8px;
  left: 50%;
  transform: translateX(-50%);
  width: 40px;
  height: 4px;
  background-color: #444;
  border-radius: 4px;
  opacity: 0.6;
}

.font-dropdown:active {
  cursor: grabbing;
}

.font-dropdown.closing {
  opacity: 0;
  transform: translateY(10px) translateX(-50%);
  pointer-events: none;
  transition: opacity 0.2s ease-out, transform 0.2s ease-out;
}

.font-panel {
  border-right: 1px solid rgb(143 139 136 / 30%);
  padding: 0 10px;
}

.weight-panel {
  padding: 0 10px;
}

.style-panel {
  border-top: 1px solid rgb(143 139 136 / 30%);
  padding: 0 10px;
}

@keyframes dropdown-appear {
  from {
    opacity: 0;
    transform: translateY(10px) translateX(-50%);
  }

  to {
    opacity: 1;
    transform: translateY(0) translateX(-50%);
  }
}

.all-formatting-panels {
  display: flex;
  flex-direction: row;
  /* Two columns side by side */
  width: 100%;
  /* Ensure full width is used */
}

.font-panel {
  min-width: 0;
  width: 50%;
  /* Adjust width for the font panel to be half */
}

/* Container for weight and style panels stacked vertically */
.weight-style-container {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 50%;
  /* Take up half the width */
}

.weight-panel,
.style-panel {
  min-width: 0;
  width: 100%;
  /* Take full width of parent container */
}

.font-list-container {
  max-height: 100%;
  overflow-y: auto;

  /* Scrollbar styling */
  scrollbar-width: thin;
  scrollbar-color: rgba(143, 139, 136, 0.6) rgba(143, 139, 136, 0.1);
  width: calc(100% + 10px);
  margin-right: -10px;
  padding-right: 10px;
  padding-bottom: 10px;
}

.font-list-container::-webkit-scrollbar {
  width: 6px;
}

.font-list-container::-webkit-scrollbar-track {
  background: rgba(143, 139, 136, 0.1);
  border-radius: 3px;
}

.font-list-container::-webkit-scrollbar-thumb {
  background-color: rgba(143, 139, 136, 0.6);
  border-radius: 3px;
}

.menu-option {
  padding: 8px 12px;
  cursor: pointer;
  transition: background-color 0.2s ease;
  white-space: nowrap;
  border-radius: 6px;

}

.menu-option:hover {
  background-color: rgba(0, 0, 0, 0.08);
  transform: translateX(2px);
  transition: transform 0.15s ease, background-color 0.2s ease;
}

.option-selected {
  background-color: rgba(0, 0, 0, 0.06);
  position: relative;
}


.no-options-message {
  padding: 8px 12px;
  color: #888;
  font-style: italic;
  font-size: 14px;
}

/* Media query for mobile */
@media (max-width: 768px) {
  .font-dropdown {
    width: 330px;
    /* Slightly wider to accommodate the layout */
  }

  .font-panel {
    width: 50%;
    /* Keep font panel taking half width */
  }

  .weight-style-container {
    width: 50%;
    /* Keep weight/style container taking half width */
    gap: 5px;
    /* Smaller gap on mobile */
  }

  .menu-option {
    padding: 5px 7px;
    font-size: 13px;
  }

  .dropdown-section-header {
    font-size: 13px;
    margin-bottom: 6px;
    padding-bottom: 6px;
  }

  .font-dropdown {
    max-height: 250px;
  }
}

/* Add subtle hover effects for panel items */
.all-formatting-panels .menu-option {
  transition: all 0.15s ease-out;
}



@media (hover: hover) and (pointer: fine) {

  .all-formatting-panels .menu-option:hover {
    background-color: rgba(0, 0, 0, 0.08);
    padding-left: 15px;
  }
}


.all-formatting-panels .menu-option:active {
  background-color: rgba(0, 0, 0, 0.08);
  padding-left: 15px;
}



/* Remove the pseudo-element handle */
.font-dropdown::before {
  content: none;
}

/* Add styles for the actual handle div */
.font-dropdown-handle {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: grab;
  z-index: 1;
  background-color: rgba(200, 200, 200, 0.5);
  border-bottom: 1px solid rgba(143, 139, 136, 0.3);
}

.font-dropdown-handle:active {
  cursor: grabbing;
}

/* Add the visual indicator in the handle */
.font-dropdown-handle::after {
  content: '';
  width: 40px;
  height: 4px;
  background-color: rgba(143, 139, 136, 0.6);
  border-radius: 4px;
  opacity: 0.6;
}

/* Adjust padding for content to make room for handle */
.all-formatting-panels {
  padding-top: 25px;
}

/* Fix z-index values to prevent issues */
.font-dropdown {
  z-index: 1000;
}

/* Update handle styles for color picker */
.color-picker-handle {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: grab;
  z-index: 1001;
  background-color: rgba(200, 200, 200, 0.5);
  border-bottom: 1px solid rgba(143, 139, 136, 0.3);
  border-radius: 11px 11px 0 0;
  pointer-events: auto !important;
}

.color-picker-handle:active {
  cursor: grabbing;
}

/* Add the visual indicator in the handle */
.color-picker-handle::after {
  content: '';
  width: 40px;
  height: 4px;
  background-color: rgba(143, 139, 136, 0.6);
  border-radius: 4px;
  opacity: 0.6;
}

/* Additional style for container to ensure clicks work properly */
/* Duplicate open block consolidated above */

#text-toolbar #text-close-button {
  position: absolute;
  right: -52px;
  /* Position it offset from the right edge */
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 22px;
  padding: 0;
  transition: background-color 0.2s ease, border-color 0.2s ease;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  backdrop-filter: brightness(100%) opacity(300%) blur(20px);
  border-radius: 14px;
  color: #fff;
}

#text-toolbar #text-close-button:hover {
  background-color: rgba(0, 0, 0, 0.9);
  border-color: #000;
}

#text-toolbar #text-close-button:active {
  transform: translateY(-50%) scale(0.95);
}

#text-close-button svg * {
  fill: #7f7f7f;
}

#text-toolbar #text-close-button:hover svg * {
  fill: #fff;
}

#text-close-button svg {
  width: 16px;
  height: 16px;
}

button#text-close-button>span {
  display: block;
  line-height: 0;
}

/* Mobile override for close button */
@media (max-width: 768px) {
  #text-toolbar #text-close-button {
    right: 50%;
    top: -32px;
    margin-right: -20px;
    transform: translateY(-50%);
  }
}


#text-toolbar button svg {
  height: 17px;
  width: auto;
}



.text-toolbar-align-icon {
  background: #d8d8d8;
   
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6px;
  margin: -6px;
  border-radius: 6px;
}

.text-toolbar-align-icon .align-icon {
  position: relative;
  width: 20px;
  display: flex;
  gap: 2px;
  flex-direction: column;
}

.text-toolbar-align-icon .align-icon .align-icon--bar {
  width: 100%;
  height: 4px;
  border: 1px solid #000;
  border-radius: 2px;
  background: #dddddd;
}

.text-toolbar-align-icon .align-icon .align-icon--bar.middle {
  width: 70%;
}

.text-toolbar-align-icon.centered .align-icon {
  align-items: center;
}

.text-toolbar-align-icon.right .align-icon {
  align-items: flex-end;
}

@media (max-width: 768px) {
  .text-toolbar-align-icon .align-icon {
    width: 16px;
  }
}

.text-toolbar-font-icon,
.text-toolbar-outline-icon,
.text-toolbar-color-icon,
.text-toolbar-bg-icon {
  background: #d8d8d8;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6px;
  margin: -2.5px;
  border-radius: 6px;
}
/*
 * This is a manifest file that'll be compiled into application.css, which will include all the files
 * listed below.
 *
 * Any CSS (and SCSS, if configured) file within this directory, lib/assets/stylesheets, or any plugin's
 * vendor/assets/stylesheets directory can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the bottom of the
 * compiled file so the styles you add here take precedence over styles defined in any other CSS
 * files in this directory. Styles in this file should be added after the last require_* statement.
 * It is generally better to create a new file per style scope.
 *



 */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

strong {
  font-weight: bold;
}

* {
  box-sizing: border-box;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: bold;
}

/* End Reset */
* {
  -webkit-tap-highlight-color: transparent;
}

/* Body */
body {
  background: #f0f0f0;
  transition: background-color 0.3s ease;
  background-repeat: no-repeat;


  color: rgb(25, 31, 31);
}

body * {
  font-family: 'Space Mono', monospace;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  letter-spacing: -0.02em;
}

/* End Body */

.relative {
  position: relative;
}

.canvas-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 2;
  /* Ensure canvas is above segmentation map */
}

@keyframes shimmer {
  0% {
    background-position: -1000px 0;
  }

  100% {
    background-position: 1000px 0;
  }
}

.face-detection-rect {
  position: absolute;
  z-index: 3;
  border-width: initial;
  border-style: none;
  border-color: initial;
  border-image: initial;
  padding: 5px 9px;
  pointer-events: none;
}

.model-status-message.face-detection-cancel svg {
  height: auto;
  width: 7px;
  margin-left: 6px;
}

.model-status-message.face-detection-cancel {
  display: flex;
  position: absolute;
  top: -24px;
  padding-right: 9px;
  right: -22px;
  cursor: pointer;
  pointer-events: auto;
  z-index: 5;
}

.model-status-message.face-detection-cancel {
  background: #000;
  color: #fff;
}

.model-status-message.face-detection-cancel svg {
  fill: #fff;
}

.model-status-message.toast-error {
  background: #ff4f4f;
  color: #fff;
}

.model-status-message.toast-size-bg {
  background: #66B2FF;
  color: #fff;
}

.model-status-message.toast-error svg {
  width: 10px !important;
  margin-top: 7px;
}

.model-status-message.toast-success-bg {
  background: #3ff88c;
  color: #000;
}

.model-status-message.toast-success svg {
  fill: #000;
  opacity: 0.7;
}

.face-detection-rect-bg-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  overflow: hidden;
  border-radius: 7px;
  box-shadow: rgba(0, 0, 0, 0.03) 0px 4px 10px;
}

.face-detection-rect-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  min-width: 200px;
  transition: 0.3s ease-out;
  overflow: hidden;
  animation: shimmer 13s infinite linear;
  background: linear-gradient(to right, rgb(239 241 243 / 15%) 4%, rgb(226 226 226 / 40%) 25%, rgb(239 241 243 / 15%) 44%), rgb(226 226 226 / 20%) 78%;
}

.model-status-message.face-detection-event {
  position: absolute;
  right: 5px;
  top: 4px;
  text-wrap: nowrap;
}

.canvas-control {
  position: relative;
}

.canvas-control-button {
  background: transparent;
  border: none;
  padding: 0;
}

.canvas-control-button svg {
  height: auto;
  width: auto;
}

.canvas-control-button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.canvas-control[data-control="search"] {
  border: none;
  padding: 0px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 24px;
  cursor: pointer;
  position: relative;
}

.canvas-control[data-control="search"] input {
  border: none;
  padding: 10px 27px 10px 16px;
  border-radius: 30px;
  font-size: 16px;
  background: #fff;
  border: 1px solid #cbc7c4;
  width: 100%;
  padding-right: 63px;
  position: relative;
  z-index: 2;
  outline: none !important;
}

/* floatingLabel.style.opacity = '0';
             floatingLabel.style.top = '50%';
             floatingLabel.style.transform = 'translateY(-50%)'; */
.canvas-control .floating-label {
  position: absolute;
  pointer-events: none;
  left: 50%;
  background: rgb(255 255 255 / 50%);
  transition: 0.2s ease all;
  opacity: 1;
  font-size: 14px;
  color: #000;
  padding: 4px 8px;
  border-radius: 10px;
  text-wrap: nowrap;
  z-index: 1;
  opacity: 0;
  top: 50%;
  transform: translateY(-50%);
}

.canvas-control[data-control="search"] .floating-label {
  left: 26px;
  transform: translateY(-50%);
}

.canvas-control[data-control="search"] input:focus+.floating-label,
.canvas-control[data-control="search"] input:not(:placeholder-shown)+.floating-label,
.canvas-control[data-control="search"] .input-focused .floating-label {
  opacity: 1;
  top: -30px;
  transform: translateY(0);
}

.canvas-control[data-control="search"] input:focus::placeholder {
  opacity: 0;
}

.canvas-control .button-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  cursor: pointer;
  border: none;
  background: #ff912d;
  border: 1px solid #de6c05;
  font-weight: 500;
  border-radius: 30px;
  padding: 5px 13px 6px;
  height: 29px;
  font-size: 13px;
  color: #000;
}
 
.canvas-control[data-control="search"] button {
  position: absolute;
  height: 100%;
  background: none;
  border: none;
  color: #000;
  right: 0;
  padding: 0;
  margin: 0;
  padding-right: 6px;
  z-index: 3;
}

.canvas-control button:focus,
.canvas-control button:active {
  outline: none;
}

.canvas-control .button-inner.bigger {
  font-size: 16px;
  padding: 0 13px;
  height: 32px;
}

.canvas-control .button-inner {
  transition: 0.2s ease all;
}

@media (hover: hover) and (pointer: fine) {
  .library-button:hover {
    background-color: #ffe983;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08),
      0 0 20px rgba(255, 232, 131, 0.2)
  }

  .library-button:hover::before {
    background-color: #ffe983;
  }

  .account-button:hover {
    background-color: #c0c0c0;
    box-shadow: 0 4px 10px rgba(0, 0, 0, .08),
      0 0 20px rgba(255, 232, 131, 0.2)
  }

  .account-button:hover::before {
    background-color: #c0c0c0;
  }

  .account-button.logged-in:hover {
    background-color: #51ff9a;
    box-shadow: 0 4px 10px rgba(0, 0, 0, .08),
      0 0 20px rgba(131, 255, 167, 0.2)
  }

  .account-button.logged-in:hover::before {
    background-color: #51ff9a;
  }
}

.library-button:active {
  background-color: #ffe983;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08),
    0 0 20px rgba(255, 232, 131, 0.2)
}

.library-button:active::before {
  background-color: #ffe983;
}

.account-button:active {
  background-color: #c0c0c0;
  box-shadow: 0 4px 10px rgba(0, 0, 0, .08),
    0 0 20px rgba(255, 232, 131, 0.2)
}

.account-button:active::before {
  background-color: #c0c0c0;
}

.account-button.logged-in:active {
  background-color: #51ff9a;
  box-shadow: 0 4px 10px rgba(0, 0, 0, .08),
    0 0 20px rgba(131, 255, 167, 0.2)
}

.account-button.logged-in:active::before {
  background-color: #51ff9a;
}

@media (hover: hover) and (pointer: fine) {
  #info .info-button-group .button-inner:hover {
    background: rgb(176 176 176 / 70%);
  }
}

#info .info-button-group button:active .button-inner {
  background: rgb(176 176 176 / 70%);
}

@media (hover: hover) and (pointer: fine) {

  button.nav-button.next .nav-button-icon:hover svg>rect:first-child,
  button.nav-button.prev .nav-button-icon:hover svg>rect:first-child {
    fill: #e3e3e3;
  }
}

button.nav-button.next:active .nav-button-icon svg>rect:first-child,
button.nav-button.prev:active .nav-button-icon svg>rect:first-child {
  fill: #dcdcdc;
}

#confirm-image {
  transition: all 0.2s ease-in-out;
}

@media (hover: hover) and (pointer: fine) {
  #confirm-image:hover {
    opacity: 0.5;
  }
}

#confirm-image:active {
  opacity: 0.5;
}

#cancel-image {
  transition: all 0.2s ease-in-out;
}

@media (hover: hover) and (pointer: fine) {
  #cancel-image:hover {
    opacity: 0.5;
  }
}

#cancel-image:active {
  opacity: 0.5;
}

@media (hover: hover) and (pointer: fine) {
  #object-toolbar button:not(.no-hover):hover {
    background-color: #313131;
  }
}

#object-toolbar button:not(.no-hover):active {
  background-color: rgb(46, 46, 46);
  ;
}

@media (hover: hover) and (pointer: fine) {
  .canvas-control button .button-inner:hover {
    background-color: #ffab5d;
  }
}

.canvas-control button:active .button-inner {
  background-color: #ff9f48;
}

#all-canvas-controls {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 9;
  width: 100%;
  /* padding: 24px; */
  padding: 42px 42px 24px;
  pointer-events: none;
  display: flex;
  flex-direction: row-reverse;
  align-items: flex-end;
  transition: 0.2s ease all;
}

#all-canvas-controls button,
.canvas-controls input {
  pointer-events: auto;
}

.canvas-controls {
  display: flex;

  justify-content: space-between;
  flex-direction: row;
  align-items: flex-end;
  gap: 18px;
  overflow: visible;
}

.loading-spinner-wrap {
  position: relative;
  display: none;
  border: none;
  padding: 8px 27px;
  border-radius: 30px;
  font-size: 21px;
  background: #fff;
  width: 200px;
  padding-right: 63px;
  height: 44px;
  vertical-align: bottom;
}

@media (max-width: 768px) {
  .loading-spinner-wrap {
    height: 40.5px;
  }
}

.loading-spinner {
  width: 20px;
  height: 20px;
  border: 2px solid #f3f3f3;
  border-top: 2px solid #ff912d;
  ;
  border-radius: 50%;
  animation: spin_search 1s linear infinite;
  position: relative;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.loading-spinner.no-position {
  position: absolute;
  left: unset;
}

@keyframes spin_search {
  0% {
    transform: translateY(-50%) rotate(0deg);
  }

  100% {
    transform: translateY(-50%) rotate(360deg);
  }
}

.canvas-control[data-control="search"] input:disabled {
  background-color: #f0f0f0;
}

.canvas-control[data-control="search"] button:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

#image-navigation-inner {

  background: #fff;
  border: 1px solid #cbc7c4;
  padding: 10px;
  flex-direction: column-reverse;
  display: flex;
  border-radius: 21px;

}

.nav-label {
  font-size: 15px;
  display: block;
  text-align: center;
  padding: 9px 4px 0;
}

.image-navigation {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 10px;
}

.nav-button {
  background: none;
  border: none;
  font-size: 20px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.nav-button.clicked .key-top {
  fill: #666;
}

#confirm-image {
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  cursor: pointer;
  border: none;
  background: #000;
  color: #fff;
  padding: 0;
  width: 94px;
  height: 32px;
  font-weight: 500;
  font-size: 16px;
  border-radius: 30px;
  position: relative;
}

#cancel-image {
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  cursor: pointer;
  border: none;
  background: rgb(176 176 176 / 50%);
  border: 1px solid rgb(143 139 136 / 35%);
  color: #000;
  padding: 0;
  width: 72px;
  height: 24px;
  font-weight: 500;
  font-size: 14px;
  border-radius: 30px;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  margin-top: 10px;
  position: absolute;
  bottom: -35px;
  left: 50%;
  transform: translateX(-50%);
}

button.nav-button {
  position: absolute;
  bottom: 9px;
  height: 60px;
  width: 60px;

}


#image-navigation-badge:empty {
  display: none;
}

#image-navigation-badge {
  margin-bottom: 12px;
  margin-top: 4px;
  gap: 6px;
}

#image-navigation-badge .app-meme-badge,
#image-navigation-badge .hq-meme-badge {
  display: inline-block;
}

#image-navigation-badge .app-meme-badge svg,
#image-navigation-badge .hq-meme-badge svg {
  height: 19px;
  width: auto;
}


button.nav-button.prev {
  left: -75px;
}

button.nav-button.next {
  right: -75px;
}

span.nav-button-icon svg {
  width: 36px;
  height: auto;
}

span.nav-button-icon {
  display: flex;
}

#font-scale-container {
  align-items: center;
  margin-top: 10px;
}

#font-scale-slider {
  width: 100px;
  margin: 0 10px;
}

#font-scale-value {
  min-width: 30px;
  text-align: right;
}

/* disable highlighting */
.canvas-control *,
.no-highlight,
.no-highlight * {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.canvas-control-group {
  display: flex;
  gap: 20px;
  align-items: flex-end;
  justify-content: flex-end;
  overflow: visible;
}

@media (min-width: 769px) {
  .canvas-controls {
    flex-direction: column;
  }

  /* .canvas-control-group:first-child {
     justify-content: flex-start;
   } */
}

@media (max-width: 768px) {
  .canvas-control-group {
    gap: 14px;
  }

  #secondary-control-buttons .canvas-control .button-inner {
    font-size: 12px;
  }

  #all-canvas-controls {
    padding: 16px;
  }

  .canvas-control[data-control="search"] input {
    font-size: 15px;
    padding: 9px 20px;
    max-width: 60vw;
  }

  .canvas-controls {
    flex-direction: column;
    gap: 16px;
  }

  #all-canvas-controls > .canvas-controls {
    width: 100%;
  }

 
 
}

@media (max-width: 431px) {
  #secondary-control-buttons {
    gap: 7px !important;
  }

  .canvas-controls {
    gap: 14px !important;
  }
 
  #secondary-control-buttons {
    margin-left: unset !important;
    width: 100%;
    justify-content: space-between !important;
  }
}

@media (max-width: 429px) {

  #primary-control-buttons.canvas-control-group {
    gap: 3px !important;
  }
}
/* ********************
  * Dimensional grid background *
  ******************** */
.dimensional-grid-wrap {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 1;
  overflow: hidden;
  background-color: #dadfed;
}

svg.dimensional-grid {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background-color: transparent;
  z-index: 1;
  transition: filter 0.2s ease-in-out;
  /* Smooth transition for filter change */
}

svg.dimensional-grid.mobile {
  display: none;
}

@media (max-width: 431px) and (min-width: 411px) {
  svg.dimensional-grid {
    width: 130%;
    height: 130%;
    left: -15%;
    top: -15%;
  }
}

@media (max-width: 431px) {
  svg.dimensional-grid.mobile {
    display: block;
  }

  svg.dimensional-grid.desktop {
    display: none;
  }
}

@media (max-width: 389px) {
  svg.dimensional-grid.mobile {
    width: 122%;
    left: -11%;
    height: 122%;
    top: -11%;
  }
}

/* ********************
  * Info AI Status *
  ******************** */
#info {
  display: flex;
  align-items: center;
  margin-right: auto;
}

#info-inner {
  display: flex;
  flex-direction: column-reverse;
  position: relative;
  background: transparent;
  cursor: pointer;
  border: none;
}

#info #info-inner-content {
  pointer-events: none;
  background: #e6e9f3;
  font-weight: 500;
  border-radius: 30px;
  padding: 5px 9px 5px 4px;
  height: 29px;
  font-size: 13px;

  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 2;
  border: 1px solid rgb(143 139 136 / 65%);
}

#info .status-dot {
  width: 14px;
  height: 14px;
  display: block;
  position: relative;
  margin-left: 5px;
}

#info .status-dot::before {
  content: "";
  height: 14px;
  width: 14px;
  position: absolute;
  left: 1%;
  top: 50%;
  border-radius: 100%;
  background-color: #00ff6a;
  filter: blur(3px);
  transform: translateY(-50%);
  transition: all 1s cubic-bezier(0.19, 1, 0.22, 1);
  will-change: filter, background-color;
}

#info .status-dot.loading::before {
  background-color: rgb(229, 151, 0);
  filter: blur(2.9px);
}

#info .status-dot.not-loading::before {
  background-color: rgb(244, 82, 82);
  filter: blur(3.1px);
}

#info #info-messages {
  width: 300px;
}

#info .model-status-messages {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: absolute;
  margin-bottom: 9px;
  margin-left: 9px;
  z-index: 1;
  gap: 7px;
}

#info .model-status-logo {
  min-width: 70px;
}

#info .model-status-logo a {
  pointer-events: auto;
  display: block;
  cursor: pointer;
}

#info .model-status-logo svg {
  height: 11px;
  width: auto;
  margin-left: 7px;
  margin-right: 7px;
}

#info .model-status-logo svg * {
  fill: #000;
  opacity: .5;
}

.model-status-message {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  background: transparent;
  cursor: pointer;
  border: none;
  background: #b0b0b0;
  font-weight: 500;
  border-radius: 14px;
  padding: 5px 9px;
  padding-right: 24px;
  position: relative;
  font-size: 11px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, .15);
  transition: all 0.3s ease-out;
}

.model-status-message.fade-out {
  opacity: 0;
  height: 0 !important;
  overflow: hidden;
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
  margin-bottom: 0;
  opacity: 0;
}

.model-status-message .toast-spinner {
  position: absolute;
  top: 10px;
  right: 7px;
  margin-top: -5px;
  width: 10px;
  height: 10px;
  border: 1px solid #000;
  ;
  border-top: 1px solid transparent;
  border-radius: 50%;
  animation: spin 1s linear infinite;
}

.model-status-message .toast-icon {
  position: absolute;
  right: 7px;
  margin-top: -5px;
  width: 10px;
  font-size: 20px;
}

.model-status-message .toast-icon svg {
  width: 11px;
  height: auto;
  opacity: .5;
}

.model-status-message.toast-warning-bg {
  background: #ffdf4e;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

.toast-action-message {
  position: relative;
  background: #3ff88c;
  /* Same as toast-success-bg */
  color: #000;
}

#info .info-text-container {
  min-width: 70px;
}

#info .info-button-group {
  display: flex;
  gap: 10px;
  margin-left: 30px;
}

#info .info-button-group .button-inner {
  background: rgb(176 176 176 / 50%);
  border: 1px solid rgb(143 139 136 / 35%);
}

#info .info-button-group svg {
  width: 14px;
  height: auto;
  margin-bottom: -1px;
}

#info .info-button-group .canvas-control-button.disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}

.info-button-group {
  pointer-events: none;
}

.info-button-group button {
  pointer-events: auto;
}

.info-button-group .canvas-control-button {
  touch-action: manipulation;
}

@media (min-width: 769px) {
  #info .model-status-messages {
    bottom: 100%;
  }
}

@media (max-width: 768px) {
  #info .info-button-group {
    margin-left: auto;
  }

  #info,
  #info-inner {
    width: 100%;
  }

  #info {
    position: fixed;
    top: 0;
    right: 0;
    padding: 16px;
  }

  #info .model-status-messages {
    top: 100%;
    margin-bottom: 0;
    margin-top: 14px;
    margin-left: 0;
    left: 0px;
    align-items: flex-start;
    flex-direction: column-reverse;
    width: 49svw;
  }
}


#object-toolbar input[orient="vertical"] {
  writing-mode: vertical-lr;
  direction: rtl;
  appearance: slider-vertical;
  width: 16px;
  vertical-align: bottom;
  height: unset;
}

#eraser-size-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

#segment-face-button.failed {
  background-color: #e74c3c;
  color: white;
}

#segment-button.segmented,
#object-toolbar button.active {
  /* background-color: #4CAF50; /* or any color to indicate active state */
  color: white;
}

#object-toolbar button.active::after {
  width: calc(100% + 6px);
  height: calc(100% + 6px);
  border: 2px solid #000;
  position: absolute;
  content: '';
  border-radius: 34px;
}

#object-toolbar button.active {
  position: relative;
}

#segment-button-divider {
  width: 1px;
  height: 100%;
  background: rgb(174 181 198);
  box-shadow: 0px 4px 10px rgba(0, 0, 0, .15);
}

#erasing-badge,
#segment-badge,
#magic-badge,
#magic-face-badge,
.menu-badge,
#additional-settings-badge {
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  font-size: 12px;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.15);
  border-radius: 14px;
  padding: 3px 14px 3px 14px;
  transition: 0.3s ease-out;
  overflow: hidden;
}

#additional-settings-badge {
  background-color: #999999;
}

#erasing-badge {
  background-color: #ff4f4f;
}

#segment-badge {
  background-color: #ffdf4e;
}

#magic-badge {
  background-color: #8f49ee;
  color: #fff;
  margin-left: auto;
}

#magic-face-badge {
  background-color: #8f49ee;
  color: #fff;
  margin-left: auto;
}

#crop-badge {
  background: #8f49ee;
  color: #fff;
}

#crop-badge svg {
  filter: invert(1);
}

#snipe-badge {
  background: #0084e2;
  color: #fff;
}

#snipe-badge.pluck-against {
  background: #df1d61;
}

#snipe-badge svg {
  filter: invert(1);
}

#erasing-badge svg,
#segment-badge svg,
#magic-badge svg,
.menu-badge svg {
  height: 16px;
  width: auto;
  margin-right: 8px;
}

#object-toolbar-inner {
  flex-wrap: nowrap;
  display: flex;
}

#eraser-size {
  margin-left: 10px;
  align-items: center;
  font-size: 12px;
  width: 200px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  height: 100%;
}

#eraser-size label {
  position: absolute;
  bottom: -20px;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  font-size: 12px;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.15);
  background: #b0b0b0;
  border-radius: 14px;
  padding: 3px 14px 3px 14px;
  transition: 0.3s ease-out;
  overflow: hidden;
}

input#eraser-size-slider {
  -webkit-appearance: none;
  width: 100%;
  height: 10px;
  border-radius: 5px;
  background: #b0b0b0;
  outline: none;
  opacity: 1;
  -webkit-transition: .2s;
  transition: opacity .2s;
}

input#eraser-size-slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: #F9524E;
  cursor: pointer;
}

#object-toolbar-inner .flex-buttons {
  display: flex;
  gap: 10px;
}

#object-toolbar button {
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-weight: 500;
  height: 29px;
  font-size: 13px;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, .15);
  border-width: initial;
  border-style: none;
  border-color: initial;
  border-image: initial;
  background: #000;
  color: #fff;
  border-radius: 30px;
  padding: 3px 13px 4px;
  border: 1px solid #666;
  white-space: nowrap;
}

#object-toolbar button#confirm-erasing,
#object-toolbar button#confirm-cropping,
#object-toolbar button#confirm-snipe,
#object-toolbar button#confirm-masking {
  background: #777;
}

#object-toolbar button .text-icon {
  display: inline-block;
  opacity: 0.5;
  margin-right: 6px;
}

#segment-menu {
  display: flex;
  gap: 10px;
}

.segment-menu-buttons {
  display: flex;
  gap: 10px;
}

#segment-snipe-buttons {
  display: flex;
  gap: 10px;
}

@media (max-width: 768px) {
  div#segment-menu {
    flex-direction: column;
  }

  div#segment-badge {
    margin-right: auto;
  }

  .segment-menu-buttons {
    gap: 4px;
  }

  #object-toolbar-inner .flex-buttons {
    gap: 4px;
  }

  #object-toolbar button {
    font-size: 12px;
    padding: 5px 9px;
    height: 27px;
    vertical-align: top;
  }
}

.failed-badge {
  font-size: 11px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, .15);
  transition: all 0.3s ease-out;
  overflow: hidden;
  display: flex;
  position: absolute;
  top: -24px;
  padding-right: 9px;
  right: -22px;
  cursor: pointer;
  pointer-events: auto;
  z-index: 5;
  background-color: #e74c3c;
  color: white;
}

#segment-face-button[data-face-detection-failed="true"] {
  background: red;
  pointer-events: none;
  cursor: not-allowed;
}

#segment-menu-container[data-segment-state="face"] #segment-face-button[data-face-detection-failed="false"][data-face-detection-completed="true"] {
  background: green;
}

.default-buttons.flex-buttons {
  flex-direction: column-reverse;
}

#cursor-canvas {
  display: block;
}

@media (hover: none) and (pointer: coarse) {
  #cursor-canvas {
    display: none;
  }
}

#object-toolbar.rotate-visible button#rotate-button {
  opacity: .6;
}

div#object-toolbar.below {
  margin-top: 24px;
}

.canvas-container.mask-mode {
  cursor: none !important;
}

#mask-size {
  margin-left: 10px;
  align-items: center;
  font-size: 12px;
  width: 200px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  height: 100%;
}

#mask-size label {
  position: absolute;
  bottom: -20px;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  font-size: 12px;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.15);
  background: #b0b0b0;
  border-radius: 14px;
  padding: 3px 14px 3px 14px;
  transition: 0.3s ease-out;
  overflow: hidden;
}

input#mask-size-slider {
  -webkit-appearance: none;
  width: 100%;
  height: 10px;
  border-radius: 5px;
  background: #b0b0b0;
  outline: none;
  opacity: 1;
  -webkit-transition: .2s;
  transition: opacity .2s;
}

input#mask-size-slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: #66B2FF;
  cursor: pointer;
}

/* Add masking badge styles similar to erasing badge */
#masking-badge {
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  font-size: 12px;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.15);
  border-radius: 14px;
  padding: 3px 14px 3px 14px;
  transition: 0.3s ease-out;
  overflow: hidden;
  background-color: #66B2FF;
}

#masking-badge svg {
  height: 16px;
  width: auto;
  margin-right: 8px;
}


.info-container {
  display: flex;
  align-items: center;
  gap: 12px;
  pointer-events: none;
}


.account-button-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.account-button {
  pointer-events: auto;
  position: relative;
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  transition: color 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;

  background: rgb(176 176 176 / 50%);
  border: 1px solid rgb(143 139 136 / 35%);
  padding: 4px 5px 5px;
  border-radius: 30px;
  position: relative;
}



.account-button.logged-in::before {
  background: #00ff6a;
}

.account-button>svg {
  width: 20px;
  height: auto;
}

.account-button:hover {
  color: rgba(255, 255, 255, 0.9);
}

.account-button.logged-in {
  color: #000;
  background: #00ff6a;
  ;
}


.account-button>svg * {
  fill: #000;
}

.account-button {
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.help-button {
  color: rgba(0, 0, 0, 0.9);
  text-decoration: none;
  transition: all 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f0f0f0;
  padding: 4px 5px 5px;
  border-radius: 30px;
  box-shadow: inset 0 0 9px rgba(0, 0, 0, .3);
  position: relative;
  border: none;
  cursor: pointer;
  margin-left: 8px;
  width: 30px;
  height: 30px;
}

.help-button::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: #f0f0f0;
  filter: blur(3px);
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  border-radius: 50%;
  transition: filter 0.2s ease;
}

.help-button svg {
  width: 20px;
  height: auto;
}

.help-button svg * {
  fill: #111;
}

.library-button {
  pointer-events: auto;
  cursor: pointer;
}

.library-button {
  color: rgba(0, 0, 0, 0.9);
  text-decoration: none;
  transition: all 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #ffdf4e;
  border: 1px solid #deba26;
  padding: 4px 4px 4px;
  width: 30px;
  border-radius: 30px;
  /* box-shadow:
    0 4px 10px rgba(0, 0, 0, 0.15),
    0 0 20px rgba(255, 223, 78, 0.4); */
  position: relative;
}

/* 
.library-button::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: #ffdf4e;
  filter: blur(3px);
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  border-radius: 50%;
  transition: filter 0.2s ease;
} */
/* 
.library-button:hover::before {
  filter: blur(6px);
} */

.library-button.logged-in::before {
  background: #00ff6a;
}

.library-button svg {
  width: 21px;
  height: auto;
}

.library-button:hover {
  color: rgba(255, 255, 255, 0.9);
}

.library-button.logged-in {
  color: #000;
  background: #00ff6a;
  ;
}

.library-button.logged-in::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: #00ff6a;
  filter: blur(3px);
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  border-radius: 50%;
  transition: filter 0.2s ease;
}

.library-button.logged-in:hover::before {
  filter: blur(9px);
}

.library-button svg * {
  fill: #000;
}

.meme-button {
  pointer-events: auto;
  cursor: pointer;
  color: rgba(0, 0, 0, 0.9);
  text-decoration: none;
  transition: all 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #cfb5ff;
  border: 1px solid #9f7ae8;
  padding: 4px 4px 4px;
  width: 32px;
  height: 32px;
  border-radius: 30px;
  position: relative;
  margin-left: 8px;
  margin-right: 8px;
}

.meme-button svg {
  width: 18px;
  margin-right: -2px;
  height: auto;
}


.meme-button svg * {
  fill: #000;
}

@media (hover: hover) and (pointer: fine) {
  .meme-button:hover {
    background-color: #c9aff8;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08),
      0 0 20px rgba(183, 148, 246, 0.2);
  }
}

.meme-button:active {
  background-color: #c9aff8;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08),
    0 0 20px rgba(183, 148, 246, 0.2);
}

/* Button labels on hover (desktop only) */
.library-button-label,
.meme-button-label {
  display: none;
}

@media (hover: hover) and (pointer: fine) {
  .library-button-label,
  .meme-button-label {
    display: block;
    position: absolute;
    pointer-events: none;
    left: 50%;
    bottom: 100%;
    transform: translateX(-50%);
    background: rgb(224 224 224 / 45%);
    border: 1px solid rgb(143 139 136 / 25%);
    font-size: 14px;
    color: #000;
    padding: 4px 8px;
    border-radius: 8px;
    white-space: nowrap;
    opacity: 0;
    transition: opacity 0.2s ease, transform 0.2s ease;
    z-index: 1000;
  }

  .library-button:hover .library-button-label,
  .meme-button:hover .meme-button-label {
    opacity: 1;
    transform: translate(-50%, -12px);
  }
}

/* Meme Drawer Styles */
#meme-drawer-inner {
  padding: 20px;
  max-height: none !important; /* Override the 80vh constraint from onboarding_drawer.css */
  height: unset !important;
}
 

#meme-drawer .drawer-content-heading {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 12px;
}

.meme-library-link-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6px;
  border-radius: 6px;
  background: transparent;
  border: 1px solid #E1E4ED;
  transition: all 0.2s ease;
  text-decoration: none;
  cursor: pointer;
  margin-left: auto;
}

.meme-library-link-btn:hover {
  background: #f5f5f5;
  border-color: #adadad;
}

.meme-library-link-btn svg {
  width: 14px;
  height: auto;
  display: block;
}

@media (max-width: 768px) {
  #meme-drawer-inner {
    padding-top: 0;
    overflow-y: visible !important; /* Override onboarding_drawer.css that sets overflow-y: auto on .drawer-inner */
    max-height: none !important;
  }
  
  #meme-drawer .drawer-content-header {
    position: static; /* Not sticky on mobile */
  }
}

.meme-drawer-trending-section {
  margin-bottom: 24px;
  padding-top: 20px;
  padding-bottom: 24px;
  border-bottom: 1px solid #E1E4ED;
}

.meme-drawer-section-title {
  font-size: 15px;
  font-weight: 500;
  margin: 0 0 16px 0;
  color: #222;
  display: flex;
  align-items: center;
}

.meme-drawer-section-title .trending-title-text {
  display: inline-block;
  position: relative;
}

.meme-drawer-section-title .trending-status-dot {
  width: 8px;
  height: 8px;
  display: inline-block;
  position: relative;
  margin-left: 8px;
}

.meme-drawer-section-title .trending-status-dot::before {
  content: "";
  height: 8px;
  width: 8px;
  position: absolute;
  left: 0;
  top: 0;
  border-radius: 100%;
  background-color: #00ff6a;
  filter: blur(2px);
  animation: pulse-glow 2s ease-in-out infinite;
}

.meme-drawer-trending-wrapper {
  position: relative;
}

.meme-drawer-trending-scroll {
  display: flex;
  gap: 12px;
  overflow-x: auto;
  overflow-y: visible;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  margin: -4px -20px;
  padding: 4px 20px;
}

.meme-drawer-trending-scroll::-webkit-scrollbar {
  display: none;
}

.meme-drawer-trending-more {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  height: 44px;
  width: 18px;
  border-radius: 14px;
  border: 1px solid rgb(143 139 136 / 35%);
  background: rgb(176 176 176 / 80%);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 2;
  pointer-events: none;
}

.meme-drawer-trending-more-left {
  left: 0px;
}

.meme-drawer-trending-more-right {
  right: 0px;
}

.meme-drawer-trending-more svg {
  width: auto;
  height: 14px;
}

.meme-drawer-trending-more svg * {
  stroke: #1f1f1f;
}

.meme-drawer-trending-item {
  flex: 0 0 auto;
  cursor: pointer;
  border-radius: 8px;
  overflow: hidden;
  background: #f5f5f5;
   
}

 
.meme-drawer-trending-item.meme-drawer-item.controls-active, .meme-drawer-item.controls-active {
  outline: 3px solid orange;
  border-radius: 8px;
}


.meme-drawer-trending-item-image {
  object-fit: cover;
  display: block;
  background: #f0f0f0;
}

.meme-drawer-trending-item-name {
  display: none;
}

.meme-drawer-trending-item {
  width: 130px;
}


.meme-drawer-trending-item-image {
  width: 130px;
  height: 130px;
} 


@media (max-width: 768px) {
  .meme-drawer-grid {
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)) !important;
  }
  .meme-drawer-trending-item {
    width: 110px;
  }
  
  
  .meme-drawer-trending-item-image {
    width: 110px;
    height: 110px;
  } 
  
}

.meme-drawer-search-container {
  padding: 0 0 16px 0;
  position: sticky;
  top: 0;
  background: #fff;
  z-index: 10;
  margin: -20px -20px 0 -20px;
  padding: 20px 20px 16px 20px;
  border-bottom: 1px solid #E1E4ED;
}

.meme-drawer-search-icon {
  position: absolute;
  left: 35px;
  top: 50%;
  top: calc(50% + 1px);
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  pointer-events: none;
  opacity: 0.4;
  margin-bottom: -2px;
}

@media (max-width: 768px) {
  .meme-drawer-search-container {
    margin-top: 0;
  }
  
  .meme-drawer-trending-section {
    margin-bottom: 16px;
    
  }
}

.meme-drawer-search-input {
  width: 100%;
  padding: 10px 16px 10px 40px;
  border: 1px solid #ddd;
  border-radius: 8px;
  font-size: 14px;
  font-family: inherit;
  outline: none;
  transition: border-color 0.2s ease;
}

.meme-drawer-search-input:focus {
  border-color: #b794f6;
}

.meme-drawer-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 12px;
  padding-bottom: 20px;
}

.meme-drawer-grid.has-search {
  padding-top: 20px;
}

.meme-drawer-item {
  cursor: pointer;
  border-radius: 5px;
  overflow: hidden;
  background: #f5f5f5;
  position: relative;
}

.meme-drawer-item img {
  border-radius: 8px;
}

.meme-drawer-item-image {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  display: block;
  background: #f0f0f0;
}

.meme-drawer-item-name {
  display: none;
}



.meme-drawer-item-controls {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
   
   
  display: flex;
  gap: 8px;
  padding: 8px;
  transform: translateY(100%);
  transition: transform 0.2s ease;
   
  
}

.meme-drawer-item.controls-active .meme-drawer-item-controls {
  transform: translateY(0);
}

.meme-drawer-item-add,
.meme-drawer-item-info {
  flex: 1;
  padding: 4px 12px;
  border: none;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  text-align: center;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
}


.meme-drawer-item-info {
  flex: 0;
}

.meme-drawer-item-info svg {
  width: 5px;
  height: auto;
}

.meme-drawer-item-info svg * {
  fill: rgb(122, 122, 122);
}
 

.meme-drawer-item-add {
  background: #ff912d;
  color: #000;
  border: 1px solid #de6c05;
}

@media (hover: hover) and (pointer: fine) {
  .meme-drawer-item-add:hover {
    background: #ffab5d;
  }
}

.meme-drawer-item-add:active {
  background: #ffab5d;
}

.meme-drawer-item-info {
  background: #ededed;
  color: #333;
  border: 1px solid #898989;
}

@media (hover: hover) and (pointer: fine) {
  .meme-drawer-item-info:hover {
    background: #f0f0f0;
     
  }
}

.meme-drawer-item-info:active {
  background: #f0f0f0;
   
}

.meme-drawer-loading {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px;
}

.meme-drawer-spinner {
  width: 24px;
  height: 24px;
  border: 3px solid #f0f0f0;
  border-top-color: #b794f6;
  border-radius: 50%;
  animation: meme-drawer-spin 0.8s linear infinite;
}

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

.meme-drawer-empty {
  text-align: center;
  padding: 40px 20px;
  color: #666;
  font-size: 18px;
}

/* .disabled-feature {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
} */
/* Override pointer-events for the button itself to show the message */
button.disabled-feature {
  pointer-events: auto;
}

.magic-icon {
  width: auto;
  height: 21px;
  margin-right: 4px;
  margin-left: -3px;
}

.magic-icon * {
  fill: #fff;
}

/* 
a.account-button.logged-in img {
  width: 30px;
  height: auto;
}
a.account-button.logged-in {
  padding: 0;
} */
.toast-cancel-button {
  margin-left: 10px;
  padding: 4px 8px;
  border: none;
  border-radius: 12px;
  background: #000;
  color: white;
  cursor: pointer;
  font-size: 10px;
  pointer-events: auto;
  margin-right: -15px;
}

button.toast-cancel-button svg {
  height: 12px;
  width: auto;
  fill: #fff;
}

button.toast-cancel-button {
  display: flex;
}

button#segment-snipe-button svg,
button#segment-snipe-against-button svg {
  width: 15px;
  height: auto;
  fill: #fff;
  margin-right: 7px;
}

#snipe-badge svg {
  height: 17px;
  margin-top: 2px;
}

/* Mobile toolbar */
#object-toolbar.fixed-toolbar button {
  box-shadow: 0 0 30px rgba(218, 223, 237, 0.2);
}

#object-toolbar.fixed-toolbar {
  position: fixed !important;
  right: 16px !important;
  left: unset !important;
  top: unset !important;
  bottom: 65px !important;
}

#object-toolbar.fixed-toolbar div#snipe-menu {
  flex-direction: column-reverse;
  align-items: flex-end;
  gap: 8px !important;
}



/* 
@media (min-width: 769px) {
  #object-toolbar.fixed-toolbar {
    bottom: 180px !important;
  }
} */
#object-toolbar.fixed-toolbar .object-buttons.flex-buttons {
  flex-direction: column;
  align-items: flex-end;
  gap: 8px !important;
}

#object-toolbar.fixed-toolbar #segment-menu,
#object-toolbar.fixed-toolbar .segment-menu-buttons {
  flex-direction: column;
  align-items: flex-end;
}

#object-toolbar.fixed-toolbar #segment-menu .segment-menu-buttons {
  gap: 8px !important;
  flex-direction: column;
  align-items: flex-end;
}

#object-toolbar.fixed-toolbar div#crop-menu {
  flex-direction: column-reverse;
  align-items: flex-end;
  gap: 8px !important;
}

#object-toolbar.fixed-toolbar div#segment-snipe-buttons {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 8px;
}

#object-toolbar.fixed-toolbar #mask-size label {
  bottom: unset;
  top: -35px;
}

#object-toolbar.fixed-toolbar #eraser-size label {
  bottom: unset;
  top: -35px;
}

#object-toolbar.fixed-toolbar button#segment-snipe-against-button {
  top: unset;
  left: unset;
  position: relative;
}

#object-toolbar.fixed-toolbar .additional-settings-menu-buttons {
  flex-direction: column;
  align-items: flex-end;
}

#object-toolbar.fixed-toolbar div#additional-settings-badge {
  align-self: flex-end;
  display: none;
}

#object-toolbar.fixed-toolbar .additional-setting-opacity-slider {
  justify-content: flex-end;
  margin-bottom: 18px;
}

#object-toolbar.fixed-toolbar .eraser-buttons.flex-buttons {
  flex-direction: column-reverse;
  gap: 8px !important;
  align-items: flex-end;
  padding-bottom: 50px;
}

#object-toolbar.fixed-toolbar[data-menu-mode="eraser"] #object-toolbar-inner,
#object-toolbar.fixed-toolbar[data-menu-mode="mask"] #object-toolbar-inner {
  flex-direction: column;
}

#object-toolbar.fixed-toolbar #erasing-badge,
#object-toolbar.fixed-toolbar #segment-badge,
#object-toolbar.fixed-toolbar .menu-badge,
#object-toolbar.fixed-toolbar #additional-settings-badge {
  align-self: flex-end;
  margin-right: 0px;
}

#object-toolbar.fixed-toolbar .mask-buttons.flex-buttons {
  flex-direction: column-reverse;
  align-items: flex-end;
  padding-bottom: 50px;
  gap: 8px !important;
}

#object-toolbar.fixed-toolbar div#masking-badge {
  align-self: flex-end;
}

#all-canvas-controls:has(+ #object-toolbar.fixed-toolbar[data-menu-mode="eraser"]),
#all-canvas-controls:has(+ #object-toolbar.fixed-toolbar[data-menu-mode="mask"]) {
  display: none !important;
}

#object-toolbar.fixed-toolbar[data-menu-mode="eraser"],
#object-toolbar.fixed-toolbar[data-menu-mode="mask"] {
  bottom: 40px !important;
  width: calc(100% - 32px) !important;
}

#object-toolbar.fixed-toolbar #mask-size-container {
  width: 100%;
}

#object-toolbar.fixed-toolbar #eraser-size {
  margin-left: 0;
  width: 100%;
}

#object-toolbar.fixed-toolbar #mask-size {
  width: 100%;
  margin-left: 0;
}

/* need to adjust this code snippet too */
@media (min-width: 769px) {
  button#segment-snipe-against-button {
    position: absolute;
    left: 16px;
    top: -28px;
  }
}

/* end mobile toolbar */
#object-toolbar:not(.fixed-toolbar) button#segment-snipe-against-button {
  position: absolute;
  left: 16px;
  top: -28px;
  font-size: 10px;
  height: 22px;
  padding: 3px 10px 4px;
}

div#segment-snipe-buttons {
  position: relative;
}

#object-toolbar:not(.fixed-toolbar) button#segment-snipe-against-button svg {
  height: 11px;
  margin-right: 5px;
  opacity: 1;
}

div#object-toolbar.below button#segment-snipe-against-button {
  top: unset;
  bottom: -28px;
}

button#segment-snipe-against-button svg * {
  fill: #fff;
}

@media (max-width: 768px) {
  #mask-size label {
    bottom: unset;
    top: -32px;
  }

  #eraser-size label {
    bottom: unset;
    top: -32px;
  }
}

.pagination {
  display: flex;
  justify-content: center;
  gap: 0.5rem;
  margin: 2rem 0;
  padding: 1rem;
  align-items: center;
}

.pagination .page {
  display: flex;
  align-items: center;
  justify-content: center;
}

.pagination a,
.pagination span.current {
  padding: 0.5rem 1rem;
  border: 2px solid #c2c2c2;
  border-radius: 0.5rem;
  color: #000;
  text-decoration: none;
  font-weight: 500;
  transition: all 0.2s;
}

.pagination span.current {
  background: #ddd;
  color: #444;
  border-color: #8d8d8d;
}

.pagination a:hover {
  background: rgba(0, 0, 0, 0.05);
  border-color: #5f5f5f;
}

.pagination .gap {
  border: none;
}

@media (max-width: 768px) {
  .pagination {
    gap: 0.25rem;
  }

  .pagination a,
  .pagination span.current {
    padding: 0.35rem 0.75rem;
    font-size: 0.875rem;
  }

  .pagination {
    margin: 0 auto;
  }
}

.pagination span.last {
  display: none;
}

.pagination span.page.gap {
  display: none;
}

.pagination .page {
  display: none;
}

.pagination .page.current {
  display: block;
}

.pagination {
  margin-bottom: 0;
  margin-top: 10px;
}

span.meme-year {
  background: #f0f0f0;
  padding: 4px;
  font-size: 12px;
  border-radius: 5px;
  /* margin-left: 6px; */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 18px;
  margin-left: auto;
}

.meme-info {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

button#additional-settings-button svg {
  fill: #fff;
  width: 25px;
  height: auto;
}

#additional-settings-menu-container {
  display: none;
  /* Allow canvas interactions outside the actual menu area */
  pointer-events: none;
}

#additional-settings-menu {
  display: flex;
  gap: 10px;
  align-items: center;
  /* Do not capture events at this wrapper level */
  pointer-events: none;
}


#object-toolbar, #object-toolbar-inner {
  pointer-events: none;
}

#object-toolbar button {
  pointer-events: auto;
}
#additional-settings-badge {
  display: flex;
  align-items: center;
  gap: 6px;
}

#additional-settings-badge svg {
  width: 16px;
  height: 16px;
}

.additional-settings-menu-buttons > * {
  pointer-events: auto;
}

.additional-settings-menu-buttons {
  display: flex;
  gap: 10px;
  align-items: center;
  /* Only the buttons row should be interactive */
  pointer-events: none;
}

.additional-setting-opacity-slider {
  margin-left: 10px;
  align-items: center;
  font-size: 12px;
  width: 200px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  height: 29px;
}

.additional-setting-opacity-slider label {
  position: absolute;
  bottom: -20px;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  font-size: 12px;
  border-radius: 7px;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  padding: 3px 14px 3px 14px;
  transition: 0.3s ease-out;
  overflow: hidden;
  z-index: 1;
}

.additional-setting-opacity-slider .opacity-icon {
  width: 16px;
  height: 16px;
}

input#opacity-slider {
  -webkit-appearance: none;
  width: 100%;
  height: 10px;
  outline: none;
  opacity: 1;
  -webkit-transition: .2s;
  transition: opacity .2s;
  background-color: rgb(237 237 237 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  border-radius: 4px;
  position: relative;
  z-index: 2;
}

input#opacity-slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background-color: rgb(255 145 45);
  border: 1px solid rgb(143 139 136 / 45%);
  cursor: pointer;
}

input#opacity-slider::-webkit-slider-runnable-track {
  margin-right: -1px;
  margin-left: -1px;
}

.legal-document {
  max-width: 800px;
  margin: 0 auto;
  padding: 20px;
  font-size: 1rem;
  line-height: 1.5rem;
}

.legal-document h1 {
  font-size: 2em;
  line-height: 2.5rem;

  margin-bottom: 0.5em;
}

.legal-document h2 {
  font-size: 1.5em;
  line-height: 2rem;

  margin-top: 1.5em;
  margin-bottom: 0.5em;
}

.legal-document p,
.legal-document ul {
  margin-bottom: 1em;
}

.legal-document ul {
  padding-left: 2em;
}

#magic-menu-container {
  display: none;
}

#magic-menu-container .magic-menu-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

button#magic-button svg {
  width: auto;
  height: 21px;
  margin-right: 5px;
}

#magic-menu button {
  display: flex;
  align-items: center;
  justify-content: center;
}

@media (max-width: 768px) {
  #magic-menu-container .magic-menu-buttons {
    flex-direction: column;
    align-items: flex-end;
    gap: 8px;
  }

  #magic-menu-container .magic-menu-buttons.extra-gap {
    gap: 12px;
  }

}

.pro-required-badge {
  position: absolute;
  top: -28px;
  left: 10px;

  padding: 1px 6px 2px;

  font-size: 12px;

  background-color: #dfe0e2;
  filter: brightness(100%) opacity(300%);
  background: rgb(224 224 224 / 10%);
  border: 1px solid rgb(143 139 136 / 45%);
  border-radius: 6px;
}

@media screen and (max-width: 768px) {
  .pro-required-badge {
    left: -36px;
    top: 2px;
    font-size: 10px;
    padding: 0 4px;
  }

}


button#segment-split-by-transparency-button>svg {
  fill: #fff;
  width: auto;
  height: 21px;
  margin-right: 4px;
  margin-left: -3px;
}



.account-pro-badge {
  position: absolute;
  top: 100%;
  margin-top: -5px;
  display: block;
}

.account-pro-badge svg {
  width: 42px;
  height: auto;
}


@media screen and (max-width: 768px) {
  .account-pro-badge {
    margin-top: 0;
    bottom: 100%;
    top: unset;
    margin-bottom: -12px !important;
  }
}


#toggle-text-font {
  position: relative;
}



.canvas-control[data-control="upload"] .upload-button-inner {

  padding: 0;
  width: 38px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: 0;

  color: rgba(0, 0, 0, 0.9);
  text-decoration: none;
  transition: all 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;

  padding: 4px 4px 4px;
  border-radius: 30px;
  background: #b0b0b0;
  box-shadow: 0 4px 10px rgb(0 0 0 / 30%), 0 0 20px rgb(199 199 199 / 40%);
  position: relative;
}



.canvas-control[data-control="upload"] .upload-button-inner svg {
  width: 20px;
  height: auto;
}

.canvas-control[data-control="upload"] button.canvas-control-button {
  cursor: pointer;
}




.canvas-control[data-control="upload"] {
  align-self: center;
}



/* Eraser history buttons styling */
.eraser-history-buttons svg {
  width: 14px;
  height: auto;
  margin-bottom: -1px;
}

.eraser-history-buttons {
  display: flex;
  gap: 8px;
  margin: 0 10px;
}

.eraser-control-button {
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: 0.2s ease all;
  padding: 0;
}

.eraser-button-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgb(176 176 176 / 50%);
  border: 1px solid rgb(143 139 136 / 35%);
  cursor: pointer;
  border-radius: 30px;
  padding: 5px 13px 6px;
  font-size: 13px;
  height: 29px;
}

.eraser-control-button.disabled {
  opacity: 0.5;
  cursor: default;
  pointer-events: none;
}

.eraser-control-button:hover:not(.disabled) .eraser-button-inner {
  background: rgb(176 176 176 / 70%);
}

.eraser-undo-icon,
.eraser-redo-icon {
  width: 14px;
  height: auto;
  margin-bottom: -1px;
}


#object-toolbar.fixed-toolbar .eraser-history-buttons {
  order: -1;
  margin-top: 5px;
  margin-bottom: 5px;
}

button#segment-crop-button>svg {
  width: 14px;
  height: auto;
  fill: #fff;
  margin-right: 7px;

}

button#segment-crop-button>svg * {
  fill: #fff;
}




#undo-button.canvas-control-button .button-inner,
#redo-button.canvas-control-button .button-inner {
  padding-left: 18px;
  padding-right: 18px;
}

@media screen and (max-width: 768px) {

  #undo-button.canvas-control-button .button-inner,
  #redo-button.canvas-control-button .button-inner {
    padding-left: 22px;
    padding-right: 22px;
  }
}

html,
body {
  overscroll-behavior: none;
}


@keyframes flow {
  to {
    stroke-dashoffset: -24;
    /* Animate by a multiple of the dash pattern total length (6+6)*2 */
  }
}

/* TODO */
/* 
body.mobile-gesture--pinching .dimensional-grid path {
  stroke: rgba(100, 100, 100, 0.7); 
  animation: flow 0.75s linear infinite; 
  stroke-width: 1px; 
  stroke-dasharray: 6 6; 
  stroke-dashoffset: 0;
}

body:not(.mobile-gesture--pinching) .dimensional-grid path {
  animation: none;
} */

/* Apply animation during desktop pan/zoom */
/* TODO - animated grid when zooming */
/* body.desktop-gesture--active .dimensional-grid path {
  stroke: rgba(100, 100, 100, 0.25); 
  animation: flow 0.75s linear infinite; 
  stroke-width: 1px;
  stroke-dasharray: 6 6;
  stroke-dashoffset: 0;
} */

/* Reset animation when not panning/zooming on desktop */
/* body:not(.desktop-gesture--active) .dimensional-grid path {
  animation: none;
} */

@media screen and (max-width: 385px) {
  #secondary-control-buttons .canvas-control .button-inner {
    padding: 5px 9px 6px;
  }

  #undo-button.canvas-control-button .button-inner,
  #redo-button.canvas-control-button .button-inner {
    padding-left: 15px;
    padding-right: 15px;
  }
}




#fps-container {
  position: absolute;
  left: 10px;
  top: -30px;
  padding: 2px 5px;
  border-radius: 30px;
  background: rgb(176 176 176 / 20%);
  border: 1px dotted rgb(143 139 136 / 25%);

  color: rgb(121 121 121);
  font-size: 11px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
}

#fps-container-icon svg * {
  fill: rgb(121 121 121);
}

#fps-container svg {
  width: 13px;
  height: auto;
  margin-right: 5px;
}

#fps-container svg * {
  fill: #666;
}

@media screen and (max-width: 768px) {
  #fps-container {
    top: unset;
    bottom: -35px;
    left: 10px;
  }

}

#undo-redo-button-group {
  position: absolute;
  left: 42px;
  top: 18px;
  max-width: 130px;
  max-height: 80vh;
  z-index: 100;
  z-index: 999;
  display: flex;
  flex-direction: column;
  pointer-events: none;
  /* Allow clicks to pass through */
}

#undo-redo-button-group .button-inner {
  display: flex;
  transition: 0.2s ease all;
  align-items: center;
  justify-content: center;
  background: transparent;
  cursor: pointer;
  border: none;
  background: #ff912d;
  border: 1px solid #de6c05;
  font-weight: 500;
  border-radius: 30px;
  padding: 5px 13px 6px;
  height: 29px;
  font-size: 13px;
  color: #000;
}

#undo-redo-button-group .button-inner {
  background: rgb(176 176 176 / 50%);
  border: 1px solid rgb(143 139 136 / 35%);
}

#undo-redo-button-group svg {
  width: 14px;
  height: auto;
  margin-bottom: -1px;
}

#undo-redo-button-group .canvas-control-button.disabled {
  opacity: 0.5;
  cursor: not-allowed;
  /* pointer-events: none; */
}

#undo-redo-button-group .canvas-control-button {
  touch-action: manipulation;
}

#undo-redo-button-group .canvas-control button {
  width: 100%;
  padding: 0;
  margin: 0;
}

#undo-redo-button-group .info-button-group {
  display: flex;
  justify-content: stretch;
  gap: 10px;
  margin-bottom: 15px;
}




#undo-redo-button-group .canvas-control {
  width: 100%;
  display: flex;
  justify-content: stretch;
}



@media screen and (max-width: 768px) {
  #undo-redo-button-group {
    right: 16px;
    left: unset;
  }
}


#undo-button.erase-mode-history-active .button-inner,
#redo-button.erase-mode-history-active .button-inner {
  background: #ffbdbd;
  /* Light pinkish-red background */
  border: 1px solid #FF4F4F;
  /* Red border */
  color: #000;
  /* Keep text color black or adjust if needed */
}

/* Optional: Change SVG fill color if needed */
#undo-button.erase-mode-history-active .button-inner svg *,
#redo-button.erase-mode-history-active .button-inner svg * {
  fill: #950000 !important;
}

#undo-button.drawing-mode-history-active .button-inner,
#redo-button.drawing-mode-history-active .button-inner {
  background: #e0f2ff;
  /* Light blue background */
  border: 1px solid #007bff;
  /* Blue border */
  color: #000;
}

#home-logo-link {
  display: flex !important;
}

.button-inner.bigger-icon svg {
  width: 12px;
  height: auto;
}

#primary-control-buttons.canvas-control-group {
  align-items: center;
  gap: 8px;
}

.canvas-control .button-inner {
  padding: 5px 8px 6px;
}

/* Secondary controls: modern horizontal scroll when overflowing */
#secondary-control-buttons {
  position: relative;
  overflow-x: visible;
  overflow-y: visible; /* allow dropdowns like Shape menu to escape vertically */
  -webkit-overflow-scrolling: touch; /* iOS momentum */
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start; /* keep start alignment for reliable scrolling */
  gap: 20px; /* compact spacing for scrollable row */
  scrollbar-width: none; /* Firefox hide */
  scroll-snap-type: x proximity; /* pleasant snapping */
  overscroll-behavior-inline: contain;
  pointer-events: auto; /* allow scrolling within controls area */
  margin-left: auto; /* keep the whole group placed at the end of its parent */
   
}

#secondary-control-buttons::-webkit-scrollbar {
  display: none; /* WebKit hide */
}

#secondary-control-buttons .canvas-control {
  flex: 0 0 auto; /* prevent shrinking; make items scroll horizontally */
  scroll-snap-align: start;
}

#secondary-control-buttons > .library-button {
  flex: 0 0 auto; /* keep library button stable in scroll row */
  scroll-snap-align: start;
}

#secondary-control-buttons > .meme-button {
  flex: 0 0 auto; /* keep meme button stable in scroll row */
  scroll-snap-align: start;
}

/* Mobile: bleed scroll row edge-to-edge, keep visual 16px gutters */


@media screen and (max-width: 390px) {
 
  
  #secondary-control-buttons .canvas-control .button-inner {
    font-size: 11px;
}


}
.canvas-control .button-inner {
  padding: 5px 8px 6px;
}

/* Add More Button Styles */
.canvas-control[data-control="add-more"] {
  position: relative;
}

#add-more-button .button-inner.bigger-icon {
  height: 32px;
  width: 32px;
}

/* Style for expanded menu */
#add-more-menu {
  position: absolute;
  bottom: 100%;
  right: 0;
  margin-bottom: 22px;
  display: none;
  flex-direction: column;
  align-items: flex-end;
  gap: 14px;
  z-index: 1000;
  animation: slideIn 0.3s ease forwards;
}

#add-more-menu.closing {
  animation: slideOut 0.3s ease forwards;
}

@keyframes slideIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes slideOut {
  from {
    opacity: 1;
    transform: translateY(0);
  }

  to {
    opacity: 0;
    transform: translateY(10px);
  }
}

/* Rotate arrow when menu is open */
#add-more-button.menu-open svg {
  transform: rotate(180deg);
  margin-top: 2px;
}

/* Shape Menu Styles - Similar to Add More */
.canvas-control[data-control="shape"] {
  position: relative;
}

#shape-menu {
  position: absolute;
 
    right: 42px;
    bottom: 52px;
 
  margin-bottom: 22px;
  display: none;
  flex-direction: row;
  align-items: flex-end;
  gap: 14px;
  z-index: 1000;
  animation: slideIn 0.3s ease forwards;
}

@media screen and (max-width: 768px) {
  div#shape-menu {
    right: 16px;
    bottom: 37px;
}
}

 

#shape-menu-label {
  position: absolute;
  pointer-events: none;
  background: rgb(255 255 255 / 50%);
  transition: 0.2s ease all;
  left: 45px;
  font-size: 14px;
  color: #000;
  padding: 4px 8px;
  border-radius: 10px;
  text-wrap: nowrap;
  top: -32px;
}
 
#shape-menu.closing {
  animation: slideOut 0.3s ease forwards;
}
 

#shape-menu .button-inner {
  color: #000;
  padding: 8px 12px;
  height: 32px;
}

#shape-menu .button-inner svg {
  width: 18px;
  height: 18px;
  stroke: #000;
}

/* Shape menu close button - animate from up to down */
#shape-menu-close-button svg {
  transform: rotate(0deg);
  transition: transform 0.3s ease;
}

#shape-menu-close-button.animate-down svg {
  transform: rotate(180deg);
}

#shape-menu-close-button .button-inner.bigger-icon {
  height: 32px;
  width: 32px;
  padding: 5px 8px 6px;
}

#shape-menu-close-button .button-inner.bigger-icon svg {
  width: 12px;
  height: auto;
  margin-top: 2px;
}

/* Primary controls animation when shape menu is open */
#primary-control-buttons {
  transition: transform 0.3s ease, opacity 0.3s ease;
}

#primary-control-buttons.shape-menu-hidden {
  transform: translateY(20px);
  opacity: 0;
  pointer-events: none;
}



.v2 #object-toolbar button {
  background-color: rgb(190 190 190 / 55%);
  border: 1px solid rgb(143 139 136 / 35%);
  border-radius: 11px;
  background-color: rgb(224 224 224 / 85%);
  border: 1px solid rgb(143 139 136 / 45%);
  box-shadow: none;
  color: rgb(0 0 0);
  position: relative;
  backdrop-filter: brightness(100%) opacity(300%) blur(20px);
}


.v2 #object-toolbar button#segment-snipe-against-button {
  border-radius: 8px;
}

.v2 #object-toolbar button svg * {
  fill: rgb(25, 31, 31);
}




@media (hover: hover) and (pointer: fine) {
  .v2 #object-toolbar button:not(.no-hover):hover {
    /* background-color: rgb(250 132 24 / 70%); */
    background-color: rgb(253 150 55 / 90%);
  }
}

.v2 #object-toolbar button:not(.no-hover):active {
  background-color: rgb(253 150 55 / 90%);
}



#magic-merge-processing-menu {
  position: relative;
}



#magic-merge-processing-menu .magic-merge-menu--lora {
  display: flex;
  padding: 7px;
  border:  1px solid #868686;
  background: rgba(255, 245, 243, 0.3);
  border-radius: 9px;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  line-height: 1;
}

#magic-merge-processing-menu .magic-merge-menu--lora a {
  color: #484848;
  text-decoration: none;
  padding: 2px 5px;
  background: #7a7a7a17;
  border-radius: 11px;
}

#magic-merge-processing-menu .magic-merge-menu--fal a {
  display: block;
    border: 1px solid #ec0749;
    border-radius: 9px;
    background: rgb(240 240 240 / 30%);
}

#magic-merge-processing-menu .magic-merge-menu--fal svg {
  width: 144px;
  height: auto;
  vertical-align: bottom;
}

#magic-merge-processing-menu .magic-merge-menu--lora-label {
  margin-right: 7px;
  text-transform: uppercase;
  font-size: 10px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: -2px;
  letter-spacing: 0;
  color: #666;
}
#magic-merge-processing-menu .magic-merge-menu--lora-title {
  position: absolute;
  top: -45px;
  padding: 6px 12px;
  border-radius: 8px;
  border: 1px solid transparent;
  background: linear-gradient( #f0f0f0,  #f0f0f0) padding-box,
              linear-gradient(90deg, #87ceeb 0%, #4169e1 7.14%, #0066cc 14.28%, #0080ff 21.42%, #1e90ff 28.57%, #4682b4 35.71%, #5f9ea0 42.85%, #87ceeb 50%, #4169e1 57.14%, #0066cc 64.28%, #0080ff 71.42%, #1e90ff 78.57%, #4682b4 85.71%, #5f9ea0 92.85%, #87ceeb 100%) border-box;
  background-clip: padding-box, border-box;
  background-size: 100% 100%, 200px 100%;
  animation: blue-shimmer-border 6s infinite linear, blue-text-shimmer 6s infinite linear;
  color: #1e90ff;
  font-size: 13px;
  font-weight: 500;
  margin: 9px 0;
}

@keyframes blue-shimmer-border {
  0% {
    background-position: 0px 0;
  }

  100% {
    background-position: 200px 0;
  }
}
 
.blue-shimmer-bg {
  position: relative;
  
  overflow: hidden;
}
 


@media screen and (max-width: 768px) {
  #magic-merge-processing-menu {
    flex-direction: column;
    align-items: flex-end;
    gap: 8px !important;
}

#magic-merge-processing-menu .magic-merge-menu--lora {
    padding: 11px;
     
}
  
}

body:not(.fixed-toolbar--active) #nudge-button {
  display: none;
}

#nudge-button.nudge-active {
background-color: rgb(253 150 55 / 90%) !important;
}
