body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
    'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',
    sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

code {
  font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',
    monospace;
}

/* DIYBuddy Style Guide - Amber Color Palette */
:root {
  /* Amber Color Palette */
  --amber-50: #fffbeb;
  --amber-100: #fff3c6;
  --amber-200: #ffe788;
  --amber-300: #fed44b;
  --amber-400: #febd17;
  --amber-500: #f89e08;
  --amber-600: #dc7603;
  --amber-700: #b65307;
  --amber-800: #94400c;
  --amber-900: #79350e;
  --amber-950: #461a02;
  
  /* Brand-Specific Colors */
  --brand-primary: #fed44b;   /* amber.300 - Main brand color */
  --brand-secondary: #f89e08; /* amber.500 - Secondary brand color */
  --brand-accent: #ffe788;    /* amber.200 - Accent color */
  --brand-dark: #b65307;      /* amber.700 - Dark variant */
  --brand-light: #fffbeb;     /* amber.50 - Light variant */
  --brand-highlight: #dc7603; /* amber.600 - Highlight color */
  --brand-subtle: #fff3c6;    /* amber.100 - Subtle background */
  
  /* Neutral Colors */
  --white: #ffffff;
  --gray-50: #f7fafc;
  --gray-100: #edf2f7;
  --gray-200: #e2e8f0;
  --gray-300: #cbd5e0;
  --gray-400: #a0aec0;
  --gray-500: #718096;
  --gray-600: #4a5568;
  --gray-700: #2d3748;
  --gray-800: #1a202c;
  --gray-900: #171923;
  
  /* Spacing */
  --space-1: 0.25rem;  /* 4px */
  --space-2: 0.5rem;   /* 8px */
  --space-3: 0.75rem;  /* 12px */
  --space-4: 1rem;     /* 16px */
  --space-6: 1.5rem;   /* 24px */
  --space-8: 2rem;     /* 32px */
  --space-10: 2.5rem;  /* 40px */
  --space-12: 3rem;    /* 48px */
  
  /* Border Radius */
  --radius-sm: 0.125rem;  /* 2px */
  --radius-md: 0.375rem;  /* 6px */
  --radius-lg: 0.5rem;    /* 8px */
  --radius-xl: 0.75rem;   /* 12px */
  --radius-2xl: 1rem;     /* 16px */
}

.diy-buddy-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: var(--space-4);
}

.diy-form {
  background-color: var(--white);
  padding: var(--space-6);
  border-radius: var(--radius-lg);
  margin-bottom: var(--space-8);
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  border: 1px solid var(--amber-100);
}

.form-group {
  margin-bottom: var(--space-4);
}

.form-group label {
  display: block;
  margin-bottom: var(--space-2);
  font-weight: 600;
  color: var(--gray-700);
}

.form-group input,
.form-group textarea {
  width: 100%;
  padding: var(--space-3);
  border: 1px solid var(--gray-200);
  border-radius: var(--radius-md);
  font-size: 1rem;
  background-color: var(--amber-50);
  transition: border-color 0.2s ease;
}

.form-group input:focus,
.form-group textarea:focus {
  outline: none;
  border-color: var(--brand-secondary);
  box-shadow: 0 0 0 3px var(--amber-100);
}

.photo-actions {
  display: flex;
  gap: var(--space-3);
  margin-bottom: var(--space-4);
}

.take-photo-btn,
.upload-btn,
.submit-btn {
  background-color: var(--brand-secondary);
  color: white;
  border: none;
  padding: var(--space-3) var(--space-4);
  border-radius: var(--radius-md);
  cursor: pointer;
  font-size: 1rem;
  font-weight: 600;
  transition: all 0.2s ease;
}

.take-photo-btn:hover,
.upload-btn:hover,
.submit-btn:hover {
  background-color: var(--brand-dark);
  transform: translateY(-2px);
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}

.upload-btn {
  display: inline-block;
  text-align: center;
  cursor: pointer;
}

.photo-previews {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 15px;
}

.photo-preview {
  position: relative;
  width: 100px;
  height: 100px;
  border-radius: var(--radius-md);
  overflow: hidden;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  border: 2px solid var(--brand-primary);
}

