.fj-goal-transfer {
    margin: 1.5rem 0;
    padding: clamp(1rem, 3vw, 1.5rem);
    border: 1px solid var(--text-color);
    border-radius: 12px;
    color: var(--text-color);
    background: var(--card-bg);
    overflow-wrap: anywhere;
}
.fj-goal-transfer h2 { font-size: 1.3rem; }
.fj-goal-transfer fieldset { min-width: 0; margin: 1.25rem 0; padding: 1rem; border: 1px solid var(--border-color, #888); border-radius: 8px; }
.fj-goal-transfer legend { float: none; width: auto; padding: 0 .35rem; font-size: 1.05rem; font-weight: 700; }
.fj-goal-transfer label { display: block; margin: .8rem 0; }
.fj-goal-transfer select, .fj-goal-transfer input[type="date"] {
    display: block; width: 100%; max-width: 100%; min-height: 44px; margin-top: .5rem; padding: .6rem;
    color: var(--text-color); background: var(--card-bg); border: 1px solid var(--text-color); border-radius: 6px;
}
.fj-goal-transfer .fj-goal-transfer-check { display: flex; gap: .65rem; align-items: flex-start; }
.fj-goal-transfer input[type="checkbox"] { flex: 0 0 auto; width: 20px; height: 20px; margin-top: 3px; }
.fj-goal-transfer dl { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: .7rem 1.2rem; }
.fj-goal-transfer dd { margin: .25rem 0 0; }
.fj-goal-transfer-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1rem; }
.fj-goal-transfer button { min-height: 44px; padding: .6rem 1rem; color: var(--text-color); background: var(--card-bg); border: 1px solid currentColor; border-radius: 6px; }
.fj-goal-transfer :focus-visible { outline: 3px solid var(--text-color); outline-offset: 3px; }
.fj-goal-transfer [hidden] { display: none !important; }
.goal-transfer-summary { margin: 1.25rem 0; padding: 1rem; border: 1px solid var(--border-color, #888); border-radius: 8px; color: var(--text-color, #142533); background: var(--card-bg, white); overflow-wrap: anywhere; }
.goal-transfer-summary summary, .goal-transfer-summary h2 { font-size: 1.1rem; font-weight: 700; }
.goal-transfer-summary summary { cursor: pointer; min-height: 44px; }
.goal-transfer-summary p { margin: .8rem 0; }
.goal-transfer-summary article { border-top: 1px solid #aaa; margin-top: 1rem; padding-top: .75rem; break-inside: avoid; }
.goal-transfer-summary h3 { font-size: 1rem; margin: .5rem 0; }
.goal-transfer-summary dl { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); gap: .7rem 1rem; }
.goal-transfer-summary dt { font-weight: 600; }
.goal-transfer-summary dd { margin: .25rem 0 0; }
@media print {
    .goal-transfer-report { break-before: page; }
    .goal-transfer-summary { color: #142533; background: white; font-size: 11px; }
    .goal-transfer-summary h2 { font-size: 16px; }
    .goal-transfer-summary h3 { font-size: 13px; }
}
