/**
 * スマホ — PC同様の16:9スライド / 全画面プレゼン
 */
html {
  -webkit-text-size-adjust: 100%;
}

body.sf-deck-body,
body.sf-portal-body {
  overflow-x: hidden;
}

body.sf-deck-body .sf-slide h2,
body.sf-deck-body .sf-slide__title,
body.sf-deck-body .sf-slide .lead,
body.sf-deck-body .sf-slide__lead,
body.sf-deck-body .sf-slide p,
body.sf-deck-body .sf-slide li {
  word-break: keep-all;
  overflow-wrap: break-word;
  line-break: strict;
}

@media (hover: none), (max-width: 900px) {
  body.sf-deck-body {
    --sf-toolbar-h: 48px;
    --sf-guide-h: 132px;
  }
  body.sf-deck-body .sf-toolbar.sf-toolbar--open {
    --sf-toolbar-h: 200px;
  }

  .sf-wrap {
    padding-top: calc(var(--sf-toolbar-h, 48px) + 8px);
    padding-left: 8px;
    padding-right: 8px;
    padding-bottom: calc(var(--sf-guide-h, 132px) + env(safe-area-inset-bottom, 0px));
    max-width: 100%;
  }

  /* PCと同型：16:9・中身は絶対配置でクリップ */
  .sf-slide {
    aspect-ratio: 16 / 9;
    width: 100%;
    max-width: 100%;
    height: auto;
    overflow: hidden;
    margin: 0 auto 14px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
    scroll-margin-top: calc(var(--sf-toolbar-h, 48px) + 6px);
  }
  .sf-slide__inner {
    position: absolute;
    inset: 0;
    padding: clamp(10px, 2.8vw, 26px) clamp(10px, 3vw, 30px) clamp(34px, 6vw, 46px);
    overflow: hidden;
    box-sizing: border-box;
  }
  .sf-slide__foot {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0;
  }
  .sf-slide h2,
  .sf-slide__title {
    font-size: clamp(14px, 4.2vw, 22px) !important;
    line-height: 1.35;
    margin-bottom: 6px;
  }
  .sf-slide .lead,
  .sf-slide p.lead {
    font-size: clamp(11px, 3vw, 14px) !important;
    line-height: 1.55;
  }

  .sf-cover__content {
    padding: clamp(10px, 3vmin, 32px) clamp(10px, 3vmin, 28px) clamp(36px, 6vmin, 48px);
    justify-content: flex-end;
    gap: 8px;
  }
  .sf-cover h1 {
    font-size: clamp(13px, 4vw, 22px) !important;
    line-height: 1.45 !important;
    max-width: none;
  }

  .sf-value-clean,
  .sf-evidence-shots,
  .sf-closing-tiers,
  .sf-roi-grid,
  .sf-roi-cols,
  .sf-pay-grid,
  .sf-scope-grid,
  .sf-benefit-grid {
    grid-template-columns: 1fr !important;
  }

  .sf-deck-iframe,
  .sf-slide--demo .sf-deck-iframe {
    min-height: 0 !important;
    height: 100% !important;
    max-height: none;
    flex: 1;
  }
  .sf-slide--demo .sf-slide__inner {
    display: flex;
    flex-direction: column;
  }

  .proposal-guide-player {
    z-index: 200;
    min-height: 124px;
  }
  .proposal-guide-player__inner {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 8px;
    padding: 8px 10px 10px;
  }
  .proposal-guide-player__select {
    grid-column: 1 / -1;
    min-height: 44px;
    font-size: 15px;
  }
  .proposal-guide-btn {
    min-height: 44px;
    font-size: 14px;
  }
  .proposal-guide-caption {
    display: block !important;
    font-size: 12px;
    background: #f0fdf4;
    color: #166534;
  }
  .proposal-guide-player__status {
    display: block !important;
    grid-column: 1 / -1;
    text-align: center;
  }
}

@media (orientation: landscape) and (max-width: 1200px) {
  body.sf-deck-body.sf-landscape-deck:not(.sf-theater-active) .sf-slide {
    width: 100vw;
    max-width: 100vw;
    aspect-ratio: unset;
    min-height: calc(100dvh - var(--sf-toolbar-h, 48px) - var(--sf-guide-h, 100px));
    max-height: none;
    margin-left: 0;
    margin-right: 0;
  }
}

@media (max-width: 768px) {
  .sf-portal { padding: calc(var(--header-h, 56px) + 16px) 14px calc(24px + env(safe-area-inset-bottom, 0px)); }
  .sf-portal-mail { display: none; }
  .sf-line-page { padding: calc(var(--header-h, 56px) + 16px) 14px calc(24px + env(safe-area-inset-bottom, 0px)); }
  .site-header .nav { display: none; }
}