.photo-preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.remove-photo-btn {
  position: absolute;
  top: 5px;
  right: 5px;
  background-color: var(--brand-secondary);
  color: white;
  border: none;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 12px;
  transition: all 0.2s ease;
}

.remove-photo-btn:hover {
  background-color: var(--brand-dark);
  transform: scale(1.1);
}

.error-message {
  background-color: #f8d7da;
  color: #721c24;
  padding: var(--space-3);
  border-radius: var(--radius-md);
  margin-bottom: var(--space-4);
  border-left: 4px solid #dc3545;
}

.success-message {
  background-color: #d4edda;
  color: #155724;
  padding: var(--space-3);
  border-radius: var(--radius-md);
  margin-bottom: var(--space-4);
  border-left: 4px solid #28a745;
}

/* Loading container */
.loading-container {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 15px;
  margin-bottom: 15px;
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 4px;
}

.issues-list {
  margin-top: 40px;
}

.issue-item {
  background-color: var(--white);
  border: 1px solid var(--amber-100);
  border-radius: var(--radius-lg);
  padding: var(--space-4);
  margin-bottom: var(--space-6);
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.issue-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
}

.issue-item h3 {
  margin-top: 0;
  color: var(--gray-800);
  font-weight: 600;
  background: linear-gradient(to right, var(--brand-dark), var(--brand-secondary));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.issue-photos {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 15px 0;
}

.issue-photo {
  width: 80px;
  height: 80px;
  object-fit: cover;
  border-radius: var(--radius-md);
  cursor: pointer;
  border: 2px solid var(--brand-primary);
  transition: transform 0.2s ease;
}

.issue-photo:hover {
  transform: scale(1.05);
}

.issue-meta {
  font-size: 14px;
  color: #6c757d;
  margin-top: 10px;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .diy-buddy-container {
    padding: var(--space-2);
  }

  .chat-container {
    padding: var(--space-2);
  }

  .message-bubble {
    padding: var(--space-2);
    margin-bottom: var(--space-2);
  }
}

/* Mobile-specific styles (less than 7 inches / ~600px) */
@media (max-width: 600px) {
  body.has-diybuddy {
    overflow: hidden; /* Prevent body scrolling when DIYBuddy is open */
  }

  .diy-buddy-container {
    width: 100%;
    height: 100vh;
    max-height: 100vh;
    border-radius: 0;
    box-shadow: none;
    padding: 0;
  }

  .chat-header {
    border-radius: 0;
    padding: var(--space-3) var(--space-4);
    position: sticky;
    top: 0;
    z-index: 10;
  }

  .chat-container {
    height: calc(100vh - 140px); /* Adjust based on header and input area height */
  }

  .input-area {
    position: sticky;
    bottom: 0;
    background: var(--white);
    padding: var(--space-3);
    border-top: 1px solid var(--amber-100);
  }

  @supports (padding: max(0px)) {
    .input-area {
      padding-bottom: max(var(--space-3), env(safe-area-inset-bottom));
    }
  }

  /* Improve mobile UX */
  .photo-preview {
    max-width: 100%;
    border-radius: var(--radius-md);
  }

  .message-bubble img {
    max-width: 100%;
    border-radius: var(--radius-md);
  }

  .submit-btn {
    width: 100%;
    margin-top: var(--space-2);
  }

  .photo-actions {
    flex-direction: column;
    width: 100%;
  }

  .take-photo-btn,
  .upload-btn,
  .submit-btn {
    width: 100%;
    margin-bottom: 10px;
    padding: 12px;
    font-size: 16px;
  }
  
  .photo-previews {
    justify-content: center;
  }
  
  .photo-preview {
    width: 80px;
    height: 80px;
  }
  
  .issue-photos {
    justify-content: center;
  }
  
  .issue-photo {
    width: 70px;
    height: 70px;
  }
  
  .form-group input,
  .form-group textarea {
    font-size: 16px; /* Prevents iOS zoom on input focus */
    padding: 12px;
  }
  
  /* Improve touch targets */
  .remove-photo-btn {
    width: 24px;
    height: 24px;
  }
}

/* Markdown styling */
.markdown-content a {
  text-decoration: underline;
  color: inherit;
}

.markdown-content ul {
  list-style-type: disc;
  padding-left: 1.5rem;
  margin-bottom: 1rem;
}

.markdown-content ol {
  list-style-type: decimal;
  padding-left: 1.5rem;
  margin-bottom: 1rem;
}

.markdown-content li {
  margin-bottom: 0.5rem;
}

.markdown-content p {
  margin-bottom: 0.75rem;
}

.markdown-content h1,
.markdown-content h2,
.markdown-content h3,
.markdown-content h4,
.markdown-content h5,
.markdown-content h6 {
  margin-top: 1rem;
  margin-bottom: 0.5rem;
  font-weight: 600;
}

.markdown-content code {
  font-family: monospace;
  background-color: rgba(0, 0, 0, 0.05);
  padding: 0.2em 0.4em;
  border-radius: 3px;
}

.markdown-content pre {
  background-color: rgba(0, 0, 0, 0.05);
  padding: 1rem;
  border-radius: 0.375rem;
  overflow: auto;
  margin-bottom: 1rem;
}

.markdown-content blockquote {
  border-left: 4px solid var(--gray-300);
  padding-left: 1rem;
  margin-left: 0;
  margin-right: 0;
  font-style: italic;
  color: var(--gray-600);
}

.markdown-content img {
  max-width: 100%;
  border-radius: 4px;
  margin: 0.5rem 0;
}

.markdown-content table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1rem;
}

