/* 記録の編集は本文だけをスクロールし、保存操作を見える位置に保つ。 */
.aside .record-editor-shell { display:flex; flex-direction:column; max-height:calc(100dvh - var(--sp-6)); padding:var(--sp-4); overflow:hidden; }
.record-editor-shell .sh { flex:none; padding-bottom:var(--sp-3); }
.record-editor-form { display:flex; flex-direction:column; flex:1 1 auto; min-height:0; overflow:hidden; }
.record-editor-fields { flex:1 1 auto; min-height:0; overflow-y:auto; overscroll-behavior:contain; }
.aside .record-editor-inputs.editor.flat { display:flex; flex-direction:column; gap:var(--sp-4); min-inline-size:0; margin:0; padding:var(--sp-2) var(--sp-1) var(--sp-4); border:0; }
.record-editor-fields .field { margin:0; }
.record-editor-fields .field > label, .record-checks legend { font-size:var(--fs-sm); }
.record-time-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--sp-3); }
.record-time-input { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:var(--sp-1); }
.record-time-input button { min-height:var(--ctl); padding:0 var(--sp-1); font:var(--fs-sm) var(--font-mono); background:var(--sf2); border-radius:var(--r-sm); }
.record-time-input input { width:100%; min-width:0; padding:var(--sp-2) var(--sp-1); text-align:center; }
.record-duration { color:var(--mu); font-size:var(--fs-sm); min-height:var(--sp-5); }
.record-editor-message { font-size:var(--fs-sm); color:var(--mu); }
.record-checks { display:flex; flex-direction:column; border:0; gap:var(--sp-3); }
.record-checks legend { margin-bottom:var(--sp-2); }
.record-check { padding:var(--sp-3); background:var(--sf2); border-radius:var(--r-md); }
.record-check > label { display:flex; align-items:center; gap:var(--sp-2); min-height:var(--ctl); }
.record-check .record-value { display:flex; flex-direction:column; align-items:stretch; font-size:var(--fs-sm); padding-top:var(--sp-2); }
.record-check input[type="checkbox"], .record-overlaps input { width:var(--sp-4); height:var(--sp-4); accent-color:var(--ac); }
.record-editor-footer { flex:none; border-top:1px solid var(--line); padding-top:var(--sp-3); padding-bottom:env(safe-area-inset-bottom); background:var(--sf); }
.record-editor-secondary { display:flex; justify-content:space-between; gap:var(--sp-3); padding-top:var(--sp-2); }
.record-editor-secondary button { min-height:var(--ctl); }
.record-editor-errors { color:var(--danger); font-size:var(--fs-sm); }
.record-overlaps { padding:var(--sp-3); border:1px solid var(--warn); border-radius:var(--r-md); font-size:var(--fs-sm); }
.record-overlaps ul { padding-left:var(--sp-5); margin:var(--sp-2) 0; }
.record-overlaps label { display:flex; align-items:center; gap:var(--sp-2); min-height:var(--ctl); }
.record-quick-actions { display:flex; align-items:center; justify-content:space-between; gap:var(--sp-3); }
.record-quick-actions button { min-height:var(--ctl); }
@media (min-width:900px) { .aside:has(.record-editor-shell) { position:sticky; top:var(--sp-4); } .aside .record-editor-shell { max-height:calc(100dvh - var(--record-editor-top, var(--sp-6)) - var(--sp-4)); } }
@media (max-width:389px) { .record-time-fields { grid-template-columns:1fr; } }
