@media (prefers-color-scheme: dark) {
  .wmde-markdown,
  .wmde-markdown-var {
    color-scheme: dark;
    --color-prettylights-syntax-comment: #8b949e;
    --color-prettylights-syntax-constant: #79c0ff;
    --color-prettylights-syntax-entity: #d2a8ff;
    --color-prettylights-syntax-storage-modifier-import: #c9d1d9;
    --color-prettylights-syntax-entity-tag: #7ee787;
    --color-prettylights-syntax-keyword: #ff7b72;
    --color-prettylights-syntax-string: #a5d6ff;
    --color-prettylights-syntax-variable: #ffa657;
    --color-prettylights-syntax-brackethighlighter-unmatched: #f85149;
    --color-prettylights-syntax-invalid-illegal-text: #f0f6fc;
    --color-prettylights-syntax-invalid-illegal-bg: #8e1519;
    --color-prettylights-syntax-carriage-return-text: #f0f6fc;
    --color-prettylights-syntax-carriage-return-bg: #b62324;
    --color-prettylights-syntax-string-regexp: #7ee787;
    --color-prettylights-syntax-markup-list: #f2cc60;
    --color-prettylights-syntax-markup-heading: #1f6feb;
    --color-prettylights-syntax-markup-italic: #c9d1d9;
    --color-prettylights-syntax-markup-bold: #c9d1d9;
    --color-prettylights-syntax-markup-deleted-text: #ffdcd7;
    --color-prettylights-syntax-markup-deleted-bg: #67060c;
    --color-prettylights-syntax-markup-inserted-text: #aff5b4;
    --color-prettylights-syntax-markup-inserted-bg: #033a16;
    --color-prettylights-syntax-markup-changed-text: #ffdfb6;
    --color-prettylights-syntax-markup-changed-bg: #5a1e02;
    --color-prettylights-syntax-markup-ignored-text: #c9d1d9;
    --color-prettylights-syntax-markup-ignored-bg: #1158c7;
    --color-prettylights-syntax-meta-diff-range: #d2a8ff;
    --color-prettylights-syntax-brackethighlighter-angle: #8b949e;
    --color-prettylights-syntax-sublimelinter-gutter-mark: #484f58;
    --color-prettylights-syntax-constant-other-reference-link: #a5d6ff;
    --color-fg-default: #c9d1d9;
    --color-fg-muted: #8b949e;
    --color-fg-subtle: #484f58;
    --color-canvas-default: #0d1117;
    --color-canvas-subtle: #161b22;
    --color-border-default: #30363d;
    --color-border-muted: #21262d;
    --color-neutral-muted: rgba(110, 118, 129, 0.4);
    --color-accent-fg: #58a6ff;
    --color-accent-emphasis: #1f6feb;
    --color-attention-subtle: rgba(187, 128, 9, 0.15);
    --color-danger-fg: #f85149;
    --color-danger-emphasis: #da3633;
    --color-attention-fg: #d29922;
    --color-attention-emphasis: #9e6a03;
    --color-done-fg: #a371f7;
    --color-done-emphasis: #8957e5;
    --color-success-fg: #3fb950;
    --color-success-emphasis: #238636;
    --color-copied-active-bg: #2e9b33;
  }
}
@media (prefers-color-scheme: light) {
  .wmde-markdown,
  .wmde-markdown-var {
    color-scheme: light;
    --color-prettylights-syntax-comment: #6e7781;
    --color-prettylights-syntax-constant: #0550ae;
    --color-prettylights-syntax-entity: #8250df;
    --color-prettylights-syntax-storage-modifier-import: #24292f;
    --color-prettylights-syntax-entity-tag: #116329;
    --color-prettylights-syntax-keyword: #cf222e;
    --color-prettylights-syntax-string: #0a3069;
    --color-prettylights-syntax-variable: #953800;
    --color-prettylights-syntax-brackethighlighter-unmatched: #82071e;
    --color-prettylights-syntax-invalid-illegal-text: #f6f8fa;
    --color-prettylights-syntax-invalid-illegal-bg: #82071e;
    --color-prettylights-syntax-carriage-return-text: #f6f8fa;
    --color-prettylights-syntax-carriage-return-bg: #cf222e;
    --color-prettylights-syntax-string-regexp: #116329;
    --color-prettylights-syntax-markup-list: #3b2300;
    --color-prettylights-syntax-markup-heading: #0550ae;
    --color-prettylights-syntax-markup-italic: #24292f;
    --color-prettylights-syntax-markup-bold: #24292f;
    --color-prettylights-syntax-markup-deleted-text: #82071e;
    --color-prettylights-syntax-markup-deleted-bg: #ffebe9;
    --color-prettylights-syntax-markup-inserted-text: #116329;
    --color-prettylights-syntax-markup-inserted-bg: #dafbe1;
    --color-prettylights-syntax-markup-changed-text: #953800;
    --color-prettylights-syntax-markup-changed-bg: #ffd8b5;
    --color-prettylights-syntax-markup-ignored-text: #eaeef2;
    --color-prettylights-syntax-markup-ignored-bg: #0550ae;
    --color-prettylights-syntax-meta-diff-range: #8250df;
    --color-prettylights-syntax-brackethighlighter-angle: #57606a;
    --color-prettylights-syntax-sublimelinter-gutter-mark: #8c959f;
    --color-prettylights-syntax-constant-other-reference-link: #0a3069;
    --color-fg-default: #24292f;
    --color-fg-muted: #57606a;
    --color-fg-subtle: #6e7781;
    --color-canvas-default: #ffffff;
    --color-canvas-subtle: #f6f8fa;
    --color-border-default: #d0d7de;
    --color-border-muted: hsl(210, 18%, 87%);
    --color-neutral-muted: rgba(175, 184, 193, 0.2);
    --color-accent-fg: #0969da;
    --color-accent-emphasis: #0969da;
    --color-attention-subtle: #fff8c5;
    --color-danger-fg: #d1242f;
    --color-danger-emphasis: #cf222e;
    --color-attention-fg: #9a6700;
    --color-attention-emphasis: #9a6700;
    --color-done-fg: #8250df;
    --color-done-emphasis: #8250df;
    --color-success-fg: #1a7f37;
    --color-success-emphasis: #1f883d;
    --color-copied-active-bg: #2e9b33;
  }
}
[data-color-mode*='dark'] .wmde-markdown,
[data-color-mode*='dark'] .wmde-markdown-var,
.wmde-markdown-var[data-color-mode*='dark'],
.wmde-markdown[data-color-mode*='dark'],
body[data-color-mode*='dark'] {
  color-scheme: dark;
  --color-prettylights-syntax-comment: #8b949e;
  --color-prettylights-syntax-constant: #79c0ff;
  --color-prettylights-syntax-entity: #d2a8ff;
  --color-prettylights-syntax-storage-modifier-import: #c9d1d9;
  --color-prettylights-syntax-entity-tag: #7ee787;
  --color-prettylights-syntax-keyword: #ff7b72;
  --color-prettylights-syntax-string: #a5d6ff;
  --color-prettylights-syntax-variable: #ffa657;
  --color-prettylights-syntax-brackethighlighter-unmatched: #f85149;
  --color-prettylights-syntax-invalid-illegal-text: #f0f6fc;
  --color-prettylights-syntax-invalid-illegal-bg: #8e1519;
  --color-prettylights-syntax-carriage-return-text: #f0f6fc;
  --color-prettylights-syntax-carriage-return-bg: #b62324;
  --color-prettylights-syntax-string-regexp: #7ee787;
  --color-prettylights-syntax-markup-list: #f2cc60;
  --color-prettylights-syntax-markup-heading: #1f6feb;
  --color-prettylights-syntax-markup-italic: #c9d1d9;
  --color-prettylights-syntax-markup-bold: #c9d1d9;
  --color-prettylights-syntax-markup-deleted-text: #ffdcd7;
  --color-prettylights-syntax-markup-deleted-bg: #67060c;
  --color-prettylights-syntax-markup-inserted-text: #aff5b4;
  --color-prettylights-syntax-markup-inserted-bg: #033a16;
  --color-prettylights-syntax-markup-changed-text: #ffdfb6;
  --color-prettylights-syntax-markup-changed-bg: #5a1e02;
  --color-prettylights-syntax-markup-ignored-text: #c9d1d9;
  --color-prettylights-syntax-markup-ignored-bg: #1158c7;
  --color-prettylights-syntax-meta-diff-range: #d2a8ff;
  --color-prettylights-syntax-brackethighlighter-angle: #8b949e;
  --color-prettylights-syntax-sublimelinter-gutter-mark: #484f58;
  --color-prettylights-syntax-constant-other-reference-link: #a5d6ff;
  --color-fg-default: #c9d1d9;
  --color-fg-muted: #8b949e;
  --color-fg-subtle: #484f58;
  --color-canvas-default: #0d1117;
  --color-canvas-subtle: #161b22;
  --color-border-default: #30363d;
  --color-border-muted: #21262d;
  --color-neutral-muted: rgba(110, 118, 129, 0.4);
  --color-accent-fg: #58a6ff;
  --color-accent-emphasis: #1f6feb;
  --color-attention-subtle: rgba(187, 128, 9, 0.15);
  --color-danger-fg: #f85149;
}
[data-color-mode*='light'] .wmde-markdown,
[data-color-mode*='light'] .wmde-markdown-var,
.wmde-markdown-var[data-color-mode*='light'],
.wmde-markdown[data-color-mode*='light'],
body[data-color-mode*='light'] {
  color-scheme: light;
  --color-prettylights-syntax-comment: #6e7781;
  --color-prettylights-syntax-constant: #0550ae;
  --color-prettylights-syntax-entity: #8250df;
  --color-prettylights-syntax-storage-modifier-import: #24292f;
  --color-prettylights-syntax-entity-tag: #116329;
  --color-prettylights-syntax-keyword: #cf222e;
  --color-prettylights-syntax-string: #0a3069;
  --color-prettylights-syntax-variable: #953800;
  --color-prettylights-syntax-brackethighlighter-unmatched: #82071e;
  --color-prettylights-syntax-invalid-illegal-text: #f6f8fa;
  --color-prettylights-syntax-invalid-illegal-bg: #82071e;
  --color-prettylights-syntax-carriage-return-text: #f6f8fa;
  --color-prettylights-syntax-carriage-return-bg: #cf222e;
  --color-prettylights-syntax-string-regexp: #116329;
  --color-prettylights-syntax-markup-list: #3b2300;
  --color-prettylights-syntax-markup-heading: #0550ae;
  --color-prettylights-syntax-markup-italic: #24292f;
  --color-prettylights-syntax-markup-bold: #24292f;
  --color-prettylights-syntax-markup-deleted-text: #82071e;
  --color-prettylights-syntax-markup-deleted-bg: #ffebe9;
  --color-prettylights-syntax-markup-inserted-text: #116329;
  --color-prettylights-syntax-markup-inserted-bg: #dafbe1;
  --color-prettylights-syntax-markup-changed-text: #953800;
  --color-prettylights-syntax-markup-changed-bg: #ffd8b5;
  --color-prettylights-syntax-markup-ignored-text: #eaeef2;
  --color-prettylights-syntax-markup-ignored-bg: #0550ae;
  --color-prettylights-syntax-meta-diff-range: #8250df;
  --color-prettylights-syntax-brackethighlighter-angle: #57606a;
  --color-prettylights-syntax-sublimelinter-gutter-mark: #8c959f;
  --color-prettylights-syntax-constant-other-reference-link: #0a3069;
  --color-fg-default: #24292f;
  --color-fg-muted: #57606a;
  --color-fg-subtle: #6e7781;
  --color-canvas-default: #ffffff;
  --color-canvas-subtle: #f6f8fa;
  --color-border-default: #d0d7de;
  --color-border-muted: hsl(210, 18%, 87%);
  --color-neutral-muted: rgba(175, 184, 193, 0.2);
  --color-accent-fg: #0969da;
  --color-accent-emphasis: #0969da;
  --color-attention-subtle: #fff8c5;
  --color-danger-fg: #cf222e;
}
.wmde-markdown {
  -webkit-text-size-adjust: 100%;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji';
  font-size: 16px;
  line-height: 1.5;
  word-wrap: break-word;
  color: var(--color-fg-default);
  background-color: var(--color-canvas-default);
}
.wmde-markdown details,
.wmde-markdown figcaption,
.wmde-markdown figure {
  display: block;
}
.wmde-markdown summary {
  display: list-item;
}
.wmde-markdown [hidden] {
  display: none !important;
}
.wmde-markdown a {
  background-color: transparent;
  color: var(--color-accent-fg);
  text-decoration: none;
}
.wmde-markdown a:active,
.wmde-markdown a:hover {
  outline-width: 0;
}
.wmde-markdown abbr[title] {
  border-bottom: none;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}
