/* ===== WFの枠（サイト本体ではない部分） ===== */
* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: "Hiragino Sans", "Noto Sans JP", sans-serif; background: #e8e6e2; color: #1a1a1a; }

.wf-toolbar { position: sticky; top: 0; z-index: 200; background: #111; color: #aaa; display: flex; align-items: center; gap: 10px; padding: 8px 16px; flex-wrap: wrap; font-size: 11px; }
.wf-toolbar .tb-title { color: #c8a96e; font-weight: 700; font-size: 12px; letter-spacing: .06em; text-decoration: none; margin-right: 6px; }
.wf-toolbar select { font-family: inherit; font-size: 11px; background: #222; color: #ddd; border: 1px solid #333; border-radius: 4px; padding: 4px 6px; max-width: 240px; }
.wf-toolbar .tb-sp { margin-left: auto; display: flex; gap: 6px; }
.wf-toolbar button { font-family: inherit; font-size: 11px; background: #222; color: #aaa; border: 1px solid #333; border-radius: 4px; padding: 5px 11px; cursor: pointer; }
.wf-toolbar button.on { background: #c8a96e; color: #1a1a1a; border-color: #c8a96e; font-weight: 700; }

.wf-frame { max-width: 1040px; margin: 16px auto 60px; background: #fff; border: 1px solid #ccc; border-radius: 4px; overflow: clip; box-shadow: 0 2px 12px rgba(0,0,0,.12); container-type: inline-size; container-name: site; transition: max-width .25s; }
body.sp .wf-frame { max-width: 375px; }

.wf-label { background: #1a1a1a; color: #c8a96e; padding: 9px 18px; font-size: 11px; font-weight: 700; letter-spacing: .1em; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.wf-label .pg-tag { background: #c8a96e; color: #1a1a1a; border-radius: 3px; padding: 2px 8px; font-size: 10px; }
.wf-label .pg-url { color: #777; font-weight: 400; font-size: 10px; letter-spacing: 0; }

.ann { background: #fffbe6; border-left: 3px solid #c8a96e; padding: 8px 12px; font-size: 11px; color: #555; line-height: 1.7; font-family: "Hiragino Sans", "Noto Sans JP", sans-serif; }
.ann strong { color: #b5842a; }
.ann .tbd { display: inline-block; background: #fbe3e0; color: #c0392b; font-weight: 700; font-size: 10px; padding: 0 6px; border-radius: 3px; margin-right: 4px; }
.ann .fields { display: grid; grid-template-columns: auto 1fr; gap: 2px 10px; margin-top: 6px; }
.ann .fields dt { font-weight: 700; color: #8a6a2a; white-space: nowrap; }
.ann .fields dd { color: #555; }
body.no-ann .ann { display: none; }
