
@font-face {
  font-family: "iAWriterEmphasis";
  font-weight: 400;
  font-style: normal;
  unicode-range: U+E000-E001;
  src: local("iAWriterEmphasis-Regular");
}

@font-face {
  font-family: "iAWriterEmphasis";
  font-weight: 700;
  font-style: normal;
  unicode-range: U+E000-E001;
  src: local("iAWriterEmphasis-Bold");
}

@font-face {
  font-family: "iAWriterEmphasisSpaced";
  font-weight: 400;
  font-style: normal;
  unicode-range: U+E000-E001;
  src: local("iAWriterEmphasisSpaced-Regular");
}

@font-face {
  font-family: "iAWriterEmphasisSpaced";
  font-weight: 700;
  font-style: normal;
  unicode-range: U+E000-E001;
  src: local("iAWriterEmphasisSpaced-Bold");
}

* {
  margin: 0;
  padding: 0;
  border: none;
  outline: none;
  background-color: transparent;
  -webkit-touch-callout: none;
  font-synthesis: none;
}

html {
    font-family: -apple-system, iAWriterEmphasis, sans-serif;
}

html :lang(zh) {
  font-family: -apple-system, iAWriterEmphasisSpaced, sans-serif;
}

html :lang(zh), html :lang(ja), html :lang(ko) {
    font-style: normal;
}

em:lang(zh) {
    text-emphasis-style: '\E000';
    text-emphasis-position: under;
}

em:lang(ja), em:lang(ko) {
    text-emphasis-style: '\E000';
    text-emphasis-position: over;
}

:root {
  --vertical-spacing: 0.6rem;
  --horizontal-spacing: 1rem;
  --indentation-width: 1.2rem;
  --max-width: 768px;
}

@media (min-width: 500px) {
  :root {
    --horizontal-spacing: 1.6rem;
  }
}

@media (min-width: 768px) {
  :root {
    --horizontal-spacing: 3.6rem;
  }
}

@media print {
  :root {
    --horizontal-spacing: 4.8rem;
  }
}

body {
  max-width: var(--max-width);
  margin: 0 auto;
}

html.ios .macos, html.mac .ios, html.macos .ios {
  display: none;
}

html.ios-device .macos-only,
html.ios-device .ipados-only,
html.ipados-device .ios-only,
html.ipados-device .macos-only,
html.macos-device .ios-only,
html.macos-device .ipados-only,
html.ios-device .ios-excluded,
html.macos-device .macos-excluded,
html.ipados-device .ipados-excluded {
  display: none;
}

/* The margin on nav li and must match the general padding to offset left border of table view like menus. */
p, ul, ol, h1, h2, h3, h4, h5, h6, dl {
  padding: var(--vertical-spacing) var(--horizontal-spacing);
}

pre {
  margin: var(--vertical-spacing) var(--horizontal-spacing);
  padding: var(--indentation-width);
}

li > pre {
  margin-left: 0;
  margin-right: 0;
}

:-webkit-any(pre, table) + aside, aside + :-webkit-any(pre, table) {
  margin-top: calc(var(--vertical-spacing) * 2);
}

aside {
  margin: var(--vertical-spacing) var(--horizontal-spacing);
  padding: var(--vertical-spacing) 0;
}

aside > :first-child {
  padding-top: 0;
}

aside > :last-child {
  padding-bottom: 0;
}

hr {
  margin: var(--vertical-spacing) var(--horizontal-spacing);
}

dt {
  padding-top: var(--vertical-spacing);
}

dd {
  padding-bottom: var(--vertical-spacing);
  margin-left: var(--indentation-width);
}

table {
  padding: 0 var(--horizontal-spacing);
  margin: var(--vertical-spacing) 0;
}

table {
  table-layout: fixed;
  width: 100%;
  border-collapse: separate;
}

/* Remove vertical margins on nested lists */
:-webkit-any(li, dt, dd, th, td) > :-webkit-any(ul, ol, dl) {
  margin-top: 0;
  margin-bottom: 0;
}

:-webkit-any(li) > :-webkit-any(p, figure, img) {
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
}

th, td {
  padding: 0.0625rem 0.375rem;
  vertical-align: baseline;
}

ol, ol li, ul li {
  margin-left: var(--indentation-width);
}

blockquote {
  margin-left: var(--indentation-width);
}

ul {
  list-style-type: none;
}