.wmde-markdown b,
.wmde-markdown strong {
  font-weight: 600;
}
.wmde-markdown dfn {
  font-style: italic;
}
.wmde-markdown h1 {
  margin: 0.67em 0;
  font-weight: 600;
  padding-bottom: 0.3em;
  font-size: 2em;
  border-bottom: 1px solid var(--color-border-muted);
}
.wmde-markdown mark {
  background-color: var(--color-attention-subtle);
  color: var(--color-text-primary);
}
.wmde-markdown small {
  font-size: 90%;
}
.wmde-markdown sub,
.wmde-markdown sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
.wmde-markdown sub {
  bottom: -0.25em;
}
.wmde-markdown sup {
  top: -0.5em;
}
.wmde-markdown img {
  display: inline-block;
  border-style: none;
  max-width: 100%;
  box-sizing: content-box;
  background-color: var(--color-canvas-default);
}
.wmde-markdown code,
.wmde-markdown kbd,
.wmde-markdown pre,
.wmde-markdown samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
.wmde-markdown figure {
  margin: 1em 40px;
}
.wmde-markdown hr {
  box-sizing: content-box;
  overflow: hidden;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--color-border-muted);
  height: 0.25em;
  padding: 0;
  margin: 24px 0;
  background-color: var(--color-border-default);
}
.wmde-markdown input {
  font: inherit;
  margin: 0;
  overflow: visible;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
.wmde-markdown [type='button'],
.wmde-markdown [type='reset'],
.wmde-markdown [type='submit'] {
  -webkit-appearance: button;
}
.wmde-markdown [type='button']::-moz-focus-inner,
.wmde-markdown [type='reset']::-moz-focus-inner,
.wmde-markdown [type='submit']::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
.wmde-markdown [type='button']:-moz-focusring,
.wmde-markdown [type='reset']:-moz-focusring,
.wmde-markdown [type='submit']:-moz-focusring {
  outline: 1px dotted ButtonText;
}
.wmde-markdown [type='checkbox'],
.wmde-markdown [type='radio'] {
  box-sizing: border-box;
  padding: 0;
}
.wmde-markdown [type='number']::-webkit-inner-spin-button,
.wmde-markdown [type='number']::-webkit-outer-spin-button {
  height: auto;
}
.wmde-markdown [type='search'] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
.wmde-markdown [type='search']::-webkit-search-cancel-button,
.wmde-markdown [type='search']::-webkit-search-decoration {
  -webkit-appearance: none;
}
.wmde-markdown ::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54;
}
.wmde-markdown ::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
.wmde-markdown a:hover {
  text-decoration: underline;
}
.wmde-markdown hr::before {
  display: table;
  content: '';
}
.wmde-markdown hr::after {
  display: table;
  clear: both;
  content: '';
}
.wmde-markdown table {
  border-spacing: 0;
  border-collapse: collapse;
  display: block;
  width: -moz-max-content;
  width: max-content;
  max-width: 100%;
}
.wmde-markdown td,
.wmde-markdown th {
  padding: 0;
}
.wmde-markdown details summary {
  cursor: pointer;
}
.wmde-markdown details:not([open]) > *:not(summary) {
  display: none !important;
}
.wmde-markdown kbd {
  display: inline-block;
  padding: 3px 5px;
  font: 11px ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace;
  line-height: 10px;
  color: var(--color-fg-default);
  vertical-align: middle;
  background-color: var(--color-canvas-subtle);
  border: solid 1px var(--color-neutral-muted);
  border-bottom-color: var(--color-neutral-muted);
  border-radius: 6px;
  box-shadow: inset 0 -1px 0 var(--color-neutral-muted);
}
.wmde-markdown h1,
.wmde-markdown h2,
.wmde-markdown h3,
.wmde-markdown h4,
.wmde-markdown h5,
.wmde-markdown h6 {
  margin-top: 24px;
  margin-bottom: 16px;
  font-weight: 600;
  line-height: 1.25;
}
.wmde-markdown td,
.wmde-markdown th {
  padding: 0;
}
.wmde-markdown details summary {
  cursor: pointer;
}
.wmde-markdown details:not([open]) > *:not(summary) {
  display: none !important;
}
.wmde-markdown kbd {
  display: inline-block;
  padding: 3px 5px;
  font: 11px ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace;
  line-height: 10px;
  color: var(--color-fg-default);
  vertical-align: middle;
  background-color: var(--color-canvas-subtle);
  border: solid 1px var(--color-neutral-muted);
  border-bottom-color: var(--color-neutral-muted);
  border-radius: 6px;
  box-shadow: inset 0 -1px 0 var(--color-neutral-muted);
}
.wmde-markdown h1,
.wmde-markdown h2,
.wmde-markdown h3,
.wmde-markdown h4,
.wmde-markdown h5,
.wmde-markdown h6 {
  margin-top: 24px;
  margin-bottom: 16px;
  font-weight: 600;
  line-height: 1.25;
}
.wmde-markdown h2 {
  font-weight: 600;
  padding-bottom: 0.3em;
  font-size: 1.5em;
  border-bottom: 1px solid var(--color-border-muted);
}
.wmde-markdown h3 {
  font-weight: 600;
  font-size: 1.25em;
}
.wmde-markdown h4 {
  font-weight: 600;
  font-size: 1em;
}
.wmde-markdown h5 {
  font-weight: 600;
  font-size: 0.875em;
}
.wmde-markdown h6 {
  font-weight: 600;
  font-size: 0.85em;
  color: var(--color-fg-muted);
}
.wmde-markdown p {
  margin-top: 0;
  margin-bottom: 10px;
}
.wmde-markdown blockquote {
  margin: 0;
  padding: 0 1em;
  color: var(--color-fg-muted);
  border-left: 0.25em solid var(--color-border-default);
}
.wmde-markdown ul,
.wmde-markdown ol {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 2em;
}
.wmde-markdown ol ol,
.wmde-markdown ul ol {
  list-style-type: lower-roman;
}
.wmde-markdown ul ul ol,
.wmde-markdown ul ol ol,
.wmde-markdown ol ul ol,
.wmde-markdown ol ol ol {
  list-style-type: lower-alpha;
}
.wmde-markdown dd {
  margin-left: 0;
}
.wmde-markdown tt,
.wmde-markdown code {
  font-family: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace;
  font-size: 12px;
}
.wmde-markdown pre {
  margin-top: 0;
  margin-bottom: 0;
  font-family: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace;
  font-size: 12px;
  word-wrap: normal;
}
.wmde-markdown .octicon {
  display: inline-block;
  overflow: visible !important;
  vertical-align: text-bottom;
  fill: currentColor;
}
.wmde-markdown ::-moz-placeholder {
  color: var(--color-fg-subtle);
  opacity: 1;
}
.wmde-markdown ::placeholder {
  color: var(--color-fg-subtle);
  opacity: 1;
}
.wmde-markdown input::-webkit-outer-spin-button,
.wmde-markdown input::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
  appearance: none;
}
.wmde-markdown [data-catalyst] {
  display: block;
}
.wmde-markdown::before {
  display: table;
  content: '';
}
.wmde-markdown::after {
  display: table;
  clear: both;
  content: '';
}
.wmde-markdown > *:first-child {
  margin-top: 0 !important;
}
.wmde-markdown > *:last-child {
  margin-bottom: 0 !important;
}
.wmde-markdown a:not([href]) {
  color: inherit;
  text-decoration: none;
}
.wmde-markdown .absent {
  color: var(--color-danger-fg);
}
.wmde-markdown a.anchor {
  float: left;
  padding-right: 4px;
  margin-left: -20px;
  line-height: 1;
}
.wmde-markdown .anchor:focus {
  outline: none;
}
.wmde-markdown p,
.wmde-markdown blockquote,
.wmde-markdown ul,
.wmde-markdown ol,
.wmde-markdown dl,
.wmde-markdown table,
.wmde-markdown pre,
.wmde-markdown details {
  margin-top: 0;
  margin-bottom: 16px;
}
.wmde-markdown blockquote > :first-child {
  margin-top: 0;
}
.wmde-markdown blockquote > :last-child {
  margin-bottom: 0;
}
.wmde-markdown sup > a::before {
  content: '[';
}
.wmde-markdown sup > a::after {
  content: ']';
}
.wmde-markdown h1 .octicon-link,
.wmde-markdown h2 .octicon-link,
.wmde-markdown h3 .octicon-link,
.wmde-markdown h4 .octicon-link,
.wmde-markdown h5 .octicon-link,
.wmde-markdown h6 .octicon-link {
  color: var(--color-fg-default);
  vertical-align: middle;
  visibility: hidden;
}
.wmde-markdown h1:hover .anchor,
.wmde-markdown h2:hover .anchor,
.wmde-markdown h3:hover .anchor,
.wmde-markdown h4:hover .anchor,
.wmde-markdown h5:hover .anchor,
.wmde-markdown h6:hover .anchor {
  text-decoration: none;
}
.wmde-markdown h1:hover .anchor .octicon-link,
.wmde-markdown h2:hover .anchor .octicon-link,
.wmde-markdown h3:hover .anchor .octicon-link,
.wmde-markdown h4:hover .anchor .octicon-link,
.wmde-markdown h5:hover .anchor .octicon-link,
.wmde-markdown h6:hover .anchor .octicon-link {
  visibility: visible;
}
.wmde-markdown h1 tt,
.wmde-markdown h1 code,
.wmde-markdown h2 tt,
.wmde-markdown h2 code,
.wmde-markdown h3 tt,
.wmde-markdown h3 code,
.wmde-markdown h4 tt,
.wmde-markdown h4 code,
.wmde-markdown h5 tt,
.wmde-markdown h5 code,
.wmde-markdown h6 tt,
.wmde-markdown h6 code {
  padding: 0 0.2em;
  font-size: inherit;
}
.wmde-markdown ul.no-list,
.wmde-markdown ol.no-list {
  padding: 0;
  list-style-type: none;
}
.wmde-markdown ol[type='1'] {
  list-style-type: decimal;
}
.wmde-markdown ol[type='a'] {
  list-style-type: lower-alpha;
}
.wmde-markdown ol[type='i'] {
  list-style-type: lower-roman;
}
.wmde-markdown div > ol:not([type]) {
  list-style-type: decimal;
}
.wmde-markdown ul ul,
.wmde-markdown ul ol,
.wmde-markdown ol ol,
.wmde-markdown ol ul {
  margin-top: 0;
  margin-bottom: 0;
}
.wmde-markdown li > p {
  margin-top: 16px;
}
.wmde-markdown li + li {
  margin-top: 0.25em;
}
.wmde-markdown dl {
  padding: 0;
}
.wmde-markdown dl dt {
  padding: 0;
  margin-top: 16px;
  font-size: 1em;
  font-style: italic;
  font-weight: 600;
}
.wmde-markdown dl dd {
  padding: 0 16px;
  margin-bottom: 16px;
}
.wmde-markdown table th {
  font-weight: 600;
}
.wmde-markdown table th,
.wmde-markdown table td {
  padding: 6px 13px;
  border: 1px solid var(--color-border-default);
}
.wmde-markdown table tr {
  background-color: var(--color-canvas-default);
  border-top: 1px solid var(--color-border-muted);
}
.wmde-markdown table tr:nth-child(2n) {
  background-color: var(--color-canvas-subtle);
}
.wmde-markdown table img {
  background-color: transparent;
}
.wmde-markdown img[align='right'] {
  padding-left: 20px;
}
.wmde-markdown img[align='left'] {
  padding-right: 20px;
}
.wmde-markdown .emoji {
  max-width: none;
  vertical-align: text-top;
  background-color: transparent;
}
.wmde-markdown span.frame {
  display: block;
  overflow: hidden;
}
.wmde-markdown span.frame > span {
  display: block;
  float: left;
  width: auto;
  padding: 7px;
  margin: 13px 0 0;
  overflow: hidden;
  border: 1px solid var(--color-border-default);
}
.wmde-markdown span.frame span img {
  display: block;
  float: left;
}
.wmde-markdown span.frame span span {
  display: block;
  padding: 5px 0 0;
  clear: both;
  color: var(--color-fg-default);
}
.wmde-markdown span.align-center {
  display: block;
  overflow: hidden;
  clear: both;
}
.wmde-markdown span.align-center > span {
  display: block;
  margin: 13px auto 0;
  overflow: hidden;
  text-align: center;
}
.wmde-markdown span.align-center span img {
  margin: 0 auto;
  text-align: center;
}
.wmde-markdown span.align-right {
  display: block;
  overflow: hidden;
  clear: both;
}
.wmde-markdown span.align-right > span {
  display: block;
  margin: 13px 0 0;
  overflow: hidden;
  text-align: right;
}
.wmde-markdown span.align-right span img {
  margin: 0;
  text-align: right;
}
.wmde-markdown span.float-left {
  display: block;
  float: left;
  margin-right: 13px;
  overflow: hidden;
}
.wmde-markdown span.float-left span {
  margin: 13px 0 0;
}
.wmde-markdown span.float-right {
  display: block;
  float: right;
  margin-left: 13px;
  overflow: hidden;
}
.wmde-markdown span.float-right > span {
  display: block;
  margin: 13px auto 0;
  overflow: hidden;
  text-align: right;
}
.wmde-markdown code,
.wmde-markdown tt {
  padding: 0.2em 0.4em;
  margin: 0;
  font-size: 85%;
  background-color: var(--color-neutral-muted);
  border-radius: 6px;
}
.wmde-markdown code br,
.wmde-markdown tt br {
  display: none;
}
.wmde-markdown del code {
  text-decoration: inherit;
}
.wmde-markdown pre code {
  font-size: 100%;
}
.wmde-markdown pre > code {
  padding: 0;
  margin: 0;
  word-break: normal;
  white-space: pre;
  background: transparent;
  border: 0;
}
.wmde-markdown pre {
  font-size: 85%;
  line-height: 1.45;
  background-color: var(--color-canvas-subtle);
  border-radius: 6px;
}
.wmde-markdown pre code,
.wmde-markdown pre tt {
  display: inline;
  max-width: auto;
  padding: 0;
  margin: 0;
  overflow: visible;
  line-height: inherit;
  word-wrap: normal;
  background-color: transparent;
  border: 0;
}
.wmde-markdown pre > code {
  padding: 16px;
  overflow: auto;
  display: block;
}
.wmde-markdown pre > code::-webkit-scrollbar {
  background: transparent;
  width: 8px;
  height: 8px;
}
.wmde-markdown pre > code::-webkit-scrollbar-thumb {
  background: var(--color-fg-muted);
  border-radius: 10px;
}
.wmde-markdown .csv-data td,
.wmde-markdown .csv-data th {
  padding: 5px;
  overflow: hidden;
  font-size: 12px;
  line-height: 1;
  text-align: left;
  white-space: nowrap;
}
.wmde-markdown .csv-data .blob-num {
  padding: 10px 8px 9px;
  text-align: right;
  background: var(--color-canvas-default);
  border: 0;
}
.wmde-markdown .csv-data tr {
  border-top: 0;
}
.wmde-markdown .csv-data th {
  font-weight: 600;
  background: var(--color-canvas-subtle);
  border-top: 0;
}
.wmde-markdown .footnotes {
  font-size: 12px;
  color: var(--color-fg-muted);
  border-top: 1px solid var(--color-border-default);
}
.wmde-markdown .footnotes ol {
  padding-left: 16px;
}
.wmde-markdown .footnotes li {
  position: relative;
}
.wmde-markdown .footnotes li:target::before {
  position: absolute;
  top: -8px;
  right: -8px;
  bottom: -8px;
  left: -24px;
  pointer-events: none;
  content: '';
  border: 2px solid var(--color-accent-emphasis);
  border-radius: 6px;
}
.wmde-markdown .footnotes li:target {
  color: var(--color-fg-default);
}
.wmde-markdown .footnotes .data-footnote-backref g-emoji {
  font-family: monospace;
}
.wmde-markdown .task-list-item {
  list-style-type: none;
}
.wmde-markdown .task-list-item label {
  font-weight: 400;
}
.wmde-markdown .task-list-item.enabled label {
  cursor: pointer;
}
.wmde-markdown .task-list-item + .wmde-markdown .task-list-item {
  margin-top: 3px;
}
.wmde-markdown .task-list-item .handle {
  display: none;
}
.wmde-markdown .task-list-item-checkbox,
.wmde-markdown .contains-task-list input[type='checkbox'] {
  margin: 0 0.2em 0.25em -1.6em;
  vertical-align: middle;
}
.wmde-markdown .contains-task-list:dir(rtl) .task-list-item-checkbox,
.wmde-markdown .contains-task-list:dir(rtl) input[type='checkbox'] {
  margin: 0 -1.6em 0.25em 0.2em;
}
.wmde-markdown ::-webkit-calendar-picker-indicator {
  filter: invert(50%);
}
.wmde-markdown pre {
  position: relative;
}
.wmde-markdown pre .copied {
  visibility: hidden;
  display: flex;
  position: absolute;
  cursor: pointer;
  color: var(--color-fg-default);
  top: 6px;
  right: 6px;
  border-radius: 5px;
  background: var(--color-border-default);
  padding: 6px;
  font-size: 12px;
  transition: all 0.3s;
}
.wmde-markdown pre .copied .octicon-copy {
  display: block;
}
.wmde-markdown pre .copied .octicon-check {
  display: none;
}
.wmde-markdown pre:hover .copied {
  visibility: visible;
}
.wmde-markdown pre:hover .copied:hover {
  background: var(--color-prettylights-syntax-entity-tag);
  color: var(--color-canvas-default);
}
.wmde-markdown pre:hover .copied:active,
.wmde-markdown pre .copied.active {
  background: var(--color-copied-active-bg);
  color: var(--color-canvas-default);
}
.wmde-markdown pre .active .octicon-copy {
  display: none;
}
.wmde-markdown pre .active .octicon-check {
  display: block;
}
.wmde-markdown .markdown-alert {
  padding: 0.5rem 1em;
  color: inherit;
  margin-bottom: 16px;
  border-left: 0.25em solid var(--borderColor-default, var(--color-border-default));
}
.wmde-markdown .markdown-alert > :last-child {
  margin-bottom: 0 !important;
}
.wmde-markdown .markdown-alert .markdown-alert-title {
  display: flex;
  align-items: center;
  line-height: 1;
  font-weight: 500;
  font-size: 14px;
}
.wmde-markdown .markdown-alert .markdown-alert-title svg.octicon {
  margin-right: var(--base-size-8, 8px) !important;
}
.wmde-markdown .markdown-alert.markdown-alert-note {
  border-left-color: var(--borderColor-accent-emphasis, var(--color-accent-emphasis));
}
.wmde-markdown .markdown-alert.markdown-alert-note .markdown-alert-title {
  color: var(--fgColor-accent, var(--color-accent-fg));
}
.wmde-markdown .markdown-alert.markdown-alert-tip {
  border-left-color: var(--borderColor-success-emphasis, var(--color-success-emphasis));
}
.wmde-markdown .markdown-alert.markdown-alert-tip .markdown-alert-title {
  color: var(--fgColor-success, var(--color-success-fg));
}
.wmde-markdown .markdown-alert.markdown-alert-important {
  border-left-color: var(--borderColor-done-emphasis, var(--color-done-emphasis));
}
.wmde-markdown .markdown-alert.markdown-alert-important .markdown-alert-title {
  color: var(--fgColor-done, var(--color-done-fg));
}
.wmde-markdown .markdown-alert.markdown-alert-warning {
  border-left-color: var(--borderColor-attention-emphasis, var(--color-attention-emphasis));
}
.wmde-markdown .markdown-alert.markdown-alert-warning .markdown-alert-title {
  color: var(--fgColor-attention, var(--color-attention-fg));
}
.wmde-markdown .markdown-alert.markdown-alert-caution {
  border-left-color: var(--borderColor-danger-emphasis, var(--color-danger-emphasis));
}
.wmde-markdown .markdown-alert.markdown-alert-caution .markdown-alert-title {
  color: var(--fgColor-danger, var(--color-danger-fg));
}
.wmde-markdown .highlight-line {
  background-color: var(--color-neutral-muted);
}
.wmde-markdown .code-line.line-number::before {
  display: inline-block;
  width: 1rem;
  text-align: right;
  margin-right: 16px;
  color: var(--color-fg-subtle);
  content: attr(line);
  white-space: nowrap;
}
.wmde-markdown .token.comment,
.wmde-markdown .token.prolog,
.wmde-markdown .token.doctype,
.wmde-markdown .token.cdata {
  color: var(--color-prettylights-syntax-comment);
}
.wmde-markdown .token.namespace {
  opacity: 0.7;
}
.wmde-markdown .token.property,
.wmde-markdown .token.tag,
.wmde-markdown .token.selector,
.wmde-markdown .token.constant,
.wmde-markdown .token.symbol,
.wmde-markdown .token.deleted {
  color: var(--color-prettylights-syntax-entity-tag);
}
.wmde-markdown .token.maybe-class-name {
  color: var(--color-prettylights-syntax-variable);
}
.wmde-markdown .token.property-access,
.wmde-markdown .token.operator,
.wmde-markdown .token.boolean,
.wmde-markdown .token.number,
.wmde-markdown .token.selector .token.class,
.wmde-markdown .token.attr-name,
.wmde-markdown .token.string,
.wmde-markdown .token.char,
.wmde-markdown .token.builtin {
  color: var(--color-prettylights-syntax-constant);
}
.wmde-markdown .token.deleted {
  color: var(--color-prettylights-syntax-markup-deleted-text);
}
.wmde-markdown .code-line .token.deleted {
  background-color: var(--color-prettylights-syntax-markup-deleted-bg);
}
.wmde-markdown .token.inserted {
  color: var(--color-prettylights-syntax-markup-inserted-text);
}
.wmde-markdown .code-line .token.inserted {
  background-color: var(--color-prettylights-syntax-markup-inserted-bg);
}
.wmde-markdown .token.variable {
  color: var(--color-prettylights-syntax-constant);
}
.wmde-markdown .token.entity,
.wmde-markdown .token.url,
.wmde-markdown .language-css .token.string,
.wmde-markdown .style .token.string {
  color: var(--color-prettylights-syntax-string);
}
.wmde-markdown .token.color,
.wmde-markdown .token.atrule,
.wmde-markdown .token.attr-value,
.wmde-markdown .token.function,
.wmde-markdown .token.class-name {
  color: var(--color-prettylights-syntax-string);
}
.wmde-markdown .token.rule,
.wmde-markdown .token.regex,
.wmde-markdown .token.important,
.wmde-markdown .token.keyword {
  color: var(--color-prettylights-syntax-keyword);
}
.wmde-markdown .token.coord {
  color: var(--color-prettylights-syntax-meta-diff-range);
}
.wmde-markdown .token.important,
.wmde-markdown .token.bold {
  font-weight: bold;
}
.wmde-markdown .token.italic {
  font-style: italic;
}
.wmde-markdown .token.entity {
  cursor: help;
}

