.record-filter-primary{display:grid;grid-template-columns:minmax(180px,2fr) repeat(2,minmax(135px,1fr)) auto;gap:10px;align-items:end;padding:12px}
.record-kinds{display:flex;gap:6px;flex-wrap:wrap}
.record-kinds button{min-width:88px}
.record-kinds [aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:700}
.record-filter-field{display:flex;flex-direction:column;gap:5px;min-width:0;font-size:var(--font-sm);color:var(--muted)}
.record-filter-field input,.record-filter-field select{width:100%;font-size:var(--font-md);min-height:44px}
.record-filter-primary button{white-space:nowrap}
.record-filter-more{border-top:1px solid var(--line);padding:10px 12px}
.record-filter-more summary{cursor:pointer;color:var(--link);font-size:var(--font-sm);min-height:24px;line-height:1.8}
.record-filter-more summary:focus-visible{outline:3px solid #9cc8ff;outline-offset:3px}
.record-filter-advanced{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:10px 0}
.record-filter-more .small{margin:8px 0 0}

.record-results-summary{margin:12px 0}
.record-results-summary p{margin:5px 0;line-height:1.6}
.record-results-summary [role=status]{font-weight:700}
.record-results-summary .small{font-weight:400}
.record-applied-filters{overflow-wrap:anywhere}
.record-visit-heading{display:flex;gap:8px;align-items:center;flex-wrap:wrap;min-width:0}
.record-visit-heading h3{font-size:var(--font-lg);line-height:1.6;margin:0;overflow-wrap:anywhere}
/* 受診科と対応状況（v0.13.44）は 1 組で折り返す。 */
.record-visit-badges{display:inline-flex;gap:8px;align-items:center;white-space:nowrap}
.record .record-kind{background:var(--green-soft);color:#17624f}
@media screen and (min-width:1001px) and (pointer:fine){.record-filter-field input,.record-filter-field select{min-height:34px}}
@media screen and (min-width:1001px) and (max-width:1250px){.record-filter-primary{grid-template-columns:repeat(3,minmax(0,1fr))}.record-query{grid-column:1/-1}}
@media screen and (max-width:1000px){.record-filter-primary{grid-template-columns:repeat(2,minmax(0,1fr))}.record-query{grid-column:1/-1}.record-filter-advanced{grid-template-columns:repeat(2,minmax(0,1fr))}.record-filter-more summary{min-height:44px;display:flex;align-items:center}.record-filter-more summary::before{content:'＋';margin-right:8px}.record-filter-more[open] summary::before{content:'−'}.record-results-summary .small{display:block}}
@media screen and (max-width:440px){.record-filter-advanced{grid-template-columns:minmax(0,1fr)}}
@media print{.record-results-summary{break-after:avoid}.record .record-kind{border:1px solid #999;color:black;background:white}}

/* Date filters hold a fixed-length value, so the input does not stretch with its grid cell. */
.record-filter-field input[type=date]{width:calc(9em + 26px);max-width:100%}
.record-filter-field select{width:auto;min-width:min(100%,9em);max-width:100%}

/* 記録の日付は年（2026年）と月日（10月13日）の間で必ず改行し、月日の桁数や端末のフォント幅で
   末尾の 1 文字だけが折り返されないようにする（PC の左列と印刷）。日付が本文の上の 1 行になる
   スマホ幅は従来どおり 1 行のまま。 */
.record-date-text{display:block}
.record-date-year,.record-date-day{display:block;white-space:nowrap}
@media screen and (max-width:1000px){.record-date-year,.record-date-day{display:inline}}

/* 生活記録・対応の追記の訂正と削除（v0.13.33）。
   追記の「編集」は日付・職員の行の右端に小さく置き、記録本体の操作ボタンと見分けられるようにする。 */
.response-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.response-edit{display:inline-flex;align-items:center;gap:4px;color:var(--link);font-size:var(--font-sm);min-height:32px}
.response-edit .icon{width:16px;height:16px}
/* 編集画面の削除ボタンは保存ボタンから離す（PC は左端、スマホ・タブレットは保存・キャンセルの上の段）。 */
.button-row .modal-remove{display:inline-flex;align-items:center;justify-content:center;gap:6px;margin-right:auto}
.audit-detail{display:block;margin-top:2px;color:var(--muted);font-size:var(--font-xs);overflow-wrap:anywhere}
@media screen and (max-width:1000px){.response-edit{min-height:44px;padding:4px 8px}.button-row .modal-remove{order:-1;flex:1 1 100%;margin-right:0}}
@media print{.response-edit{display:none!important}}
/* 入居者の完全削除（v0.13.36、管理者のみ） */
.resident-delete-warning{background:var(--red-soft);border:1px solid var(--red-border);color:var(--red-text);border-radius:9px;padding:12px 16px;line-height:1.7;margin-bottom:14px;font-size:var(--font-md)}
.resident-delete-warning strong{display:block}
.resident-delete-person{display:flex;flex-direction:column;gap:2px;margin:0 0 14px;overflow-wrap:anywhere}
.resident-delete-person strong{font-size:18px}
.resident-delete-person span,.resident-delete-person small{color:var(--muted)}
.resident-delete-heading{font-size:var(--font-md);margin:0 0 6px}
.resident-delete-counts{margin:0 0 10px;max-width:30em}
.resident-delete-counts div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:1px solid var(--line);padding:6px 0}
.resident-delete-counts dd{margin:0;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}
.resident-delete-list{margin:6px 0 8px;padding-left:1.4em}
.resident-delete .field{margin-top:14px}
.resident-delete-note{font-size:var(--font-sm);color:var(--muted);line-height:1.7;margin:0}
.danger-solid{background:var(--red);border-color:var(--red);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:6px}
.danger-solid:disabled{opacity:.45;cursor:not-allowed}