.markdown-content table th,
.markdown-content table td {
  border: 1px solid var(--gray-300);
  padding: 0.5rem;
}

.markdown-content table th {
  background-color: var(--gray-100);
}

/* Adjust markdown styling for user messages (light text on dark background) */
.user-message .markdown-content code {
  background-color: rgba(255, 255, 255, 0.2);
}

.user-message .markdown-content pre {
  background-color: rgba(255, 255, 255, 0.1);
}

.user-message .markdown-content blockquote {
  border-left-color: rgba(255, 255, 255, 0.4);
  color: rgba(255, 255, 255, 0.8);
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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SUFDRSxXQUFXO0lBQ1gsWUFBWTtFQUNkO0FBQ0Y7O0FDNVhBLHFCQUFxQjtBQUNyQjtFQUNFLDBCQUEwQjtFQUMxQixjQUFjO0FBQ2hCOztBQUVBO0VBQ0UscUJBQXFCO0VBQ3JCLG9CQUFvQjtFQUNwQixtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSx3QkFBd0I7RUFDeEIsb0JBQW9CO0VBQ3BCLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLHNCQUFzQjtBQUN4Qjs7QUFFQTs7Ozs7O0VBTUUsZ0JBQWdCO0VBQ2hCLHFCQUFxQjtFQUNyQixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxzQkFBc0I7RUFDdEIscUNBQXFDO0VBQ3JDLG9CQUFvQjtFQUNwQixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxxQ0FBcUM7RUFDckMsYUFBYTtFQUNiLHVCQUF1QjtFQUN2QixjQUFjO0VBQ2QsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0Usc0NBQXNDO0VBQ3RDLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsZUFBZTtFQUNmLGtCQUFrQjtFQUNsQixzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixXQUFXO0VBQ1gsbUJBQW1CO0FBQ3JCOztBQUVBOztFQUVFLGlDQUFpQztFQUNqQyxlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsaUNBQWlDO0FBQ25DOztBQUVBLDhFQUE4RTtBQUM5RTtFQUNFLDBDQUEwQztBQUM1Qzs7QUFFQTtFQUNFLDBDQUEwQztBQUM1Qzs7QUFFQTtFQUNFLDJDQUEyQztFQUMzQywrQkFBK0I7QUFDakMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9ESVlCdWRkeS8uL1NvdXJjZXMvQ2xpZW50L2luZGV4LmNzcyIsIndlYnBhY2s6Ly9ESVlCdWRkeS8uL1NvdXJjZXMvQ2xpZW50L0RJWUJ1ZGR5L0RJWUJ1ZGR5LmNzcyIsIndlYnBhY2s6Ly9ESVlCdWRkeS8uL1NvdXJjZXMvQ2xpZW50L0RJWUJ1ZGR5L21hcmtkb3duLmNzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAnU2Vnb2UgVUknLCAnUm9ib3RvJywgJ094eWdlbicsXG4gICAgJ1VidW50dScsICdDYW50YXJlbGwnLCAnRmlyYSBTYW5zJywgJ0Ryb2lkIFNhbnMnLCAnSGVsdmV0aWNhIE5ldWUnLFxuICAgIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5jb2RlIHtcbiAgZm9udC1mYW1pbHk6IHNvdXJjZS1jb2RlLXBybywgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsICdDb3VyaWVyIE5ldycsXG4gICAgbW9ub3NwYWNlO1xufVxuIiwiLyogRElZQnVkZHkgU3R5bGUgR3VpZGUgLSBBbWJlciBDb2xvciBQYWxldHRlICovXG46cm9vdCB7XG4gIC8qIEFtYmVyIENvbG9yIFBhbGV0dGUgKi9cbiAgLS1hbWJlci01MDogI2ZmZmJlYjtcbiAgLS1hbWJlci0xMDA6ICNmZmYzYzY7XG4gIC0tYW1iZXItMjAwOiAjZmZlNzg4O1xuICAtLWFtYmVyLTMwMDogI2ZlZDQ0YjtcbiAgLS1hbWJlci00MDA6ICNmZWJkMTc7XG4gIC0tYW1iZXItNTAwOiAjZjg5ZTA4O1xuICAtLWFtYmVyLTYwMDogI2RjNzYwMztcbiAgLS1hbWJlci03MDA6ICNiNjUzMDc7XG4gIC0tYW1iZXItODAwOiAjOTQ0MDBjO1xuICAtLWFtYmVyLTkwMDogIzc5MzUwZTtcbiAgLS1hbWJlci05NTA6ICM0NjFhMDI7XG4gIFxuICAvKiBCcmFuZC1TcGVjaWZpYyBDb2xvcnMgKi9cbiAgLS1icmFuZC1wcmltYXJ5OiAjZmVkNDRiOyAgIC8qIGFtYmVyLjMwMCAtIE1haW4gYnJhbmQgY29sb3IgKi9cbiAgLS1icmFuZC1zZWNvbmRhcnk6ICNmODllMDg7IC8qIGFtYmVyLjUwMCAtIFNlY29uZGFyeSBicmFuZCBjb2xvciAqL1xuICAtLWJyYW5kLWFjY2VudDogI2ZmZTc4ODsgICAgLyogYW1iZXIuMjAwIC0gQWNjZW50IGNvbG9yICovXG4gIC0tYnJhbmQtZGFyazogI2I2NTMwNzsgICAgICAvKiBhbWJlci43MDAgLSBEYXJrIHZhcmlhbnQgKi9cbiAgLS1icmFuZC1saWdodDogI2ZmZmJlYjsgICAgIC8qIGFtYmVyLjUwIC0gTGlnaHQgdmFyaWFudCAqL1xuICAtLWJyYW5kLWhpZ2hsaWdodDogI2RjNzYwMzsgLyogYW1iZXIuNjAwIC0gSGlnaGxpZ2h0IGNvbG9yICovXG4gIC0tYnJhbmQtc3VidGxlOiAjZmZmM2M2OyAgICAvKiBhbWJlci4xMDAgLSBTdWJ0bGUgYmFja2dyb3VuZCAqL1xuICBcbiAgLyogTmV1dHJhbCBDb2xvcnMgKi9cbiAgLS13aGl0ZTogI2ZmZmZmZjtcbiAgLS1ncmF5LTUwOiAjZjdmYWZjO1xuICAtLWdyYXktMTAwOiAjZWRmMmY3O1xuICAtLWdyYXktMjAwOiAjZTJlOGYwO1xuICAtLWdyYXktMzAwOiAjY2JkNWUwO1xuICAtLWdyYXktNDAwOiAjYTBhZWMwO1xuICAtLWdyYXktNTAwOiAjNzE4MDk2O1xuICAtLWdyYXktNjAwOiAjNGE1NTY4O1xuICAtLWdyYXktNzAwOiAjMmQzNzQ4O1xuICAtLWdyYXktODAwOiAjMWEyMDJjO1xuICAtLWdyYXktOTAwOiAjMTcxOTIzO1xuICBcbiAgLyogU3BhY2luZyAqL1xuICAtLXNwYWNlLTE6IDAuMjVyZW07ICAvKiA0cHggKi9cbiAgLS1zcGFjZS0yOiAwLjVyZW07ICAgLyogOHB4ICovXG4gIC0tc3BhY2UtMzogMC43NXJlbTsgIC8qIDEycHggKi9cbiAgLS1zcGFjZS00OiAxcmVtOyAgICAgLyogMTZweCAqL1xuICAtLXNwYWNlLTY6IDEuNXJlbTsgICAvKiAyNHB4ICovXG4gIC0tc3BhY2UtODogMnJlbTsgICAgIC8qIDMycHggKi9cbiAgLS1zcGFjZS0xMDogMi41cmVtOyAgLyogNDBweCAqL1xuICAtLXNwYWNlLTEyOiAzcmVtOyAgICAvKiA0OHB4ICovXG4gIFxuICAvKiBCb3JkZXIgUmFkaXVzICovXG4gIC0tcmFkaXVzLXNtOiAwLjEyNXJlbTsgIC8qIDJweCAqL1xuICAtLXJhZGl1cy1tZDogMC4zNzVyZW07ICAvKiA2cHggKi9cbiAgLS1yYWRpdXMtbGc6IDAuNXJlbTsgICAgLyogOHB4ICovXG4gIC0tcmFkaXVzLXhsOiAwLjc1cmVtOyAgIC8qIDEycHggKi9cbiAgLS1yYWRpdXMtMnhsOiAxcmVtOyAgICAgLyogMTZweCAqL1xufVxuXG4uZGl5LWJ1ZGR5LWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogMTIwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtNCk7XG59XG5cbi5kaXktZm9ybSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtNik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1sZyk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTgpO1xuICBib3gtc2hhZG93OiAwIDRweCA2cHggLTFweCByZ2JhKDAsIDAsIDAsIDAuMSksIDAgMnB4IDRweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC4wNik7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWFtYmVyLTEwMCk7XG59XG5cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtNCk7XG59XG5cbi5mb3JtLWdyb3VwIGxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTIpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogdmFyKC0tZ3JheS03MDApO1xufVxuXG4uZm9ybS1ncm91cCBpbnB1dCxcbi5mb3JtLWdyb3VwIHRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTMpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ncmF5LTIwMCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tZCk7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYW1iZXItNTApO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4ycyBlYXNlO1xufVxuXG4uZm9ybS1ncm91cCBpbnB1dDpmb2N1cyxcbi5mb3JtLWdyb3VwIHRleHRhcmVhOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1zZWNvbmRhcnkpO1xuICBib3gtc2hhZG93OiAwIDAgMCAzcHggdmFyKC0tYW1iZXItMTAwKTtcbn1cblxuLnBob3RvLWFjdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS00KTtcbn1cblxuLnRha2UtcGhvdG8tYnRuLFxuLnVwbG9hZC1idG4sXG4uc3VibWl0LWJ0biB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLXNlY29uZGFyeSk7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0zKSB2YXIoLS1zcGFjZS00KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG59XG5cbi50YWtlLXBob3RvLWJ0bjpob3Zlcixcbi51cGxvYWQtYnRuOmhvdmVyLFxuLnN1Ym1pdC1idG46aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICBib3gtc2hhZG93OiAwIDRweCA2cHggLTFweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi51cGxvYWQtYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnBob3RvLXByZXZpZXdzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IDEwcHg7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG59XG5cbi5waG90by1wcmV2aWV3IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwcHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tZCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWJyYW5kLXByaW1hcnkpO1xufVxuXG4ucGhvdG8tcHJldmlldyBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLnJlbW92ZS1waG90by1idG4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNXB4O1xuICByaWdodDogNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1zZWNvbmRhcnkpO1xuICBjb2xvcjogd2hpdGU7XG4gIGJvcmRlcjogbm9uZTtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDEycHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG59XG5cbi5yZW1vdmUtcGhvdG8tYnRuOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbn1cblxuLmVycm9yLW1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhkN2RhO1xuICBjb2xvcjogIzcyMWMyNDtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtMyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tZCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTQpO1xuICBib3JkZXItbGVmdDogNHB4IHNvbGlkICNkYzM1NDU7XG59XG5cbi5zdWNjZXNzLW1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDRlZGRhO1xuICBjb2xvcjogIzE1NTcyNDtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtMyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tZCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTQpO1xuICBib3JkZXItbGVmdDogNHB4IHNvbGlkICMyOGE3NDU7XG59XG5cbi8qIExvYWRpbmcgY29udGFpbmVyICovXG4ubG9hZGluZy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMTVweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5pc3N1ZXMtbGlzdCB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG59XG5cbi5pc3N1ZS1pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1hbWJlci0xMDApO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbGcpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS00KTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtNik7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDZweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZSwgYm94LXNoYWRvdyAwLjJzIGVhc2U7XG59XG5cbi5pc3N1ZS1pdGVtOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00cHgpO1xuICBib3gtc2hhZG93OiAwIDEwcHggMTVweCAtM3B4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLmlzc3VlLWl0ZW0gaDMge1xuICBtYXJnaW4tdG9wOiAwO1xuICBjb2xvcjogdmFyKC0tZ3JheS04MDApO1xuICBmb250LXdlaWdodDogNjAwO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLWJyYW5kLWRhcmspLCB2YXIoLS1icmFuZC1zZWNvbmRhcnkpKTtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG4gIGJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uaXNzdWUtcGhvdG9zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IDEwcHg7XG4gIG1hcmdpbjogMTVweCAwO1xufVxuXG4uaXNzdWUtcGhvdG8ge1xuICB3aWR0aDogODBweDtcbiAgaGVpZ2h0OiA4MHB4O1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1icmFuZC1wcmltYXJ5KTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZTtcbn1cblxuLmlzc3VlLXBob3RvOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbn1cblxuLmlzc3VlLW1ldGEge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4vKiBSZXNwb25zaXZlIGFkanVzdG1lbnRzICovXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmRpeS1idWRkeS1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLTIpO1xuICB9XG5cbiAgLmNoYXQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0yKTtcbiAgfVxuXG4gIC5tZXNzYWdlLWJ1YmJsZSB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtMik7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtMik7XG4gIH1cbn1cblxuLyogTW9iaWxlLXNwZWNpZmljIHN0eWxlcyAobGVzcyB0aGFuIDcgaW5jaGVzIC8gfjYwMHB4KSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gIGJvZHkuaGFzLWRpeWJ1ZGR5IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyAvKiBQcmV2ZW50IGJvZHkgc2Nyb2xsaW5nIHdoZW4gRElZQnVkZHkgaXMgb3BlbiAqL1xuICB9XG5cbiAgLmRpeS1idWRkeS1jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgbWF4LWhlaWdodDogMTAwdmg7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAuY2hhdC1oZWFkZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtMykgdmFyKC0tc3BhY2UtNCk7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMTA7XG4gIH1cblxuICAuY2hhdC1jb250YWluZXIge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDE0MHB4KTsgLyogQWRqdXN0IGJhc2VkIG9uIGhlYWRlciBhbmQgaW5wdXQgYXJlYSBoZWlnaHQgKi9cbiAgfVxuXG4gIC5pbnB1dC1hcmVhIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtMyk7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWFtYmVyLTEwMCk7XG4gIH1cblxuICBAc3VwcG9ydHMgKHBhZGRpbmc6IG1heCgwcHgpKSB7XG4gICAgLmlucHV0LWFyZWEge1xuICAgICAgcGFkZGluZy1ib3R0b206IG1heCh2YXIoLS1zcGFjZS0zKSwgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKTtcbiAgICB9XG4gIH1cblxuICAvKiBJbXByb3ZlIG1vYmlsZSBVWCAqL1xuICAucGhvdG8tcHJldmlldyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tZCk7XG4gIH1cblxuICAubWVzc2FnZS1idWJibGUgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kKTtcbiAgfVxuXG4gIC5zdWJtaXQtYnRuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0yKTtcbiAgfVxuXG4gIC5waG90by1hY3Rpb25zIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnRha2UtcGhvdG8tYnRuLFxuICAudXBsb2FkLWJ0bixcbiAgLnN1Ym1pdC1idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgcGFkZGluZzogMTJweDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cbiAgXG4gIC5waG90by1wcmV2aWV3cyB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbiAgXG4gIC5waG90by1wcmV2aWV3IHtcbiAgICB3aWR0aDogODBweDtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gIH1cbiAgXG4gIC5pc3N1ZS1waG90b3Mge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIFxuICAuaXNzdWUtcGhvdG8ge1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIGhlaWdodDogNzBweDtcbiAgfVxuICBcbiAgLmZvcm0tZ3JvdXAgaW5wdXQsXG4gIC5mb3JtLWdyb3VwIHRleHRhcmVhIHtcbiAgICBmb250LXNpemU6IDE2cHg7IC8qIFByZXZlbnRzIGlPUyB6b29tIG9uIGlucHV0IGZvY3VzICovXG4gICAgcGFkZGluZzogMTJweDtcbiAgfVxuICBcbiAgLyogSW1wcm92ZSB0b3VjaCB0YXJnZXRzICovXG4gIC5yZW1vdmUtcGhvdG8tYnRuIHtcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gIH1cbn1cbiIsIi8qIE1hcmtkb3duIHN0eWxpbmcgKi9cbi5tYXJrZG93bi1jb250ZW50IGEge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi5tYXJrZG93bi1jb250ZW50IHVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLm1hcmtkb3duLWNvbnRlbnQgb2wge1xuICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XG4gIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4ubWFya2Rvd24tY29udGVudCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuLm1hcmtkb3duLWNvbnRlbnQgcCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG5cbi5tYXJrZG93bi1jb250ZW50IGgxLFxuLm1hcmtkb3duLWNvbnRlbnQgaDIsXG4ubWFya2Rvd24tY29udGVudCBoMyxcbi5tYXJrZG93bi1jb250ZW50IGg0LFxuLm1hcmtkb3duLWNvbnRlbnQgaDUsXG4ubWFya2Rvd24tY29udGVudCBoNiB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLm1hcmtkb3duLWNvbnRlbnQgY29kZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIHBhZGRpbmc6IDAuMmVtIDAuNGVtO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG5cbi5tYXJrZG93bi1jb250ZW50IHByZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xuICBvdmVyZmxvdzogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLm1hcmtkb3duLWNvbnRlbnQgYmxvY2txdW90ZSB7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgdmFyKC0tZ3JheS0zMDApO1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6IHZhcigtLWdyYXktNjAwKTtcbn1cblxuLm1hcmtkb3duLWNvbnRlbnQgaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIG1hcmdpbjogMC41cmVtIDA7XG59XG5cbi5tYXJrZG93bi1jb250ZW50IHRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5tYXJrZG93bi1jb250ZW50IHRhYmxlIHRoLFxuLm1hcmtkb3duLWNvbnRlbnQgdGFibGUgdGQge1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ncmF5LTMwMCk7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbn1cblxuLm1hcmtkb3duLWNvbnRlbnQgdGFibGUgdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LTEwMCk7XG59XG5cbi8qIEFkanVzdCBtYXJrZG93biBzdHlsaW5nIGZvciB1c2VyIG1lc3NhZ2VzIChsaWdodCB0ZXh0IG9uIGRhcmsgYmFja2dyb3VuZCkgKi9cbi51c2VyLW1lc3NhZ2UgLm1hcmtkb3duLWNvbnRlbnQgY29kZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbn1cblxuLnVzZXItbWVzc2FnZSAubWFya2Rvd24tY29udGVudCBwcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG5cbi51c2VyLW1lc3NhZ2UgLm1hcmtkb3duLWNvbnRlbnQgYmxvY2txdW90ZSB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG59XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/