.w-md-editor-toolbar-child {
  position: absolute;
  border-radius: 3px;
  box-shadow: 0 0 0 1px var(--md-editor-box-shadow-color), 0 0 0 var(--md-editor-box-shadow-color), 0 1px 1px var(--md-editor-box-shadow-color);
  background-color: var(--md-editor-background-color);
  z-index: 1;
  display: none;
}
.w-md-editor-toolbar-child.active {
  display: block;
}
.w-md-editor-toolbar-child .w-md-editor-toolbar {
  border-bottom: 0;
  padding: 3px;
  border-radius: 3px;
}
.w-md-editor-toolbar-child .w-md-editor-toolbar ul > li {
  display: block;
}
.w-md-editor-toolbar-child .w-md-editor-toolbar ul > li button {
  width: -webkit-fill-available;
  height: initial;
  box-sizing: border-box;
  padding: 3px 4px 2px 4px;
  margin: 0;
}

.w-md-editor-toolbar {
  border-bottom: 1px solid var(--md-editor-box-shadow-color);
  background-color: var(--md-editor-background-color);
  padding: 3px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-radius: 3px 3px 0 0;
  -webkit-user-select: none;
          -moz-user-select: none;
       user-select: none;
  flex-wrap: wrap;
}
.w-md-editor-toolbar.bottom {
  border-bottom: 0px;
  border-top: 1px solid var(--md-editor-box-shadow-color);
  border-radius: 0 0 3px 3px;
}
.w-md-editor-toolbar ul,
.w-md-editor-toolbar li {
  margin: 0;
  padding: 0;
  list-style: none;
  line-height: initial;
}
.w-md-editor-toolbar li {
  display: inline-block;
  font-size: 14px;
}
.w-md-editor-toolbar li + li {
  margin: 0;
}
.w-md-editor-toolbar li > button {
  border: none;
  height: 20px;
  line-height: 14px;
  background: none;
  padding: 4px;
  margin: 0 1px;
  border-radius: 2px;
  text-transform: none;
  font-weight: normal;
  overflow: visible;
  outline: none;
  cursor: pointer;
  transition: all 0.3s;
  white-space: nowrap;
  color: var(--color-fg-default);
}
.w-md-editor-toolbar li > button:hover,
.w-md-editor-toolbar li > button:focus {
  background-color: var(--color-neutral-muted);
  color: var(--color-accent-fg);
}
.w-md-editor-toolbar li > button:active {
  background-color: var(--color-neutral-muted);
  color: var(--color-danger-fg);
}
.w-md-editor-toolbar li > button:disabled {
  color: var(--md-editor-box-shadow-color);
  cursor: not-allowed;
}
.w-md-editor-toolbar li > button:disabled:hover {
  background-color: transparent;
  color: var(--md-editor-box-shadow-color);
}
.w-md-editor-toolbar li.active > button {
  color: var(--color-accent-fg);
  background-color: var(--color-neutral-muted);
}
.w-md-editor-toolbar-divider {
  height: 14px;
  width: 1px;
  margin: -3px 3px 0 3px !important;
  vertical-align: middle;
  background-color: var(--md-editor-box-shadow-color);
}

