/* Hallmark · pre-emit critique: P5 H5 E4 S5 R5 V4 */
/* Hallmark · genre: editorial · macrostructure: Long Document · tone: utilitarian · anchor hue: QOL blue
 * contrast: pass (40–41) · honest: pass (46) · chrome: pass (47) · tokens: pass (48) · icons: pass (30)
 */

:root {
  --kanagawa-ink: oklch(31% 0.07 250);
  --kanagawa-blue: oklch(52% 0.14 245);
  --kanagawa-blue-deep: oklch(41% 0.12 245);
  --kanagawa-paper: oklch(99% 0.004 245);
  --kanagawa-paper-soft: oklch(97% 0.015 235);
  --kanagawa-rule: oklch(87% 0.035 235);
  --kanagawa-muted: oklch(48% 0.045 245);
  --kanagawa-closed-bg: oklch(96% 0.008 245);
  --kanagawa-closed-ink: oklch(43% 0.035 245);
  --kanagawa-scheduled-bg: oklch(94% 0.035 235);
  --kanagawa-focus: oklch(58% 0.16 88);
  --kanagawa-space-xs: 0.5rem;
  --kanagawa-space-sm: 0.75rem;
  --kanagawa-space-md: 1rem;
  --kanagawa-space-lg: 1.5rem;
  --kanagawa-space-xl: 2rem;
  --kanagawa-radius-sm: 0.5rem;
  --kanagawa-radius-md: 0.75rem;
  --kanagawa-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --kanagawa-duration: 180ms;
}

.prefecture-subsidy-page .prefecture-subsidy-hero h1,
.prefecture-subsidy-page .section-heading {
  color: var(--kanagawa-ink);
  font-style: normal;
  overflow-wrap: anywhere;
  min-width: 0;
}

.prefecture-subsidy-page .prefecture-subsidy-hero {
  border-block-end: 1px solid var(--kanagawa-rule);
  background: linear-gradient(135deg, var(--kanagawa-paper) 0%, var(--kanagawa-paper-soft) 100%);
}

.prefecture-subsidy-page .answer-target {
  border-inline-start: 0.35rem solid var(--kanagawa-blue);
  border-radius: 0 var(--kanagawa-radius-sm) var(--kanagawa-radius-sm) 0;
  background: var(--kanagawa-paper-soft);
  color: var(--kanagawa-ink);
  padding: var(--kanagawa-space-lg);
}

.prefecture-subsidy-page .kanagawa-conclusion,
.prefecture-subsidy-page .kanagawa-warning {
  border: 1px solid var(--kanagawa-rule);
  border-radius: var(--kanagawa-radius-md);
  background: var(--kanagawa-paper-soft);
  padding: var(--kanagawa-space-lg);
}

.prefecture-subsidy-page .kanagawa-conclusion-label,
.prefecture-subsidy-page .kanagawa-warning-label {
  margin: 0 0 var(--kanagawa-space-xs);
  color: var(--kanagawa-blue-deep);
  font-weight: 800;
}

.prefecture-subsidy-page .kanagawa-conclusion .section-heading,
.prefecture-subsidy-page .kanagawa-warning .section-heading {
  margin-block-start: 0;
}

.prefecture-subsidy-page .kanagawa-key-points {
  display: grid;
  gap: var(--kanagawa-space-sm);
  margin-block-end: 0;
  padding-inline-start: var(--kanagawa-space-lg);
}

.kanagawa-status-summary {
  display: grid;
  gap: var(--kanagawa-space-sm);
  margin-block: var(--kanagawa-space-lg) var(--kanagawa-space-md);
}

.kanagawa-status-summary p {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: var(--kanagawa-space-md);
  margin: 0;
  border: 1px solid var(--kanagawa-rule);
  border-radius: var(--kanagawa-radius-md);
  background: var(--kanagawa-paper);
  padding: var(--kanagawa-space-md);
}

.kanagawa-status {
  display: inline-flex;
  min-height: 2.25rem;
  align-items: center;
  border-radius: 999px;
  padding-inline: var(--kanagawa-space-md);
  font-weight: 700;
  max-width: 100%;
  white-space: normal;
}

.kanagawa-status.is-closed {
  background: var(--kanagawa-closed-bg);
  color: var(--kanagawa-closed-ink);
}

.kanagawa-status.is-scheduled {
  background: var(--kanagawa-scheduled-bg);
  color: var(--kanagawa-blue-deep);
}

.kanagawa-status-note,
.prefecture-note,
.prefecture-source-date {
  color: var(--kanagawa-muted);
  font-size: 0.95rem;
}

.prefecture-subsidy-page .kanagawa-formulas {
  display: grid;
  gap: var(--kanagawa-space-lg);
}

.prefecture-subsidy-page .kanagawa-formulas > div {
  border-block-start: 0.25rem solid var(--kanagawa-blue);
  padding-block-start: var(--kanagawa-space-md);
}

.prefecture-subsidy-page .kanagawa-formula {
  margin-block: var(--kanagawa-space-sm);
  color: var(--kanagawa-ink);
  font-size: clamp(1.05rem, 2vw, 1.25rem);
  font-weight: 800;
}

.prefecture-subsidy-page .kanagawa-limit-note {
  border-radius: var(--kanagawa-radius-sm);
  background: var(--kanagawa-paper-soft);
  padding: var(--kanagawa-space-md);
}

.prefecture-subsidy-page .kanagawa-facts {
  margin-block: var(--kanagawa-space-lg);
}

.prefecture-subsidy-page .kanagawa-facts > div {
  display: grid;
  gap: var(--kanagawa-space-xs);
  border-block-start: 1px solid var(--kanagawa-rule);
  padding-block: var(--kanagawa-space-md);
}

