
  .yjd-detail {
    --accent: #F5B418;
    --ink: #111827;
    --muted: #60666d;
    --line: #e5e7eb;
    --soft: #fff9e9;
    max-width: 1100px;
    margin: 0 auto;
    color: var(--ink);
    font: 16px/1.7 Arial, Helvetica, sans-serif;
  }
  .yjd-detail * { box-sizing: border-box; }
  .yjd-detail h2 {
    margin: 0 0 12px;
    font-size: 25px;
    line-height: 1.3;
  }
  .yjd-detail h3 {
    margin: 0 0 7px;
    font-size: 18px;
    line-height: 1.4;
  }
  .yjd-detail p { margin: 0 0 13px; }
  .yjd-detail .overview {
    padding: 24px;
    margin-bottom: 24px;
    border-left: 5px solid var(--accent);
    background: var(--soft);
  }
  .yjd-detail .overview strong { color: #111; }
  .yjd-detail .section {
    padding: 26px 0;
    border-bottom: 1px solid var(--line);
  }
  .yjd-detail .muted { color: var(--muted); }
  .yjd-detail .gallery {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 18px 0;
  }
  .yjd-detail figure { margin: 0; }
  .yjd-detail figure img {
    display: block;
    width: 100%;
    height: auto;
  }
  .yjd-detail figcaption {
    padding-top: 7px;
    color: var(--muted);
    font-size: 14px;
  }
  .yjd-detail .cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 16px;
  }
  .yjd-detail .card {
    padding: 17px;
    border: 1px solid var(--line);
    border-top: 3px solid var(--accent);
  }
  .yjd-detail .table-wrap {
    overflow-x: auto;
    margin: 16px 0;
  }
  .yjd-detail table {
    width: 100%;
    min-width: 650px;
    border-collapse: collapse;
  }
  .yjd-detail th,
  .yjd-detail td {
    padding: 11px 13px;
    border: 1px solid var(--line);
    text-align: left;
    vertical-align: top;
  }
  .yjd-detail th { background: var(--soft); }
  .yjd-detail .note {
    padding: 13px 16px;
    background: #f5f6f7;
    color: var(--muted);
    font-size: 14px;
  }
  .yjd-detail .cta {
    margin: 26px 0;
    padding: 23px;
    background: var(--ink);
    color: #fff;
  }
  .yjd-detail .cta h2 { color: #fff; }
  .yjd-detail .button {
    display: inline-block;
    margin: 5px 12px 0 0;
    padding: 10px 17px;
    background: var(--accent);
    color: #171717;
    font-weight: 700;
    text-decoration: none;
  }
  .yjd-detail a.text-link { color: #765300; }
  .yjd-detail .cta .text-link { color: #fff; }
  @media (max-width: 680px) {
    .yjd-detail .gallery,
    .yjd-detail .cards { grid-template-columns: 1fr; }
    .yjd-detail .overview { padding: 18px; }
    .yjd-detail h2 { font-size: 22px; }
  }