.w-md-editor-area {
  overflow: auto;
  border-radius: 5px;
}
.w-md-editor-text {
  min-height: 100%;
  position: relative;
  text-align: left;
  white-space: pre-wrap;
  word-break: keep-all;
  overflow-wrap: break-word;
  box-sizing: border-box;
  padding: 10px;
  margin: 0;
  font-size: 14px !important;
  line-height: 18px !important;
  font-variant-ligatures: common-ligatures;
}
.w-md-editor-text-pre,
.w-md-editor-text-input,
.w-md-editor-text > .w-md-editor-text-pre {
  margin: 0;
  border: 0;
  background: none;
  box-sizing: inherit;
  display: inherit;
  font-family: inherit;
  font-family: var(--md-editor-font-family) !important;
  font-size: inherit;
  font-style: inherit;
  font-variant-ligatures: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  -moz-tab-size: inherit;
    -o-tab-size: inherit;
       tab-size: inherit;
  text-indent: inherit;
  text-rendering: inherit;
  text-transform: inherit;
  white-space: inherit;
  overflow-wrap: inherit;
  word-break: inherit;
  word-break: normal;
  padding: 0;
}
.w-md-editor-text-pre {
  position: relative;
  margin: 0px !important;
  pointer-events: none;
  background-color: transparent !important;
}
.w-md-editor-text-pre > code {
  padding: 0 !important;
  font-family: var(--md-editor-font-family) !important;
  font-size: 14px !important;
  line-height: 18px !important;
}
.w-md-editor-text-input {
  position: absolute;
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
  resize: none;
  color: inherit;
  overflow: hidden;
  outline: 0;
  padding: inherit;
  -webkit-font-smoothing: antialiased;
  -webkit-text-fill-color: transparent;
}
.w-md-editor-text-input:empty {
  -webkit-text-fill-color: inherit !important;
}
.w-md-editor-text-pre,
.w-md-editor-text-input {
  word-wrap: pre;
  word-break: break-word;
  white-space: pre-wrap;
}
/**
 * Hack to apply on some CSS on IE10 and IE11
 */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  /**
    * IE doesn't support '-webkit-text-fill-color'
    * So we use 'color: transparent' to make the text transparent on IE
    * Unlike other browsers, it doesn't affect caret color in IE
    */
  .w-md-editor-text-input {
    color: transparent !important;
  }
  .w-md-editor-text-input::-moz-selection {
    background-color: #accef7 !important;
    color: transparent !important;
  }
  .w-md-editor-text-input::selection {
    background-color: #accef7 !important;
    color: transparent !important;
  }
}
.w-md-editor-text-pre .punctuation {
  color: var(--color-prettylights-syntax-comment, #8b949e) !important;
}
.w-md-editor-text-pre .token.url,
.w-md-editor-text-pre .token.content {
  color: var(--color-prettylights-syntax-constant, #0550ae) !important;
}
.w-md-editor-text-pre .token.title.important {
  color: var(--color-prettylights-syntax-markup-bold, #24292f);
}
.w-md-editor-text-pre .token.code-block .function {
  color: var(--color-prettylights-syntax-entity, #8250df);
}
.w-md-editor-text-pre .token.bold {
  font-weight: unset !important;
}
.w-md-editor-text-pre .token.title {
  line-height: unset !important;
  font-size: unset !important;
  font-weight: unset !important;
}
.w-md-editor-text-pre .token.code.keyword {
  color: var(--color-prettylights-syntax-constant, #0550ae) !important;
}
.w-md-editor-text-pre .token.strike,
.w-md-editor-text-pre .token.strike .content {
  color: var(--color-prettylights-syntax-markup-deleted-text, #82071e) !important;
}

.w-md-editor-bar {
  position: absolute;
  cursor: s-resize;
  right: 0;
  bottom: 0;
  margin-top: -11px;
  margin-right: 0;
  width: 14px;
  z-index: 3;
  height: 10px;
  border-radius: 0 0 3px 0;
  -webkit-user-select: none;
          -moz-user-select: none;
       user-select: none;
}
.w-md-editor-bar svg {
  display: block;
  margin: 0 auto;
}

.w-md-editor {
  text-align: left;
  border-radius: 3px;
  padding-bottom: 1px;
  position: relative;
  color: var(--color-fg-default);
  --md-editor-font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  --md-editor-background-color: var(--color-canvas-default, #ffffff);
  --md-editor-box-shadow-color: var(--color-border-default, #d0d7de);
  box-shadow: 0 0 0 1px var(--md-editor-box-shadow-color), 0 0 0 var(--md-editor-box-shadow-color), 0 1px 1px var(--md-editor-box-shadow-color);
  background-color: var(--md-editor-background-color);
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  display: flex;
  flex-direction: column;
}
.w-md-editor.w-md-editor-rtl {
  direction: rtl !important;
  text-align: right !important;
}
.w-md-editor.w-md-editor-rtl .w-md-editor-preview {
  right: unset !important;
  left: 0;
  text-align: right !important;
  box-shadow: inset -1px 0 0 0 var(--md-editor-box-shadow-color);
}
.w-md-editor.w-md-editor-rtl .w-md-editor-text {
  text-align: right !important;
}
.w-md-editor-toolbar {
  height: -moz-fit-content;
  height: fit-content;
}
.w-md-editor-content {
  height: 100%;
  overflow: auto;
  position: relative;
  border-radius: 0 0 3px 0;
}
.w-md-editor .copied {
  display: none !important;
}
.w-md-editor-input {
  width: 50%;
  height: 100%;
}
.w-md-editor-text-pre > code {
  word-break: break-word !important;
  white-space: pre-wrap !important;
}
.w-md-editor-preview {
  width: 50%;
  box-sizing: border-box;
  box-shadow: inset 1px 0 0 0 var(--md-editor-box-shadow-color);
  position: absolute;
  padding: 10px 20px;
  overflow: auto;
  top: 0;
  right: 0;
  bottom: 0;
  border-radius: 0 0 5px 0;
  display: flex;
  flex-direction: column;
}
.w-md-editor-preview .anchor {
  display: none;
}
.w-md-editor-preview .contains-task-list li.task-list-item {
  list-style: none;
}
.w-md-editor-show-preview .w-md-editor-input {
  width: 0%;
  overflow: hidden;
  background-color: var(--md-editor-background-color);
}
.w-md-editor-show-preview .w-md-editor-preview {
  width: 100%;
  box-shadow: inset 0 0 0 0;
}
.w-md-editor-show-edit .w-md-editor-input {
  width: 100%;
}
.w-md-editor-show-edit .w-md-editor-preview {
  width: 0%;
  padding: 0;
}
.w-md-editor-fullscreen {
  overflow: hidden;
  position: fixed;
  z-index: 99999;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100% !important;
}
.w-md-editor-fullscreen .w-md-editor-content {
  height: 100%;
}

/* Stack Q&A - Compiled Styles */

/* ===== variables.css ===== */

/* Stack Q&A - CSS Custom Properties */

:root {
    --so-orange: #f48024;
    --so-orange-dark: #e5740a;
    --so-blue: #0074cc;
    --so-blue-dark: #0a61a3;
    --so-red: #dc3545;
    --so-green: #5eba7d;
    --so-yellow: #fff8dc;
    --so-gray-50: #fafafb;
    --so-gray-100: #f1f2f3;
    --so-gray-200: #e3e6e8;
    --so-gray-300: #d6d9dc;
    --so-gray-400: #9fa6ad;
    --so-gray-500: #6a737c;
    --so-gray-600: #525960;
    --so-gray-700: #3b4045;
    --so-gray-800: #232629;
    --so-gray-900: #0c0d0e;
    --border-radius: 3px;
    --border-radius-lg: 5px;
    --box-shadow: 0 1px 2px rgba(0,0,0,0.05), 0 1px 4px rgba(0,0,0,0.05), 0 2px 8px rgba(0,0,0,0.05);
    --box-shadow-hover: 0 1px 4px rgba(0,0,0,0.1), 0 4px 12px rgba(0,0,0,0.1);
}

/* Dark Mode Support (if implemented) */

@media (prefers-color-scheme: dark) {
    .stack-qa-app.dark-mode {
        --so-gray-50: #2d2d30;
        --so-gray-100: #3e3e42;
        --so-gray-200: #4f4f55;
        --so-gray-300: #61616a;
        --so-gray-400: #858585;
        --so-gray-500: #a6a6a6;
        --so-gray-600: #cccccc;
        --so-gray-700: #e8e8e8;
        --so-gray-800: #f0f0f0;
        --so-gray-900: #ffffff;
        background-color: #1e1e1e;
        color: var(--so-gray-800);
    }
    
    .stack-qa-app.dark-mode .stack-qa-main {
        background-color: #252526;
        border-color: var(--so-gray-200);
    }
    
    .stack-qa-app.dark-mode .questions {
        background-color: #2d2d30;
        border-color: var(--so-gray-200);
    }
    
    .stack-qa-app.dark-mode .question-item:hover {
        background-color: var(--so-gray-100);
    }
}

/* High Contrast Mode Support */

@media (prefers-contrast: high) {
    :root {
        --so-gray-100: #f0f0f0;
        --so-gray-200: #d0d0d0;
        --so-gray-300: #b0b0b0;
        --so-gray-400: #808080;
        --so-gray-500: #606060;
        --so-gray-600: #404040;
        --so-gray-700: #202020;
        --so-gray-800: #000000;
    }
    
    .question-item:hover,
    .notification-item:hover {
        background-color: var(--so-gray-200);
    }
}

/* Reduced Motion Support */

@media (prefers-reduced-motion: reduce) {
    *,
    ::before,
    ::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}

/* ===== base.css ===== */

/* Stack Q&A - Base Styles */

/* Reset and Base */

* {
    box-sizing: border-box;
}

body {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif;
    line-height: 1.4;
    color: var(--so-gray-800);
    background-color: #fff;
    margin: 0;
    padding: 0;
}

/* Main App Container */

.stack-qa-app {
    min-height: 100vh;
    background-color: #f8f9f9;
}

/* Header */

.stack-qa-header {
    background: #fff;
    border-top: 3px solid var(--so-orange);
    border-bottom: 1px solid var(--so-gray-200);
    padding: 0;
    margin: 0;
    position: sticky;
    top: 0;
    z-index: 1000;
    box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}

.stack-qa-header nav {
    max-width: 1264px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    padding: 0 16px;
    height: 50px;
    gap: 12px;
}

.stack-qa-header .logo {
    font-weight: 700;
    font-size: 15px;
    color: var(--so-gray-800);
    text-decoration: none;
    margin-right: 16px;
    padding: 6px 12px;
    border-radius: var(--border-radius);
    transition: background-color 0.1s ease-in-out;
}

.stack-qa-header .logo:hover {
    background-color: var(--so-gray-100);
}

.stack-qa-header nav a {
    text-decoration: none;
    color: var(--so-gray-600);
    font-size: 13px;
    padding: 6px 12px;
    border-radius: var(--border-radius);
    transition: all 0.1s ease-in-out;
    white-space: nowrap;
}

.stack-qa-header nav a:hover {
    background-color: var(--so-gray-100);
    color: var(--so-gray-700);
}

.stack-qa-header nav a.active {
    background-color: var(--so-orange);
    color: #fff;
    font-weight: 500;
}

.stack-qa-header nav a.ask-question {
    background-color: var(--so-blue);
    color: #fff;
    margin-left: 8px;
}

.stack-qa-header nav a.ask-question:hover {
    background-color: var(--so-blue-dark);
}

/* Main Content */

.stack-qa-main {
    max-width: 1264px;
    margin: 0 auto;
    padding: 24px 16px;
    min-height: calc(100vh - 50px);
    background-color: #fff;
    border-left: 1px solid var(--so-gray-200);
    border-right: 1px solid var(--so-gray-200);
}

/* Loading */

.loading {
    text-align: center;
    padding: 48px 16px;
    color: var(--so-gray-500);
    font-size: 15px;
}

.loading::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    border: 2px solid var(--so-gray-300);
    border-top: 2px solid var(--so-orange);
    border-radius: 50%;
    animation: spin 1s linear infinite;
    margin-left: 8px;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Common Form Elements */

.submit-button {
    background: var(--so-blue);
    color: white;
    border: 1px solid var(--so-blue);
    padding: 10px 12px;
    border-radius: var(--border-radius);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.1s ease-in-out;
    min-width: 80px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.submit-button:hover:not(:disabled) {
    background: var(--so-blue-dark);
    border-color: var(--so-blue-dark);
    text-decoration: none;
    color: white;
}

.submit-button:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    background: var(--so-gray-400);
    border-color: var(--so-gray-400);
}

.submit-button.primary {
    background: var(--so-blue);
    border-color: var(--so-blue);
}

.submit-button.secondary {
    background: transparent;
    color: var(--so-gray-600);
    border-color: var(--so-gray-300);
}

.submit-button.secondary:hover:not(:disabled) {
    background: var(--so-gray-100);
    color: var(--so-gray-700);
    border-color: var(--so-gray-400);
}

.submit-button.danger {
    background: var(--so-red);
    border-color: var(--so-red);
}

.submit-button.danger:hover:not(:disabled) {
    background: #c82333;
    border-color: #c82333;
}

/* Utility Classes */

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.text-muted {
    color: var(--so-gray-500) !important;
}

.text-danger {
    color: var(--so-red) !important;
}

.text-success {
    color: var(--so-green) !important;
}

.text-warning {
    color: var(--so-orange) !important;
}

/* Focus Styles for Accessibility */

.submit-button:focus,
input:focus,
select:focus,
button:focus,
a:focus {
    outline: 2px solid var(--so-blue);
    outline-offset: 2px;
}

/* Responsive Design */

@media (max-width: 1280px) {
    .stack-qa-main {
        max-width: 100%;
        border-left: none;
        border-right: none;
    }
}

@media (max-width: 980px) {
    .stack-qa-header nav {
        padding: 0 12px;
    }
    
    .stack-qa-main {
        padding: 16px 12px;
    }
}

@media (max-width: 768px) {
    .stack-qa-header nav {
        height: 44px;
        gap: 8px;
        padding: 0 12px;
    }
    
    .stack-qa-header .logo {
        font-size: 14px;
        margin-right: 8px;
    }
    
    .stack-qa-header nav a {
        font-size: 12px;
        padding: 4px 8px;
    }
    
    .stack-qa-main {
        padding: 12px;
    }
}

@media (max-width: 480px) {
    .stack-qa-header nav a:not(.logo):not(.ask-question) {
        display: none;
    }
    
    .search-bar input {
        font-size: 16px; /* Prevent zoom on iOS */
    }
}

/* Print Styles */

@media print {
    .stack-qa-header,
    .notification-bell,
    .submit-button {
        display: none !important;
    }
    
    .stack-qa-main {
        max-width: 100%;
        padding: 0;
        border: none;
        background: white;
    }
    
    a {
        text-decoration: none;
        color: black;
    }
    
    a[href]:after {
        content: " (" attr(href) ")";
        font-size: 0.8em;
        color: #666;
    }
}

/* ===== QuestionsList.css ===== */

/* QuestionsList Component Styles */

.questions-list-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--so-gray-200);
}

.questions-list-header h1 {
    font-size: 27px;
    margin: 0;
    font-weight: 400;
    color: var(--so-gray-800);
}

.questions-list-controls {
    display: flex;
    gap: 8px;
    align-items: center;
}

.search-bar {
    margin-bottom: 16px;
    position: relative;
}

.search-bar input {
    width: 100%;
    padding: 7.8px 32px 7.8px 9px;
    border: 1px solid var(--so-gray-300);
    border-radius: var(--border-radius);
    font-size: 13px;
    background-color: #fff;
    transition: all 0.1s ease-in-out;
    color: var(--so-gray-800);
    box-sizing: border-box;
}

.search-bar input:focus {
    outline: none;
    border-color: var(--so-blue);
    box-shadow: 0 0 0 4px rgba(0, 116, 204, 0.15);
}

.search-bar input::-moz-placeholder {
    color: var(--so-gray-400);
}

.search-bar input::placeholder {
    color: var(--so-gray-400);
}

.search-icon {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--so-gray-400);
    font-size: 14px;
}

.questions-controls {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 16px 0;
    padding: 12px 0;
    border-bottom: 1px solid var(--so-gray-200);
}

.results-info {
    font-size: 17px;
    color: var(--so-gray-800);
    font-weight: 400;
}

.sort-controls {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: var(--so-gray-600);
}

.sort-select {
    padding: 6px 8px;
    border: 1px solid var(--so-gray-300);
    border-radius: var(--border-radius);
    background: #fff;
    font-size: 13px;
    color: var(--so-gray-800);
    cursor: pointer;
}

.sort-select:focus {
    outline: none;
    border-color: var(--so-blue);
    box-shadow: 0 0 0 4px rgba(0, 116, 204, 0.15);
}

.questions {
    border: 1px solid var(--so-gray-200);
    border-radius: var(--border-radius);
    background-color: #fff;
}

.question-item {
    display: flex;
    padding: 16px;
    border-bottom: 1px solid var(--so-gray-200);
    transition: background-color 0.1s ease-in-out;
    position: relative;
}

.question-item:last-child {
    border-bottom: none;
}

.question-item:hover {
    background-color: var(--so-gray-50);
}

.question-item.featured {
    background-color: var(--so-yellow);
    border-left: 4px solid var(--so-orange);
}

.question-stats {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 108px;
    text-align: right;
    margin-right: 16px;
    font-size: 13px;
}

.stat {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 4px;
    color: var(--so-gray-600);
    margin-bottom: 2px;
}

.stat.votes {
    color: var(--so-gray-800);
    font-weight: 600;
}

.stat.answers {
    color: var(--so-gray-600);
}

.stat.accepted {
    color: var(--so-green);
    font-weight: 500;
    background-color: var(--so-green);
    border-radius: var(--border-radius);
    padding: 2px 4px;
    color: #fff;
    font-size: 11px;
}

.stat.views {
    color: var(--so-gray-500);
    font-size: 12px;
}

.stat .number {
    font-weight: inherit;
    margin-right: 2px;
}

.stat .label {
    font-size: inherit;
    color: inherit;
}

.question-content {
    flex: 1;
    min-width: 0;
}

.question-content h3 {
    margin: 0 0 4px 0;
    font-size: 17px;
    line-height: 1.3;
    font-weight: 400;
}

.question-content h3 a {
    color: var(--so-blue);
    text-decoration: none;
    word-wrap: break-word;
    -webkit-hyphens: auto;
            hyphens: auto;
}

.question-content h3 a:hover {
    color: var(--so-blue-dark);
}

.question-excerpt {
    color: var(--so-gray-600);
    font-size: 13px;
    line-height: 1.4;
    margin: 5px 0 8px 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.question-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin: 8px 0 4px 0;
}

.question-tag {
    background-color: var(--so-blue);
    color: #fff;
    padding: 2px 6px;
    border-radius: var(--border-radius);
    font-size: 11px;
    text-decoration: none;
    white-space: nowrap;
}

.question-tag:hover {
    background-color: var(--so-blue-dark);
    color: #fff;
}

.question-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 12px;
    color: var(--so-gray-500);
    margin-top: 8px;
}

.question-author {
    display: flex;
    align-items: center;
    gap: 4px;
}

.question-author .avatar {
    width: 16px;
    height: 16px;
    border-radius: 2px;
    background-color: var(--so-gray-300);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    font-weight: bold;
    color: var(--so-gray-600);
}

.question-author .username {
    color: var(--so-blue);
    text-decoration: none;
    font-size: 12px;
}

.question-author .username:hover {
    color: var(--so-blue-dark);
}

.question-author .reputation {
    font-weight: 700;
    color: var(--so-gray-600);
}

.question-time {
    white-space: nowrap;
}

.no-questions {
    text-align: center;
    padding: 48px 16px;
    color: var(--so-gray-600);
}

.no-questions h3 {
    margin: 0 0 8px 0;
    font-size: 21px;
    color: var(--so-gray-800);
    font-weight: 400;
}

.no-questions p {
    margin: 0;
    font-size: 15px;
    line-height: 1.4;
}

.no-questions a {
    color: var(--so-blue);
    text-decoration: none;
}

.no-questions a:hover {
    color: var(--so-blue-dark);
    text-decoration: underline;
}

/* Pagination */

.pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 20px;
    padding: 20px 0;
}

.pagination-button {
    padding: 6px 9px;
    border: 1px solid var(--so-gray-300);
    background: #fff;
    border-radius: var(--border-radius);
    cursor: pointer;
    transition: all 0.1s ease-in-out;
    font-size: 13px;
    color: var(--so-gray-700);
    min-width: 32px;
    text-align: center;
}

.pagination-button:hover:not(:disabled) {
    background: var(--so-gray-100);
    border-color: var(--so-gray-400);
}

.pagination-button:disabled {
    opacity: 0.5;
    cursor: not-allowed;
    background: var(--so-gray-100);
}

.pagination-button.current {
    background: var(--so-orange);
    border-color: var(--so-orange);
    color: #fff;
    font-weight: 500;
}

.pagination-info {
    margin: 0 12px;
    font-size: 13px;
    color: var(--so-gray-600);
}

/* Responsive */

@media (max-width: 768px) {
    .questions-list-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }
    
    .questions-list-header h1 {
        font-size: 24px;
    }
    
    .question-item {
        flex-direction: column;
        gap: 12px;
    }
    
    .question-stats {
        flex-direction: row;
        min-width: auto;
        text-align: left;
        margin-right: 0;
        gap: 16px;
    }
    
    .question-content h3 {
        font-size: 16px;
    }
    
    .question-meta {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }
}

@media (max-width: 480px) {
    .pagination {
        gap: 4px;
    }
    
    .pagination-button {
        padding: 4px 6px;
        font-size: 12px;
        min-width: 28px;
    }
    
    .search-bar input {
        font-size: 16px; /* Prevent zoom on iOS */
    }
    
    .question-content h3 {
        font-size: 15px;
    }
}

/* ===== QuestionDetail.css ===== */

/* QuestionDetail Component Styles */

.question-detail {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
}

/* Breadcrumb */

.breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    font-size: 13px;
    color: var(--so-gray-600);
}

.breadcrumb a {
    color: var(--so-blue);
    text-decoration: none;
}

.breadcrumb a:hover {
    color: var(--so-blue-dark);
    text-decoration: underline;
}

.breadcrumb .separator {
    color: var(--so-gray-400);
}

.breadcrumb .current {
    color: var(--so-gray-700);
}

/* Question Header */

.question-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 16px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--so-gray-200);
}