ul li:before {
  content: "• ";
  font-size: 0.75rem;
  float: left;
  margin-left: calc(-1 * var(--indentation-width) + 0.25rem);
}

html {
  --line-height: 19pt;
  -webkit-text-size-adjust: none;
  font-size: 12.5pt;
  line-height: var(--line-height);
}

@media (min-device-width: 768px) {
  html {
    font-size: 13pt;
    --line-height: 22pt;
  }
}

html {
  --text-color: hsl(0, 0%, 8%);
  color: var(--text-color);
  background-color: hsl(0, 0%, 100%);
}

html.night-mode {
  --text-color: hsl(210, 2%, 80%);
  background-color: hsl(240, 2%, 12%)
}

html.mac {
  background-color: white;
}

html.mac.night-mode {
  background-color: rgb(30, 30, 31);
}

html.help, html.night-mode.help, html.mac.help html.mac.hight-mode.help {
  background-color: transparent;
}

aside {
  color: hsl(0, 0%, 48%);
  border-width: 1px 0;
  border-style: dashed;
  border-color: hsl(0, 0%, 85%);
}

aside > * {
  padding-left: 0;
  padding-right: 0;
}

aside > pre {
  margin-left: 0;
  margin-right: 0;
  padding-top: 0;
  padding-bottom: 0;
  padding-left: var(--vertical-spacing);
  padding-right: var(--vertical-spacing);
}

.night-mode aside {
  color: hsl(210, 2%, 52%);
  border-color: hsl(0, 0%, 30%);
}

h1, h2, h3 {
  font-size: 1rem; 
  text-align: center;
}

h4, h5, h6 {
  font-size: 1rem; 
  text-align: left;
}

pre, code, .source {
  font-family: SFMono-Regular, Menlo, 'Andale Mono', Consolas, monospace;
  font-style: normal;
  font-size: 95%;
}

.source-secondary {
  color: rgb(181, 181, 181);
}

.night-mode .source-secondary {
  color: rgb(122, 122, 122);
}

h1, h4 {
  font-style: normal;
}

h2, h5 {
  font-style: italic;
}

h3, h6 {
  font-weight: 400;
}

code, pre {
  background-color: hsla(0, 0%, 0%, 0.05);
}

.night-mode code, .night-mode pre {
  background-color: hsla(0, 0%, 100%, 0.1);
}

code, .shortcut {
  border-radius: 2px;
  padding: 2px;
}

kbd {
  display: inline-block;
  min-width: 0.8rem;
  font-weight: 600;
  font-family: inherit;
  font-size: 0.8rem;
  border-radius: 2px;
  padding: 0.3em 0.4em 0.2em;
  margin: 0 0.1em;
  background-color: hsla(0, 0%, 0%, 0.05);
  line-height: 1rem;
  text-align: center;
}

code.input {
  padding: 0.2em 0.35em;
}

