.acp-public,
.acp-guide {
  --acp-accent-rgb: var(--sc-accent-rgb, 37, 99, 235);
  --acp-blue: rgb(var(--acp-accent-rgb));
  --acp-blue-hover: rgb(var(--sc-accent-strong-rgb, 29, 78, 216));
  --acp-blue-soft: rgba(var(--acp-accent-rgb), .1);
  --acp-on-blue: var(--ac-on-accent, #fff);
  --acp-paper: #f4f7fb;
  --acp-ink: var(--sc-text, #0f172a);
  --acp-muted: #475569;
  --acp-line: rgba(var(--acp-accent-rgb), .2);
  --acp-surface: var(--ac-menu-fill, #fff);
  --acp-glass: var(--ac-glass-fill, rgba(255, 255, 255, .62));
  --acp-glass-strong: rgba(248, 251, 255, .9);
  --acp-glass-tint: var(--ac-glass-tint, var(--acp-blue-soft));
  --acp-glass-tint-strong: rgba(var(--acp-accent-rgb), .19);
  --acp-glass-filter: blur(var(--ac-glass-blur, 20px)) saturate(var(--ac-glass-saturate, 150%));
  --acp-glass-shadow: inset 0 1px 0 var(--ac-glass-sheen, #fff), 0 12px 32px rgba(30, 64, 175, .1);
  --acp-sky-soft: #e0f2fe;
  --acp-sky: #075985;
  --acp-indigo-soft: #e0e7ff;
  --acp-indigo: #3730a3;
  --acp-display: "Instrument Serif", Georgia, serif;
  --acp-sans: Inter, system-ui, -apple-system, sans-serif;
  color: var(--acp-ink);
  font-family: var(--acp-sans);
  line-height: 1.55;
}

.acp-public *,
.acp-public *::before,
.acp-public *::after { box-sizing: border-box; }
.acp-public {
  margin: 0;
  background:
    radial-gradient(ellipse at 92% 19%, #bfdbfe99, transparent 65%),
    radial-gradient(ellipse at 12% 76%, #dbeafe, transparent 65%),
    var(--acp-paper);
  background-attachment: fixed;
}
.acp-public [hidden], .acp-guide [hidden] { display: none !important; }
.acp-public a, .acp-guide a { color: inherit; text-decoration: none; }
.acp-public button, .acp-guide button, .acp-guide input { font: inherit; }
.acp-public :focus-visible, .acp-guide :focus-visible { outline: 2px solid var(--acp-blue); outline-offset: 4px; }
.acp-public h1, .acp-public h2, .acp-public h3, .acp-public p, .acp-guide h1, .acp-guide h2, .acp-guide h3, .acp-guide p { margin: 0; }
.acp-public i.bi, .acp-guide i.bi { display: inline-grid; place-items: center; line-height: 1; }
.acp-public i.bi::before, .acp-guide i.bi::before { vertical-align: 0; }
.acp-public [id], .acp-guide [id] { scroll-margin-top: 94px; }
[dir="rtl"] .acp-directional { transform: scaleX(-1); }
.acp-sr-only, .acp-skip:not(:focus) {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.acp-skip:focus {
  position: fixed;
  inset-block-start: 12px;
  inset-inline-start: 12px;
  z-index: 25;
  padding: 12px 18px;
  border-radius: 8px;
  background: var(--acp-surface);
}
.acp-wrap { width: min(100% - 80px, 1240px); margin-inline: auto; }
.acp-header {
  position: sticky;
  inset-block-start: 0;
  z-index: 20;
  --acp-nav-ink: #f5f9ff;
  color: var(--acp-nav-ink);
  border-bottom: 1px solid #ffffff4d;
  background: linear-gradient(115deg, #1e40afeb, #174a9de0);
  -webkit-backdrop-filter: var(--acp-glass-filter);
  backdrop-filter: var(--acp-glass-filter);
  box-shadow: inset 0 1px 0 #ffffff33, 0 5px 20px #1e40af29;
}
.acp-nav, .acp-footer-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.acp-nav { min-height: 72px; }
.acp-brand { display: inline-flex; align-items: center; gap: 9px; font-size: 1.04rem; font-weight: 800; letter-spacing: -.04em; white-space: nowrap; }
.acp-brand img { border-radius: 9px; object-fit: cover; flex-shrink: 0; }
.acp-nav-links, .acp-nav-actions, .acp-footer nav { display: flex; align-items: center; gap: 26px; }
.acp-nav-links a, .acp-nav-login, .acp-footer nav a { font-size: .88rem; font-weight: 650; color: var(--acp-muted); }
.acp-header :is(.acp-nav-links a, .acp-nav-login, .acp-language summary) { color: var(--acp-nav-ink); }
.acp-header :is(.acp-nav-links a, .acp-nav-login):is(:hover, [aria-current]) { text-decoration: underline; text-underline-offset: 5px; }
.acp-header :focus-visible { outline-color: #fff; }
.acp-footer nav a:hover { color: var(--acp-blue); }
.acp-language { position: relative; }
.acp-language summary {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 38px;
  padding-inline: 8px;
  list-style: none;
  border-radius: 8px;
  color: var(--acp-muted);
  cursor: pointer;
  font-size: .76rem;
  font-weight: 700;
}
.acp-language summary::-webkit-details-marker, .acp-guide summary::-webkit-details-marker { display: none; }
.acp-language summary:hover, .acp-language[open] summary { background: #ffffff26; }
.acp-language summary i { font-size: 1rem; }
.acp-language-menu {
  position: absolute;
  inset-block-start: calc(100% + 9px);
  inset-inline-end: 0;
  z-index: 1;
  min-width: 142px;
  padding: 6px;
  border: 1px solid var(--acp-line);
  border-radius: 13px;
  background: var(--acp-surface);
  box-shadow: 0 10px 36px #0f172a26;
}
.acp-language-menu button {
  display: block;
  width: 100%;
  padding: 7px 11px;
  border: 0;
  border-radius: 7px;
  text-align: start;
  color: var(--acp-ink);
  background: transparent;
  cursor: pointer;
}
.acp-language-menu button:hover, .acp-language-menu .active-language { background: var(--acp-blue-soft); color: var(--acp-blue); }
.acp-header .acp-language-menu button:focus-visible { outline-color: var(--acp-blue); outline-offset: -2px; }
.acp-button, .acp-public a.acp-button, .acp-guide a.acp-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  min-height: 50px;
  padding: 11px 19px;
  border: 1px solid transparent;
  border-radius: 9px;
  font-weight: 700;
  font-size: .9rem;
  text-align: center;
  cursor: pointer;
  transition: background .2s ease, border-color .2s ease, transform .2s ease;
}
.acp-public .acp-button-small, .acp-public a.acp-button-small, .acp-guide .acp-button-small, .acp-guide a.acp-button-small { min-height: 40px; padding: 8px 15px; font-size: .84rem; }
.acp-button:hover { transform: translateY(-2px); }
.acp-public .acp-button-primary, .acp-public a.acp-button-primary, .acp-guide .acp-button-primary, .acp-guide a.acp-button-primary { background: var(--acp-blue); color: var(--acp-on-blue); }
.acp-public .acp-button-primary:hover, .acp-guide .acp-button-primary:hover { background: var(--acp-blue-hover); }
.acp-public .acp-header a.acp-button-primary { border-color: #ffffff73; border-radius: 999px; background: #ffffff20; color: var(--acp-nav-ink); }
.acp-public .acp-header a.acp-button-primary:hover { background: #ffffff39; }
.acp-public .acp-button-outline, .acp-public a.acp-button-outline { background: var(--acp-glass); border-color: var(--acp-line); color: var(--acp-ink); }
.acp-public .acp-button-outline:hover { background: var(--acp-surface); border-color: var(--acp-blue); }
.acp-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 14px; }
.acp-kicker, .acp-public p.acp-kicker, .acp-guide p.acp-kicker {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--acp-blue);
  font-size: .73rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
[dir="rtl"] .acp-kicker { letter-spacing: 0; }
.acp-kicker i { font-size: .94rem; }
.acp-guide-hero h1 {
  font-family: var(--acp-display);
  font-weight: 400;
  line-height: .98;
  letter-spacing: -.025em;
}
.acp-guide-hero h1 em { color: var(--acp-blue); font-weight: inherit; }
.acp-icon {
  display: inline-grid;
  place-items: center;
  flex: none;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  font-size: 1.18rem;
}
.acp-icon-blue { background: var(--acp-blue-soft); color: var(--acp-blue); }
.acp-icon-sky { background: var(--acp-sky-soft); color: var(--acp-sky); }
.acp-icon-indigo { background: var(--acp-indigo-soft); color: var(--acp-indigo); }
.acp-text-link, .acp-public a.acp-text-link, .acp-guide a.acp-text-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--acp-blue-hover);
  font-size: .87rem;
  font-weight: 750;
  line-height: 1.4;
}
.acp-text-link:hover { text-decoration: underline; text-underline-offset: 4px; }
button.acp-text-link { padding: 0; border: 0; background: transparent; cursor: pointer; }
.acp-footer { border-top: 1px solid var(--acp-line); background: var(--acp-glass-tint); }
.acp-footer-inner { padding-block: 24px; }
.acp-footer nav { flex-wrap: wrap; }
.acp-guide {
  max-width: 1160px;
  margin-inline: auto;
  padding: 22px 0 64px;
  text-align: start;
}
.acp-public .acp-guide { width: min(100% - 80px, 1160px); padding-block-start: 34px; }
html.dark-mode .acp-guide {
  --acp-accent-rgb: var(--dark-accent-rgb, 96, 165, 250);
  --acp-blue-hover: rgb(var(--dark-accent-hover-rgb, 147, 197, 253));
  --acp-ink: #f1f5f9;
  --acp-muted: #b8c5d8;
  --acp-glass: var(--ac-glass-fill, #161c28d9);
  --acp-glass-strong: #172334e8;
  --acp-glass-shadow: inset 0 1px 0 #ffffff0f, 0 12px 32px #02061752;
  --acp-sky-soft: #143347;
  --acp-sky: #a5e1ff;
  --acp-indigo-soft: #262c56;
  --acp-indigo: #c9d2ff;
}
.acp-guide-hero {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(160px, .48fr);
  align-items: center;
  gap: 16px;
  overflow: hidden;
  padding: clamp(24px, 4.3vw, 54px);
  border: 1px solid var(--acp-line);
  border-radius: 21px;
  background: radial-gradient(ellipse at 87% 53%, var(--acp-glass-tint-strong), transparent 72%), var(--acp-glass);
  -webkit-backdrop-filter: var(--acp-glass-filter);
  backdrop-filter: var(--acp-glass-filter);
  box-shadow: var(--acp-glass-shadow);
}
.acp-guide-hero h1 { margin-block: 11px 14px; color: var(--acp-ink); font-size: clamp(3.4rem, 6.9vw, 6.4rem); }
.acp-guide-hero p:not(.acp-kicker) { max-width: 32rem; color: var(--acp-muted); font-size: 1rem; }
.acp-guide-search { display: flex; align-items: center; gap: 10px; max-width: 32rem; margin-block-start: 20px; padding-inline: 13px; border: 1px solid var(--acp-line); border-radius: 9px; background: var(--acp-glass-strong); color: var(--acp-blue); }
.acp-guide-search:focus-within { outline: 2px solid var(--acp-blue); outline-offset: 2px; }
.acp-guide-search input { flex: 1; min-width: 0; min-height: 47px; padding: 4px 0; border: 0; background: transparent; color: var(--acp-ink); font-size: .88rem; outline: none; }
body.dark-mode .acp-guide-search input[type="search"] {
  border: 0 !important;
  background: transparent !important;
  color: var(--acp-ink) !important;
  box-shadow: none !important;
}
.acp-guide-search input:focus-visible { outline: none; }
.acp-guide-search input::placeholder { color: var(--acp-muted); opacity: 1; }
.acp-guide-art {
  position: relative;
  display: grid;
  place-items: center;
  justify-self: center;
  width: min(100%, 235px);
  aspect-ratio: 1;
  background: radial-gradient(circle, var(--acp-line) 1.4px, transparent 1.4px) center / 14px 14px;
  mask-image: radial-gradient(ellipse at center, #000 59%, #000a 76%, transparent 100%);
}
.acp-guide-art-sheet {
  display: grid;
  gap: 10px;
  width: 62%;
  padding: 17px 15px;
  border: 1px solid var(--acp-line);
  border-radius: 13px;
  background: var(--acp-glass-strong);
  color: var(--acp-blue);
  transform: rotate(-10deg);
  box-shadow: var(--acp-glass-shadow);
}
.acp-guide-art-sheet > div { display: flex; align-items: center; gap: 8px; font-size: .78rem; }
.acp-guide-art-sheet > div span { width: 100%; height: 6px; border-radius: 6px; background: var(--acp-blue-soft); }
.acp-guide-art-sheet > div:nth-child(3) span { width: 70%; }
.acp-guide-art-float { position: absolute; inset-inline-end: 12%; inset-block-end: 18%; transform: rotate(9deg); box-shadow: 0 7px 20px #182d6b20; }
.acp-guide-layout { display: grid; grid-template-columns: minmax(155px, 218px) minmax(0, 1fr); align-items: start; gap: clamp(14px, 2.8vw, 30px); margin-block-start: 26px; }
.acp-guide-index { position: sticky; top: 88px; padding: 10px; }
.acp-guide-index p { margin: 0 0 6px; padding-inline: 10px; color: var(--acp-muted); font-size: .72rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.acp-guide-index a {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 10px;
  border-radius: 7px;
  color: var(--acp-muted);
  font-size: .81rem;
  font-weight: 650;
}
.acp-guide-index a:hover, .acp-guide-index [aria-current="location"] { background: var(--acp-blue-soft); color: var(--acp-blue); }
.acp-guide-content { display: grid; gap: 10px; min-width: 0; }
.acp-guide-index, .acp-guide-topic, .acp-guide-start, .acp-guide-empty {
  border: 1px solid var(--acp-line);
  border-radius: 13px;
  background: linear-gradient(145deg, var(--acp-glass-tint), transparent 78%), var(--acp-glass);
  box-shadow: var(--acp-glass-shadow);
}
.acp-guide-index { -webkit-backdrop-filter: var(--acp-glass-filter); backdrop-filter: var(--acp-glass-filter); }
.acp-guide-topic:target, .acp-guide-start:target, .acp-guide-assistant:target { border-color: var(--acp-blue); }
.acp-guide-topic-heading {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 13px 15px;
  list-style: none;
  border-radius: 12px;
  color: var(--acp-ink);
}
.acp-guide summary.acp-guide-topic-heading { cursor: pointer; }
.acp-guide summary.acp-guide-topic-heading:hover { background: var(--acp-blue-soft); }
.acp-guide-topic-heading strong, .acp-guide-topic-heading h2 { display: block; color: var(--acp-ink); font-family: inherit; font-size: 1.05rem; font-weight: 750; line-height: 1.2; letter-spacing: -.02em; }
.acp-guide-topic-heading small, .acp-guide-topic-heading p { display: block; margin-block-start: 3px; color: var(--acp-muted); font-size: .85rem; line-height: 1.42; }
.acp-guide-chevron { color: var(--acp-blue); transition: transform .22s ease; }
.acp-guide details[open] .acp-guide-chevron { transform: rotate(180deg); }
.acp-guide-start { padding: 15px; }
.acp-guide-start .acp-guide-topic-heading { padding: 0; }
.acp-guide-start-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
  margin-block: 14px;
  padding: 0;
  list-style: none;
  counter-reset: acp-steps;
}
.acp-guide-start-grid li { counter-increment: acp-steps; padding: 12px; border-radius: 9px; background: var(--acp-glass-tint); }
.acp-guide-start-grid li::before {
  display: grid;
  place-items: center;
  width: 25px;
  height: 25px;
  margin-block-end: 7px;
  border-radius: 50%;
  background: var(--acp-blue-soft);
  color: var(--acp-blue);
  content: counter(acp-steps);
  font-size: .77rem;
  font-weight: 800;
}
.acp-guide-start-grid h3 { margin-block-end: 4px; color: var(--acp-ink); font-family: inherit; font-size: .88rem; font-weight: 750; }
.acp-guide-start-grid p { color: var(--acp-muted); font-size: .79rem; line-height: 1.53; }
.acp-guide-steps { padding: 0 17px 17px 71px; color: var(--acp-muted); font-size: .9rem; }
[dir="rtl"] .acp-guide-steps { padding: 0 71px 17px 17px; }
.acp-guide-steps strong { color: var(--acp-ink); }
.acp-guide-steps ol, .acp-guide-steps ul { margin: 10px 0 0; padding-inline-start: 19px; }
.acp-guide-steps li { margin-block: 0 8px; padding-inline-start: 4px; }
.acp-guide-steps li::marker { color: var(--acp-blue); font-weight: 750; }
.acp-guide-steps li a { color: var(--acp-blue); text-decoration: underline; text-underline-offset: 3px; }
.acp-guide-steps .acp-text-link { margin-block-start: 6px; }
.acp-guide p.acp-guide-path, .acp-guide p.acp-guide-tip { display: flex; align-items: baseline; gap: 8px; margin: 3px 0 10px; padding: 9px 11px; border-radius: 7px; background: var(--acp-blue-soft); color: var(--acp-blue); font-size: .8rem; font-weight: 700; }
.acp-guide p.acp-guide-tip { margin: 12px 0 0; background: var(--acp-sky-soft); color: var(--acp-sky); font-weight: 500; }
.acp-guide-assistant { display: flex; align-items: flex-start; gap: 12px; margin-block-start: 8px; padding: 18px; border: 1px solid var(--acp-line); border-radius: 13px; background: var(--acp-blue-soft); }
.acp-guide-assistant h2 { color: var(--acp-ink); font-family: inherit; font-size: 1.13rem; font-weight: 750; }
.acp-guide-assistant p { margin-block: 4px 11px; color: var(--acp-muted); font-size: .87rem; }
.acp-guide-empty { padding: 22px; color: var(--acp-muted); }
.acp-guide-empty i { color: var(--acp-blue); }
.acp-guide-empty p { margin-block: 5px 8px; }

@media (max-width: 1000px) {
  .acp-wrap, .acp-public .acp-guide { width: calc(100% - 48px); }
  .acp-guide-index { max-height: calc(100vh - 106px); overflow: auto; }
}
@media (max-width: 740px) {
  .acp-nav, .acp-nav-actions, .acp-nav-links { gap: 13px; }
  .acp-nav { min-height: 64px; }
  .acp-footer-inner { flex-wrap: wrap; gap: 12px; }
  .acp-footer nav { gap: 10px 17px; }
  .acp-guide-layout { grid-template-columns: minmax(0, 1fr); margin-block-start: 14px; }
  .acp-guide-index { position: static; display: flex; flex-wrap: wrap; gap: 5px; max-height: none; }
  .acp-guide-index p { flex-basis: 100%; padding-inline: 0; margin: 0; }
  .acp-guide-index a { padding: 5px 7px; border: 1px solid var(--acp-line); }
}
@media (max-width: 510px) {
  .acp-wrap, .acp-public .acp-guide { width: calc(100% - 30px); }
  .acp-nav { flex-wrap: wrap; justify-content: space-between; padding-block: 9px 5px; row-gap: 3px; }
  .acp-brand { font-size: .98rem; }
  .acp-nav .acp-brand img { width: 27px; height: 27px; }
  .acp-nav-links { order: 1; flex-basis: 100%; }
  .acp-nav-links a { padding-block: 5px; }
  .acp-nav-actions { gap: 7px; }
  .acp-nav-actions .acp-button-small { min-height: 33px; padding: 5px 9px; }
  .acp-nav-login { font-size: .78rem; }
  .acp-language summary { padding-inline: 5px; }
  .acp-language summary [data-current-language] { display: none; }
  .acp-public [id] { scroll-margin-top: 104px; }
  .acp-public .acp-guide { padding-block-start: 20px; }
  .acp-guide-hero { grid-template-columns: minmax(0, 1fr); padding: 21px 15px; }
  .acp-guide-art { display: none; }
  .acp-guide-start-grid { grid-template-columns: minmax(0, 1fr); }
  .acp-guide-topic-heading { gap: 9px; padding: 12px 10px; }
  .acp-guide .acp-icon { width: 36px; height: 36px; border-radius: 9px; font-size: 1rem; }
  .acp-guide .acp-guide-steps { padding: 0 11px 14px; }
}
@media (prefers-reduced-motion: no-preference) {
  html:has(.acp-public), html:has(.acp-guide) { scroll-behavior: smooth; }
}
@media (prefers-reduced-motion: reduce) {
  .acp-public *, .acp-guide * { animation: none !important; transition: none !important; }
}