.question-title {
    font-size: 27px;
    font-weight: 400;
    color: var(--so-gray-800);
    margin: 0;
    line-height: 1.3;
}

.bounty-indicator {
    background: var(--so-blue);
    color: #fff;
    border-radius: var(--border-radius);
    padding: 2px 6px;
    font-size: 11px;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 2px;
}

.bounty-indicator::before {
    content: "+";
    font-weight: bold;
}

/* Question Stats */

.question-stats-inline {
    display: flex;
    gap: 16px;
    font-size: 13px;
    color: var(--so-gray-500);
    margin: 8px 0 16px 0;
}

.question-stats-inline .stat-item {
    display: flex;
    align-items: center;
    gap: 4px;
}

/* Question and Answer Layout */

.question, .answer {
    display: flex;
    gap: 16px;
    padding: 0;
    background: transparent;
    border: none;
    margin-bottom: 16px;
    border-bottom: 1px solid var(--so-gray-200);
    padding-bottom: 16px;
}

.question:last-of-type, .answer:last-of-type {
    border-bottom: none;
    padding-bottom: 0;
}

.answer.accepted {
    background-color: #f7fdf7;
    border: 1px solid #5eba7d;
    border-radius: var(--border-radius);
    padding: 16px;
    margin: 16px 0;
    position: relative;
}

