/* Daily work stays compact without hiding fields or changing permissions. */
@media screen{
  .sidebar{background:var(--navy)}.sidebar .nav-group{margin-bottom:4px}.brand b{letter-spacing:.02em}
  .nav a.active{background:#315367;box-shadow:inset 3px 0 #82c8b5}.primary{background:var(--accent);border-color:var(--accent)}.primary:hover{background:#09695f}
  .nav a{color:#d5e0e7}.nav-label{color:#a8becb}.workarea{min-width:0}.main{background:var(--bg)}.panel,.card{box-shadow:none}
  .resident-entry-link{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:5px 8px;background:var(--green-soft);border:1px solid #aed0c8;border-radius:5px;white-space:nowrap;font-size:var(--font-xs);color:#17665c;text-decoration:none}
  .resident-entry-link:hover{background:#e1f0ea}.resident-tile-entry{display:flex;justify-content:flex-end;margin-top:12px}
  .resident-list-table col.rl-name{width:24%}.resident-list-table col.rl-facility{width:17%}.resident-list-table col.rl-room{width:7%}.resident-list-table col.rl-age{width:7%}.resident-list-table col.rl-care{width:11%}.resident-list-table col.rl-status{width:11%}.resident-list-table col.rl-start{width:14%}.resident-list-table col.rl-entry{width:9%}
  .resident-list-table th.rl-entry{padding:6px 9px}.resident-list-table td.rl-entry{font-size:var(--font-xs)}
  .entry-workspace{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(250px,.9fr);gap:16px;align-items:start}
  .entry-form-card{min-width:0;margin:0}.entry-recent{min-width:0;margin:0}.entry-recent .card-head{margin-bottom:0}.entry-recent .card-head p{margin:4px 0 0}
  .entry-recent-record{border-bottom:1px solid var(--line);padding:13px 0;min-width:0}.entry-recent-record>div{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:var(--font-xs);color:var(--muted)}
  .entry-recent-record strong{display:block;font-size:var(--font-md);margin-top:8px;overflow-wrap:anywhere}.entry-recent-record p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--font-md);line-height:1.8;margin:8px 0}
  .entry-recent-record small{font-size:var(--font-2xs);color:var(--muted)}.entry-recent-link{display:block;padding:13px 0 0;font-size:var(--font-sm);line-height:1.7}
  .entry-form-card textarea{min-height:170px}.entry-form-card .entry-person{align-items:flex-start}.entry-form-card .entry-person .actions{flex:none}.entry-save{border-top:1px solid var(--line);padding-top:14px}
  #record-results .record,.main>.record{border:1px solid var(--line);border-radius:0;background:var(--surface);margin-bottom:0;gap:0;grid-template-columns:132px minmax(0,1fr)}
  #record-results .record+.record,.main>.record+.record{border-top:0}
  #record-results .record-date,.main>.record .record-date{background:var(--bg);border-right:1px solid var(--line);padding:12px 10px;text-align:left}
  #record-results .record-body,.main>.record .record-body{border:0;box-shadow:none;border-radius:0;background:transparent;padding:12px 16px}
  #record-results .record-text,.main>.record .record-text{font-size:var(--font-md);line-height:1.85}.record-actions{justify-content:flex-end}.record-actions button{font-size:var(--font-xs)}
}
@media screen and (min-width:1001px){
  .shell{grid-template-columns:192px minmax(0,1fr)}.sidebar{width:192px;padding:22px 10px;gap:18px}.main{padding:18px 24px 32px}.nav a{min-height:40px}.topbar{height:48px}
  .resident-controls{padding:6px 12px}.resident-summary{padding:8px 12px;margin-bottom:12px}.resident-directory .resident-filters{padding:10px 12px}
  .resident-list-table td{padding-block:4px}.resident-list-table .resident-person{min-height:36px}.resident-person-meta{font-size:var(--font-2xs)}
  .entry-form-card .field{grid-column:span 3}.entry-save .subtle{flex-basis:100%;font-size:var(--font-xs)}.entry-search-fields{gap:12px}
  .detail-tabs{margin-bottom:12px}.detail-tabs a{padding:8px 12px}.record-filter-panel{margin-bottom:10px}
}
@media screen and (max-width:1200px){.entry-workspace{grid-template-columns:minmax(0,1fr)}.entry-recent{display:block}.entry-recent-record{padding:11px 0}}
@media screen and (max-width:1000px){
  #record-results .record,.main>.record{grid-template-columns:1fr}#record-results .record-date,.main>.record .record-date{border-right:0;border-bottom:1px solid var(--line);padding:8px 12px}
  .resident-entry-link{min-height:44px}.entry-recent-link{min-height:44px}.entry-form-card textarea{min-height:160px}.entry-save .subtle{width:100%;font-size:var(--font-xs)}
}
@media screen and (max-width:800px){.resident-list-table col.rl-name{width:35%}.resident-list-table col.rl-room{width:10%}.resident-list-table col.rl-age{width:9%}.resident-list-table col.rl-care{width:13%}.resident-list-table col.rl-status{width:13%}.resident-list-table col.rl-entry{width:20%}}
@media screen and (max-width:700px){.main{padding:18px 12px 32px}.detail-tabs{margin-inline:-12px}.entry-workspace{gap:12px}.entry-recent{padding:14px}.entry-person .actions{width:auto}.resident-list-table .rl-entry{padding-inline:5px}.resident-entry-link{font-size:var(--font-2xs);padding:6px 5px}.record-actions button{min-height:44px}}
@media screen and (max-width:600px){.resident-list-table col.rl-name{width:38%}.resident-list-table col.rl-room{width:17%}.resident-list-table col.rl-status{width:22%}.resident-list-table col.rl-entry{width:23%}.resident-list-table td.rl-room{white-space:nowrap}}
@media screen and (pointer:coarse){.resident-entry-link{min-height:44px}.entry-recent-link{min-height:44px}}
@media print{.rl-entry,.resident-tile-entry{display:none!important}.resident-list-table col.rl-entry{display:none!important}}
@media screen and (max-width:600px){.detail-tabs{gap:0}.detail-tabs a{padding:8px 6px;font-size:var(--font-sm)}}
.kv .empty-value{color:#a3b0bd}
.facility-room-count{margin-left:10px;font-size:var(--font-sm);font-weight:400;color:var(--muted)}
.room-head-side{display:inline-flex;align-items:center;gap:4px}
.room-edit{width:32px;height:32px;min-height:32px;padding:0;border-color:transparent;background:transparent;color:var(--muted)}.room-edit:hover,.room-edit:focus-visible{border-color:var(--line);background:var(--surface);color:var(--accent)}
.room-card .room-notes{white-space:pre-wrap;overflow-wrap:anywhere;color:inherit}
@media (pointer:coarse){.room-edit{width:44px;height:44px;min-height:44px}}
/* Master management: grouped kinds and a compact table. */
.master-group{display:flex;flex-wrap:wrap;gap:10px 22px;overflow:visible;margin-bottom:12px}
.master-group-set{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.master-group-label{font-size:var(--font-xs);color:var(--muted);margin-right:2px;white-space:nowrap}
.master-table th[scope=row]{font-weight:700;font-size:var(--font-md);color:inherit;background:transparent;border-top:1px solid var(--surface-tint);white-space:normal;overflow-wrap:anywhere;min-width:9em;vertical-align:top}
.master-table td{vertical-align:top}
.master-detail-item{display:inline-block;margin:0 16px 2px 0;font-size:var(--font-sm);overflow-wrap:anywhere;white-space:pre-wrap}
.master-detail-label{color:var(--muted);margin-right:6px;font-size:var(--font-xs)}
.master-table tr.stopped{background:var(--surface-subtle);color:var(--muted)}
.master-actions{white-space:nowrap;text-align:right}
.master-actions .text-button{margin-left:6px}
.master-table tr:hover th[scope=row]{background:var(--surface-subtle)}

/* From tablet width up the resident list keeps the page width (UI設計指針.md 13): the fixed columns are sized by their data
   (4 characters for a room number, a fixed-length date) and the name column takes the rest. Long names are cut with an ellipsis. */
@media screen and (min-width:801px){
  .resident-list-table{width:100%;min-width:0}
  .resident-list-table col.rl-name{width:auto}
  .resident-list-table col.rl-facility{width:14em}
  .resident-list-table col.rl-room{width:5em}
  .resident-list-table col.rl-age{width:4.5em}
  .resident-list-table col.rl-care{width:6.5em}
  .resident-list-table col.rl-status{width:6em}
  .resident-list-table col.rl-start{width:9.5em}
  .resident-list-table col.rl-entry{width:5.5em}
  .resident-list-table td.rl-facility span,.resident-list-table .resident-person strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}

/* 記録の操作ボタン（対応を追記・編集・完了にする）は各記録の上側に小さく置き、記録の下の段をなくして
   1 画面に入る記録を増やす（v0.13.37）。PC は分類バッジ・対応期限の行の右端、スマホ・タブレットは日付の帯の右端。 */
@media screen and (min-width:1001px){
  #record-results .record-body,.main>.record .record-body{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;align-items:start}
  #record-results .record-body>*,.main>.record .record-body>*{grid-column:1/-1}
  #record-results .record-body>.record-top,.main>.record .record-body>.record-top{grid-column:1;grid-row:1;align-self:center;margin-bottom:0}
  #record-results .record-body>.record-actions,.main>.record .record-body>.record-actions{grid-column:2;grid-row:1;margin:0}
  #record-results .record-body>.record-text,.main>.record .record-body>.record-text{margin-top:6px}
}
@media screen and (max-width:1000px){
  #record-results .record,.main>.record{grid-template-columns:minmax(min-content,1fr) auto}
  #record-results .record-date,.main>.record .record-date{grid-column:1;grid-row:1;flex-wrap:wrap;column-gap:10px;row-gap:0}
  /* 「日付未確認」は 1 語として折り返さず、「原記録の確認が必要」を次の行に送る。 */
  .record-date-text:not(:has(.record-date-year)){white-space:nowrap}
  #record-results .record-body,.main>.record .record-body{display:contents}
  #record-results .record-body>*,.main>.record .record-body>*{grid-column:1/-1;margin-inline:16px}
  #record-results .record-body>.record-top,.main>.record .record-body>.record-top{margin-top:12px}
  #record-results .record-body>:last-child,.main>.record .record-body>:last-child{margin-bottom:12px}
  #record-results .record-body>.record-actions,.main>.record .record-body>.record-actions{grid-column:2;grid-row:1;margin:0;padding:4px 12px 4px 0;background:var(--bg);border-bottom:1px solid var(--line);align-items:center;align-content:center}
}
@media screen{
  .record-body>.record-actions{gap:6px;justify-content:flex-end}
  .record-body>.record-actions button{display:inline-flex;align-items:center;gap:3px;min-height:26px;padding:2px 8px;font-size:var(--font-xs);line-height:1.3;border-radius:6px}
  .record-body>.record-actions .icon{width:14px;height:14px}
}
/* 指で押す端末は少し大きく（それでも従来の 44px より低くする）。 */
@media screen and (max-width:1000px),screen and (pointer:coarse){
  .record-body>.record-actions button{min-height:36px;padding:4px 10px}
  .response-edit{min-height:36px}
}
/* スマホ幅は日付とボタンを 1 行に並べるため、ボタンの絵文字（アイコン）を外して文字だけにする。
   ボタンが 3 つの記録は日付が「2026年」「10月27日(火)」の 2 行になる。 */
@media screen and (max-width:600px){
  .record-body>.record-actions{gap:5px}
  .record-body>.record-actions button{padding:4px 8px}
  .record-body>.record-actions .icon{display:none}
  #record-results .record-body>.record-actions,.main>.record .record-body>.record-actions{padding-right:10px}
}