.prefecture-subsidy-page .kanagawa-facts dt {
  color: var(--kanagawa-ink);
  font-weight: 800;
}

.prefecture-subsidy-page .kanagawa-facts dd {
  margin: 0;
}

.prefecture-subsidy-page .prefecture-equipment-grid {
  grid-template-columns: minmax(0, 1fr);
}

.prefecture-subsidy-page .prefecture-equipment-grid article {
  border-block-start: 0.25rem solid var(--kanagawa-blue);
}

.prefecture-subsidy-page .prefecture-status {
  display: inline-flex;
  border-radius: 999px;
  padding: var(--kanagawa-space-xs) var(--kanagawa-space-sm);
  font-size: 0.9rem;
  font-weight: 700;
}

.prefecture-subsidy-page .prefecture-status.is-confirmed {
  background: var(--kanagawa-scheduled-bg);
  color: var(--kanagawa-blue-deep);
}

.prefecture-subsidy-page .prefecture-status.is-unconfirmed {
  background: var(--kanagawa-closed-bg);
  color: var(--kanagawa-closed-ink);
}

.prefecture-subsidy-page .prefecture-official-link {
  color: var(--kanagawa-blue-deep);
  font-weight: 700;
  text-decoration: underline;
  text-decoration-thickness: 0.1em;
  text-underline-offset: 0.2em;
}

.prefecture-subsidy-page .prefecture-official-link:hover {
  color: var(--kanagawa-blue);
}

.prefecture-subsidy-page .prefecture-official-link:active {
  color: var(--kanagawa-ink);
}

.prefecture-subsidy-page a:focus-visible,
.prefecture-subsidy-page summary:focus-visible,
.prefecture-subsidy-page .table-scroll:focus-visible {
  outline: 3px solid var(--kanagawa-focus);
  outline-offset: 3px;
}

.prefecture-subsidy-page .faq-item summary {
  color: var(--kanagawa-ink);
}

.prefecture-subsidy-page .prefecture-final-cta .btn {
  min-height: 44px;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}

.prefecture-subsidy-page .table-scroll {
  max-width: 100%;
  overflow: visible;
}

.prefecture-subsidy-page .prefecture-program-table,
.prefecture-subsidy-page .prefecture-program-table tbody,
.prefecture-subsidy-page .prefecture-program-table tr,
.prefecture-subsidy-page .prefecture-program-table th,
.prefecture-subsidy-page .prefecture-program-table td {
  display: block;
  width: 100%;
}

.prefecture-subsidy-page .prefecture-program-table {
  min-width: 0;
}

.prefecture-subsidy-page .prefecture-program-table thead {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

.prefecture-subsidy-page .prefecture-program-table tr {
  margin-block-end: var(--kanagawa-space-md);
  border: 1px solid var(--kanagawa-rule);
  border-radius: var(--kanagawa-radius-md);
  background: var(--kanagawa-paper);
}

.prefecture-subsidy-page .prefecture-program-table th,
.prefecture-subsidy-page .prefecture-program-table td {
  box-sizing: border-box;
  border: 0;
  border-block-end: 1px solid var(--kanagawa-rule);
  overflow-wrap: anywhere;
  padding: var(--kanagawa-space-sm) var(--kanagawa-space-md);
}

.prefecture-subsidy-page .prefecture-program-table tr > :last-child {
  border-block-end: 0;
}

.prefecture-subsidy-page .prefecture-program-table th[scope="row"] {
  background: var(--kanagawa-paper-soft);
  color: var(--kanagawa-ink);
}

.prefecture-subsidy-page .prefecture-program-table td::before {
  display: block;
  margin-block-end: var(--kanagawa-space-xs);
  color: var(--kanagawa-muted);
  font-size: 0.82rem;
  font-weight: 800;
}

.prefecture-subsidy-page .prefecture-program-table td:nth-child(2)::before { content: "補助額"; }
.prefecture-subsidy-page .prefecture-program-table td:nth-child(3)::before { content: "主な条件"; }
.prefecture-subsidy-page .prefecture-program-table td:nth-child(4)::before { content: "現在の受付状況"; }
.prefecture-subsidy-page .prefecture-program-table td:nth-child(5)::before { content: "次回予定"; }

@media (min-width: 40rem) {
  .kanagawa-status-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .kanagawa-status-summary p {
    align-items: center;
    flex-direction: row;
  }

  .kanagawa-status {
    white-space: nowrap;
  }

  .prefecture-subsidy-page .prefecture-equipment-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }


  .prefecture-subsidy-page .kanagawa-formulas {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .prefecture-subsidy-page .kanagawa-facts > div {
    grid-template-columns: minmax(8rem, 0.35fr) minmax(0, 1fr);
  }

}

@media (min-width: 769px) {
  .prefecture-subsidy-page .table-scroll {
    overflow-x: auto;
  }

  .prefecture-subsidy-page .prefecture-program-table {
    display: table;
    min-width: 760px;
  }

  .prefecture-subsidy-page .prefecture-program-table thead {
    position: static;
    display: table-header-group;
    width: auto;
    height: auto;
    overflow: visible;
    clip-path: none;
    white-space: normal;
  }

  .prefecture-subsidy-page .prefecture-program-table tbody { display: table-row-group; }
  .prefecture-subsidy-page .prefecture-program-table tr { display: table-row; }
  .prefecture-subsidy-page .prefecture-program-table th,
  .prefecture-subsidy-page .prefecture-program-table td {
    display: table-cell;
    width: auto;
    border: revert;
  }

  .prefecture-subsidy-page .prefecture-program-table td::before {
    display: none;
    content: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .prefecture-subsidy-page *,
  .prefecture-subsidy-page *::before,
  .prefecture-subsidy-page *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}