.answer.accepted::before {
    content: "✓ Accepted Answer";
    position: absolute;
    top: -1px;
    left: 16px;
    background: var(--so-green);
    color: #fff;
    font-size: 11px;
    padding: 2px 6px;
    border-radius: 0 0 var(--border-radius) var(--border-radius);
    font-weight: 500;
}

.question-voting, .answer-voting {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 36px;
    margin-right: 8px;
}

.question-content-main, .answer-content {
    flex: 1;
    min-width: 0;
}

/* Question and Answer Body */

.question-body, .answer-body {
    margin-bottom: 16px;
    line-height: 1.6;
    font-size: 15px;
    color: var(--so-gray-800);
    overflow-wrap: anywhere;
}

.question-body p, .answer-body p {
    margin: 0 0 16px 0;
}

.question-body p:last-child, .answer-body p:last-child {
    margin-bottom: 0;
}

.question-body pre, .answer-body pre {
    background: var(--so-gray-50);
    border: 1px solid var(--so-gray-200);
    border-radius: var(--border-radius);
    padding: 12px;
    overflow-x: auto;
    margin: 16px 0;
    font-family: ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, "DejaVu Sans Mono", monospace;
    font-size: 13px;
    line-height: 1.45;
}

.question-body code, .answer-body code {
    background: var(--so-gray-100);
    border: 1px solid var(--so-gray-200);
    border-radius: 3px;
    padding: 1px 5px;
    font-family: ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, "DejaVu Sans Mono", monospace;
    font-size: 13px;
    color: var(--so-gray-800);
}

.question-body pre code, .answer-body pre code {
    background: transparent;
    border: none;
    padding: 0;
}

.question-body blockquote, .answer-body blockquote {
    border-left: 4px solid var(--so-gray-300);
    margin: 16px 0;
    padding: 8px 16px;
    background-color: var(--so-gray-50);
    color: var(--so-gray-700);
}

.question-body h1, .answer-body h1,
.question-body h2, .answer-body h2,
.question-body h3, .answer-body h3 {
    margin: 24px 0 16px 0;
    color: var(--so-gray-800);
}

.question-body h1, .answer-body h1 { font-size: 24px; }

.question-body h2, .answer-body h2 { font-size: 20px; }

.question-body h3, .answer-body h3 { font-size: 18px; }

.question-body ul, .answer-body ul,
.question-body ol, .answer-body ol {
    margin: 16px 0;
    padding-left: 32px;
}

.question-body li, .answer-body li {
    margin: 4px 0;
}

.question-body a, .answer-body a {
    color: var(--so-blue);
    text-decoration: none;
}

.question-body a:hover, .answer-body a:hover {
    color: var(--so-blue-dark);
    text-decoration: underline;
}

/* Tags */

.question-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin: 8px 0 4px 0;
}

.question-tag {
    background-color: var(--so-blue);
    color: #fff;
    padding: 2px 6px;
    border-radius: var(--border-radius);
    font-size: 11px;
    text-decoration: none;
    white-space: nowrap;
}

.question-tag:hover {
    background-color: var(--so-blue-dark);
    color: #fff;
}

/* User Info */

.answer-author-info {
    display: flex;
    justify-content: flex-end;
    margin-top: 16px;
}

.user-info {
    background: var(--so-gray-600);
    border-radius: var(--border-radius);
    padding: 5px 6px 7px 7px;
    width: 200px;
}

.user-info.question-author {
    background: var(--so-blue);
}

.user-info.answer-author {
    background: var(--so-gray-600);
}

.user-action {
    font-size: 11px;
    color: rgba(255,255,255,.7);
    margin-bottom: 1px;
}

.user-details {
    display: flex;
    align-items: center;
    gap: 6px;
}

.user-avatar {
    width: 32px;
    height: 32px;
    border-radius: 3px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    color: var(--so-gray-600);
    font-size: 14px;
}

