/* JinglePig "Report a problem" */
.jpfb { margin: 48px 0 8px; border: 1px solid #DCE7E1; border-radius: 16px; background: #fff; color: #20343C; }
.jpfb-summary { cursor: pointer; padding: 16px 20px; font-size: .95rem; color: #4f6963; list-style: none; display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.jpfb-summary::-webkit-details-marker { display: none; }
.jpfb-summary::before { content: "⚑"; color: #E98976; font-size: 1.05rem; }
.jpfb-summary span { font-weight: 700; color: #173D3A; text-decoration: underline; text-underline-offset: 3px; }
.jpfb-summary:focus-visible { outline: 3px solid #E8B352; outline-offset: 2px; border-radius: 16px; }
.jpfb[open] .jpfb-summary { border-bottom: 1px solid #DCE7E1; }
.jpfb-body { padding: 16px 20px 20px; }
.jpfb-form { display: grid; gap: 14px; max-width: 640px; }
.jpfb-form[hidden] { display: none; }
.jpfb-field { display: flex; flex-direction: column; gap: 6px; font-size: .88rem; font-weight: 700; color: #173D3A; }
.jpfb-optional { font-weight: 500; color: #4f6963; }
.jpfb-field textarea, .jpfb-field input { font: inherit; font-size: 1rem; font-weight: 400; padding: 10px 12px; min-height: 44px; border: 1px solid #b8ccc4; border-radius: 10px; background: #fff; color: #20343C; width: 100%; box-sizing: border-box; }
.jpfb-field textarea:focus-visible, .jpfb-field input:focus-visible, .jpfb-button:focus-visible { outline: 3px solid #E8B352; outline-offset: 2px; }
.jpfb-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.jpfb-note { margin: 0; font-size: .82rem; color: #4f6963; }
.jpfb-button { justify-self: start; min-height: 44px; padding: 10px 18px; background: #173D3A; border: 2px solid #173D3A; border-radius: 11px; color: #fff; font: inherit; font-size: .92rem; font-weight: 700; cursor: pointer; }
.jpfb-button:hover { background: #0c2927; }
.jpfb-button[disabled] { opacity: .7; cursor: wait; }
.jpfb-status { margin: 0 0 14px; padding: 10px 14px; border-radius: 10px; background: #ECF2ED; color: #173D3A; font-weight: 600; }
.jpfb-status[hidden] { display: none; }
.jpfb-status--error { background: #FFF4E5; color: #8A4B00; }
@media (max-width: 600px) { .jpfb-button { justify-self: stretch; } }

/* Contact page form (0.2.0) */
.jpfc { margin: 28px 0; }
.jpfc .jpfb-body { padding: 22px 24px 24px; }
.jpfc-title { margin: 0 0 14px; font-size: 1.35rem; color: #173D3A; }
.jpfb-field select { font: inherit; font-size: 1rem; font-weight: 400; padding: 10px 12px; min-height: 44px; border: 1px solid #b8ccc4; border-radius: 10px; background: #fff; color: #20343C; width: 100%; box-sizing: border-box; }
.jpfb-field select:focus-visible { outline: 3px solid #E8B352; outline-offset: 2px; }
@media (max-width: 600px) { .jpfc .jpfb-body { padding: 18px 16px 20px; } }
