/* Explicit positions keep added controls out of the checkbox column. */
#dailyItems .item,#weeklyItems .item{grid-template-columns:28px minmax(0,1fr) auto 44px;gap:.5rem .75rem}
#dailyItems .item>input,#weeklyItems .item>input{grid-column:1;grid-row:1;margin:0}
#dailyItems .item>label:not(.task-minutes),#weeklyItems .item>label:not(.task-minutes){grid-column:2;grid-row:1;min-width:0}
#dailyItems .item>.delete,#weeklyItems .item>.delete{grid-column:4;grid-row:1;min-width:44px;min-height:44px}
#dailyItems .item>.tool-controls,#weeklyItems .item>.tool-controls{grid-column:3;grid-row:1;flex-wrap:nowrap;align-items:center}
.item .tool-controls button{white-space:nowrap;min-width:44px;flex-shrink:0}
.item .tool-controls button:disabled{opacity:.4;cursor:default}
#dailyItems .item>.task-minutes,#weeklyItems .item>.task-minutes{grid-column:2/-1;grid-row:2;text-decoration:none;color:#9fb3c7}
.item .task-minutes input{width:110px;min-width:0}
.lists,.dashboard>*{min-width:0}.add-row input{min-width:0}
.item button:focus-visible,.backup-buttons button:focus-visible{outline:2px solid #5ee7ff;outline-offset:3px}
.session-controls>label{padding:.65rem .8rem;border:1px solid #315a76;border-radius:10px;background:#071522;min-height:48px;cursor:pointer;line-height:1.4}
.session-controls>label input{margin:0;flex-shrink:0}
.session-controls>label:has(input:checked){background:#102d3e;border-color:#5ee7ff}
.session-controls>label:focus-within{outline:2px solid #5ee7ff;outline-offset:3px}
@media(max-width:1100px){
  #dailyItems .item,#weeklyItems .item{grid-template-columns:28px minmax(0,1fr) 44px}
  #dailyItems .item>.delete,#weeklyItems .item>.delete{grid-column:3}
  #dailyItems .item>.tool-controls,#weeklyItems .item>.tool-controls{grid-column:2/-1;grid-row:3;flex-wrap:wrap}
}
@media(max-width:520px){
  #dailyItems .item,#weeklyItems .item{padding:.8rem;gap:.5rem}
  .item .task-minutes{font-size:.875rem;gap:.5rem}
  .item .tool-controls button{padding:.5rem .75rem}
  .summary{padding:1rem}.summary .ring{margin:.75rem auto}
  .session-controls{align-items:stretch;flex-direction:column}.session-controls>label{width:100%}
}