.user-details-text {
    flex: 1;
    min-width: 0;
}

.user-details .username {
    color: #fff;
    text-decoration: none;
    font-size: 13px;
    font-weight: 500;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.user-details .reputation {
    font-size: 12px;
    color: rgba(255,255,255,.8);
    font-weight: bold;
}

.user-badges {
    display: flex;
    gap: 3px;
    margin-top: 2px;
}

.badge {
    width: 6px;
    height: 6px;
    border-radius: 50%;
}

.badge.gold { background: #ffcc01; }

.badge.silver { background: #b4b8bc; }

.badge.bronze { background: #d1a684; }

/* Answers Section */

.answers-section {
    margin-top: 32px;
}

.answers-section h2 {
    margin: 0 0 16px 0;
    font-size: 19px;
    font-weight: 400;
    color: var(--so-gray-800);
    padding-bottom: 8px;
    border-bottom: 1px solid var(--so-gray-200);
}

.answer-count {
    font-weight: 400;
}

.answers-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 16px;
    flex-wrap: wrap;
    gap: 12px;
}

.answers-sort {
    display: flex;
    gap: 8px;
    margin: 12px 0 16px 0;
}

.sort-button {
    padding: 6px 12px;
    border: 1px solid var(--so-gray-300);
    background: #fff;
    border-radius: var(--border-radius);
    cursor: pointer;
    font-size: 12px;
    color: var(--so-gray-600);
    transition: all 0.1s ease-in-out;
}

.sort-button:hover {
    background: var(--so-gray-100);
}

.sort-button.active {
    background: var(--so-gray-600);
    color: #fff;
    border-color: var(--so-gray-600);
}

/* Accept Answer Button */

.accept-button {
    background: transparent;
    border: 1px solid var(--so-gray-300);
    color: var(--so-gray-600);
    padding: 4px 8px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 18px;
    margin-top: 8px;
    transition: all 0.1s ease-in-out;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.accept-button:hover {
    background: var(--so-green);
    border-color: var(--so-green);
    color: white;
}

.accept-button::before {
    content: "✓";
    font-weight: bold;
}

.accepted-checkmark {
    background: var(--so-green);
    color: white;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    margin-top: 8px;
    font-weight: bold;
}

/* Login Prompt */

.login-prompt {
    background: var(--so-gray-50);
    border: 1px solid var(--so-gray-200);
    border-radius: var(--border-radius);
    padding: 24px;
    text-align: center;
    margin-top: 32px;
}

.login-prompt h3 {
    margin: 0 0 8px 0;
    font-size: 17px;
    color: var(--so-gray-800);
}

.login-prompt p {
    margin: 0 0 16px 0;
    font-size: 13px;
    color: var(--so-gray-600);
}

.login-button {
    background: var(--so-blue);
    color: #fff;
    border: 1px solid var(--so-blue);
    padding: 8px 16px;
    border-radius: var(--border-radius);
    text-decoration: none;
    font-size: 13px;
    font-weight: 500;
    transition: all 0.1s ease-in-out;
}

.login-button:hover {
    background: var(--so-blue-dark);
    border-color: var(--so-blue-dark);
    color: #fff;
    text-decoration: none;
}

/* Responsive */

@media (max-width: 980px) {
    .question-title {
        font-size: 24px;
    }
}

@media (max-width: 768px) {
    .answers-header {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .answers-sort {
        align-self: stretch;
    }
    
    .sort-button {
        flex: 1;
        text-align: center;
        font-size: 11px;
        padding: 4px 8px;
    }
    
    .question, .answer {
        flex-direction: column;
        gap: 12px;
    }
    
    .question-voting, .answer-voting {
        flex-direction: row;
        min-width: auto;
        margin-right: 0;
    }
    
    .question-title {
        font-size: 21px;
    }
    
    .question-stats-inline {
        flex-wrap: wrap;
    }
    
    .user-info {
        width: 100%;
    }
}

@media (max-width: 480px) {
    .question-title {
        font-size: 18px;
    }
}

/* ===== VoteButtons.css ===== */

/* VoteButtons Component Styles */

.vote-buttons {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}

.vote-button {
    background: transparent;
    border: none;
    width: 36px;
    height: 36px;
    cursor: pointer;
    font-size: 18px;
    transition: all 0.1s ease-in-out;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--so-gray-400);
    border-radius: 50%;
}

.vote-button:hover:not(:disabled):not(.disabled) {
    background: var(--so-orange);
    color: #fff;
}

.vote-button.active.vote-up {
    color: var(--so-orange);
}

.vote-button.active.vote-down {
    color: var(--so-red);
}

.vote-button:disabled,
.vote-button.disabled {
    opacity: 0.4;
    cursor: not-allowed;
}

.vote-button.disabled:hover {
    background: transparent !important;
    color: var(--so-gray-400) !important;
}

.vote-button.animating {
    transform: scale(1.1);
    transition: transform 0.1s ease-out;
}

.vote-score {
    font-size: 21px;
    font-weight: 500;
    color: var(--so-gray-600);
    text-align: center;
    min-height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 2px 0;
}

.vote-score.positive {
    color: var(--so-green);
}

.vote-score.negative {
    color: var(--so-red);
}

.bookmark-button {
    margin-top: 8px;
}

.bookmark-button.active {
    color: var(--so-orange);
}

.bookmark-button:hover:not(.disabled) {
    background: var(--so-gray-100);
    color: var(--so-orange);
}

.vote-button svg {
    transition: transform 0.1s ease-out;
}

.vote-button:hover:not(.disabled) svg {
    transform: scale(1.1);
}

/* Large variant */

.vote-buttons-large {
    gap: 4px;
}

.vote-buttons-large .vote-button {
    width: 40px;
    height: 40px;
    font-size: 20px;
}

.vote-buttons-large .vote-score {
    font-size: 24px;
    min-height: 32px;
}

/* Responsive */

@media (max-width: 768px) {
    .vote-buttons {
        flex-direction: row;
        gap: 8px;
    }
}

@media (max-width: 480px) {
    .vote-buttons {
        gap: 4px;
    }
    
    .vote-button {
        width: 32px;
        height: 32px;
        font-size: 16px;
    }
    
    .vote-score {
        font-size: 18px;
    }
    
    .vote-buttons-large .vote-button {
        width: 32px;
        height: 32px;
        font-size: 16px;
    }
}

/* Reduced motion support */

@media (prefers-reduced-motion: reduce) {
    .vote-button.animating,
    .vote-button svg,
    .vote-button:hover svg {
        transform: none;
        transition: none;
    }
}

/* ===== AnswerForm.css ===== */

/* AnswerForm Component Styles */

.answer-form {
    margin-top: 32px;
    padding: 24px;
    background: #fff;
    border: 1px solid var(--so-gray-200);
    border-radius: var(--border-radius);
}

.answer-form h3 {
    margin: 0 0 16px 0;
    font-size: 19px;
    font-weight: 400;
    color: var(--so-gray-800);
}

.answer-form .editor-tabs {
    display: flex;
    gap: 0;
    margin-bottom: 0;
    border-bottom: 1px solid var(--so-gray-300);
}

.answer-form .editor-tabs button {
    padding: 8px 16px;
    border: none;
    background: transparent;
    cursor: pointer;
    font-size: 13px;
    color: var(--so-gray-600);
    transition: all 0.1s ease-in-out;
    border-bottom: 2px solid transparent;
}

.answer-form .editor-tabs button.active {
    color: var(--so-gray-800);
    border-bottom-color: var(--so-orange);
    font-weight: 500;
}

.answer-form .editor-tabs button:hover:not(.active) {
    color: var(--so-gray-700);
    background: var(--so-gray-50);
}

.answer-form .preview-content {
    min-height: 200px;
    padding: 12px 16px;
    border: 1px solid var(--so-gray-300);
    border-top: none;
    border-radius: 0 0 var(--border-radius) var(--border-radius);
    background: white;
    line-height: 1.6;
    font-size: 15px;
    color: var(--so-gray-800);
}

.answer-form .preview-content:empty::before {
    content: "Nothing to preview";
    color: var(--so-gray-400);
    font-style: italic;
}

.answer-form .form-actions {
    margin-top: 16px;
    display: flex;
    gap: 8px;
    align-items: center;
}

.answer-form .submit-button {
    background: var(--so-blue);
    color: white;
    border: 1px solid var(--so-blue);
    padding: 10px 12px;
    border-radius: var(--border-radius);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.1s ease-in-out;
    min-width: 120px;
}

.answer-form .submit-button:hover:not(:disabled) {
    background: var(--so-blue-dark);
    border-color: var(--so-blue-dark);
}

.answer-form .submit-button:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    background: var(--so-gray-400);
    border-color: var(--so-gray-400);
}

/* Responsive */

@media (max-width: 768px) {
    .answer-form {
        padding: 16px;
        margin-top: 24px;
    }
    
    .answer-form .editor-tabs button {
        padding: 6px 12px;
        font-size: 12px;
    }
    
    .answer-form .preview-content {
        min-height: 150px;
        font-size: 14px;
    }
}

/* ===== AskQuestion.css ===== */

/* AskQuestion Component Styles */

.ask-question {
    max-width: 1060px;
    margin: 0 auto;
}

.ask-question h1 {
    margin: 0 0 24px 0;
    font-size: 27px;
    font-weight: 400;
    color: var(--so-gray-800);
}

.ask-question > p {
    font-size: 15px;
    color: var(--so-gray-600);
    margin: 0 0 24px 0;
    padding: 16px;
    background: var(--so-gray-50);
    border: 1px solid var(--so-gray-200);
    border-radius: var(--border-radius);
    text-align: center;
}

.ask-question form {
    background: #fff;
    border: 1px solid var(--so-gray-200);
    border-radius: var(--border-radius);
    padding: 24px;
}

.ask-question .form-group {
    margin-bottom: 24px;
}

.ask-question .form-group label {
    display: block;
    margin-bottom: 6px;
    font-weight: 600;
    color: var(--so-gray-800);
    font-size: 15px;
}

.ask-question .form-group input {
    width: 100%;
    padding: 7.8px 9px;
    border: 1px solid var(--so-gray-300);
    border-radius: var(--border-radius);
    font-size: 13px;
    font-family: inherit;
    transition: all 0.1s ease-in-out;
    box-sizing: border-box;
    background: #fff;
    color: var(--so-gray-800);
}

.ask-question .form-group input:focus {
    outline: none;
    border-color: var(--so-blue);
    box-shadow: 0 0 0 4px rgba(0, 116, 204, 0.15);
}

.ask-question .form-group input::-moz-placeholder {
    color: var(--so-gray-400);
}

.ask-question .form-group input::placeholder {
    color: var(--so-gray-400);
}

.ask-question .form-group small {
    display: block;
    margin-top: 4px;
    font-size: 12px;
    color: var(--so-gray-500);
    line-height: 1.3;
    word-wrap: break-word;
    white-space: pre-wrap;
    max-width: 100%;
}

.ask-question .editor-tabs {
    display: flex;
    gap: 0;
    margin-bottom: 0;
    border-bottom: 1px solid var(--so-gray-300);
}

.ask-question .editor-tabs button {
    padding: 8px 16px;
    border: none;
    background: transparent;
    cursor: pointer;
    font-size: 13px;
    color: var(--so-gray-600);
    transition: all 0.1s ease-in-out;
    border-bottom: 2px solid transparent;
}

.ask-question .editor-tabs button.active {
    color: var(--so-gray-800);
    border-bottom-color: var(--so-orange);
    font-weight: 500;
}

.ask-question .editor-tabs button:hover:not(.active) {
    color: var(--so-gray-700);
    background: var(--so-gray-50);
}

.ask-question .preview-content {
    min-height: 200px;
    padding: 12px 16px;
    border: 1px solid var(--so-gray-300);
    border-top: none;
    border-radius: 0 0 var(--border-radius) var(--border-radius);
    background: white;
    line-height: 1.6;
    font-size: 15px;
    color: var(--so-gray-800);
}

.ask-question .preview-content:empty::before {
    content: "Nothing to preview";
    color: var(--so-gray-400);
    font-style: italic;
}

.ask-question .form-actions {
    margin-top: 24px;
    display: flex;
    gap: 8px;
    align-items: center;
}

.ask-question .submit-button {
    background: var(--so-blue);
    color: white;
    border: 1px solid var(--so-blue);
    padding: 10px 12px;
    border-radius: var(--border-radius);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.1s ease-in-out;
    min-width: 140px;
}

.ask-question .submit-button:hover:not(:disabled) {
    background: var(--so-blue-dark);
    border-color: var(--so-blue-dark);
}

.ask-question .submit-button:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    background: var(--so-gray-400);
    border-color: var(--so-gray-400);
}

/* Responsive */

@media (max-width: 980px) {
    .ask-question {
        max-width: 100%;
    }
    
    .ask-question form {
        padding: 16px;
    }
}

@media (max-width: 768px) {
    .ask-question h1 {
        font-size: 24px;
        margin-bottom: 16px;
    }
    
    .ask-question .form-group {
        margin-bottom: 20px;
    }
    
    .ask-question .editor-tabs button {
        padding: 6px 12px;
        font-size: 12px;
    }
    
    .ask-question .preview-content {
        min-height: 150px;
        font-size: 14px;
    }
    
    .ask-question form {
        padding: 12px;
    }
}

/* ===== NotificationBell.css ===== */

/* NotificationBell Component Styles */

.notification-bell {
    position: relative;
    margin-left: auto;
}

.bell-button {
    background: none;
    border: none;
    font-size: 16px;
    cursor: pointer;
    padding: 6px 12px;
    border-radius: var(--border-radius);
    position: relative;
    transition: background-color 0.1s ease-in-out;
    color: var(--so-gray-600);
}

.bell-button:hover {
    background: var(--so-gray-100);
    color: var(--so-gray-700);
}

.notification-badge {
    position: absolute;
    top: 2px;
    right: 6px;
    background: var(--so-red);
    color: white;
    font-size: 9px;
    padding: 1px 4px;
    border-radius: 8px;
    min-width: 14px;
    text-align: center;
    font-weight: 600;
    line-height: 1.2;
}

.notification-dropdown {
    position: absolute;
    top: 100%;
    right: 0;
    width: 380px;
    background: white;
    border: 1px solid var(--so-gray-300);
    border-radius: var(--border-radius-lg);
    box-shadow: var(--box-shadow-hover);
    z-index: 1000;
    max-height: 480px;
    overflow: hidden;
}

.notification-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 16px;
    border-bottom: 1px solid var(--so-gray-200);
    background: var(--so-gray-50);
}

.notification-header h3 {
    margin: 0;
    font-size: 15px;
    font-weight: 500;
    color: var(--so-gray-800);
}

.mark-all-read {
    background: none;
    border: none;
    color: var(--so-blue);
    cursor: pointer;
    font-size: 12px;
    text-decoration: none;
    padding: 4px 8px;
    border-radius: var(--border-radius);
    transition: background-color 0.1s ease-in-out;
}

.mark-all-read:hover {
    background: var(--so-gray-100);
    text-decoration: none;
}

.notification-list {
    max-height: 380px;
    overflow-y: auto;
}

.notification-list .loading {
    text-align: center;
    padding: 24px 16px;
    color: var(--so-gray-500);
    font-size: 13px;
}

.no-notifications {
    padding: 48px 16px;
    text-align: center;
    color: var(--so-gray-500);
    font-size: 13px;
}

.notification-item {
    padding: 12px 16px;
    border-bottom: 1px solid var(--so-gray-100);
    cursor: pointer;
    transition: background-color 0.1s ease-in-out;
}

.notification-item:last-child {
    border-bottom: none;
}

.notification-item:hover {
    background: var(--so-gray-50);
}

.notification-item.unread {
    background: #f1f8ff;
    border-left: 3px solid var(--so-blue);
    padding-left: 13px;
}

.notification-item.read {
    opacity: 0.8;
}

.notification-message {
    font-size: 13px;
    line-height: 1.4;
    margin-bottom: 4px;
    color: var(--so-gray-800);
}

.notification-time {
    font-size: 11px;
    color: var(--so-gray-500);
}

/* Responsive */

@media (max-width: 768px) {
    .notification-dropdown {
        width: calc(100vw - 24px);
        right: -12px;
        left: 12px;
    }
}

@media (max-width: 480px) {
    .notification-dropdown {
        width: calc(100vw - 16px);
        right: -8px;
        left: 8px;
    }
}

/* ===== MDEditor.css ===== */

/* MDEditor - Minimal Custom Styles */

.w-md-editor-text {
    height: 300px;
}

/* ===== TagsInput.css ===== */

/* TagsInput Component Styles */

.tags-input {
    position: relative;
    width: 100%;
}

.tags-input-container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    padding: 6px 9px;
    border: 1px solid var(--so-gray-300);
    border-radius: var(--border-radius);
    background: #fff;
    min-height: 38px;
    transition: all 0.1s ease-in-out;
    cursor: text;
}

