.sgv-enabled {
  background: #f6f5f0;
}
.sgv-enabled .entry-title, .sgv-enabled .wp-block-post-title {
  max-width: 1080px;
  margin-inline: auto;
  padding-inline: 16px;
  color: #263b35;
  font-family: "Yu Mincho", "Hiragino Mincho ProN", "Songti SC", serif;
  font-size: clamp(28px, 5vw, 44px);
  line-height: 1.4;
  overflow-wrap: anywhere;
}
.sgv-guide-root {
  --sgv-paper: #f6f5f0;
  --sgv-surface: #ffffff;
  --sgv-ink: #263b35;
  --sgv-muted: #59665f;
  --sgv-line: #dfE5df;
  --sgv-primary: #285344;
  --sgv-on-primary: #ffffff;
  --sgv-tint: #edf3ed;
  --sgv-note: #f4eee2;
  --sgv-note-ink: #695139;
  --sgv-viewer: #101713;
  --sgv-viewer-ink: #f5f7f4;
  --sgv-viewer-control: #25362b;
  --sgv-viewer-line: #526459;
  box-sizing: border-box;
  width: 100%;
  max-width: 1080px !important;
  margin: 20px auto 44px !important;
  padding: clamp(16px, 3vw, 28px);
  color: var(--sgv-ink);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Microsoft YaHei", "Hiragino Sans GB", sans-serif;
  font-size: 17px;
  line-height: 1.9;
  overflow-wrap: anywhere;
}
.sgv-guide-root *, .sgv-guide-root *::before, .sgv-guide-root *::after { box-sizing: border-box; }
.sgv-kind-home > div:not(.sgv-lightbox),
.sgv-kind-directory > div:not(.sgv-lightbox) {
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
.sgv-guide-root p { margin: 0 0 1.1em; }
.sgv-guide-root h2, .sgv-guide-root h3 {
  color: var(--sgv-ink);
  font-family: "Yu Mincho", "Hiragino Mincho ProN", "Songti SC", serif;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: -.02em;
}
.sgv-guide-root h2 { font-size: clamp(24px, 4.5vw, 34px); margin: 1.4em 0 .7em; }
.sgv-guide-root h3 { font-size: clamp(21px, 4vw, 27px); margin: 1.4em 0 .6em; }
.sgv-guide-root a { color: var(--sgv-primary); text-underline-offset: .22em; }
.sgv-guide-root :focus-visible { outline: 3px solid var(--sgv-primary); outline-offset: 4px; }
.sgv-guide-root .sgv-card {
  background: var(--sgv-surface) !important;
  color: var(--sgv-ink) !important;
  border: 1px solid var(--sgv-line) !important;
  border-radius: 22px !important;
  padding: clamp(20px, 3vw, 30px) !important;
  box-shadow: 0 5px 22px #1d38200a;
}
.sgv-guide-root .sgv-card h2, .sgv-guide-root .sgv-card h3 { margin-top: 0 !important; }
.sgv-guide-root .sgv-card p[style*="font-size"] { color: var(--sgv-primary) !important; }
.sgv-guide-root .sgv-card.sgv-bundle { background: var(--sgv-tint) !important; }
.sgv-guide-root .sgv-grid { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px !important; }
.sgv-guide-root .sgv-action {
  display: block !important;
  min-height: 50px;
  padding: 13px 19px !important;
  background: var(--sgv-primary) !important;
  color: var(--sgv-on-primary) !important;
  border: 1px solid var(--sgv-primary) !important;
  border-radius: 12px !important;
  font: inherit;
  font-weight: 600 !important;
  line-height: 1.6;
  text-align: center;
  text-decoration: none !important;
  white-space: normal;
}
.sgv-guide-root .sgv-action:hover { filter: brightness(.95); }
.sgv-guide-root .sgv-store-note {
  margin: 0 0 22px;
  padding: 11px 15px;
  background: var(--sgv-note);
  color: var(--sgv-note-ink);
  border-radius: 10px;
  font-size: 14px;
}
.sgv-kind-preview, .sgv-kind-article {
  max-width: 840px !important;
  padding: clamp(20px, 4vw, 40px);
  border: 1px solid var(--sgv-line);
  border-radius: 22px;
  background: var(--sgv-surface);
}
.sgv-guide-root img:not(.sgv-viewer-image) {
  display: block;
  max-width: 100% !important;
  height: auto !important;
  margin-inline: auto;
  border-radius: 12px;
}
.sgv-guide-root .sgv-photo { cursor: zoom-in; }
.sgv-guide-root figure { max-width: 100%; margin: 24px 0; }
.sgv-guide-root figcaption { color: var(--sgv-muted); font-size: 14px; text-align: center; margin: 9px 0 0; }
.sgv-guide-root .wp-block-video, .sgv-guide-root .wp-video { width: 100% !important; max-width: 100% !important; }
.sgv-guide-root video {
  display: block;
  width: 100%;
  max-width: 100% !important;
  height: auto !important;
  max-height: 78vh;
  max-height: 78svh;
  object-fit: contain;
  border-radius: 14px;
  background: var(--sgv-viewer);
}
.sgv-guide-root .sgv-photo-hint { margin: 0 0 16px; color: var(--sgv-muted); font-size: 14px; }
.sgv-guide-root .sgv-lightbox {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  height: 100dvh;
  max-width: none;
  max-height: none;
  margin: 0;
  padding: 0;
  border: 0;
  color: var(--sgv-viewer-ink);
  background: var(--sgv-viewer);
  overflow: hidden;
  font: 15px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.sgv-guide-root .sgv-lightbox:not([open]) { display: none; }
.sgv-guide-root .sgv-lightbox[open] { display: flex; flex-direction: column; }
.sgv-guide-root .sgv-lightbox::backdrop { background: #101713eF; }
.sgv-guide-root .sgv-viewer-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  flex: 0 0 auto;
  padding: max(12px, env(safe-area-inset-top)) 14px 12px;
}
.sgv-guide-root .sgv-viewer-bottom { padding: 12px 14px max(16px, env(safe-area-inset-bottom)); justify-content: center; }
.sgv-guide-root .sgv-viewer-controls { display: flex; gap: 8px; align-items: center; }
.sgv-guide-root .sgv-lightbox button {
  min-width: 44px;
  min-height: 44px;
  margin: 0;
  padding: 8px 12px;
  border: 1px solid var(--sgv-viewer-line);
  border-radius: 9px;
  background: var(--sgv-viewer-control);
  color: var(--sgv-viewer-ink);
  font: inherit;
  line-height: 1.3;
  cursor: pointer;
  text-transform: none;
  letter-spacing: normal;
}
.sgv-guide-root .sgv-lightbox button:focus-visible { outline-color: var(--sgv-viewer-ink); }
.sgv-guide-root .sgv-lightbox button:disabled { opacity: .4; cursor: default; }
.sgv-guide-root .sgv-viewer-stage { position: relative; flex: 1 1 auto; min-height: 0; width: 100%; overflow: hidden; touch-action: none; }
.sgv-guide-root .sgv-viewer-image {
  position: absolute !important;
  inset: auto !important;
  left: 50% !important;
  top: 50% !important;
  display: block !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  object-fit: contain;
  transform-origin: center;
  user-select: none;
  -webkit-user-drag: none;
  pointer-events: none;
}
.sgv-guide-root .sgv-viewer-message {
  position: absolute;
  inset: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--sgv-viewer-ink);
  text-align: center;
}
.sgv-guide-root .sgv-viewer-message[hidden], .sgv-guide-root .sgv-viewer-image[hidden] { display: none !important; }
.sgv-guide-root .sgv-viewer-help { margin: 0; padding: 0 16px; color: var(--sgv-viewer-ink); text-align: center; font-size: 13px; }
@media (max-width: 600px) {
  .sgv-guide-root { padding: 16px; margin-top: 10px !important; font-size: 16px; line-height: 1.9; }
  .sgv-guide-root .sgv-grid { grid-template-columns: minmax(0, 1fr); gap: 16px !important; }
  .sgv-kind-preview, .sgv-kind-article { padding: 20px 16px; border-radius: 16px; }
  .sgv-guide-root .sgv-card { border-radius: 16px !important; }
  .sgv-guide-root .sgv-viewer-bar { gap: 6px; }
  .sgv-guide-root .sgv-lightbox button { padding-inline: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .sgv-guide-root *, .sgv-guide-root *::before, .sgv-guide-root *::after { scroll-behavior: auto !important; }
}