.night-mode kbd {
  background-color: hsla(0, 0%, 100%, 0.1);
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

code {
  word-break: keep-all;
}

pre {
   white-space: pre-wrap;
   border-radius: 2px;
   word-break: break-word;
}

pre code {
  word-break: break-word;
}

pre code, .night-mode pre code {
  background-color: transparent;
  padding: 0;
}

/* Disable extra space for sublists. */
li ul, li ol {
  padding: 0;
}

article > :not(img):first-child {
  padding-top: 1rem;
}

article > :not(img):last-child {
  padding-bottom: 1rem;
}

a {
  overflow-wrap: break-word;
}

a, a:visited {
  text-decoration: underline;
  color: rgb(0, 191, 255);
  color: color(display-p3 0.0 0.75 1.0);
}

a .icon, a:visited .icon {
  fill: rgb(0, 191, 255);
  fill: color(display-p3 0.0 0.75 1.0);
}

a:active .icon {
  fill: rgb(0, 191, 255, 0.5);
  fill: color(display-p3 0.0 0.75 1.0 / 0.5);
}

a[href^="ia-writer"] {
  text-decoration: none;
}

a.button {
  font-weight: 600;
  -webkit-tap-highlight-color: transparent;
  text-decoration: none;
  margin: 0.5em;
  text-align: center;
  display: block;
  transition: color 0.15s ease-in-out;
}

a:active {
  color: rgb(0, 191, 255, 0.5);
  color: color(display-p3 0.0 0.75 1.0 / 0.5);
}

a.button .icon {
  transition: fill 0.15s ease-in-out;
}

a .arrow {
  display: inline-block;
  padding-left: 0.2em;
}

.chevron:after {
  content: '⌃';
  font-size: 0.8em;
  display: inline-block;
  transform: rotate(90deg);
}

.hero {
  text-align: center;
  margin-top: 1em;
  margin-bottom: 1em;
}

.shortcut {
  font-family: Keyboard, -webkit-system-font;
  font-size: 75%;
  letter-spacing: 1px;
}

img {
  display: block;
  max-width: 100%;
}

img {
  padding: 0.5rem 0;
}

img.banner {
  padding-top: 0;
}

hr {
	clear: both;
	border: none;
  height: 1px;
  background-color: hsla(0, 0%, 0%, 0.1);
}

.night-mode hr {
  background-color: hsla(0, 0%, 100%, 0.2);
}

a[href^="#"] {
  -webkit-text-decoration-style: dotted;
}

footer.legal {
  text-align: center;
}

footer.legal a {
  color: hsla(0, 0%, 0%, 0.3);
}

html.night-mode footer.legal a {
  color: hsla(0, 0%, 100%, 0.3);
}

footer.legal :-webkit-any(ul, li) {
  padding: 0.3rem;
  margin: 0;
  display: inline-block;
}

footer.legal ul li:before {
  content: "";
}

footer.legal li {
  float: left;
}

span.hashtag {
  font-family: -apple-system;
  font-weight: 400;
  line-height: 1rem;
  font-size: 0.85rem;
  color: hsl(0, 0%, 55%);
  padding: 0.2rem 0.5rem;
  display: inline-block;
  vertical-align: top;
  border-radius: 1rem;
  border-width: 1pt;
  border-style: solid;
  border-color: hsl(0, 0%, 90%);
  background-color: hsl(0, 0%, 100%);
}

span.dimmed {
  color: rgb(194, 194, 194);
}

html.night-mode span.dimmed {
  color: rgb(112, 112, 112);
}

html.night-mode span.hashtag {
  border-color: hsl(0, 0%, 18%);
  background-color: hsl(0, 0%, 5%)
}

/* Task Lists
   Left padding based on 40px default */

/* Position ordinal counters so 1-9 left-align with left content edge. Subsequent counters will begin in gutter. */
ol .task-list-item {
  padding-left: var(--line-height);
}

/* Hide default bullets for unordered task lists. */
ul .task-list-item {
  list-style-type: none;
}

/* Hide gen-content bullets for unordered task lists. */
ul .task-list-item:before {
  display: none;
}

.task-list-item-checkbox {
  float: left; /* Removes from flow in case of paragraph list items */
  width: var(--line-height);
  height: var(--line-height);
  margin: 0 0 0 calc(-1 * var(--line-height)); /* 0s to overwrite user agent styles */
  border: none; /* Otherwise iPhone draws a border */
  font-size: 1em; /* Required to overwrite user agent styles, set to same as p */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath d='M0 2.997A3 3 0 0 1 2.997 0h6.006A3 3 0 0 1 12 2.997v6.006A3 3 0 0 1 9.003 12H2.997A3 3 0 0 1 0 9.003V2.997h0zM1 3c0-1.104.887-2 2-2H9c1.104 0 2 .887 2 2V9c0 1.104-.887 2-2 2H3c-1.104 0-2-.887-2-2V3h0z' fill='%231a1a1a' fill-rule='evenodd'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 60% 55%; /* x=roughly align with bullets and between ordinal and text, y=4px down to roughly align to baseline. */
  background-size: 50% 50%; /* Desired size 12px / 21px line-height for Preview */
  background-color: transparent;
  -webkit-print-color-adjust: exact; /* Prevents from hiding when printed */
  -webkit-appearance: none; /* Disables system checkbox image */
  opacity: 1.0; /* Otherwise they are 0.4 on iPhone, where it applies disabled effect even with above */
}

.night-mode .task-list-item-checkbox {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath d='M0 2.997A3 3 0 0 1 2.997 0h6.006A3 3 0 0 1 12 2.997v6.006A3 3 0 0 1 9.003 12H2.997A3 3 0 0 1 0 9.003V2.997h0zM1 3c0-1.104.887-2 2-2H9c1.104 0 2 .887 2 2V9c0 1.104-.887 2-2 2H3c-1.104 0-2-.887-2-2V3h0z' fill='%23dedede' fill-rule='evenodd'/%3E%3C/svg%3E");
}

.mac.night-mode .task-list-item-checkbox {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath d='M0 2.997A3 3 0 0 1 2.997 0h6.006A3 3 0 0 1 12 2.997v6.006A3 3 0 0 1 9.003 12H2.997A3 3 0 0 1 0 9.003V2.997h0zM1 3c0-1.104.887-2 2-2H9c1.104 0 2 .887 2 2V9c0 1.104-.887 2-2 2H3c-1.104 0-2-.887-2-2V3h0z' fill='%23cccccc' fill-rule='evenodd'/%3E%3C/svg%3E");
}

.task-list-item-checkbox:checked {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%231a1a1a' fill-rule='evenodd'%3E%3Cpath d='M5.37 7.633l3.19-4.556c.199-.284.588-.355.873-.155a.63.63 0 0 1 .153.874l-3.59 5.128a.63.63 0 0 1-.513.269.62.62 0 0 1-.502-.177L2.79 6.825c-.243-.243-.243-.637.003-.883a.63.63 0 0 1 .883-.003L5.37 7.633h0zM0 2.997A3 3 0 0 1 2.997 0h6.006A3 3 0 0 1 12 2.997v6.006A3 3 0 0 1 9.003 12H2.997A3 3 0 0 1 0 9.003V2.997h0zM1 3c0-1.104.887-2 2-2h6c1.104 0 2 .887 2 2v6c0 1.104-.887 2-2 2H3c-1.104 0-2-.887-2-2V3h0z'/%3E%3C/svg%3E");
}

.night-mode .task-list-item-checkbox:checked {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23dedede' fill-rule='evenodd'%3E%3Cpath d='M5.37 7.633l3.19-4.556c.199-.284.588-.355.873-.155a.63.63 0 0 1 .153.874l-3.59 5.128a.63.63 0 0 1-.513.269.62.62 0 0 1-.502-.177L2.79 6.825c-.243-.243-.243-.637.003-.883a.63.63 0 0 1 .883-.003L5.37 7.633h0zM0 2.997A3 3 0 0 1 2.997 0h6.006A3 3 0 0 1 12 2.997v6.006A3 3 0 0 1 9.003 12H2.997A3 3 0 0 1 0 9.003V2.997h0zM1 3c0-1.104.887-2 2-2h6c1.104 0 2 .887 2 2v6c0 1.104-.887 2-2 2H3c-1.104 0-2-.887-2-2V3h0z'/%3E%3C/svg%3E");
}

.mac.night-mode .task-list-item-checkbox:checked {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23cccccc' fill-rule='evenodd'%3E%3Cpath d='M5.37 7.633l3.19-4.556c.199-.284.588-.355.873-.155a.63.63 0 0 1 .153.874l-3.59 5.128a.63.63 0 0 1-.513.269.62.62 0 0 1-.502-.177L2.79 6.825c-.243-.243-.243-.637.003-.883a.63.63 0 0 1 .883-.003L5.37 7.633h0zM0 2.997A3 3 0 0 1 2.997 0h6.006A3 3 0 0 1 12 2.997v6.006A3 3 0 0 1 9.003 12H2.997A3 3 0 0 1 0 9.003V2.997h0zM1 3c0-1.104.887-2 2-2h6c1.104 0 2 .887 2 2v6c0 1.104-.887 2-2 2H3c-1.104 0-2-.887-2-2V3h0z'/%3E%3C/svg%3E");
}

@supports selector(:has(a)) {

  .task-list-item-checked-fade .task-list-item-checkbox:checked {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23999999' fill-rule='evenodd'%3E%3Cpath d='M5.37 7.633l3.19-4.556c.199-.284.588-.355.873-.155a.63.63 0 0 1 .153.874l-3.59 5.128a.63.63 0 0 1-.513.269.62.62 0 0 1-.502-.177L2.79 6.825c-.243-.243-.243-.637.003-.883a.63.63 0 0 1 .883-.003L5.37 7.633h0zM0 2.997A3 3 0 0 1 2.997 0h6.006A3 3 0 0 1 12 2.997v6.006A3 3 0 0 1 9.003 12H2.997A3 3 0 0 1 0 9.003V2.997h0zM1 3c0-1.104.887-2 2-2h6c1.104 0 2 .887 2 2v6c0 1.104-.887 2-2 2H3c-1.104 0-2-.887-2-2V3h0z'/%3E%3C/svg%3E");
  }

  .task-list-item-checked-fade.night-mode .task-list-item-checkbox:checked {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23808080' fill-rule='evenodd'%3E%3Cpath d='M5.37 7.633l3.19-4.556c.199-.284.588-.355.873-.155a.63.63 0 0 1 .153.874l-3.59 5.128a.63.63 0 0 1-.513.269.62.62 0 0 1-.502-.177L2.79 6.825c-.243-.243-.243-.637.003-.883a.63.63 0 0 1 .883-.003L5.37 7.633h0zM0 2.997A3 3 0 0 1 2.997 0h6.006A3 3 0 0 1 12 2.997v6.006A3 3 0 0 1 9.003 12H2.997A3 3 0 0 1 0 9.003V2.997h0zM1 3c0-1.104.887-2 2-2h6c1.104 0 2 .887 2 2v6c0 1.104-.887 2-2 2H3c-1.104 0-2-.887-2-2V3h0z'/%3E%3C/svg%3E");
  }

  .task-list-item-checked-fade.mac.night-mode .task-list-item-checkbox:checked {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23808080' fill-rule='evenodd'%3E%3Cpath d='M5.37 7.633l3.19-4.556c.199-.284.588-.355.873-.155a.63.63 0 0 1 .153.874l-3.59 5.128a.63.63 0 0 1-.513.269.62.62 0 0 1-.502-.177L2.79 6.825c-.243-.243-.243-.637.003-.883a.63.63 0 0 1 .883-.003L5.37 7.633h0zM0 2.997A3 3 0 0 1 2.997 0h6.006A3 3 0 0 1 12 2.997v6.006A3 3 0 0 1 9.003 12H2.997A3 3 0 0 1 0 9.003V2.997h0zM1 3c0-1.104.887-2 2-2h6c1.104 0 2 .887 2 2v6c0 1.104-.887 2-2 2H3c-1.104 0-2-.887-2-2V3h0z'/%3E%3C/svg%3E");
  }

  .task-list-item-checked-fade .task-list-item:has(> .task-list-item-checkbox:checked),
  .task-list-item-checked-fade .task-list-item:has(> .task-list-item-checkbox:checked) a,
  .task-list-item-checked-fade .task-list-item:has(> .task-list-item-checkbox:checked) mark {
      color: #999999;
  }
  
  .task-list-item-checked-fade.night-mode .task-list-item:has(> .task-list-item-checkbox:checked),
  .task-list-item-checked-fade.night-mode .task-list-item:has(> .task-list-item-checkbox:checked) a,
  .task-list-item-checked-fade.night-mode .task-list-item:has(> .task-list-item-checkbox:checked) mark {
      color: #808080;
  }
  
  .task-list-item-checked-line-through .task-list-item:has(> .task-list-item-checkbox:checked),
  .task-list-item-checked-line-through .task-list-item:has(> .task-list-item-checkbox:checked) mark {
      text-decoration: line-through;
  }

}

.link {
  text-decoration: underline;
}

.link {
  text-decoration-color: rgb(181, 181, 181);
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.1em;
}

.night-mode .link {
  text-decoration-color: rgb(122, 122, 122);
}

.night-mode .source-secondary.link {
  text-decoration-color: rgba(122, 122, 122, 0.65);
}

.icon {
  height: 0.785em;
  overflow: visible;
  width: auto;
  fill: var(--text-color);
}

a.button .icon {
  height: 0.95em;
  padding: 0 0.15em;
  margin-bottom: -0.15em;
}

.wikilink-active {
  color: color(display-p3 0.0 0.61 0.84);
  text-decoration-color: color(display-p3 0.0 0.61 0.84 / 0.35);
}

.night-mode .wikilink-active {
  color: white;
  text-shadow: 0px 0px 7.5px color(display-p3 0.0 0.75 1.0), 0px 0px 5px color(display-p3 0.0 0.75 1.0 / 0.85);
  text-decoration-color: color(display-p3 1.0 1.0 1.0 / 0.35);
}

.wikilink-active svg {
  fill: color(display-p3 0.0 0.61 0.84);
}

.night-mode .wikilink-active svg {
  fill: white;
  filter: drop-shadow(0px 0px 3px rgb(0, 191, 255)) drop-shadow(0px 0px 2px rgb(0, 191, 255));
}