.tags-input-container:focus-within {
    border-color: var(--so-blue);
    box-shadow: 0 0 0 4px rgba(0, 116, 204, 0.15);
}

.tags-input-container:hover {
    border-color: var(--so-gray-400);
}

.tags-list {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    align-items: center;
}

.tag-pill {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: var(--so-blue);
    color: #fff;
    padding: 2px 6px;
    border-radius: var(--border-radius);
    font-size: 11px;
    font-weight: 500;
    white-space: nowrap;
    max-width: 150px;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: all 0.1s ease-in-out;
}

.tag-pill:hover {
    background: var(--so-blue-dark);
}

.tag-remove {
    background: none;
    border: none;
    color: rgba(255, 255, 255, 0.8);
    font-size: 14px;
    font-weight: bold;
    cursor: pointer;
    padding: 0;
    margin-left: 2px;
    width: 14px;
    height: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: all 0.1s ease-in-out;
}

.tag-remove:hover {
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
}

.tags-input-field {
    flex: 1;
    min-width: 100px;
    border: none;
    outline: none;
    font-size: 13px;
    color: var(--so-gray-800);
    background: transparent;
    padding: 2px 0;
}

.tags-input-field::-moz-placeholder {
    color: var(--so-gray-400);
}

.tags-input-field::placeholder {
    color: var(--so-gray-400);
}

.tags-input-field:disabled {
    cursor: not-allowed;
    opacity: 0.6;
}

/* Suggestions Dropdown */

.tags-suggestions {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #fff;
    border: 1px solid var(--so-gray-300);
    border-top: none;
    border-radius: 0 0 var(--border-radius) var(--border-radius);
    box-shadow: var(--box-shadow);
    z-index: 1000;
    max-height: 200px;
    overflow-y: auto;
}

.suggestion-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 8px 12px;
    border: none;
    background: none;
    text-align: left;
    font-size: 13px;
    color: var(--so-gray-800);
    cursor: pointer;
    transition: background-color 0.1s ease-in-out;
    border-bottom: 1px solid var(--so-gray-100);
}

.suggestion-item:last-child {
    border-bottom: none;
}

.suggestion-item:hover,
.suggestion-item.selected {
    background: var(--so-blue);
    color: #fff;
}

.suggestion-item.selected {
    font-weight: 500;
}

/* Help Text */

.tags-help {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 4px;
    font-size: 11px;
    color: var(--so-gray-500);
    gap: 8px;
}

.tags-count {
    font-weight: 500;
    color: var(--so-gray-600);
}

.tags-hint {
    font-style: italic;
}

/* Error States */

.tags-input.error .tags-input-container {
    border-color: var(--so-red);
    box-shadow: 0 0 0 4px rgba(220, 53, 69, 0.15);
}

.tags-input.error .tags-help {
    color: var(--so-red);
}

/* Max Tags Reached */

.tags-input-container.max-tags {
    border-color: var(--so-orange);
}

.tags-input-container.max-tags .tags-input-field {
    display: none;
}

/* Suggestion Content */

.suggestion-name {
    flex: 1;
}

.suggestion-count {
    font-size: 11px;
    color: var(--so-gray-500);
    background: var(--so-gray-100);
    padding: 1px 4px;
    border-radius: 2px;
    margin-left: 8px;
}

.suggestion-item:hover .suggestion-count,
.suggestion-item.selected .suggestion-count {
    background: rgba(255, 255, 255, 0.3);
    color: rgba(255, 255, 255, 0.8);
}

/* Popular Tags Indicator */

.suggestion-item.popular .suggestion-name::after {
    content: " ★";
    color: var(--so-orange);
    font-size: 10px;
    margin-left: 4px;
}

.suggestion-item.popular:hover .suggestion-name::after,
.suggestion-item.popular.selected .suggestion-name::after {
    color: rgba(255, 255, 255, 0.8);
}

/* Loading and Empty States */

.suggestion-loading,
.suggestion-empty {
    padding: 12px;
    text-align: center;
    color: var(--so-gray-500);
    font-size: 12px;
    font-style: italic;
}

.suggestion-loading {
    background: var(--so-gray-50);
}

/* Responsive */

@media (max-width: 768px) {
    .tags-input-container {
        padding: 8px;
        min-height: 42px;
    }
    
    .tag-pill {
        font-size: 12px;
        padding: 3px 7px;
        max-width: 120px;
    }
    
    .tags-input-field {
        font-size: 14px;
        min-width: 80px;
    }
    
    .suggestion-item {
        padding: 10px 12px;
        font-size: 14px;
    }
    
    .tags-help {
        flex-direction: column;
        align-items: flex-start;
        gap: 2px;
    }
}

@media (max-width: 480px) {
    .tag-pill {
        max-width: 100px;
        font-size: 11px;
    }
    
    .tags-input-field {
        min-width: 60px;
    }
}

/* Focus trap for accessibility */

.tags-input:focus-within .tags-suggestions {
    display: block;
}

/* High contrast mode support */

@media (prefers-contrast: high) {
    .tag-pill {
        border: 1px solid #000;
    }
    
    .suggestion-item:hover,
    .suggestion-item.selected {
        border: 1px solid #000;
    }
}

/* Reduced motion support */

@media (prefers-reduced-motion: reduce) {
    .tags-input-container,
    .tag-pill,
    .tag-remove,
    .suggestion-item {
        transition: none;
    }
}


