/* Public guides share the customer workspace's spacing and surface tokens. */
.sns-platform-guide {
  width: 100%;
  max-width: none;
  min-width: 0;
  margin: 0 auto;
  color: var(--sns-theme-text);
}
.sns-platform-hub {
  display: flex;
  scroll-margin-top: 72px;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  margin: 0 0 20px;
  padding: 16px 18px;
  border: 1px solid var(--sns-theme-line-card);
  border-radius: var(--sns-theme-radius-card);
  background: var(--sns-theme-outline-surface);
}
.sns-platform-hub > span { color: var(--sns-theme-text-heading); font-size: var(--sns-theme-section-title-size); font-weight: var(--sns-theme-section-title-weight); line-height: 1.5; }
.sns-platform-hub > div,
.sns-platform-guide__platform-links,
.sns-platform-guide__resource-links { display: flex; flex-wrap: wrap; gap: 8px; }
.sns-platform-hub a,
.sns-platform-guide__platform-links a {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 8px 12px;
  border: 1px solid var(--sns-theme-line-control);
  border-radius: var(--sns-theme-radius-control);
  background: var(--sns-theme-surface-raised);
  color: var(--sns-theme-text-label);
  font-size: 13px;
  font-weight: 650;
  text-decoration: none;
}
.sns-platform-guide__breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 0 0 16px;
  color: var(--sns-theme-text-muted);
  font-size: 13px;
}
.sns-platform-guide__breadcrumb a { color: inherit; text-decoration: none; }
.sns-platform-guide__section {
  margin-top: 16px;
  padding: 24px;
  border: 1px solid var(--sns-theme-line-card);
  border-radius: var(--sns-theme-radius-card);
  background: var(--sns-theme-outline-surface);
}
.sns-platform-guide h2,
.sns-platform-guide h3,
.sns-platform-guide p { word-break: keep-all; overflow-wrap: anywhere; }
.sns-platform-guide__actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
.sns-platform-guide a:hover { text-decoration: none; }
.sns-platform-hub a:hover,
.sns-platform-guide__platform-links a:hover { color: var(--sns-theme-brand); border-color: var(--sns-theme-brand); }
.sns-platform-guide__section-heading h2 { margin: 0; color: var(--sns-theme-text-heading); font-size: calc(var(--sns-theme-section-title-size) * var(--sns-content-font-scale, 1)); font-weight: var(--sns-theme-section-title-weight); line-height: 1.5; }
.sns-platform-guide__focus-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 20px; }
.sns-platform-guide__focus-card { min-width: 0; }
.sns-platform-guide__focus-card h3 { margin: 0 0 6px; color: var(--sns-theme-text-heading); font-size: calc(15px * var(--sns-content-font-scale, 1)); font-weight: 650; line-height: 1.5; }
.sns-platform-guide__focus-card p,
.sns-platform-guide__note,
.sns-platform-guide__faq-item p,
.sns-platform-guide__answer { margin: 0; color: var(--sns-theme-text-2); font-size: calc(14px * var(--sns-content-font-scale, 1)); line-height: 1.75; overflow-wrap: anywhere; }
.sns-platform-guide__checklist { display: grid; margin: 16px 0 0; padding: 0; list-style: none; }
.sns-platform-guide__checklist li { display: grid; grid-template-columns: 32px minmax(0, 1fr); align-items: start; gap: 12px; padding: 14px 0; }
.sns-platform-guide__checklist li + li { border-top: 1px solid var(--sns-theme-line-soft); }
.sns-platform-guide__checklist > li > span { display: flex; align-items: center; justify-content: center; width: 32px; min-height: 32px; border-radius: var(--sns-theme-radius-compact); background: var(--sns-theme-terms-brand-soft); color: var(--sns-theme-brand-strong); font-size: 13px; font-weight: 750; line-height: 1.4; font-variant-numeric: tabular-nums; }
.sns-platform-guide__checklist p { margin: 0; color: var(--sns-theme-text-label); font-size: calc(14px * var(--sns-content-font-scale, 1)); font-weight: 400; line-height: 1.714286; }
.sns-platform-guide__checklist p > strong { color: var(--sns-theme-text-heading); font-weight: 800; }
.sns-platform-guide__note { margin-top: 18px; }
.sns-platform-guide__faq-list { margin-top: 16px; border-top: 1px solid var(--sns-theme-line-soft); }
.sns-platform-guide__faq-item { border-bottom: 1px solid var(--sns-theme-line-soft); }
.sns-platform-guide__faq-item summary { position: relative; display: flex; align-items: center; min-height: 54px; padding: 16px 28px 16px 0; color: var(--sns-theme-text-heading); font-size: calc(14px * var(--sns-content-font-scale, 1)); font-weight: 650; line-height: 1.6; cursor: pointer; overflow-wrap: anywhere; list-style: none; }
.sns-platform-guide__faq-item summary::-webkit-details-marker { display: none; }
.sns-platform-guide__faq-item summary::after { content: ""; position: absolute; top: 50%; right: 0; width: 12px; height: 12px; background: var(--sns-theme-muted); mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3 4.5 6 7.5 9 4.5' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; transform: translateY(-50%); }
.sns-platform-guide__faq-item[open] summary::after { transform: translateY(-50%) rotate(180deg); }
.sns-platform-guide__faq-item > p,
.sns-platform-guide__answer { padding: 0 0 16px; }
.sns-platform-guide__platform-links { margin-top: 16px; }
.sns-platform-guide__resource-links { gap: 16px; margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--sns-theme-line-soft); }
.sns-platform-guide__resource-links a { color: var(--sns-theme-brand); font-size: 14px; font-weight: 650; text-decoration: none; }
.sns-platform-guide__help-library { margin-top: 28px; }
.sns-platform-guide__help-nav { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-top: 16px; }
.sns-platform-guide__help-nav a { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 44px; padding: 12px 14px; border: 1px solid var(--sns-theme-line-control); border-radius: var(--sns-theme-radius-control); background: var(--sns-theme-outline-surface); color: var(--sns-theme-text-heading); font-size: 14px; font-weight: 650; text-decoration: none; }
.sns-platform-guide__help-nav a:hover { border-color: var(--sns-theme-brand); color: var(--sns-theme-brand); }
.sns-platform-guide__help-nav span { color: var(--sns-theme-muted); }
.sns-platform-guide__help-nav .sns-platform-guide__help-nav-label { min-width: 0; color: inherit; line-height: 1.5; word-break: keep-all; overflow-wrap: anywhere; }
.sns-platform-guide__help-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 1fr; gap: 16px; margin-top: 16px; align-items: stretch; }
.sns-platform-guide__help-section { display: flex; flex-direction: column; min-width: 0; margin-top: 0; scroll-margin-top: 88px; }
.sns-platform-guide__help-checks { display: grid; gap: 10px; margin: 16px 0 20px; padding-left: 20px; color: var(--sns-theme-text-2); font-size: calc(14px * var(--sns-content-font-scale, 1)); line-height: 1.75; }
.sns-platform-guide__help-checks li { padding-left: 4px; word-break: keep-all; overflow-wrap: anywhere; }
.sns-platform-guide__help-checks li::marker { color: var(--sns-theme-muted); font-weight: 650; font-variant-numeric: tabular-nums; }
.sns-platform-guide__help-section .sns-platform-guide__faq-list { margin: 0 0 20px; }
.sns-platform-guide__help-section .sns-platform-guide__resource-links { gap: 8px 16px; margin-top: auto; }
.sns-platform-guide__help-section .sns-platform-guide__resource-links a { display: inline-flex; align-items: center; gap: 4px; min-height: 44px; line-height: 1.5; }
.sns-platform-guide__help-section:target { border-color: var(--sns-theme-brand); }
.sns-platform-guide a:focus-visible,
.sns-platform-guide summary:focus-visible,
.sns-platform-hub a:focus-visible { outline: 2px solid var(--sns-theme-brand); outline-offset: 3px; }
@media (max-width: 767px) {
  .sns-platform-hub { align-items: flex-start; flex-direction: column; padding: 16px; }
  .sns-platform-guide__section { padding: 20px 16px; }
  .sns-platform-guide__focus-grid { grid-template-columns: 1fr; gap: 16px; }
  .sns-platform-guide__focus-card + .sns-platform-guide__focus-card { padding-top: 16px; border-top: 1px solid var(--sns-theme-line-soft); }
  .sns-platform-guide__actions { width: 100%; }
  .sns-platform-guide__actions .sns-page-heading-action { flex: 1 1 auto; }
  .sns-platform-guide__help-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sns-platform-guide__help-grid { grid-template-columns: 1fr; grid-auto-rows: auto; }
}
