/* Even field heights + alignment (fixes iPhone date/time inputs) */
.field input[type=text],
.field input[type=password],
.field input[type=date],
.field input[type=time],
.field input[type=number],
.field select{
  height:42px; margin:0; line-height:normal; display:block;
}
.field input[type=date],
.field input[type=time]{
  -webkit-appearance:none; appearance:none;
  display:flex; align-items:center; text-align:left; min-width:0;
}
.field input::-webkit-date-and-time-value{ text-align:left; margin:0; }
.field input::-webkit-datetime-edit{ padding:0; }
.field-row{ align-items:flex-end; }
.field-row .field label{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

/* Hourly rate box with currency sign */
.rate-input{position:relative;}
.rate-input span{position:absolute; left:14px; top:50%; transform:translateY(-50%); color:var(--teal); font-weight:700; font-size:13px; pointer-events:none;}
.rate-input input[type=number]{padding-left:30px;}
.field input:disabled{opacity:.45; cursor:not-allowed;}

/* Top bar: keep buttons on one line */
.top-bar{flex-wrap:wrap; gap:8px;}
.top-bar .user-pill{margin-right:auto;}
.top-bar button, .top-bar .user-pill{white-space:nowrap;}
@media (max-width:640px){
  .top-bar{padding:12px 16px 0;}
  .top-bar button{padding:6px 11px; font-size:11.5px;}
  .app-shell{padding:16px;}
}
